This paper considers the traffic engineering of MPLS-based virtual private networks (VPNs) with multiple classes of service. We focus on two main issues. Firstly, we point out that the one LSP per ingress-egress pair constraint can be relaxed for the case of MPLS-based VPNs due to the ease in classifying flows on a per-VPN basis. This allows us to use LSP with finer granularity and thus better load balancing. Secondly, we point out that the single objective traffic engineering formulations proposed in literature address only one particular aspect of the traffic engineering problem. We propose a multiobjective traffic engineering problem which takes both resource usage and link utilisation into account. This optimisation problem is NP-complete and involves a large number of variables. We propose an heuristic to solve this problem.