Legal claims defining the scope of protection, as filed with the USPTO.
1. A method for forwarding a packet in a network, wherein the network comprises a plurality of routing bridges (RBs), the method comprising: assigning, by a first RB, based on a NickName of each RB in a NickName routing table at a control plane, a unicast tunnel label taking the NickName as a forwarding equivalence class (FEC); establishing, by the first RB, a point to point (P2P) label switched path (LSP) tunnel between the first RB and other RBs in the network; and at least one of receiving and transmitting, by the first RB, a packet through the established P2P LSP tunnel.
2. The method of claim 1 , wherein the operation of establishing the P2P LSP tunnel comprises: assigning, by the first RB taking the NickName as the FEC, the unicast tunnel label for the FEC; establishing, by the first RB, based on at least one of the unicast tunnel label assigned by the first RB for the NickName and a unicast tunnel label which is assigned for the NickName by a next-hop RB which is in an entry corresponding to the replaced NickName in a NickName routing table, a label forwarding information base (LFIB) entry of the FEC; and issuing, by the first RB, the LFIB entry to a data plane, wherein the LFIB entry is taken as a unicast tunnel forwarding entry of the NickName.
3. The method of claim 2 , wherein the first RB is an ingress RB, the method further comprising: assigning, by the first RB, a token for each NickName other than a NickName of the first RB, and recording the token in a unicast tunnel forwarding entry associated with the each NickName at the data plane; replacing, by the first RB, an egress RB NickName corresponding to a user MAC in a user MAC forwarding entry with a token corresponding to the egress RB NickName to obtain a new user MAC forwarding entry; and issuing, by the first RB, the new user MAC forwarding entry to a user MAC forwarding table at the data plane; wherein the at least one of receiving and transmitting, by the first RB, a packet through the established P2P LSP tunnel further comprises: searching, by the first RB, upon receiving a unicast ethernet packet sent from a user network, the user MAC forwarding table for a MAC forwarding entry matching an inner Destination-MAC (D-MAC) in the ethernet packet; searching, by the first RB, the unicast tunnel forwarding table for a unicast tunnel forwarding entry matching a token in the identified MAC forwarding entry; performing, by the first RB, based on the identified unicast tunnel forwarding entry, MPLS encapsulation to the ethernet packet to obtain a MPLS packet; and forwarding the MPLS packet to the next-hop RB through an egress port in the identified unicast tunnel forwarding entry.
4. The method of claim 2 , wherein the first RB is a transit RB, the at least one of receiving and transmitting, by the first RB, a packet through the established P2P LSP tunnel further comprises: searching, by the first RB, upon receiving a MPLS packet, the unicast tunnel forwarding table for a unicast tunnel forwarding entry matching a unicast tunnel label in the MPLS packet; replacing, by the first RB, based on the identified unicast tunnel forwarding entry, the unicast tunnel label in the MPLS packet with an egress label in the identified unicast tunnel forwarding entry; replacing, by the first RB, corresponding content in the MPLS packet with other content in the identified unicast tunnel forwarding entry; and forwarding the MPLS packet to the next-hop RB through an egress port in the identified unicast tunnel forwarding entry.
5. The method of claim 2 , wherein the first RB is an egress RB, the at least one of receiving and transmitting, by the first RB, a packet through the established P2P LSP tunnel further comprises: searching, by the first RB upon receiving a MPLS packet, the unicast tunnel forwarding table for a unicast tunnel forwarding entry matching a unicast tunnel label in the MPLS packet; popping up, by the first RB, the unicast tunnel label in the MPLS packet according to the identified unicast tunnel forwarding entry; decapsulating the MPLS packet to obtain an ethernet packet; searching, by the first RB, the user MAC forwarding table for a MAC forwarding entry matching an inner D-MAC in the ethernet packet; and forwarding the ethernet packet through an egress port in the identified MAC forwarding entry.
6. The method of claim 5 , wherein the first RB is a leaf node of a distribution tree in the network, the method further comprising: assigning, by the first RB, a unique multicast tunnel label for a NickName of a designated RB (DRB) of the distribution tree; establishing, by the first RB, a point to multi-point (P2MP) LSP tunnel between the first RB and the DRB; issuing, by the first RB, a multicast tunnel forwarding entry to the data plane, wherein the multicast tunnel forwarding entry comprises a multicast tunnel label and an operation, wherein the multicast tunnel label is the multicast tunnel label assigned by the first RB for the DRB and the operation is a pop operation; broadcasting, by the first RB upon receiving one of a plurality of ethernet packets including a broadcast ethernet packet, a multicast ethernet packet, and an inner D-MAC unaware unicast ethernet packet, the one of the plurality of ethernet packets into the user network; searching the unicast tunnel forwarding table for a unicast tunnel forwarding entry matching a token corresponding to the DRB, pushing an egress label in the identified unicast tunnel forwarding entry into the ethernet packet in response to an operation in the identified unicast tunnel forwarding entry being a push operation; performing, by the first RB, MPLS encapsulation to the ethernet packet using other content in the identified unicast tunnel forwarding entry to obtain a first MPLS packet; forwarding, to the DRB, the first MPLS packet through an egress port in the identified unicast tunnel forwarding entry; and popping up, by the first RB upon receiving a second MPLS packet, a multicast tunnel label in the second MPLS packet according to the pop operation in the multicast tunnel forwarding entry; decapsulating the second MPLS packet to obtain an ethernet packet; broadcasting the ethernet packet into the user network when it is determined that the ethernet packet is one of the broadcast ethernet packet, the multicast ethernet packet, and the inner D-MAC unaware unicast ethernet packet.
7. The method of claim 5 , wherein the first RB is the DRB of the distribution tree, the method further comprising: receiving, by the first RB, a multicast tunnel label assigned by each leaf node of the distribution tree for the NickName of the first RB; establishing, by the first RB, a P2MP LSP tunnel between the first RB and each leaf node; issuing, by the first RB, a forwarding entry of the distribution tree to the data plane, wherein the forwarding entry comprises a MAC address of each leaf node of the distribution tree, an egress port and an egress label corresponding to each leaf node, and wherein the egress label is a multicast tunnel label assigned by each leaf node for the DRB; searching, by the first RB upon receiving a MPLS packet, the unicast tunnel forwarding table for a unicast tunnel forwarding entry matching a unicast tunnel label in the MPLS packet; popping up the unicast tunnel label in the MPLS packet in response to a determination that an operation in the identified unicast tunnel forwarding entry is a pop operation; decapsulating the MPLS packet to obtain an ethernet packet; performing, by the first RB, the MPLS encapsulation to the ethernet packet in accordance with the forwarding entry of the distribution tree to obtain a plurality of MPLS packets; and forwarding the plurality of MPLS packets to leaf nodes of the distribution tree.
8. The method of claim 1 , wherein the network comprises a transparent interconnection of lots of links (TRILL) network.
9. A routing bridge (RB) in a network, the RB comprising: a first storage to store a NickName routing table; a second non-transitory storage to store machine readable instructions; and a processor, to execute the machine readable instructions to: assign, based on a NickName of each RB in a NickName routing table at a control plane, a unicast tunnel label taking the NickName as a forwarding equivalence class (FEC); establish a point to point (P2P) label switched path (LSP) tunnel between the RB and other RBs in the network; and at least one of receive and transmit a packet through the established P2P LSP tunnel.
10. The RB of claim 9 , wherein the first storage is further to store a unicast tunnel forwarding table and wherein the processor is further to execute the machine readable instructions stored in the second storage to: assign, taking the NickName as the FEC, the unicast tunnel label for the FEC; establish, based on at least one of the unicast tunnel label assigned by the first RB for the NickName and a unicast tunnel label which is assigned for the NickName by a next-hop RB which is in an entry corresponding to the replaced NickName in a NickName routing table, a label forwarding information base (LFIB) entry of the FEC; and issue the LFIB entry to a data plane, wherein the LFIB entry is taken as a unicast tunnel forwarding entry of the NickName.
11. The RB of claim 10 , wherein the first storage is further to store a user MAC forwarding table and wherein the processor is further to execute the machine readable instructions stored in the second storage to: assign a token for each NickName other than a NickName of the RB, and record the token in a unicast tunnel forwarding entry associated with the each NickName at the data plane; replace an egress RB NickName corresponding to a user MAC in a user MAC forwarding entry with a token corresponding to the egress RB NickName to obtain a new user MAC forwarding entry; issue the new user MAC forwarding entry to the user MAC forwarding table at the data plane; wherein the processor is further to execute the machine readable instructions stored in the second storage to: receive a unicast ethernet packet sent from a user network; search, upon receiving the unicast ethernet packet, the user MAC forwarding table for a MAC forwarding entry matching an inner Destination-MAC (D-MAC) in the ethernet packet; search the unicast tunnel forwarding table for a unicast tunnel forwarding entry matching a token in the identified MAC forwarding entry; perform, based on the identified unicast tunnel forwarding entry, MPLS encapsulation to the ethernet packet to obtain a MPLS packet; and forward the MPLS packet to the next-hop RB through an egress port in the identified unicast tunnel forwarding entry.
12. The RB of claim 10 , wherein the processor is further to execute the machine readable instructions stored in the second storage to: receive a MPLS packet; search, upon receiving the MPLS packet, the unicast tunnel forwarding table for a unicast tunnel forwarding entry matching a unicast tunnel label in the MPLS packet; replace, based on the identified unicast tunnel forwarding entry, the unicast tunnel label in the MPLS packet with an egress label in the identified unicast tunnel forwarding entry; replace corresponding content in the MPLS packet with other content in the identified unicast tunnel forwarding entry; and forward the MPLS packet to the next-hop RB through an egress port in the identified unicast tunnel forwarding entry.
13. The RB of claim 10 , wherein the processor is further to execute the machine readable instructions stored in the second storage to: search, upon receiving a MPLS packet, the unicast tunnel forwarding table for a unicast tunnel forwarding entry matching a unicast tunnel label in the MPLS packet; pop up the unicast tunnel label in the MPLS packet according to the identified unicast tunnel forwarding entry; decapsulate the MPLS packet to obtain an ethernet packet; search the user MAC forwarding table for a MAC forwarding entry matching an inner D-MAC in the ethernet packet; and forward the ethernet packet through an egress port in the identified MAC forwarding entry.
14. The RB of claim 13 , wherein the first storage is further to store a multicast tunnel forwarding entry and wherein the processor is further to execute the machine readable instructions stored in the second storage to: assign a unique multicast tunnel label for a NickName of a Designated RB (DRB) of a distribution tree in the network; establish a point to multi-point (P2MP) LSP tunnel between the first RB and the DRB; issue the multicast tunnel forwarding entry to the data plane, wherein the multicast tunnel forwarding entry comprises a multicast tunnel label and an operation and wherein the multicast tunnel label is the multicast tunnel label assigned by the RB for the DRB, and the operation is a pop operation; receive one of a plurality of ethernet packets including a broadcast ethernet packet, a multicast ethernet packet, and an Inner D-MAC unaware unicast ethernet packet; broadcast, upon receiving the one of the plurality of ethernet packets, the one of the plurality of ethernet packets into the user network; search the unicast tunnel forwarding table for a unicast tunnel forwarding entry matching a token corresponding to the DRB, pushing an egress label in the identified unicast tunnel forwarding entry into the ethernet packet in response to an operation in the identified unicast tunnel forwarding entry being a push operation; perform MPLS encapsulation to the ethernet packet using other content in the identified unicast tunnel forwarding entry to obtain a first MPLS packet; and forward, to the DRB, the first MPLS packet through an egress port in the identified unicast tunnel forwarding entry; pop up, upon receiving a second MPLS packet, a multicast tunnel label in the second MPLS packet according to the pop operation in the multicast tunnel forwarding entry; decapsulate the second MPLS packet to obtain an ethernet packet; broadcast the ethernet packet into the user network when it is determined that the ethernet packet is one of a plurality of ethernet packets including the broadcast ethernet packet, the multicast ethernet packet, and the inner D-MAC unaware unicast ethernet packet.
15. The RB of claim 13 , wherein the first storage is further to store a forwarding entry of the distribution tree and wherein the processor is further to execute the machine readable instructions stored in the second storage to: receive a multicast tunnel label assigned by each leaf node of the distribution tree for the NickName of the RB; establish a P2MP LSP tunnel between the RB and each leaf node; issue the forwarding entry of the distribution tree to the data plane, wherein the forwarding entry comprises a MAC address of each leaf node of the distribution tree, an egress port, and an egress label corresponding to each leaf node, and wherein the egress label is a multicast tunnel label assigned by each leaf node for the DRB; search, upon receiving a MPLS packet, the unicast tunnel forwarding table for a unicast tunnel forwarding entry matching a unicast tunnel label in the MPLS packet; pop up the unicast tunnel label in the MPLS packet in response to a determination that an operation in the identified unicast tunnel forwarding entry is a pop operation; decapsulate the MPLS packet to obtain an ethernet packet; perform the MPLS encapsulation to the ethernet packet in accordance with the forwarding entry of the distribution tree to obtain a plurality of MPLS packets; and forward the plurality of MPLS packets to leaf nodes of the distribution tree.
Unknown
October 25, 2016
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.