The present disclosure is generally related to the field of network communication and, in particular, to a border gateway protocol (BGP) for Bit Index Explicit Replication-Traffic/Tree Engineering (BIER-TE).
BIER mechanisms provide optimized forwarding of multicast data packets through a BIER domain. BIER domains may not require the use of a protocol for explicitly building multicast distribution trees. Further, BIER domains may not require intermediate nodes to maintain any per-flow state. BIER is described in further detail in Internet Engineering Task Force (IETF) document Request for Comments (RFC) 8279 entitled “Multicast Using Bit Index Explicit Replication (BIER)” by I J. Wijnands, et al., published November 2017.
Traffic Engineering (TE) is the process of steering traffic across a telecommunications network to facilitate efficient use of available bandwidth between a pair of routers. Bit Index Explicit Replication (BIER) Traffic/Tree Engineering (BIER-TE) is described in IETF document “Tree Engineering for Bit Index Explicit Replication (BIER-TE)” by T. Eckert, et al., published Jul. 9, 2021.
The disclosed aspects/embodiments provide techniques that allow a controller utilizing BGP to create and distribute a Bit Index Explicit Replication Traffic/Tree Engineering (BIER-TE) path for a BIER-TE domain. In order to facilitate the techniques, the present disclosure provides extensions to BGP, which are carried in update messages. The extensions are implemented using type length value (TLV) structures and sub-TLV structures. Using the extensions, packet routing within the BIER-TE domain is improved relative to existing techniques.
A first aspect relates to a method implemented by a controller configured to implement a border gateway protocol (BGP) and control a Bit Index Explicit Replication Traffic/Tree Engineering (BIER-TE) domain, comprising: generating an update message comprising a BIER-TE path subsequent address family indicator (SAFI), a network layer reachability information (NLRI) including a distinguisher field, and an attribute including a type length value (TLV) having a tunnel type and a path bit positions sub-TLV; and distributing the update message to a bit forwarding router (BFR) in the BIER-TE domain.
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the distinguisher field comprises a value that uniquely identifies content associated with the NLRI or of a BIER-TE path.
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the NLRI includes a tunnel identifier field comprising a sub-domain identifier (ID), a bit forwarding router identifier (BFR-id) field, and a tunnel ID, wherein the sub-domain identifier identifies a sub-domain through which a BIER-TE tunnel crosses, the BFR-id field identifies a bit forwarding ingress router (BFIR) of the BIER-TE tunnel, and the tunnel ID uniquely identifies the BIER-TE tunnel within the BFIR and the sub-domain.
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the tunnel identifier field comprises a BFR prefix of a bit forwarding ingress router (BFIR) of a BIER-TE tunnel.
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the attribute comprises a tunnel encapsulation attribute (TEA).
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the attribute comprises a P-Multicast Service Interface (PSMI) tunnel attribute (PTA).
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the path bit positions sub-TLV includes a bit index forwarding table identifier (BIFT-id) field, a set identifier (SI) field, and a bitstring field.
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the update message is distributed to a BGP peer running on a bit forwarding ingress router (BFIR) of the BIER-TE domain.
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the TLV further comprises a path name sub-TLV that encodes a name of a BIER-TE path.
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the TLV further comprises a traffic description sub-TLV that encodes multicast traffic transported by a BIER-TE path.
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the TLV further comprises a service sub-TLV that contains a service identifier (ID) or a label to be added into a packet to be carried by a BIER-TE path.
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the TLV further comprises a path identifier sub-TLV that contains a sub-domain identifier (sub-domain-id) field, a bit forwarding ingress router identifier (BFIR-id) field, a tunnel identifier (ID), and a path number field.
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the update message further comprises an address family indicator (AFI) that identifies Internet Protocol version four (IPv4) or Internet Protocol version six (IPv6).
A second aspect relates to a controller configured to implement a border gateway protocol (BGP) and control a Bit Index Explicit Replication Traffic/Tree Engineering (BIER-TE) domain, comprising: a memory storing instructions; and a processor coupled to the memory, the processor configured to execute the instructions to cause the controller to: generate an update message comprising a BIER-TE path subsequent address family indicator (SAFI), a network layer reachability information (NLRI) including a distinguisher field and an attribute including a type length value (TLV) having a tunnel type and a path bit positions sub-TLV; and distribute the update message to a bit forwarding router (BFR) in the BIER-TE domain.
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the distinguisher field comprises a value that uniquely identifies content associated with the NLRI or of a BIER-TE path.
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the NLRI includes a tunnel identifier field comprising a sub-domain identifier (ID), a bit forwarding router identifier (BFR-id), and a tunnel ID, wherein the sub-domain identifier identifies a sub-domain through which a BIER-TE tunnel crosses, the BFR-id identifies a bit forwarding ingress router (BFIR) of the BIER-TE tunnel, and the tunnel ID uniquely identifies the BIER-TE tunnel within the BFIR and the sub-domain.
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the tunnel identifier field comprises a BFR prefix of a bit forwarding ingress router (BFIR) of a BIER-TE tunnel.
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the attribute comprises a tunnel encapsulation attribute (TEA).
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the attribute comprises a P-Multicast Service Interface (PSMI) tunnel attribute (PTA).
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the path bit positions sub-TLV includes a bit index forwarding table identifier (BIFT-id) field, a set identifier (SI) field, and a bitstring field.
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the update message is distributed to a BGP peer running on a bit forwarding ingress router (BFIR) of the BIER-TE domain.
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the TLV further comprises a path name sub-TLV that encodes a name of a BIER-TE path.
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the TLV further comprises a traffic description sub-TLV that encodes multicast traffic transported by a BIER-TE path.
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the TLV further comprises a service sub-TLV that contains a service identifier (ID) or a label to be added into a packet to be carried by a BIER-TE path.
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the TLV further comprises a path identifier sub-TLV that contains a sub-domain identifier (sub-domain-id) field, a bit forwarding ingress router identifier (BFIR-id) field, a tunnel identifier (ID), and a path number field.
Optionally, in any of the preceding aspects, another implementation of the aspect provides that the update message further comprises an address family indicator (AFI) that identifies Internet Protocol version four (IPv4) or Internet Protocol version six (IPv6).
A third aspect relates to a non-transitory computer readable medium comprising a computer program product for use by a controller, the computer program product comprising computer executable instructions stored on the non-transitory computer readable medium that, when executed by one or more processors, cause the controller to execute any of the disclosed embodiments.
A fourth aspect relates to a controller configured to implement a border gateway protocol (BGP) and control a Bit Index Explicit Replication Traffic/Tree Engineering (BIER-TE) domain, comprising: means for generating an update message comprising a BIER-TE path subsequent address family indicator (SAFI), a network layer reachability information (NLRI) including a distinguisher and an attribute including a type length value (TLV) having a tunnel type and a path bit positions sub-TLV; and means for distributing the update message to a bit forwarding router (BFR) in the BIER-TE domain.
For the purpose of clarity, any one of the foregoing embodiments may be combined with any one or more of the other foregoing embodiments to create a new embodiment within the scope of the present disclosure.
These and other features will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings and claims.
For a more complete understanding of this disclosure, reference is now made to the following brief description, taken in connection with the accompanying drawings and detailed description, wherein like reference numerals represent like parts.
It should be understood at the outset that although an illustrative implementation of one or more embodiments are provided below, the disclosed systems and/or methods may be implemented using any number of techniques, whether currently known or in existence. The disclosure should in no way be limited to the illustrative implementations, drawings, and techniques illustrated below, including the exemplary designs and implementations illustrated and described herein, but may be modified within the scope of the appended claims along with their full scope of equivalents.
Existing techniques provide a controller (e.g., a path computation element (PCE), etc.) with border gateway protocol (BGP) extensions for BIER, but not for BIER-TE. This causes inefficiency and leads to difficulties in computing and setting up paths (e.g., point to multipoint (P2MP) paths) through the BIER-TE domain.
Disclosed herein are techniques that allow a controller utilizing BGP to create and distribute a Bit Index Explicit Replication Traffic/Tree Engineering (BIER-TE) path for a BIER-TE domain. In order to facilitate the techniques, the present disclosure provides extensions to BGP, which are carried in update messages. The extensions are implemented using type length value (TLV) structures and sub-TLV structures. Using the extensions, packet routing within the BIER-TE domain is improved relative to existing techniques.
Each of the network nodes 104-120 is a bit forwarding router (BFR). Some of the network nodes, namely the network nodes 104, 110, 112, 114 and 118, are disposed at an edge of the BIER-TE domain 102. The network nodes 104, 110, 112, 114 and 118 receiving multicast packets from outside the BIER-TE domain 102 may be referred to as a bit forwarding ingress router (BFIR) or ingress BFR. The network nodes 104, 110, 112, 114 and 118 transmitting multicast packets out of the BIER-TE domain 102 may be referred to as a bit forwarding egress router (BFER) or egress BFR. Depending on the direction of multicast packet traffic, each of the network nodes 104, 110, 112, 114 and 118 may function as a BFIR or a BFER.
As shown in
As an example of how the BPs for fw-con adjacencies operate with regard to
Each of the network nodes 104-120 may be referred to herein as a destination network node or a BFER. The network nodes 104-120 may each be assigned a BP, a set index or set identifier (SI), and a bitstring (a.k.a., BitString, Bit String, or bit string). The BP of a BFER is called a local decapsulation (decap) adjacency or local decap BP. In the illustrated example, the BP of a BEER is represented as j, where j is an integer corresponding to one of the local decap adjacencies in the BIER-TE domain 102. In the illustrated embodiment of
In an embodiment, the BPs for fw-con adjacencies are represented by (SI:BitString), where SI>=6 and BitString is a string of 8 bits. For example, the BP of 3′ has a SI of 6, and has a bitstring of 00000100 (collectively represented by 3′ (6:00000100). Assuming the SI of 6 corresponds to the first set of eight BPs for fw-con adjacencies, the BP of 3′ corresponds to the third bit in the bitstring from the right set to one. That is, when the SI is 6, the BP of 1′ corresponds to the first bit set to one, the BP of 2′ corresponds to the second bit set to one, the BP of 3′ corresponds to the third bit set to one, the BP of 4′ corresponds to the fourth bit set to one, and the BP of 5′ corresponds to the fifth bit set to one, and so on.
Assuming the SI of 7 corresponds to the second set of eight BPs for fw-con adjacencies immediately following the first set of eight BPs for fw-con adjacencies, the BPs of 9′ and 10′ are collectively represented by 9′ (7:00000001) and 10′ (7:00000010), respectively. That is, when the SI is 7, the BP of 9′ corresponds to the first bit set to one, and the BP of 10′ corresponds to the second bit set to one, and so on. In this way, the BP is represented by a number that indicates which bit is set in the BitString.
Each of the network nodes 104-120 has one or more neighbor nodes. As used herein, a neighbor node refers to a network node that is only one hop away from the network node. For example, network node 106 has four neighbor nodes in
The network nodes 104-120 in
The BIER domain 102 is controlled by a network controller 130 (or simply, a controller) capable of implementing BGP. BGP is a standardized exterior gateway protocol designed to exchange routing and reachability information among autonomous systems (AS) on the Internet. BGP is classified as a path-vector routing protocol, and BGP makes routing decisions based on paths, network policies, or rule-sets configured by a network administrator.
In an embodiment, one or more of the network nodes 104-120 may request that the network controller 130 calculate the BIER-TE path through the BIER-TE domain 102. Once calculated, the BIER-TE path may be distributed by the network controller 130 in different ways.
For example, when the network controller 130 is directly connected to the ingress network node 104 of the BIER-TE path, the network controller 130 transmits an update message (a.k.a., a BGP update message) to the ingress network node 104 as well as one or more of the other network nodes 106-120. The update message includes a route target (RT) and a “no advertise” instruction. When the RT does not match the ID of the network node that received the update message, the network node is not the ingress network node of the BIER-TE path. Due to the “no advertise” instruction, the network nodes do not distribute the update message to their neighbor network nodes. When the RT does match the ID of the network node that received the update message, the network node is the ingress network node of the BIER-TE path (e.g., network node 104). As such, the ingress network node installs a forwarding entry for the BIER-TE path in a forwarding table stored on the ingress network node.
As another example, when the network controller 130 is not directly connected to the ingress network node 104 of the BIER-TE path, the network controller 130 transmits an update message to one or more of the other network nodes 106-120. The update message includes the RT and an “advertise” instruction. When the RT does not match the ID of the network node that received the update message, a network node advertises the update message to its neighbor network nodes according to the BGP propagation rules. Eventually, the ingress network node of the BIER-TE path, which has an ID that matches the RT, receives the update message from another network node. As such, the ingress network node installs a forwarding entry for the BIER-TE path in forwarding table stored on the ingress network node.
Additional details regarding the update message may be found in Internet Engineering Task Force (IETF) Request for Comments (RFC) 4271 entitled “A Border Gateway Protocol 4 (BGP-4)” by Y. Rekhter, et al., published January 2006.
Using the BIER-TE topology 100 of
When the ingress network node 104 receives a packet (e.g., a multicast packet) from outside the BIER-TE domain 102, the ingress network node 104 encapsulates the packet with the BPs for the BIER-TE path. The encapsulated packet has the form {26′, 20′, 4, 7′, 4′, 12′, 1}[packet].
The ingress network node 104 removes bit position 26′ and 7′ from the BIER-TE path and forwards the encapsulated packet to the network node 116, which corresponds to bit position 26′. When received by the network node 116, the encapsulated packet has the form {20′, 4, 4′, 12′, 1}[packet]. The network node 116 removes bit position 20′ from the BIER-TE path and forwards the encapsulated packet to the network node 118, which corresponds to bit position 20′. When received by the network node 118, the encapsulated packet has the form {4, 4′, 12′, 1}[packet]. The network node 118, which has local decap bit position 4, decapsulates the encapsulated packet and transmits the packet to a multicast overlay outside the BIER-TE domain 102.
In addition to the above, the ingress network node 104 removes bit position 7′ and 26′ from the BIER-TE path and forwards the encapsulated packet to the network node 106, which corresponds to bit position 7′. When received by the network node 106, the encapsulated packet has the form {20′, 4, 4′, 12′, 1}[packet]. The network node 106 removes bit position 4′ from the BIER-TE path and forwards the encapsulated packet to the network node 108, which corresponds to bit position 4′. When received by the network node 108, the encapsulated packet has the form {20′, 4, 12′, 1}[packet]. The network node 108 removes bit position 12′ from the BIER-TE path and forwards the encapsulated packet to the network node 110, which corresponds to bit position 12′. When received by the network node 110, the encapsulated packet has the form {20′, 4, 1}[packet]. The network node 110, which has local decap bit position 1, decapsulates the encapsulated packet and transmits the packet to a multicast overlay outside the BIER-TE domain 102.
In order to route the packet as described in the examples above, each of the network nodes 104-120 in the BIER-TE topology 100 in
When the network node 104 receives a packet with a point-to-multipoint (P2MP) path (e.g., a BIER-TE path) including 2′, the network node 106 utilizes the first row 214 of the BIER-TE BIFT 200 to forward the packet. That is, the network node 106 sends the packet to the network node 112 (i.e., network node E) identified in the third column 206 based on the forward connected adjacency action in the second column 204. When the network node 106 receives a packet with a P2MP path including 4′, the network node 106 utilizes the second row 216 of the BIER-TE BIFT 200 to forward the packet. That is, the network node 106 sends the packet to the network node 108 (i.e., network node C) identified in the third column 206 based on the forward connected adjacency action in the second column 204.
In order to communicate information regarding the BIER-TE path using the update message as noted above, extensions to BGP are provided. For example, a new subsequent address family indicator (SAFI) is defined. In an embodiment, the new SAFI is a number that indicates or signifies that BIER-TE is being used. The new SAFI is carried by the update message.
The update message transmitted by the network controller 130 to one or more of the network nodes 104-120 also carries a new Network Layer Reachability Information (NLRI).
The distinguisher field 302 comprises a value that uniquely identifies BIER-TE content associated with the NLRI 300 or of a BIER-TE path. In an embodiment, the distinguisher field 304 is 4 octets.
The tunnel identifier field 306 comprises a sub-domain identifier (sub-domain-id), a bit forwarding router identifier (BFR-id), and a tunnel ID. The sub-domain identifier identifies a sub-domain through which a BIER-TE tunnel crosses. In an embodiment, the sub-domain identifier comprises 1 octet. The BFR-id identifies a BFIR of the BIER-TE tunnel. In an embodiment, the BFR-id comprises 2 octets. The tunnel ID uniquely identifies the BIER-TE tunnel within the BFIR and the sub-domain (e.g., BIER-TE sub-domain 102). In an embodiment, the tunnel ID comprises 4 octets. In an embodiment, the tunnel identifier field 306 also comprises a BFR-prefix of a BFIR of a BIER-TE tunnel. In an embodiment, the BFR-prefix comprises 4 octets for Internet Protocol version 4 (IPv4) and 16 octets for Internet Protocol version 6 (IPv6).
The update message transmitted by the network controller 130 to one or more of the network nodes 104-120 also carries an attribute. The NLRI 300 is associated with the attribute. In an embodiment, the attribute is a Tunnel Encapsulation Attribute (TEA) 400 as shown in
The tunnel type field 408 includes a value that identifies a BIER-TE tunnel. The length field 410 includes a value that identifies a length of the sub-TLVs in the sub-TLVs field 412. The sub-TLVs field 412 may include one or more sub-TLVs. The tunnel type field 408, the length field 410, and the sub-TLVs field 412 may be collectively referred to as a tunnel encapsulation TLV for BIER-TE (or simply a TLV).
In an embodiment, the attribute in the update message is a P-Multicast Service Interface (PSMI) tunnel attribute (PTA) 500 as shown in
The flag field 508 includes a value that indicates whether leaf information is required. The tunnel type field 510 includes a value that identifies a BIER-TE tunnel. The MPLS label field 512 includes a value that identifies an MPLS label. The sub-TLVs field 514 may include one or more sub-TLVs. The flag field 508, the tunnel type field 510, the MPLS label field 512, and the sub-TLVs field 514 may be collectively referred to as a tunnel encapsulation TLV for BIER-TE (or simply a TLV).
In an embodiment, the sub-TLVs field 412 and the sub-TLVs field 514 include one or more of a path BitPositions sub-TLV (a.k.a., path sub-TLV), a path name sub-TLV, a service sub-TLV, a traffic description sub-TLV, and a path identifier sub-TLV. Each of these structures are described in further detail below.
The type field 602 includes a value that identifies the type of sub-TLV (e.g., a path BitPositions sub-TLV 600). The length field 604 includes a value that identifies a length of the sub-TLV. The reserved field 606 is set to 0 and ignored by the receiver. The SI length field 608 includes a value that indicates a length of the SI field 620 in bits.
In an embodiment, the bitstring length field 610 includes a value that indicates a length of the bitstring field 622 according to IETF document RFC 8296 entitled “Encapsulation for Bit Index Explicit Replication (BIER) in MPLS and Non-MPLS Networks” by I J. Wijnands, et al., published January 2018. As an example, when k is the length of the BitString, the value BitStringLen is log 2(k)−5. As such, BitStringLen=1 indicates k=64, and BitStringLen=7 indicates k=4096.
The sub-domain ID field 612 includes a unique value that identifies the sub-domain within the BIER domain. The MT-ID field 614 includes a value that identifies the topology (e.g., BGP, BIER-TE, etc.) associated with the BIER sub-domain. The BIFT-id field 616 includes a value that identifies a BIFT (e.g., the BIER-TE BIFT 200 of
The SI field 620 includes a value that identifies the set (e.g., 6 from the BIER-TE BIFT 200 of
The type field 1102 includes a value that indicates that the sub-TLV is a traffic for IPv4 description sub-TLV 1100. The length field 1104 includes a value that indicates a length of the sub-TLV. The reserved fields 1106 and 1108 (which may be one field) are set to zero and ignored by the receiver. The S-bit field 1110 and the G-bit field 1112 describe the multicast wildcarding in use. When the S bit is set (e.g., has a value of 1), then source wildcarding is in use and the values in the source mask length field 1114 and source address field 1118 are ignored. When the G bit is set (e.g., has a value of 1), then group wildcarding is in use and the values in the group mask length field 1116 and group multicast address field 1120 are ignored. The G bit is not set unless the S bit is also set. Therefore, the receiver responds with an error (Malformed Multicast Traffic) when a traffic description sub-TLV 1100 is received with S bit=0 and G bit=1.
The source mask length field 1114 includes a value that indicates a length of the source address field 1118. The group mask length field 1116 includes a value that indicates a length of the group multicast address field 1120. The source address field 1118 contains source prefixes for matching against packets and is up to 4 bytes in length. The group multicast address field 1120 contains group prefixes for matching against packets and is up to 4 bytes in length.
The type field 1202 includes a value that indicates that the sub-TLV is a traffic for IPv6 description sub-TLV 1200. The length field 1204 includes a value that indicates a length of the sub-TLV. The reserved fields 1206 and 1208 (which may be one field) are set to zero and ignored by the receiver. The S bit field 1210 and the G bit field 1212 describe the multicast wildcarding in use. When the S bit is set (e.g., has a value of 1), then source wildcarding is in use and the values in the source mask length field 1214 and source address field 1218 are ignored. When the G bit is set (e.g., has a value of 1), then group wildcarding is in use and the values in the group mask length field 1216 and group multicast address field 1220 are ignored. The G bit is not set unless the S bit is also set. Therefore, the receiver responds with an error (Malformed Multicast Traffic) when a traffic description sub-TLV 1200 is received with S bit=0 and G bit=1.
The source mask length field 1214 includes a value that indicates a length of the source address field 1218. The group mask length field 1216 includes a value that indicates a length of the group multicast address field 1220. The source address field 1218 contains source prefixes for matching against packets and is up to 16 bytes in length. The group multicast address field 1220 contains group prefixes for matching against packets and is up to 16 bytes in length.
In an embodiment, and with regard to the traffic description sub-TLVs 1100 and the traffic description sub-TLV 1200, three multicast mappings may be achieved, as follows. First, (S, G): S bit=0, G bit=0, the source address and group multicast address prefixes are both used to define the multicast traffic. Second, (*, G): S bit=1, G bit=0, the group multicast address prefix is used to define the multicast traffic, but the source address prefix is ignored. Third, (*, *): S bit=1, G bit=1, the source address and group multicast address prefixes are both ignored.
In block 1402, the controller generates an update message comprising a BIER-TE path subsequent address family indicator (SAFI), a network layer reachability information (NLRI) including a distinguisher field, and an attribute including a type length value (TLV) having a tunnel type and a path bit positions sub-TLV.
In an embodiment, the distinguisher field comprises a value that uniquely identifies content associated with the NLRI or of a BIER-TE path. In an embodiment, the NLRI includes a tunnel identifier field comprising a sub-domain identifier (ID), a bit forwarding router identifier (BFR-id) field, and a tunnel ID field, wherein the sub-domain identifier identifies a sub-domain through which a BIER-TE tunnel crosses, the BFR-id field identifies a bit forwarding ingress router (BFIR) of the BIER-TE tunnel, and the tunnel ID field uniquely identifies the BIER-TE tunnel within the BFIR and the sub-domain. The NLRI is associated with or has the attribute including a type length value (TLV) having a tunnel type and a path bit positions sub-TLV.
In an embodiment, the tunnel identifier field comprises a BFR prefix of a bit forwarding ingress router (BFIR) of a BIER-TE tunnel. In an embodiment, the attribute comprises a tunnel encapsulation attribute (TEA). In an embodiment, the attribute comprises a P-Multicast Service Interface (PSMI) tunnel attribute (PTA). In an embodiment, the path bit positions sub-TLV includes a bit index forwarding table identifier (BIFT-id) field, a set identifier (SI) field, and a bitstring field. In an embodiment, the update message is distributed to a BGP peer running on a bit forwarding ingress router (BFIR) of the BIER-TE domain.
In an embodiment, the TLV further comprises a path name sub-TLV that encodes a name of a BIER-TE path. In an embodiment, the TLV further comprises a traffic description sub-TLV that encodes multicast traffic transported by a BIER-TE path. In an embodiment, the TLV further comprises a service sub-TLV that contains a service identifier (ID) or a label to be added into a packet to be carried by a BIER-TE path.
In an embodiment, the TLV further comprises a path identifier sub-TLV that contains a sub-domain identifier (sub-domain-id) field, a bit forwarding ingress router identifier (BFIR-id) field, a tunnel ID field, and a path number field. In an embodiment, the update message further comprises an address family indicator (AFI) that identifies Internet Protocol version four (IPv4) or Internet Protocol version six (IPv6).
In block 1404, the controller distributes the update message to a bit forwarding router (BFR) in the BIER-TE domain. In an embodiment, the controller distributes the update message directly to the ingress BFR. In an embodiment, the controller distributes the update message to a neighbor network node of the ingress network node, and the neighbor network node advertises the update message to the ingress network node.
The processor/processing means 1530 is implemented by hardware and software. The processor/processing means 1530 may be implemented as one or more CPU chips, cores (e.g., as a multi-core processor), field-programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), and digital signal processors (DSPs). The processor/processing means 1530 is in communication with the ingress ports/ingress means 1510, receiver units/receiving means 1520, transmitter units/transmitting means 1540, egress ports/egress means 1550, and memory/memory means 1560. The processor/processing means 1530 comprises a BIER-TE module 1570. The BIER-TE module 1570 is able to implement the methods disclosed herein. The inclusion of the BIER-TE module 1570 therefore provides a substantial improvement to the functionality of the network apparatus 1500 and effects a transformation of the network apparatus 1500 to a different state. Alternatively, the BIER-TE module 1570 is implemented as instructions stored in the memory/memory means 1560 and executed by the processor/processing means 1530.
The network apparatus 1500 may also include input and/or output (I/O) devices or I/O means 1580 for communicating data to and from a user. The I/O devices or I/O means 1580 may include output devices such as a display for displaying video data, speakers for outputting audio data, etc. The I/O devices or I/O means 1580 may also include input devices, such as a keyboard, mouse, trackball, etc., and/or corresponding interfaces for interacting with such output devices.
The memory/memory means 1560 comprises one or more disks, tape drives, and solid-state drives and may be used as an over-flow data storage device, to store programs when such programs are selected for execution, and to store instructions and data that are read during program execution. The memory/memory means 1560 may be volatile and/or non-volatile and may be read-only memory (ROM), random access memory (RAM), ternary content-addressable memory (TCAM), and/or static random-access memory (SRAM).
While several embodiments have been provided in the present disclosure, it may be understood that the disclosed systems and methods might be embodied in many other specific forms without departing from the spirit or scope of the present disclosure. The present examples are to be considered as illustrative and not restrictive, and the intention is not to be limited to the details given herein. For example, the various elements or components may be combined or integrated in another system or certain features may be omitted, or not implemented.
In addition, techniques, systems, subsystems, and methods described and illustrated in the various embodiments as discrete or separate may be combined or integrated with other systems, components, techniques, or methods without departing from the scope of the present disclosure. Other examples of changes, substitutions, and alterations are ascertainable by one skilled in the art and may be made without departing from the spirit and scope disclosed herein.
This patent application is a continuation of International Application No. PCT/US2022/034351 filed on Jun. 21, 2022, which claims the benefit of U.S. Provisional Patent Application No. 63/212,884 filed Jun. 21, 2021 by Futurewei Technologies, Inc., and titled “PCE for BIER-TE Path,” each of which is hereby incorporated by reference.
Number | Date | Country | |
---|---|---|---|
63212884 | Jun 2021 | US |
Number | Date | Country | |
---|---|---|---|
Parent | PCT/US2022/034351 | Jun 2022 | US |
Child | 18391217 | US |