Patent ID: 8718060

Claim:
A method for forwarding data packets in a communication network, the method comprising: receiving, at a node in the communication network, a data packet containing a label stack having one or more labels for switching the data packet on a path in the communication network, wherein the node includes a plurality of outgoing network interfaces for use in forwarding the data packet to one of a plurality of destination nodes; selecting, based on a forwarding equivalence class (FEC) associated with one or more of the labels contained in the label stack, an Equal Cost Multiple Path (ECMP) technique from among a plurality of ECMP techniques for use in identifying a selected outgoing network interface on the node for use in forwarding the data packet to a selected destination node; using the selected ECMP technique to identify the selected outgoing network interface for use in forwarding the data packet to a selected destination node based on information contained in a portion of the data packet other than a payload portion, wherein using further comprises: hashing one or more of the labels contained in the label stack to produce a hash value, wherein the one or more labels used to produce the hash value includes a label at the bottom of the label stack, and identifying the selected outgoing network interface using the hash value; and forwarding the data packet to the selected destination node using the selected outgoing network interface.