Method and apparatus for multicast forwarding across autonomous system (AS)
By deploying a hierarchical BIER on the ASBR and modifying the BFR ID, the problem of BFR ID conflict in cross-AS multicast forwarding was resolved, achieving an effective solution for cross-AS multicast forwarding without affecting existing multicast services.
Patent Information
- Application Number
- CN202180003943.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-14
- Publication Date
- 2025-11-07
- Estimated Expiration
- 2041-12-14
AI Technical Summary
In the BIER domain across Autonomous Systems (AS), BFR ID conflicts cause problems with cross-AS multicast forwarding, affecting the effectiveness of multicast forwarding.
By deploying hierarchical BIERs on ASBRs, modifying or upgrading ASBRs to achieve cross-AS multicast forwarding, BIER multicast forwarding information is established using multicast join messages initiated by multicast receivers, and the BFR ID is modified to resolve ID conflicts.
It effectively solves the problem of cross-AS multicast forwarding, avoids the impact of BFR ID conflicts on the original multicast services, and is easy to expand.
Smart Images

Figure CN116601931B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to network communication technology, in particular to a multicast forwarding method and device across autonomous systems (AS). BACKGROUND
[0002] When Bit Indexed Explicit Replication (BIER) is deployed across AS, multicast within the same AS is limited to forwarding within its corresponding operator self-domain (referred to as BIER domain).
[0003] With the continuous development of multicast services, there is currently a multicast forwarding requirement across AS. As described above, each AS is deployed with a corresponding BIER domain, and here the cross-AS can also be referred to as cross-BIER domain. However, since the identifiers (IDs) of bit forwarding routers (BFRs) of edge devices within different ASs have been pre-configured, different devices within different ASs are often configured with the same BFR ID when multicast is forwarded across AS, that is, the BFR ID conflict problem occurs when multicast is forwarded across AS. The BFR ID conflict that occurs when multicast is forwarded across AS will affect multicast forwarding across AS. SUMMARY
[0004] Embodiments of the present application provide a multicast forwarding method and device across autonomous systems (AS) to solve the problem of multicast forwarding across AS caused by BFR ID conflict in different BIER domains.
[0005] Embodiments of the present application provide a multicast forwarding method across autonomous systems (AS),
[0006] The method is applied to a network device, which is deployed as a bit forwarding egress router (BFER) in a first BIER domain and a bit forwarding ingress router (BFIR) in a second BIER domain, the first BIER domain is a BIER domain to which a first AS belongs, the second BIER domain is a BIER domain to which a second AS belongs, and the network device is located within the second AS; the method comprises:
[0007] According to a multicast join message initiated by a multicast receiver, a BIER multicast forwarding information for multicast forwarding in the second BIER domain is established; the multicast receiver is connected to a second edge node in the second AS, and the second edge node serves as a BFER in the second BIER domain; the multicast join message is used to join a target multicast group, and the target multicast group is a multicast group to which a multicast source connected to a first edge node in the first AS belongs; the first edge node serves as a BFIR of the first BIER domain;
[0008] The second-bit-forwarding router identifier (BFR ID) carried in the multicast join message is modified to a first BFR ID, and the multicast join message is continuously sent to the first edge node; the first BFR ID is a BFR ID configured for the network device when the network device is deployed as a BFER in a first BIER domain.
[0009] The embodiment of the application further provides a multicast forwarding method across autonomous systems (ASs), which is applied to a network device, wherein the network device is deployed as a bit-forwarding egress router (BFER) in a first BIER domain and as a bit-forwarding ingress router (BFIR) in a second BIER domain, the first BIER domain is a BIER domain to which a first AS belongs, the second BIER domain is a BIER domain to which a second AS belongs, and the network device is in the second AS; and the method comprises the following steps:
[0010] receiving a first multicast message belonging to a target multicast group and used for multicast forwarding in the first BIER domain; the first multicast message is originated from a multicast source connected to a first edge node in the first AS, and the first edge node is a BFIR of the first BIER domain; and the target multicast group is a multicast group to which the multicast source belongs;
[0011] converting the first multicast message used for multicast forwarding in the first BIER domain into a second multicast message used for multicast forwarding in the second BIER domain according to BIER multicast forwarding information corresponding to the target multicast group; the BIER multicast forwarding information is established according to multicast join messages initiated by multicast receivers connected to edge nodes in the second BIER domain when the multicast receivers join the target multicast group;
[0012] forwarding the second multicast message in the second BIER domain.
[0013] The embodiment of the application further provides a multicast forwarding device applied to multicast forwarding across autonomous systems (ASs), which is applied to a network device, wherein the network device is deployed as a bit-forwarding egress router (BFER) in a first BIER domain and as a bit-forwarding ingress router (BFIR) in a second BIER domain, the first BIER domain is a BIER domain to which a first AS belongs, the second BIER domain is a BIER domain to which a second AS belongs, and the network device is in the second AS; and the device comprises the following units:
[0014] The forwarding information establishing unit is configured to establish BIER multicast forwarding information for multicast forwarding in the second BIER domain according to a multicast join message initiated by a multicast receiver, wherein the multicast receiver is connected to a second edge node in the second AS, and the second edge node serves as a BFER in the second BIER domain; the multicast join message is used to join a target multicast group, and the target multicast group is a multicast group to which a multicast source connected to a first edge node in the first AS belongs; and the first edge node serves as a BFIR in the first BIER domain.
[0015] The first message forwarding unit is configured to modify a bit forwarding router identifier (BFR ID) of the second edge node carried in the multicast join message to a first BFR ID and continue to send the multicast join message to the first edge node, wherein the first BFR ID is a BFR ID configured for the network device when the network device is deployed as a BFER in the first BIER domain.
[0016] The embodiment of the application further provides a multicast forwarding device across autonomous systems (AS), which is applied to a network device, wherein the network device is deployed as a bit forwarding egress router (BFER) in a first BIER domain and a bit forwarding ingress router (BFIR) in a second BIER domain, the first BIER domain is a BIER domain to which a first AS belongs, the second BIER domain is a BIER domain to which a second AS belongs, and the network device is located in the second AS; the device comprises:
[0017] The multicast message receiving unit is configured to receive a first multicast message belonging to a target multicast group and used for multicast forwarding in the first BIER domain, wherein the first multicast message is originated from a multicast source connected to a first edge node in the first AS, the first edge node serves as a BFIR in the first BIER domain, and the target multicast group is a multicast group to which the multicast source belongs.
[0018] The multicast message converting unit is configured to convert the first multicast message originally used for multicast forwarding in the first BIER domain into a second multicast message used for multicast forwarding in the second BIER domain according to BIER multicast forwarding information corresponding to the target multicast group, wherein the BIER multicast forwarding information is established according to multicast join messages initiated by multicast receivers connected to each edge node in the second BIER domain when joining the target multicast group.
[0019] The second message forwarding unit is configured to forward the second multicast message in the second BIER domain.
[0020] From the above technical solutions can be seen, in the present application, by deploying hierarchical BIER, i.e. BFER in the first BIER domain and BFIR in the second BIER domain, on the ASBR of an AS, so that the ASBR converts the multicast message from the first BIER domain and forwards it in the second BIER domain, which solves the cross-AS multicast forwarding problem caused by BFR ID conflict in different BIER domains.
[0021] Further, the embodiment only needs to modify or upgrade the ASBR of the AS to realize cross-AS multicast forwarding, which has no effect on the original multicast service or other devices and is easy to expand. BRIEF DESCRIPTION OF DRAWINGS
[0022] The accompanying drawings, which are incorporated herein and form part of the specification, illustrate embodiments consistent with the present disclosure and, together with the description, further serve to explain the principles of the present disclosure.
[0023] Figure 1 A networking structure diagram provided for the embodiment of the present application;
[0024] Figure 2 A method flowchart provided for the embodiment of the present application;
[0025] Figure 3 A networking diagram for the embodiment of the present application;
[0026] Figure 4 Another method flowchart provided for the embodiment of the present application;
[0027] Figure 5 A multicast message forwarding diagram provided for the embodiment of the present application;
[0028] Figure 6 An IPv6 basic message header structure diagram provided for the embodiment of the present application;
[0029] Figure 7 An apparatus structure diagram provided for the embodiment of the present application;
[0030] Figure 8 Another apparatus structure diagram provided for the embodiment of the present application;
[0031] Figure 9 An electronic device structure diagram provided for the embodiment of the present application. DETAILED DESCRIPTION
[0032] The exemplary embodiments will be described in detail herein with reference to the attached drawings. The description of the exemplary embodiments is intended to apply to various alternative designs of the embodiments, as would be understood by those skilled in the art. In the following description of examples, for purposes of explanation, specific values are set forth; however, persons having ordinary skill in the art, with access to the present disclosure, will recognize that the forgoing and related examples can be practiced without such specific values. The description of examples is not meant to limit the application, but to explain the inventive principles of the application.
[0033] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. As used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise.
[0034] In order to make the technical solutions provided by the embodiments of the application better understood by those skilled in the art, and to make the above-mentioned purposes, characteristics and advantages of the embodiments of the application more apparent and easy to understand, the technical solutions in the embodiments of the application will be further described in detail below with reference to the drawings.
[0035] In order to realize the multicast forwarding across AS, the BIER hierarchical forwarding framework is constructed in the embodiments of the application. Taking the BIER two-level forwarding framework as an example, the BIER two-level forwarding framework can be: at least one border router (ASBR: Autonomous System Border Router) of an AS is deployed as a bit forwarding egress router (BFER: Bit Forwarding Egress Router) in a BIER domain to which the AS belongs, and is also deployed as a bit forwarding ingress router (BFIR: Bit Forwarding Ingress Router) in a BIER domain to which another AS belongs. Corresponding to the BIER two-level forwarding framework, the above-mentioned ASBR can be a BIER hierarchical forwarding device. As shown in FIG. 1, ASBR2_1 is a BIER hierarchical forwarding device, which is deployed as a BFER in a BIER domain to which AS1 belongs, and is also deployed as a BFIR in a BIER domain to which AS2 belongs. Figure 1 If a multicast receiver under AS2 needs to receive a multicast message of a multicast source under AS1, based on the above-mentioned deployment, ASBR2_1 will forward the multicast message initiated by the multicast source to the multicast receiver under AS2. The following will be described by taking the BIER two-level forwarding framework as an example. Figure 2 The method provided by the embodiments of the application will be described:
[0036] Referring to Figure 2 , Figure 2A method flowchart is provided for an embodiment of the present application. The flowchart is applied to a network device. The network device is deployed as a BFER in a first BIER domain and a BFIR in a second BIER domain. It should be noted that the first BIER domain and the second BIER domain are only named for the convenience of description, and are not used for limitation.
[0037] Optionally, in the embodiment, the first BIER domain and the second BIER domain are BIER domains belonging to different ASes, for example, the first BIER domain is a BIER domain belonging to a first AS, and the second BIER domain is a BIER domain belonging to a second AS. In the embodiment, the network device is in the second AS.
[0038] As shown in the flowchart, Figure 2 the flowchart can include the following steps:
[0039] Step 201: establishing BIER multicast forwarding information for multicast forwarding in the second BIER domain according to a multicast join message initiated by a multicast receiver.
[0040] In the embodiment, the multicast receiver is connected to an edge node (referred to as a second edge node) in the second AS, and the second edge node serves as a BFER in the second BIER domain.
[0041] In the embodiment, the multicast join message is used to join a target multicast group. Here, the target multicast group is a multicast group to which a multicast source connected to a first edge node in the first AS belongs. In the embodiment, the first edge node serves as a BFIR of the first BIER domain.
[0042] Optionally, in the embodiment, when a multicast receiver connected to any edge node in the second BIER domain wants to join the target multicast group, the multicast receiver will send a multicast join message. The edge node connected to the multicast receiver in the second BIER domain will receive the multicast join message, and will continue to forward the multicast message, and finally the multicast join message will be forwarded to the network device in the second BIER domain. When the network device receives the multicast join message, it will establish BIER multicast forwarding information for multicast forwarding in the second BIER domain according to the received multicast join message. That is, the network device establishes BIER multicast forwarding information for multicast forwarding in the second BIER domain according to the multicast join message initiated by the multicast receiver in step 201.
[0043] Optionally, in the embodiment, the BIER multicast forwarding information corresponds to the target multicast group, and at least includes a BFR ID configured for the second edge node connected to the multicast receiver in the second BIER domain, and a next-hop neighbor to the second edge node. The BIER multicast forwarding information will be described in detail below. Figure 3An example is described below to illustrate how to establish the BIER multicast forwarding information, which is not described herein.
[0044] In step 202, the BFR ID of the second edge node carried in the multicast join message is modified to the first BFR ID, and the multicast join message is continuously sent to the first edge node; the first BFR ID is the BFR ID configured for the network device when it is deployed as a BFER in the first BIER domain.
[0045] In the embodiment, the network device will also send a multicast join message to the next hop of the routing information from the device to the multicast source according to the learned routing information, as the BFER of the first BIER domain. As described in step 202, the multicast join message will no longer carry the BFR ID of the second edge node in the second BIER domain, but will be replaced by the first BFR ID. Of course, in this embodiment, the multicast join message will also continue to carry the multicast source S and the multicast group G. Finally, the first edge node in the first BIER domain will receive the multicast join message.
[0046] Optionally, in this embodiment, when the first edge node receives the multicast join message sent by the network device, it will establish a relationship between (multicast source S, multicast group G) and the first BFR-ID. After that, when the first edge node receives a multicast message from the multicast source S belonging to the multicast group G, it will send the multicast message to the network device according to the established relationship between (multicast source S, multicast group G) and the first BFR-ID. For details, please refer to the multicast message forwarding shown in Figure 4 or Figure 5 herein.
[0047] At this point, the flow described in Figure 2 is completed.
[0048] As can be seen from the flow shown in Figure 2 , in this embodiment, the hierarchical BIER, i.e., the BFER in the first BIER domain and the BFIR in the second BIER domain, is deployed on the ASBR of an AS. Through the ASBR, the BIER multicast forwarding information for multicast forwarding in the second BIER domain is established according to the multicast join message initiated by the multicast receiver connected to the edge node in the second AS, so as to realize the conversion of the multicast message from the first BIER domain and the forwarding in the second BIER domain, which solves the cross-AS multicast forwarding problem caused by the BFR ID conflict in different BIER domains.
[0049] Further, in this embodiment, the cross-AS multicast forwarding can be realized by simply modifying or upgrading the ASBR of the AS, which has no effect on the original multicast service or other devices, and is easy to expand.
[0050] The following is an example of a network topology. Figure 2 The process is described as follows:
[0051] See Figure 3 , Figure 3 This is a schematic diagram illustrating the network topology used in an embodiment of this application. Figure 3 In the network topology shown, device C in AS2 is deployed as a BFER in BIER domain 301_1 and a BFIR in BIER domain 302_1. Device C is configured with a BFR ID of 10 when acting as a BFER in BIER domain 301_1 and a BFR ID of 6 when acting as a BFIR in BIER domain 302_1. Devices D and H, acting as BFERs in BIER domain 302_1, are configured with BFR IDs of 3 and 2, respectively. Device A, acting as a BFIR in BIER domain 301_1, connects to multicast source S, whose target multicast group is multicast group G. Device D, acting as a BFER in BIER domain 302_1, connects to a multicast receiver.
[0052] based on Figure 3 The network topology shown below is illustrated with an example. Figure 2 The process shown is as follows:
[0053] like Figure 3 As shown, device A, acting as a BFIR connected to the multicast source in BIER domain 301_1, can establish a BGP route with device C based on the Border Gateway Protocol (BGP). Subsequently, when device A receives multicast source information from the multicast source, it will forward the multicast source information based on the established BGP route with device C. Here, the multicast source information can be a message defined by the multicast protocol for notifying the multicast source, which may carry the multicast source S and the multicast group G.
[0054] Device C receives the multicast source information and, assuming the identity of a BFIR in BIER domain 302_1, forwards the multicast source information via BGP routing to all BFER devices within BIER domain 302_1, such as... Figure 3 Devices D and H are shown. Optionally, in this embodiment, after receiving the multicast source information, device C will further record the multicast source information and learn the routing information from device C to the multicast source (wherein, the next hop in the routing information is device A).
[0055] The device D, as a BFER device of the BIER domain 302_1, further records the multicast source information and learns the routing information from the device D to the multicast source (wherein the next hop in the routing information is the device C) after receiving the multicast source information. The device H is similar. Finally, all edge nodes in the BIER domain 302, such as the device D, the device H, the device G and the like, receive the multicast source information.
[0056] Afterwards, if a group of multicast receivers connected to the device D locally needs to join the multicast group G, the multicast receivers send a multicast join message such as a (*, G) join message to the device D.
[0057] When the device D receives the multicast join message for joining the multicast group G sent by the multicast receivers, the device D generates a (S, G) multicast entry corresponding to the multicast group G according to the recorded multicast source information.
[0058] The device D continues to send the multicast join message to the next hop, i.e. the device C, according to the learned routing information from the device D to the multicast source. The multicast join message sent at this time can carry the multicast source S, the multicast group G and the BFR ID of the device D.
[0059] Since the device C is the next hop of the device D sending the multicast join message, the device C receives the multicast join message sent by the device D when the device D sends the multicast join message. When the device C receives the multicast join message sent by the device D, the device C establishes a relationship between (the multicast source S, the multicast group G) and the BFR ID of the device D configured as a BFER in the BIER domain 302_1.
[0060] In this embodiment, the device C further determines the next hop, i.e. the device A as a BFIR in the BIER domain 301_1, according to the learned routing information from the device C to the multicast source. Afterwards, the device C modifies the BFR ID of the device D configured as a BFER in the BIER domain 302_1 carried in the multicast join message to the BFR ID of the device C configured as a BFER in the BIER domain 301_1, and then sends the multicast join message to the next hop, i.e. the device A as a BFIR in the BIER domain 301_1, as a BFER in the BIER domain 301_1. At this time, the multicast join message can carry the multicast source S, the multicast group G and the BFR ID of the device C configured as a BFER in the BIER domain 301_1.
[0061] The device A receives the multicast join message sent by the device C, and establishes a relationship between (the multicast source S, the multicast group G) and the BFR ID of the device C configured as a BFER in the BIER domain 301_1.
[0062] The above describes the transmission of the multicast join message when a group of multicast receivers connected to the device D need to join the multicast group G.
[0063] It should be noted that in the present embodiment, if the multicast receivers connected to multiple different edge nodes (also referred to as BFERs) in the BIER domain 302_1 all need to join the multicast group G, the corresponding bit string (Bitstring) of (multicast source S, multicast group G) and the BIER forwarding table to each BFER can be finally established in the BIER domain 302_1 according to the manner in which the device C establishes the above relationship. At this time, the bit string (Bitstring) of (multicast source S, multicast group G) and the BIER forwarding table to each BFER can also be collectively referred to as BIER multicast forwarding information.
[0064] In the present embodiment, the specified bit in the above Bitstring is set to a set value. The specified bit corresponds to the BFER connected to the multicast receiver in the BIER domain 302_1, such as the device D, and the set value is used to indicate that the multicast message needs to be forwarded to the BFER corresponding to the specified bit. Taking the device D as an example, as described above, the BFR ID of the device D as a BFER in the BIER domain 302_1 is 3, and the third bit in the Bitstring is set to a set value such as 1, which is used to indicate that the multicast message needs to be forwarded to the device D with the BFR ID of 3. As for the BIER forwarding table to each BFER, it at least carries the outgoing interface and the next-hop neighbor. Optionally, in the present embodiment, the above bit string and BIER forwarding table can be collectively referred to as BIER multicast forwarding information, which is used to indicate multicast forwarding in the BIER domain 302_1.
[0065] Of course, if only the multicast receiver connected to the device D in the BIER domain 302_1 needs to join the multicast group G, the BIER multicast forwarding information at this time will include the forwarding table to the device D and the Bitstring. Only the third bit in the Bitstring is set to a set value such as 1, which is used to indicate that the multicast message needs to be forwarded to the device D with the BFR ID of 3, and the other bits can be set to an initial value such as 0, which is used to indicate that the multicast message is not forwarded to the BFER corresponding to the bit. However, regardless of how the above BIER multicast forwarding information at least includes the BFR ID (identified by the Bitstring) configured for the BFER (also referred to as the edge node) connected to the multicast receiver in the BIER domain 302_1 and the next-hop neighbor (indicated by the forwarding table) to the BFER (also referred to as the edge node).
[0066] Similarly, for device A, if the multicast receivers connected under multiple different edge nodes (also referred to as BFERs) in the BIER domain 302_1 all need to join the multicast group G, according to the manner in which device A establishes the above relationship, device A will eventually also establish a Bitstring corresponding to (multicast source S, multicast group G) and a BIER forwarding table to each BFER. As for the Bitstring, the principle is as described above. For example, if device C is configured as a BFR ID of 10 when it is a BFER in the BIER domain 301_1, the 10th bit in the Bitstring is set to a set value, indicating that the multicast packet is forwarded to device C with a BFR ID of 10. As for the BIER forwarding table, it at least carries an outgoing interface and a next-hop neighbor. Compared with the BIER multicast forwarding information established by device C, the Bitstring corresponding to (multicast source S, multicast group G) and the BIER forwarding table to each BFER established in device A can be referred to as a first-level BIER forwarding topology, and the BIER multicast forwarding information established by device C can be referred to as a second-level BIER forwarding topology.
[0067] The above describes the flow provided by the embodiment of the application by way of example. Figure 2 The flow provided by the embodiment of the application is described below.
[0068] Referring to Figure 4 , Figure 4 Another flowchart provided by the embodiment of the application is shown. The flow is applied to the network device described above. As described above, the network device is deployed as a BFER in a first BIER domain and a BFIR in a second BIER domain, the first BIER domain is a BIER domain to which a first AS belongs, the second BIER domain is a BIER domain to which a second AS belongs, and the network device is in the second AS.
[0069] As Figure 4 shown, the method can include the following steps:
[0070] Step 401: receiving a first multicast packet belonging to a target multicast group for multicast forwarding in a first BIER domain.
[0071] In this embodiment, the first multicast packet originates from a multicast source connected to a first edge node in a first AS, and the first edge node is a BFIR of the first BIER domain; and the target multicast group is a multicast group to which the multicast source belongs.
[0072] Step 402: converting the first multicast packet originally used for multicast forwarding in the first BIER domain into a second multicast packet used for multicast forwarding in a second BIER domain according to BIER multicast forwarding information corresponding to the target multicast group.
[0073] In the embodiment, the BIER multicast forwarding information is established according to the multicast join message initiated by the multicast receivers connected to the edge nodes in the second BIER domain when joining the target multicast group.
[0074] Optionally, in the step 402, the first multicast message originally used for multicast forwarding in the first BIER domain is converted into the second multicast message used for multicast forwarding in the second BIER domain according to the BIER multicast forwarding information corresponding to the target multicast group.
[0075] The original multicast message is recovered from the first multicast message.
[0076] When it is determined that the BIER multicast forwarding information corresponding to the target multicast group carried by the original multicast message has been established, the original multicast message is converted into the second multicast message used for multicast forwarding in the second BIER domain according to the BIER multicast forwarding information.
[0077] In the embodiment, the first multicast message is the multicast message received by the network device as the BFER of the first BIER domain. The first multicast message carries the first encapsulation information used for forwarding in the first BIER domain. The first encapsulation information carried by the first multicast message will be described below by way of example, and thus will not be described here again.
[0078] Based on this, the original multicast message is recovered from the first multicast message by decapsulating the first encapsulation information carried by the first multicast message for forwarding in the first BIER domain to obtain the original multicast message.
[0079] In addition, in the embodiment, the original multicast message is converted into the second multicast message used for multicast forwarding in the second BIER domain according to the BIER multicast forwarding information in many implementation manners, such as encapsulating the second encapsulation information used for multicast forwarding in the second BIER domain in the original multicast message according to the BIER multicast forwarding information to obtain the second multicast message. The second encapsulation information will be described below by way of example, and thus will not be described here again.
[0080] Step 403, forwarding the second multicast message in the second BIER domain.
[0081] Optionally, in the embodiment, the second encapsulation information at least carries a bit string. In the bit string, a specified bit position corresponding to the edge node of the second BIER domain connected to the multicast receiver in the second BIER domain is set to a set value, and the set value is used to indicate that the second multicast message needs to be forwarded to the edge node corresponding to the specified bit position. Finally, the multicast forwarding of the multicast message from AS1 to AS2 across AS is realized through the steps 401 to 403.
[0082] pass Figure 4 As shown in the process, this embodiment deploys hierarchical BIERs, namely BFERs in the first BIER domain and BFIRs in the second BIER domain, on the ASBR of an AS. The ASBR establishes BIER multicast forwarding information for multicast forwarding in the second BIER domain based on multicast join messages initiated by multicast receivers connected to edge nodes in the second AS. This enables the conversion of multicast messages from the first BIER domain and their forwarding in the second BIER domain, thus solving the cross-AS multicast forwarding problem caused by BFR ID conflicts in different BIER domains.
[0083] Furthermore, this embodiment can achieve cross-AS multicast forwarding simply by modifying or upgrading the ASBR of the AS, which has no impact on the original multicast services or other devices and is easy to expand.
[0084] The following is through Figure 5 Examples to describe the above Figure 4 The process shown is as follows:
[0085] Still with Figure 3 Taking the network topology shown as an example, as Figure 5 As shown, device A acts as a BFIR connected to the multicast source in BIER domain 301_1, receiving the original multicast message (denoted as message 501) belonging to multicast group G sent by the multicast source.
[0086] Device A performs an outer IPv6 encapsulation on packet 501 according to the above-mentioned first-level BIER forwarding topology. For ease of description, the encapsulated packet 501 can be referred to as packet 502.
[0087] Optionally, in this embodiment, the outer IPv6 encapsulation includes an IPv6 basic encapsulation header and IPv6 extension headers. Figure 6 An example of the IPv6 basic encapsulation header is shown. For example... Figure 6 As shown, the IPv6 basic encapsulation header includes at least the source IPv6 address and the destination IPv6 address. The source IPv6 address is the address of device A, and the destination IPv6 address is the address of the next-hop BFR neighbor, such as device E.
[0088] As for the IPv6 extension header, it can at least include a destination option header (DOH). The BIER packet header is an option of the DOH. In this embodiment, the BIER packet header is used to carry the Bitstring corresponding to the (multicast source S, multicast group G) pair that has been established in the BIER domain 301_1. The 10th bit of the Bitstring is set to a set value, indicating that the multicast packet is forwarded to the device C with the BFR ID of 10.
[0089] The device A forwards the packet 502. The device E and the device B are intermediate devices, which forward the packet 502 to the device C according to the Bitstring in the BIER packet header and the BIER forwarding table. Alternatively, in an example, the device E receives the packet 502, modifies the destination IPv6 address of the packet 502 to the IP address of the device B as the next hop, and then continues to forward the packet 502 according to the existing packet forwarding manner. Similarly, the device B receives the packet 502, modifies the destination IPv6 address of the packet 502 to the IP address of the device C as the next hop, and then continues to forward the packet 502 according to the existing packet forwarding manner.
[0090] The device C receives the packet 502. The outer IPv6 encapsulation carried by the packet 502 is the first encapsulation information described above.
[0091] The device C determines that it is the BFER according to the Bitstring in the packet 502, and then decapsulates the packet 502 to restore the original multicast packet 501. Alternatively, in this embodiment, the device C can perform an AND operation on the Bitstring in the packet 502 and the forwarding bit mask (FBM) in the BIER forwarding table that has been established for multicast forwarding in the BIER domain 301_1, to obtain an operation result. The device C searches the BIER forwarding table for a next hop neighbor (NBR) with the FBM being the operation result. If the NBR is the device C itself, it is determined that the device C is the BFER of the packet 502. Here, the BIER forwarding table can be established according to the existing BIER forwarding table establishment manner, which will not be described in detail here.
[0092] Then, the device C determines the two-level BIER forwarding topology corresponding to the multicast group G according to the multicast group G carried by the packet 501. The device C performs outer IPv6 encapsulation on the packet 501 according to the two-level BIER forwarding topology. For ease of description, the encapsulated packet 501 can be denoted as a packet 503. At this time, the outer IPv6 encapsulation carried by the packet 503 is the second encapsulation information described above.
[0093] Similarly, in this embodiment, the outer layer IPv6 encapsulation includes an IPv6 base encapsulation header and an IPv6 extension encapsulation header. The IPv6 base encapsulation header includes at least a source IPv6 address and a destination IPv6 address. The source IPv6 address is the address of device C, and the destination IPv6 address is the address of the next hop BFR neighbor, such as device F. As for the IPv6 extension encapsulation header, it can include at least a DOH. The BIER packet header is an option of the DOH. In this embodiment, the BIER packet header is used to carry the Bitstring corresponding to the (multicast source S, multicast group G) pair that has been established in the BIER domain 302_1. The second bit position in the Bitstring is set to a value, which is used to indicate that the multicast packet is forwarded to device D with a BFR ID of 2.
[0094] Device C forwards the packet 503. As can be seen, before device C forwards the packet 503 in the BIER domain 302_1, it first decapsulates the packet 502 from the BIER domain 301_1 to restore the original multicast packet, i.e., the packet 501, and then performs outer layer IPv6 encapsulation on the packet 501 based on the secondary BIER forwarding topology in the BIER domain 302_1 to obtain the packet 503. In this way, even if there is a BFR ID conflict in the BIER domain 301_1 and the BIER domain 302_1, since device C has decapsulated the packet 502 from the BIER domain 301_1 to restore the original multicast packet, i.e., the packet 501, before forwarding the packet 503 in the BIER domain 302_1, it will not affect the forwarding of the packet 503 in the BIER domain 302_1.
[0095] Device F, as an intermediate device, forwards the packet 503 to device D according to the Bitstring in the BIER packet header and the BIER forwarding table. Alternatively, in an example, device F receives the packet 503, modifies the destination IPv6 address of the packet 503 to the IP address of the next hop, i.e., device D, and then continues to forward the packet 503 according to the existing packet forwarding manner.
[0096] Device D receives the packet 503, determines that it is a BFER according to the Bitstring in the packet 503, and first decapsulates the packet 503 to restore the original multicast packet, i.e., the packet 501.
[0097] Device D sends the packet 501 to the multicast receiver. Finally, the multicast packet is forwarded across the BIER domains.
[0098] As can be seen from the above description, in the embodiment, by deploying different identities of different BIER domains, such as the BFER in the BIER domain 301_1 and the BFIR in the BIER domain 302_1, at one ASBR of the AS, the ASBR receives the multicast message of the BIER domain 301_1 as the identity of the BFER in the BIER domain 301_1 and converts the multicast message into a multicast message that can be forwarded in the BIER domain 302_1, and then forwards the converted multicast message in the BIER domain 302_1 as the identity of the BFIR in the BIER domain 302_1, which solves the cross-AS multicast forwarding problem caused by the BFR ID conflict in different BIER domains.
[0099] The method provided in the embodiments of the present application is described above, and the device provided in the embodiments of the present application is described below.
[0100] Referring to Figure 7 , Figure 7 The device structure diagram provided in the embodiments of the present application is shown. The device corresponds to the process shown in Figure 2 . The device is applied to a network device, and the network device is deployed as a BFER in a first BIER domain and a BFIR in a second BIER domain. The first BIER domain is a BIER domain to which a first AS belongs, and the second BIER domain is a BIER domain to which a second AS belongs. The network device is located in the second AS. The device includes:
[0101] A forwarding information establishing unit is configured to establish BIER multicast forwarding information for multicast forwarding in the second BIER domain according to a multicast join message initiated by a multicast receiver. The multicast receiver is connected to a second edge node in the second AS, and the second edge node is a BFER in the second BIER domain. The multicast join message is used to join a target multicast group, and the target multicast group is a multicast group to which a multicast source connected to a first edge node in the first AS belongs. The first edge node is a BFIR of the first BIER domain.
[0102] A first message forwarding unit is configured to modify a bit forwarding router identifier (BFR ID) of the second edge node carried in the multicast join message to a first BFR ID and continue to send the multicast join message to the first edge node. The first BFR ID is a BFR ID configured for the network device when the network device is deployed as a BFER in the first BIER domain.
[0103] Optionally, in the embodiment, the forwarding information establishing unit is further configured to receive multicast source information sent by the multicast source, and forward the multicast source information in the second BIER domain.
[0104] Optionally, the receiving the multicast source information sent by the multicast source comprises: receiving the multicast source information sent by the multicast source through a first BGP route; the first BGP route is a BGP route between the network device and the first node device; and / or,
[0105] The forwarding the multicast source information in the second BIER domain comprises: forwarding the multicast source information through a second BGP route; the second BGP route comprises: a BGP route between the network device and at least one edge node in the second BIER domain.
[0106] Optionally, the BIER multicast forwarding information corresponding to the target multicast group at least comprises:
[0107] a BFR ID of the second edge node, and a next hop neighbor reaching the second edge node.
[0108] So far, the Figure 7 structure of the device is described.
[0109] The embodiment of the present application further provides another device structure diagram. Referring to Figure 8 , Figure 8 The embodiment of the present application further provides another device structure diagram. Referring to Figure 4 the flowchart. The device is applied to a network device, the network device is deployed as a BFER in a first BIER domain and a BFIR in a second BIER domain, the first BIER domain is a BIER domain to which a first AS belongs, the second BIER domain is a BIER domain to which a second AS belongs, and the network device is in the second AS; the device comprises:
[0110] a multicast message receiving unit, configured to receive a first multicast message belonging to a target multicast group and used for multicast forwarding in the first BIER domain; the first multicast message is originated from a multicast source connected to a first edge node in the first AS, the first edge node is a BFIR of the first BIER domain, and the target multicast group is a multicast group to which the multicast source belongs;
[0111] a multicast message converting unit, configured to convert the first multicast message originally used for multicast forwarding in the first BIER domain into a second multicast message used for multicast forwarding in the second BIER domain according to BIER multicast forwarding information corresponding to the target multicast group; the BIER multicast forwarding information is established according to a multicast join message initiated by a multicast receiver connected to each edge node in the second BIER domain when joining the target multicast group;
[0112] a second message forwarding unit, configured to forward the second multicast message in the second BIER domain.
[0113] Optionally, the converting the first multicast message originally used for multicast forwarding in the first BIER domain into the second multicast message used for multicast forwarding in the second BIER domain according to the BIER multicast forwarding information corresponding to the target multicast group comprises:
[0114] recovering the original multicast message from the first multicast message;
[0115] determining that the BIER multicast forwarding information corresponding to the target multicast group carried by the original multicast message has been established, and converting the original multicast message into the second multicast message used for multicast forwarding in the second BIER domain according to the BIER multicast forwarding information.
[0116] Optionally, the first multicast message carries first encapsulation information used for forwarding in the first BIER domain;
[0117] the recovering the original multicast message from the first multicast message comprises:
[0118] decapsulating the first encapsulation information carried by the first multicast message to obtain the original multicast message.
[0119] Optionally, the converting the original multicast message into the second multicast message used for multicast forwarding in the second BIER domain according to the BIER multicast forwarding information comprises:
[0120] encapsulating second encapsulation information used for multicast forwarding in the second BIER domain outside the original multicast message to obtain the second multicast message;
[0121] the second multicast message at least carries a bit string BitString, and a specified bit in the bit string is set to a set value, the specified bit corresponds to an edge node connected with a multicast receiver in the second BIER domain, and the set value is used to indicate that the second multicast message needs to be forwarded to the edge node corresponding to the specified bit.
[0122] Thus, the following is completed Figure 8 the structural description of the device shown.
[0123] The embodiments of the present application also provide Figure 7 or Figure 8 the hardware structure of the device shown. Referring to Figure 9 , Figure 9 the structural diagram of the electronic device provided by the embodiments of the present application. As Figure 9 shown, the hardware structure can include a processor and a machine readable storage medium, the machine readable storage medium stores machine executable instructions capable of being executed by the processor; the processor is used to execute the machine executable instructions to implement the method disclosed in the above examples of the present application.
[0124] Based on the same application concept as the above method, the embodiments of the present application also provide a machine readable storage medium, wherein a plurality of computer instructions are stored on the machine readable storage medium, and the computer instructions can realize the method disclosed in the above examples of the present application when executed by a processor.
[0125] For example, the machine readable storage medium can be a RAM (Random Access Memory), a volatile memory, a non-volatile memory, a flash memory, a storage drive (such as a hard drive), a solid state drive, any type of storage disk (such as an optical disk, a DVD, etc.), or similar storage medium, or a combination thereof.
[0126] The system, device, module or unit illustrated in the above embodiments can be specifically implemented by a computer chip or entity, or by a product with certain functions. A typical implementation device is a computer, and the specific form of the computer can be a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
[0127] For the convenience of description, the above device is described as various units by functions respectively. Of course, the functions of each unit can be implemented in one or more software and / or hardware in the implementation of the present application.
[0128] Those skilled in the art should understand that the embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the present application can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the embodiments of the present application can take the form of a computer program product implemented on one or more computer usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer usable program code.
[0129] The computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart block or blocks. Figure 1 one or more flowcharts and / or blocks Figure 1 one or more flowcharts and / or blocks
[0130] Also, these computer program instructions can be stored in a computer readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture including instructions which implement the Figure 1 one or more flowcharts and / or blocks Figure 1 one or more flowcharts and / or blocks
[0131] The computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart block or blocks. Figure 1 one or more flowcharts and / or blocks Figure 1 one or more flowcharts and / or blocks
[0132] The embodiments of the present application described above are merely used to illustrate the present application and should not be used to limit the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principle of the present application should be included in the scope of protection of the present application.
Claims
1. A multicast forwarding method across an autonomous system (AS), characterized in that, The method is applied to a network device deployed as a bit forwarding egress router (BFER) in a first BIER domain and a bit forwarding ingress router (BFIR) in a second BIER domain, the first BIER domain being a BIER domain to which a first AS belongs, the second BIER domain being a BIER domain to which a second AS belongs, the network device being in the second AS; and the method comprises: establishing, according to a multicast join message initiated by a multicast receiver, BIER multicast forwarding information used for multicast forwarding in the second BIER domain; the multicast receiver is connected to a second edge node in the second AS, and the second edge node serves as a BFER in the second BIER domain; the multicast join message is used for joining a target multicast group, and the target multicast group is a multicast group to which a multicast source connected to a first edge node in the first AS belongs; the first edge node serves as a BFIR of the first BIER domain; the BIER multicast forwarding information corresponds to the target multicast group and at least includes a BFR ID of the second edge node configured in the second BIER domain, and a next-hop neighbor reaching the second edge node; modifying a bit forwarding router (BFR) ID of the second edge node carried in the multicast join message to a first BFR ID and continuing to send the multicast join message to the first edge node; the first BFR ID is a BFR ID configured in the network device when the network device is deployed as a BFER in the first BIER domain.
2. The method of claim 1, wherein, The method further comprises, before the above steps: receiving multicast source information sent by the multicast source; forwarding the multicast source information in the second BIER domain.
3. The method of claim 1, wherein, The receiving of the multicast source information sent by the multicast source comprises: receiving the multicast source information sent by the multicast source through a first BGP route; the first BGP route is a BGP route between the network device and at least one edge node in the first BIER domain; and / or The forwarding of the multicast source information in the second BIER domain comprises: forwarding the multicast source information through a second BGP route; the second BGP route comprises a BGP route between the network device and at least one edge node in the second BIER domain.
4. The method of claim 1, wherein, The BIER multicast forwarding information corresponds to the target multicast group and at least includes: a BFR ID of the second edge node and a next-hop neighbor reaching the second edge node.
5. A multicast forwarding method across an autonomous system (AS), characterized in that, The method is applied to a network device deployed as a bit forwarding egress router (BFER) in a first BIER domain and a bit forwarding ingress router (BFIR) in a second BIER domain, the first BIER domain being a BIER domain to which a first AS belongs, the second BIER domain being a BIER domain to which a second AS belongs, the network device being in the second AS; and the method comprises: receive a first multicast packet belonging to a target multicast group for multicast forwarding in a first BIER domain; the first multicast packet is originated from a multicast source connected to a first edge node in a first AS, the first edge node serving as a BFIR of the first BIER domain; the target multicast group is a multicast group to which the multicast source belongs; convert the first multicast packet originally for multicast forwarding in the first BIER domain into a second multicast packet for multicast forwarding in a second BIER domain according to BIER multicast forwarding information corresponding to the target multicast group; the BIER multicast forwarding information is established according to a multicast join packet initiated by a multicast receiver connected to a second edge node in the second BIER domain when joining the target multicast group; the BIER multicast forwarding information corresponds to the target multicast group and at least includes a BFRID configured for the second edge node connected to the multicast receiver in the second BIER domain and a next-hop neighbor to the second edge node; forward the second multicast packet in the second BIER domain.
6. The method of claim 5, wherein, The converting the first multicast packet originally for multicast forwarding in the first BIER domain into the second multicast packet for multicast forwarding in the second BIER domain according to the BIER multicast forwarding information corresponding to the target multicast group includes: recovering an original multicast packet from the first multicast packet; determining that BIER multicast forwarding information corresponding to a target multicast group carried by the original multicast packet has been established, and then converting the original multicast packet into the second multicast packet for multicast forwarding in the second BIER domain according to the BIER multicast forwarding information.
7. The method of claim 6, wherein, The first multicast packet carries first encapsulation information for forwarding in the first BIER domain. The recovering the original multicast packet from the first multicast packet includes: decapsulating the first encapsulation information carried by the first multicast packet to obtain the original multicast packet.
8. The method of claim 6, wherein, The converting the original multicast packet into the second multicast packet for multicast forwarding in the second BIER domain according to the BIER multicast forwarding information includes: encapsulating second encapsulation information for multicast forwarding in the second BIER domain outside the original multicast packet to obtain the second multicast packet; The second multicast packet at least carries a bit string BitString; a specified bit in the bit string is set to a specified value, the specified bit corresponds to an edge node in the second BIER domain connected to a multicast receiver, and the specified value is used to indicate that the second multicast packet needs to be forwarded to the edge node corresponding to the specified bit.
9. A multicast forwarding device applied to an autonomous system (AS), characterized in that, The apparatus is applied to a network device, the network device is deployed as a bit forwarding egress router BFER in a first BIER domain and a bit forwarding ingress router BFIR in a second BIER domain, the first BIER domain is a BIER domain to which a first AS belongs, the second BIER domain is a BIER domain to which a second AS belongs, and the network device is located in the second AS; The apparatus includes: The forwarding information establishing unit is configured to establish BIER multicast forwarding information for multicast forwarding in a second BIER domain according to a multicast join message initiated by a multicast receiver, the multicast receiver being connected to a second edge node in the second AS, the second edge node being a BFER in the second BIER domain, the multicast join message being used for joining a target multicast group, the target multicast group being a multicast group to which a multicast source connected to a first edge node in a first AS belongs, the first edge node being a BFIR of a first BIER domain, the BIER multicast forwarding information corresponding to the target multicast group and including at least a BFRID configured for a second edge node connected to the multicast receiver in the second BIER domain and a next-hop neighbor reaching the second edge node. The first message forwarding unit is configured to modify a bit forwarding router identifier (BFRID) of the second edge node carried in the multicast join message to a first BFRID and continue to send the multicast join message to the first edge node, the first BFRID being a BFRID configured for the network device when the network device is deployed as a BFER in the first BIER domain.
10. A multicast forwarding device across Autonomous Systems (AS), characterized in that, The apparatus is applied to a network device, the network device being deployed as a bit forwarding egress router (BFER) in a first BIER domain and a bit forwarding ingress router (BFIR) in a second BIER domain, the first BIER domain being a BIER domain to which a first AS belongs, the second BIER domain being a BIER domain to which a second AS belongs, and the network device being located in the second AS. The apparatus comprises: The multicast message receiving unit is configured to receive a first multicast message belonging to a target multicast group and used for multicast forwarding in a first BIER domain, the first multicast message being originated from a multicast source connected to a first edge node in a first AS, the first edge node being a BFIR of the first BIER domain, and the target multicast group being a multicast group to which the multicast source belongs. The multicast message converting unit is configured to convert the first multicast message originally used for multicast forwarding in the first BIER domain into a second multicast message used for multicast forwarding in a second BIER domain according to BIER multicast forwarding information corresponding to the target multicast group, the BIER multicast forwarding information being established according to multicast join messages initiated by multicast receivers connected to edge nodes in the second BIER domain when joining the target multicast group, the BIER multicast forwarding information corresponding to the target multicast group and including at least a BFRID configured for a second edge node connected to the multicast receiver in the second BIER domain and a next-hop neighbor reaching the second edge node. The second message forwarding unit is configured to forward the second multicast message in the second BIER domain.
Citation Information
Patent Citations
Multicast Data Transmission Method, Related Apparatus, and System
US20210058260A1
Method and apparatus for realizing message transmission
WO2021036482A1