The present disclosure relates to, but is not limited to, the network communication technology and, in particular, relates to a Bit Indexed Explicit Replication (BIER) packet transmission method and device.
Internet Protocol (IP) multicast technologies realize efficient point-to-multipoint data transmission in an IP network, effectively saving a network bandwidth and reducing a network load. Therefore, IP multicast technologies are widely used in real-time data transmission, multimedia conferencing, data replication, Internet Protocol televisions (IPTVs), gaming, simulation and many other aspects. Related multicast technologies are generally implemented by a Protocol Independent Multicast (PIM) protocol (including a PIM-sparse-mode (PIM-SM) and a PIM-dense-mode (PIM-DM)), a Multicast Source Discovery Protocol (MSDP), etc. A common feature of these multicast protocols is that a control plane multicast tree needs to be constructed. A network plane is turned into a logic tree by such multicast tree to achieve point-to-multipoint data forwarding in multicast forwarding and avoid a loop. Intermediate nodes of such protocols that are based on distribution tree construction need to maintain status of complex multicast forwarding information. With a growing network size and increasing multicast data traffic, such multicast technologies are facing increasingly greater challenges in costs, operation and maintenance.
In view of this, the industry has proposed a new technology called bit indexed explicit replication (BIER) for constructing a multicast forwarding path. This technology presents a new multicast technical architecture that does not require distribution tree construction. As illustrated in
In the BIER domain, each edge BFER is allocated a globally unique bit position in the entire BIER sub-domain. Each BFER uses an interior gateway protocol (IGP) to perform flooding of its own bit position in the BIER domain. All bit positions form a bitstring. Transmission and routing of the data packet depend on the bitstring. When other BFRs receive a packet header containing the BIER, they forward the packet based on a Bit Index Forwarding Table (BIFT) according to the bitstring carried in the packet header. This principle of forwarding based on a BIER bit changes from forwarding based on multicast distribution tree construction to multicast forwarding in a mode of unicast searching and forwarding by using a bit identifier, reducing forwarding costs in a network.
Related BIER technologies take into account only a scenario where routers in a BIER domain support the BIER technologies. If a device in the BIER domain does not support BIER forwarding, a multicast packet will be discarded. Such hybrid networking scenario is a common application scenario at an initial BIER deployment stage.
The following is a summary of a subject matter described herein in detail. This summary is not intended to limit the scope of the claims.
Embodiments of the present disclosure provide a BIER packet transmission method and system, capable of allowing a non-BIER node to transmit a BIER packet in a BIER network.
Embodiments of the present disclosure provide a BIER packet transmission method. The method includes that a BIER node encapsulates a BIER packet according to link capability attribute information supported by a non-BIER node carried by an extended IGP; and the BIER node transmits an encapsulated BIER packet to the non-BIER node.
Optionally, when the IGP is an IS-IS protocol, the link capability attribute information supported by the non-BIER node is carried by a non-bier-tunnel-type sub-Type-Length-Value (sub-TLV) newly added to an extended IS-IS protocol, and the sub-TLV is carried by a router capability TLV of the IS-IS protocol.
Optionally, a tunnel type supported by a non-bier-tunnel-type sub-TLV of the IS-IS protocol includes a Multi-Protocol Label Switching (MPLS) tunnel, a generic routing encapsulation (GRE) tunnel and a User Datagram Protocol (UDP) tunnel.
Optionally, when the IGP is an OSPF protocol, the link capability attribute information is carried by an OSPF non-bier-tunnel-type capability attribute newly added to an extended OSPF protocol, and the attribute is carried by an OSPF router informational capability.
Optionally, a tunnel type supported by an OSPF non-bier-tunnel-type capability attribute of the OSPF protocol includes an MPLS tunnel, a GRE tunnel and a UDP tunnel.
Optionally, the method further includes that the BIER node decapsulates the encapsulated BIER packet received from the non-BIER node to obtain the BIER packet.
Optionally, the BIER node encapsulates the BIER packet according to the link capability attribute information supported by the non-BIER node carried by the extended IGP as follows: The BIER node encapsulates the BIER packet according to a tunnel type that is included in the link capability attribute information supported by the non-BIER node carried by the extended IGP.
Embodiments of the present disclosure further provide a computer-readable storage medium, which is configured to store computer-executable instructions for executing any method described above.
Embodiments of the present disclosure further provide a BIER packet transmission device. The device is applied to a BIER node and includes an encapsulation module configured to encapsulate a BIER packet according to link capability attribute information supported by a non-BIER node carried by an extended IGP; and a transmission module configured to transmit an encapsulated BIER packet to the non-BIER node.
Optionally, when the IGP is an IS-IS protocol, the link capability attribute information supported by the non-BIER node is carried by a non-bier-tunnel-type sub-Type-Length-Value (sub-TLV) newly added to an extended IS-IS protocol, and the sub-TLV is carried by a router capability TLV of the IS-IS protocol.
Optionally, a tunnel type supported by a non-bier-tunnel-type sub-TLV of the IS-IS protocol includes an MPLS tunnel, a GRE tunnel and a UDP tunnel.
Optionally, when the IGP is an OSPF protocol, the link capability attribute information is carried by a non-bier-tunnel-type capability attribute newly added to an extended OSPF protocol, and the attribute is carried by an OSPF router informational capability.
Optionally, a tunnel type supported by a non-bier-tunnel-type capability attribute of the OSPF protocol includes an MPLS tunnel, a GRE tunnel and a UDP tunnel.
Optionally, the device further includes a decapsulation module configured to decapsulate the encapsulated BIER packet received from the non-BIER node to obtain the BIER packet.
Optionally, the encapsulation module is configured to encapsulate the BIER packet according to a tunnel type that is included in the link capability attribute information supported by the non-BIER node carried by the extended IGP.
In embodiments of the present disclosure, a BIER node encapsulates a BIER packet according to link capability attribute information supported by a non-BIER node carried by an extended IGP; and the BIER node transmits an encapsulated BIER packet to the non-BIER node. In this way, in embodiments of the present disclosure, capability notification and negotiation are performed according to the link attribute supported by the non-BIER node, and different forwarding tunnels are constructed for the BIER packet according to different link attributes, so that the non-BIER node can transmit the BIER packet in a BIER network.
Other aspects can be understood after the accompanying drawings and detailed description are read and understood.
Embodiments of the present disclosure will be described below in detail with reference to the accompanying drawings. It is to be understood that the embodiments described below are intended to explain and illustrate the present disclosure, but not to limit the present disclosure.
In step 11, a BIER node encapsulates a BIER packet according to link capability attribute information supported by a non-BIER node carried by an extended IGP.
The step 11 includes that the BIER node encapsulates the BIER packet according to a tunnel type that is included in the link capability attribute information supported by the non-BIER node carried by the extended IGP.
In an embodiment, when the IGP is an IS-IS protocol, the link capability attribute information supported by the non-BIER node is carried by a non-bier-tunnel-type sub-TLV newly added to an extended IS-IS protocol, and the sub-TLV is carried by a router capability TLV of the IS-IS protocol. A tunnel type supported by a non-bier-tunnel-type sub-TLV of the IS-IS protocol includes a Multi-Protocol Label Switching (MPLS) tunnel, a Generic Routing Encapsulation (GRE) tunnel and a User Datagram Protocol (UDP) tunnel.
A value of the type field of the IS-IS router capability TLV is 242. The IS-IS router capability TLV is carried by an LSP message of the IS-IS protocol and used for notifying related router capability information.
In an embodiment, when the IGP is an OSPF protocol, the link capability attribute information is carried by a non-bier-tunnel-type capability attribute newly added to an extended OSPF protocol, and the attribute is carried by an OSPF router informational capability. A tunnel type supported by an OSPF non-bier-tunnel-type capability attribute of the OSPF protocol includes an MPLS tunnel, a GRE tunnel and a UDP tunnel.
The OSPF router informational capability is a field in a message in a notification process of a related OSPF protocol BFR.
In step 12, the BIER node transmits the encapsulated BIER packet to the non-BIER node.
Additionally, the method further includes that the BIER node decapsulates the encapsulated BIER packet received from the non-BIER node to obtain the BIER packet.
By way of example, in
The present disclosure will be described below in detail through multiple embodiments.
In this embodiment, an IS-IS protocol is used as a control plane protocol to construct a BIER forwarding infrastructure in the BIER technology. The IS-IS protocol notifies a BIER sub-domain identifier (sub-domain ID), a BFR identifier (BFR-ID), a BFR prefix and other necessary information. The IS-IS protocol uses such information to construct a BIER bit index forwarding information table based on a shortest path tree algorithm. In this embodiment, the IS-IS protocol is used to notify parameters such as tunnel type information. A specific implementation mode will be described below in detail with reference to
A value of the type is 242. The IS-IS router capability TLV is encapsulated in a label switched path (LSP) packet of the IS-IS protocol to define and distribute a capability attribute for a device. Related definitions include a capability description for a traffic engineering (TE) node, a Nickname sub-TLV of a Transparent Interconnection of Lots of Links (TRILL) protocol, an AFFINITY sub-TLV of the TRILL protocol, an IPv4 TE Router ID sub-TLV, an IPv6 TE Router ID sub-TLV of a TRILL and the like. In this embodiment, a non-bier-tunnel-type sub-TLV is added to a router capability TLV of an extended IS-IS protocol and used for carrying non-BFR tunnel type information. A format of the non-bier-tunnel-type sub-TLV is illustrated in
A value of the type field is recommended to be 19 or to be determined. The value of the type field may be undetermined and assigned by the Internet Assigned Numbers Authority (IANA) of the Internet Engineering Task Force (IETF). The tunnel type field indicates a type of a tunnel. A length of this field is 8 bits. A value of each bit is described below.
The tunnel type bit 0 is set to 1, the tunnel type is MPLS tunnel.
The tunnel type bit 1 is set to 1, the tunnel type is GRE tunnel.
The tunnel type bit 2 is set to 1, the tunnel type is UDP tunnel.
Bits 4 to 7 are reserved for future expansion.
The sub-TLV includes fields of type, length and value. Values of the type filed and descriptions corresponding to the values are listed below.
In this embodiment, the BIER technology uses an OSPF routing protocol (including OSPFv2 and OSPFv3) as its control plane protocol. The notification principle and the path calculation mode of the OSPFv2 and those of the OSPFv3 are similar to each other. Therefore, in a scenario where the OSPF is used as the control plane protocol of the BIER technology, an extended OSPF notifies parameters such as tunnel type information.
The tunnel type field indicates a type of a tunnel. A length of this field is 8 bits. A value of each bit is described below.
Tunnel type bit 0 is set to 1, the tunnel type is MPLS tunnel.
Tunnel type bit 1 is set to 1, the tunnel type is GRE tunnel.
Tunnel type bit 2 is set to 1, the tunnel type is UDP tunnel.
Bits 4 to 7 are reserved for future expansion.
This embodiment describes a packet transmission process in the case a non-BFR node in a BIER network supports an MPLS tunnel.
In step 301, the ingress node BFIR1 receives a multicast packet that needs to be forwarded to the destination node BFER6.
In step 302, the BFIR1 selects, according to a locally prestored mapping relation between multicast addresses and bitstrings (the mapping relation is specified in advance by a control plane and is a common technology in the industry, and thus is not described here), a corresponding bitstring1 to encapsulate a BIER packet header, and encapsulates an MPLS packet header according to an MPLS label1 of an IGP protocol (e.g., IS-IS protocol or OSPF protocol) notification (notified by the BFR2), and then the BFIR1 transmits the encapsulated packet to the BFR2.
In step 303, after receiving the packet, the BFR2 extracts the BIER packet header, and searches for a corresponding neighbor BFR according to a local bit index forwarding table (BIFT) by using the method illustrated in
In step 304, after receiving the packet, the non-BFR3 forwards the packet according to the outer layer of MPLS packet header. The non-BFR3 exchanges the MPLS label23 in the outer layer of MPLS packet header with an MPLS label34, and then forwards the packet to the non-BFR4. The non-BFR3 does not process the inner layer of MPLS packet header and the BIER packet header.
In step 305, after receiving the packet, the non-BFR4 also forwards the packet according to the outer layer of MPLS packet header. The non-BFR4 exchanges the MPLS label34 in the outer layer of MPLS packet header with an MPLS label45, and then forwards the packet to the BFR5.
In step 306, after receiving the packet transmitted by the non-BFR4, the BFR5 extracts the outer layer of MPLS packet header. The BFR5 discovers that a destination address is the BFR5 itself, and continues to extract the inner layer of MPLS packet header and the BIER packet header. The BFR5 searches for a corresponding neighbor BFR according to a BIFT by using the method illustrated in
In step 307, after receiving the packet transmitted by the BFR5, the BFER6 extracts the MPLS packet header and the BIER packet header. The BFER6 discovers that a destination address is the BFER6 itself, decapsulates the MPLS packet header and the BIER packet header, and forwards payload data to a destination user.
At this point, transmission of the multicast packet across the non-BFR node through the MPLS tunnel in the BIER network is completed.
This embodiment describes a packet transmission process when a non-BFR node in a BIER network supports a GRE tunnel.
In step 401, the ingress node BFIR1 receives a multicast packet that needs to be forwarded to the destination node BFER6.
In step 402, the BFIR1 selects, according to a locally prestored mapping relation between multicast addresses and bitstrings (the mapping relation is specified in advance by a control plane and is a common technology in the industry, and thus is not described here), a corresponding bitstring1 to encapsulate a BIER packet header, and then transmits the encapsulated packet to the BFR2.
In step 403, after receiving the packet, the BFR2 extracts the BIER packet header and searches for a corresponding neighbor BFR according to a local Bit Index Forwarding Table (BIFT) by using the method illustrated in
In step 404, after receiving the packet, the non-BFR3 searches an IP routing table according to the outer layer of IP packet header, and forwards the packet without changing contents of the BIER packet header, the GRE packet header and the IPv4 packet header (except a time to live (TLL) field).
In step 405, after receiving the packet, the non-BFR4 also forwards the packet according to the outer layer of IP packet header.
In step 406, after receiving the packet transmitted by the non-BFR4, the BFR5 extracts the outer layer of IP packet header. The BFR5 discovers that a destination address is the BFR5 itself, and continues to extract the GRE packet header and the BIER packet header. The BFR5 searches for a corresponding neighbor BFR according to a BIFT by using the method illustrated in
In step 407, after receiving the packet transmitted by the BFR5, the BFER6 extracts the BIER packet header. The BFER6 discovers that a destination address is the BFER6 itself, decapsulates the BIER header, and forwards payload data to a destination user.
This embodiment describes a packet transmission process when a non-BFR node in a BIER network supports a UDP tunnel.
In step 501, the ingress node BFIR1 receives a multicast packet that needs to be forwarded to the destination node BFER6.
In step 502, the BFIR1 selects, according to a locally prestored mapping relation between multicast addresses and bitstrings (the mapping relation is specified in advance by a control plane and is a common technology in the industry, and thus is not described here), a corresponding bitstring1 to encapsulate a BIER packet header, and then transmits the encapsulated packet to the BFR2.
In step 503, after receiving the packet, the BFR2 extracts the BIER packet header and searches for a corresponding neighbor BFR according to a local Bit Index Forwarding Table (BIFT) by using the method illustrated in
In step 504, after receiving the packet, the non-BFR3 searches an IP routing table according to the outer layer of IP packet header and forwards the packet without changing contents of the BIER packet header, the GRE header and the IPv4 packet header (except a time to live (TLL) field).
In step 505, after receiving the packet, the non-BFR4 also forwards the packet according to the outer layer of IP packet header.
In step 506, after receiving the packet transmitted by the non-BFR4, the BFR5 extracts the outer layer of IP packet header. The BFR5 discovers that a destination address is the BFR5 itself, and continues to extract the UDP header and the BIER header. For the extracted BIER header, the BFR5 searches for a corresponding neighbor BFR according to a BIFT by using the method illustrated in
In step 507, after receiving the packet transmitted by the BFR5, the BFER6 extracts the BIER packet header. The BFER6 discovers that a destination address is the BFER6 itself, decapsulates the BIER header, and forwards payload data to a destination user.
Embodiments of the present disclosure further provide a computer-readable storage medium, which is configured to store computer-executable instructions for executing any method described above.
Moreover, referring to
The encapsulation module is configured to encapsulate the BIER packet according to a tunnel type that is included in the link capability attribute information supported by the non-BIER node and carried by the extended IGP.
In an embodiment, when the IGP is an IS-IS protocol, the link capability attribute information supported by the non-BIER node is carried by a non-bier-tunnel-type sub-TLV newly added to an extended IS-IS protocol, and the sub-TLV is carried by a router capability TLV of the IS-IS protocol. A tunnel type supported by a non-bier-tunnel-type sub-TLV of the IS-IS protocol includes an MPLS tunnel, a GRE tunnel and a UDP tunnel.
In an embodiment, when the IGP is an OSPF protocol, the link capability attribute information is carried by a non-bier-tunnel-type capability attribute newly added to an extended OSPF protocol, and the attribute is carried by an OSPF router informational capability. A tunnel type supported by an OSPF non-bier-tunnel-type capability attribute of the OSPF protocol includes an MPLS tunnel, a GRE tunnel and a UDP tunnel.
In an embodiment, the device further includes a decapsulation module configured to decapsulate the encapsulated BIER packet received from the non-BIER node to obtain the BIER packet.
Moreover, a processing procedure of the device is the same as that of the method described above, and thus will not be repeated herein.
It will be understood by those of ordinary skill in the art that all or part of the steps in the methods described above may be implemented by related hardware (e.g., a processor) instructed by one or more programs, and these programs may be stored in a computer-readable storage medium such as a ROM, a magnetic disk, an optical disk or the like. Optionally, all or part of the steps in the embodiments described above may also be implemented using one or more integrated circuits. Accordingly, the modules/units in the embodiments described above may be implemented by hardware. For example, the functions of these modules/units may be implemented by one or more integrated circuits. Alternatively, these modules/units may be implemented by software function modules. For example, the functions of these modules/units may be implemented by using a processor to execute program instructions stored in a storage medium. The present disclosure is not limited to any specific combination of hardware and software.
The above illustrates basic principles, main features and advantages of the present disclosure. The present disclosure is not limited to the above embodiments. The above embodiments and specification describe only the principle of the present disclosure. Various modifications and improvements may be made in the present disclosure without departing from the spirit and scope of the present disclosure. These modifications and improvements are within the scope of the present disclosure.
The above technical solution realizes that a non-BIER node can transmit a BIER packet in a BIER network.
Number | Date | Country | Kind |
---|---|---|---|
201510397641.X | Jul 2015 | CN | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/CN2016/075970 | 3/9/2016 | WO | 00 |