Patent ID: 8804736

Claim:
A method comprising: receiving, by a routing device of a provider network, a packet from a customer network; determining that the packet includes a customer multiprotocol label switching (MPLS) label stack including a customer network label and that the packet is to be tunneled through the provider network via a provider network tunnel; based on the determination that the packet includes the customer MPLS label stack including the customer network label, adding a delimiter label to the packet indicative of a bottom of a provider network label stack, setting a bottom of stack identifier in the delimiter label to a value that indicates that the delimiter label is not the bottom of a label stack, and adding one or more provider network labels to the packet, wherein after adding the delimiter label and the one or more provider network labels to the packet, a label stack for the packet comprises the one or more provider network labels, the delimiter label following the provider network labels, and the customer network label following the delimiter label; analyzing the label stack for the packet; performing load balancing on a plurality of provider network tunnels, including the provider network tunnel, based at least in part on the analysis of the label stack for the packet; and after performing the load balancing, forwarding the packet to a next routing device of the provider network along the provider network tunnel.