Multicast implementation method, routing device and storage medium
Patent Information
- Application Number
- CN202110433487.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-04-19
- Publication Date
- 2026-10-20
- Estimated Expiration
- 2041-04-19
AI Technical Summary
[0005]本发明实施例提供一种组播实现方法、路由设备和存储介质,解决组播源设备无法实现多BIER子域的组播数据传输的问题
[0016]本发明实施例的方案,第一路由设备向至少一个第二路由设备发送第一报文,其中,所述第一报文携带多个第一BIER子域标识,所述第一路由设备支持多个BIER子域,第一BIER子域标识用于表征所述第一路由设备支持的BIER子域;所述第一路由设备接收所述第二路由设备返回的第二报文,其中,所述第二报文携带至少一个第二BIER子域标识,所述第二BIER子域标识用于表征所述第二路由设备支持的BIER子域,所述第二报文为所述第二路由设备根据所述第一报文携带的多个第一BIER子域标识确定自身与所述第一路由设备具有至少一个共同支持的BIER子域时发出的;所述第一路由设备根据所述第二报文携带的第二BIER子域标识,与所述第二路由设备建立用于进行组播数据传输的传输路径。如此,位于组播源侧的第一路由设备不再局限于在一个BIER子域中进行组播数据传输,第一路由设备能够在自身支持的多个BIER子域中进行跨BIER子域的组播数据传输;而位于组播接收者侧的第二路由设备只要与第一路由设备具有至少一个共同支持的BIER子域,便能与第一路由设备建立起用于组播的传输路径。
Smart Images

Figure CN115226038B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of communication technology, and more specifically to a multicast implementation method, routing device, and storage medium. Background Technology
[0002] Bit-indexed explicit replication (BIER) multicast technology encapsulates the set of destination nodes of a multicast message as a bit string in the message header before sending it. This eliminates the need for intermediate network nodes to build a multicast tree and store the multicast stream state for each multicast stream; they only need to replicate and forward the message based on the set of destination nodes in the message header.
[0003] Within a BIER domain, each BIER subdomain is considered a unit, and the standard protocols define that routes sent by each node can only be associated with one BIER subdomain. Even if a node supports multiple BIER subdomains, it can only select one BIER subdomain to associate with, and multicast data transmission can only occur within the associated BIER subdomain; it cannot simultaneously transmit multicast data across multiple BIER subdomains. Therefore, multicast source devices cannot achieve multicast data transmission across multiple BIER subdomains. Summary of the Invention
[0004] The following is an overview of the subject matter described in detail herein. This overview is not intended to limit the scope of the claims.
[0005] This invention provides a multicast implementation method, routing device, and storage medium to solve the problem that multicast source devices cannot implement multicast data transmission across multiple BIER subdomains.
[0006] In a first aspect, embodiments of the present invention provide a multicast implementation method, the method comprising:
[0007] A first routing device sends a first message to at least one second routing device, wherein the first message carries multiple first BIER subdomain identifiers, the first routing device supports multiple BIER subdomains, and the first BIER subdomain identifiers are used to characterize the BIER subdomains supported by the first routing device.
[0008] The first routing device receives a second message returned by the second routing device, wherein the second message carries at least one second BIER subdomain identifier, the second BIER subdomain identifier is used to characterize the BIER subdomains supported by the second routing device, and the second message is sent by the second routing device when it determines that it and the first routing device have at least one BIER subdomain commonly supported based on the multiple first BIER subdomain identifiers carried in the first message;
[0009] The first routing device establishes a transmission path with the second routing device for multicast data transmission based on the second BIER subdomain identifier carried in the second message.
[0010] Secondly, embodiments of the present invention provide a multicast implementation method, the method comprising:
[0011] The second routing device receives a first message sent by the first routing device, wherein the first message carries multiple first BIER subdomain identifiers, the first routing device supports multiple BIER subdomains, and the first BIER subdomain identifiers are used to characterize the BIER subdomains supported by the first routing device.
[0012] When the second routing device determines that it and the first routing device have at least one BIER subdomain supported by each other based on the multiple first BIER subdomain identifiers carried in the first message, the second routing device sends a second message to the first routing device, wherein the second message carries at least one second BIER subdomain identifier, and the second BIER subdomain identifier is used to characterize the BIER subdomain supported by the second routing device.
[0013] The second routing device establishes a transmission path for multicast data transmission with the first routing device. The transmission path is established by the first routing device based on the second BIER subdomain identifier carried in the second message.
[0014] Thirdly, embodiments of the present invention provide a routing device, including: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the multicast implementation method as described in the first or second aspect above.
[0015] Fourthly, embodiments of the present invention also provide a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the multicast implementation method as described in the first or second aspect above.
[0016] In this embodiment of the invention, a first routing device sends a first message to at least one second routing device, wherein the first message carries multiple first BIER subdomain identifiers, the first routing device supports multiple BIER subdomains, and the first BIER subdomain identifiers are used to characterize the BIER subdomains supported by the first routing device; the first routing device receives a second message returned by the second routing device, wherein the second message carries at least one second BIER subdomain identifier, the second BIER subdomain identifiers are used to characterize the BIER subdomains supported by the second routing device, and the second message is sent by the second routing device when it determines, based on the multiple first BIER subdomain identifiers carried in the first message, that it and the first routing device have at least one BIER subdomain commonly supported; the first routing device establishes a transmission path with the second routing device for multicast data transmission based on the second BIER subdomain identifiers carried in the second message. Thus, the first routing device located on the multicast source side is no longer limited to multicast data transmission in a single BIER subdomain. The first routing device can transmit multicast data across multiple BIER subdomains supported by itself. Meanwhile, the second routing device located on the multicast receiver side can establish a multicast transmission path with the first routing device as long as it shares at least one BIER subdomain with the first routing device.
[0017] Other features and advantages of the invention will be set forth in the description which follows, and will be apparent in part from the description, or may be learned by practicing the invention. The objects and other advantages of the invention may be realized and obtained by means of the structures particularly pointed out in the description, claims and drawings. Attached Figure Description
[0018] The accompanying drawings are provided to further understand the technical solutions of the present invention and constitute a part of the specification. They are used together with the embodiments of the present invention to explain the technical solutions of the present invention, and do not constitute a limitation on the technical solutions of the present invention.
[0019] Figure 1 This is a schematic diagram of a multicast virtual private network scenario;
[0020] Figure 2 This is a flowchart of a multicast implementation method provided in an embodiment of the present invention;
[0021] Figure 3 This is a schematic diagram illustrating the formats of membership query messages and membership report messages;
[0022] Figure 4 This is a flowchart of another multicast implementation method provided in an embodiment of the present invention;
[0023] Figure 5This is a schematic diagram of an MVPN networking scenario;
[0024] Figure 6 This is a diagram illustrating another MVPN networking scenario;
[0025] Figure 7 This is a schematic diagram of the structure of a routing device provided in an embodiment of the present invention. Detailed Implementation
[0026] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention.
[0027] It should be understood that in the description of the embodiments of the present invention, the use of terms such as "first" and "second" is only for the purpose of distinguishing technical features and should not be construed as indicating or implying relative importance, or implicitly indicating the number of indicated technical features or the order of the indicated technical features. "At least one" refers to one or more, and "more than one" refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent the existence of A alone, the simultaneous existence of A and B, or the existence of B alone. A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" and similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, and c can represent: a, b, c, a and b, a and c, b and c, or a and b and c, where a, b, and c can be single or multiple.
[0028] Furthermore, the technical features involved in the various embodiments of the present invention described below can be combined with each other as long as they do not conflict with each other.
[0029] To facilitate understanding of this invention, the relevant technologies involved in this invention will first be described.
[0030] Please see Figure 1 , Figure 1 This illustrates a scenario of a multicast virtual private network (MVPN). Figure 1 In this context, R1, R2, and R3 are edge nodes, R1 connects to the multicast source, R2 and R3 connect to the multicast receiver, and Rn is an intermediate node.
[0031] Within the BIER domain, each node can only be associated with one BIER subdomain, according to the standard protocols of the relevant technologies.
[0032] For example, R1 supports BIER subdomain 10 and BIER subdomain 20, R2 supports BIER subdomain 10, and R3 supports BIER subdomain 20. R1 cannot be associated with BIER subdomain 10 and BIER subdomain 20 at the same time. In other words, R1 cannot transmit multicast data to R2 and R3 at the same time, and cannot realize multicast data transmission across multiple BIER subdomains.
[0033] Based on this, embodiments of the present invention provide a multicast implementation method, routing device, and storage medium to solve the problem that multicast source devices cannot implement multicast data transmission across multiple BIER subdomains.
[0034] Please see Figure 2 , Figure 2 This invention illustrates a multicast implementation method provided by an embodiment of the present invention, the method comprising the following steps:
[0035] S110, the first routing device sends a first message to at least one second routing device, wherein the first message carries multiple first BIER subdomain identifiers, the first routing device supports multiple BIER subdomains, and the first BIER subdomain identifiers are used to characterize the BIER subdomains supported by the first routing device.
[0036] The first routing device can be understood as an ingress PE node located on the multicast source side in the BIER domain. The first routing device supports multiple BIER subdomains, and each BIER subdomain corresponds to a BIER subdomain identifier. In this embodiment of the invention, the BIER subdomain identifiers corresponding to the BIER subdomains supported by the first routing device are used as the first BIER subdomain identifiers. The multiple first BIER subdomain identifiers corresponding to the first routing device are encapsulated in a first packet and sent to the second routing device.
[0037] The second routing device can be understood as an outgoing PE node located on the multicast receiver side in the BIER domain. In this embodiment of the invention, the first routing device can simultaneously send a first message to one or more second routing devices. When the first routing device simultaneously sends a first message to multiple second routing devices, these multiple second routing devices can be outgoing PE nodes in different BIER subdomains.
[0038] As an example, during the establishment of a BIER (Inclusive Public Multicast Service Interface) tunnel, the root node first routing device sends an I-PMSI automatic discovery route (AD route) to the leaf node second routing device. Typically, the I-PMSI AD route carries PMSI tunnel attribute information. In this embodiment of the invention, the first message can be carried within the tunnel attributes of the I-PMSI AD route.
[0039] As another example, during the establishment of the Selective Public Multicast Service Interface (S-PMSI) tunnel selected by BIER, the root node first routing device sends an S-PMSI automatic discovery route (AD route) to the leaf node second routing device. Typically, the S-PMSI AD route carries PMSI tunnel attribute information. In this embodiment of the invention, the first message can be carried in the tunnel attributes of the S-PMSI AD route.
[0040] It is understood that the first message in this embodiment of the invention also carries at least one of the following:
[0041] The number of BIER subdomains supported by the first routing device corresponds to the number of first BIER subdomain identifiers;
[0042] The first BFR (Bit-Forwarding Router) identifier corresponds to the first BIER subdomain identifier;
[0043] The first prefix type corresponds to the first BIER subdomain identifier;
[0044] The first BFR prefix corresponds to the first BIER subdomain identifier.
[0045] S120, the first routing device receives a second message returned by the second routing device, wherein the second message carries at least one second BIER subdomain identifier, the second BIER subdomain identifier is used to characterize the BIER subdomains supported by the second routing device, and the second message is sent by the second routing device when it determines that it and the first routing device have at least one BIER subdomain commonly supported based on the multiple first BIER subdomain identifiers carried in the first message.
[0046] For example, after receiving the first message from the first routing device, the second routing device determines whether it shares at least one supported BIER subdomain with the first routing device based on the first BIER subdomain identifier carried in the first message. For instance, if the first routing device supports BIER subdomain 10 and BIER subdomain 20, and the second routing device supports BIER subdomain 10, then the second routing device and the first routing device share a supported BIER subdomain 10. When the second routing device determines that it shares at least one supported BIER subdomain with the first routing device, it returns a second message to the first routing device.
[0047] When the first packet carries the tunnel attributes of the I-PMSI / S-PMSI AD route, and the second routing device determines, based on the first BIER subdomain identifier carried in the tunnel attributes of the I-PMSI / S-PMSI AD route, that it and the first routing device have at least one BIER subdomain supported by each other, the second routing device returns a Leaf AD route to the first routing device. Normally, the Leaf AD route carries PMSI tunnel attribute information. In this case, the second packet can be carried in the tunnel attributes of the Leaf AD route.
[0048] It is understood that the second message in this embodiment of the invention also carries at least one of the following:
[0049] The number of BIER subdomains supported by the second routing device corresponds to the number of second BIER subdomain identifiers;
[0050] The second BFR identifier corresponds to the second BIER subdomain identifier;
[0051] The second prefix type corresponds to the second BIER subdomain identifier;
[0052] The second BFR prefix corresponds to the second BIER subdomain identifier.
[0053] It is understood that the tunnel attribute format carried by the I-PMSI AD route, S-PMSI AD route, and Leaf AD route can be the same, and the fields included in this tunnel attribute information can be seen in Table 1 below:
[0054] Table 1
[0055]
[0056]
[0057] S130, the first routing device establishes a transmission path with the second routing device for multicast data transmission based on the second BIER subdomain identifier carried in the second message.
[0058] When the first routing device receives the second message returned by the second routing device, it obtains the second BIER subdomain identifier, which represents the BIER subdomain supported by the second routing device, from the second message, and then establishes a corresponding transmission path with the second routing device for multicast data transmission based on the second BIER subdomain identifier.
[0059] It is understandable that for an I-PMSI AD route or S-PMSI AD route sent from the first routing device to the second routing device, the transmission path between the first routing device and the second routing device corresponds to an I-PMSI tunnel or an S-PMSI tunnel. After the second routing device successfully joins the tunnel, the addition of the leaf node is completed, and multicast data transmission can be achieved between the first routing device and the second routing device.
[0060] In this embodiment of the invention, the first routing device supports multiple BIER subdomains. When the first routing device sends a first message to multiple second routing devices at the same time, the second routing device that receives the first message can join the transmission path created by the first routing device as long as it has at least one common BIER subdomain supported with the first routing device. In this way, the first routing device can send multicast data to second routing devices with multiple BIER subdomains at the same time.
[0061] It is understood that the multicast implementation method of this invention further includes: when the transmission path established between the first routing device and the second routing device includes an I-PMSI tunnel and an S-PMSI tunnel, the first routing device and the second routing device establish a BFD (Bidirectional Forwarding Detection) session only through the I-PMSI tunnel.
[0062] For example, R1 establishes point-to-multipoint BFD sessions in BIER subdomain 10 and BIER subdomain 20 respectively. The BFD packets are carried on the BIER tunnel, with R2 and R3 as their destinations. R2 and R3 listen for the BFD packets to determine the connectivity of the BIER tunnel. When R1 is triggered by multicast traffic to switch to the S-PMSI tunnel for multicast data transmission, since the destination node set of S-PMSI is a subset of the destination node set of I-PMSI, it is not necessary to establish a point-to-multipoint BFD session in each S-PMSI tunnel. Instead, the BIER tunnel status can be detected only through the BFD session established in the I-PMSI tunnel, thus saving BFD resources.
[0063] It should be understood that the multicast implementation method provided in this embodiment of the invention is also applicable to multicast transmission under the MLD / IGMP protocol. When the MLD / IGMP protocol is used, the first message can be a membership query message, and the first BIER subdomain identifier can be carried in the membership query message; when the first message is a membership query message, the second message corresponds to a membership report message, and the second BIER subdomain identifier is carried in the membership report message.
[0064] For example, in the MLD / IGMP protocol, the routing device uses a query-response method to determine whether there are hosts in a certain BIER subdomain that have joined a certain multicast group. If there are, the routing device will perform the operation of forwarding multicast data packets to the BIER subdomain; if not, the router does not need to forward multicast data packets to the BIER subdomain.
[0065] In practice, the first routing device periodically sends membership query messages to all second routing devices on the BIER subdomains it supports. These messages carry the identifiers of the first BIER subdomains supported by the first routing device. Upon receiving a membership query message, a second routing device wishing to join a multicast group first determines whether it shares at least one supported BIER subdomain with the first routing device. If so, it responds to the first routing device's query message by sending a multicast membership report message. This message carries the address of the multicast group it wishes to join and the identifier of the second BIER subdomain supported by the second routing device. Upon receiving the membership report message from the second routing device, the first routing device knows that a second routing device wants to join the multicast group. The multicast group address and corresponding BIER subdomain can be obtained from the message. Next, the first routing device establishes a corresponding transmission path with the second routing device based on the routing protocol it uses.
[0066] It is understandable that the membership query message and the membership report message have the same format, including the Sub-domain Num, Sub-domain ID, BFR-ID, and BFR-Prefix fields. The Sub-domain ID, BFR-ID, and BFR-Prefix correspond to the BIER subdomains supported by the routing device. For specific formats, please refer to [link to documentation / reference]. Figure 3 As shown.
[0067] Please see Figure 4 , Figure 4 This invention illustrates another multicast implementation method provided by an embodiment of the present invention, which includes the following steps:
[0068] S210, the second routing device receives a first message sent by the first routing device, wherein the first message carries multiple first BIER subdomain identifiers, the first routing device supports multiple BIER subdomains, and the first BIER subdomain identifiers are used to characterize the BIER subdomains supported by the first routing device.
[0069] It is understood that the first message in this embodiment of the invention is carried in the tunnel attributes of the I-PMSI AD route or the -PMSI AD route.
[0070] It is understood that the first message in this embodiment of the invention also carries at least one of the following:
[0071] The number of BIER subdomains supported by the first routing device corresponds to the number of first BIER subdomain identifiers;
[0072] The first BFR identifier corresponds to the first BIER subdomain identifier;
[0073] The first prefix type corresponds to the first BIER subdomain identifier;
[0074] The first BFR prefix corresponds to the first BIER subdomain identifier.
[0075] S220, when the second routing device determines that it and the first routing device have at least one BIER subdomain supported by each other based on the multiple first BIER subdomain identifiers carried in the first message, the second routing device sends a second message to the first routing device, wherein the second message carries at least one second BIER subdomain identifier, and the second BIER subdomain identifier is used to characterize the BIER subdomain supported by the second routing device.
[0076] For example, after receiving the first message from the first routing device, the second routing device determines whether it shares at least one supported BIER subdomain with the first routing device based on the first BIER subdomain identifier carried in the first message. For instance, if the first routing device supports BIER subdomain 10 and BIER subdomain 20, and the second routing device supports BIER subdomain 10, then the second routing device and the first routing device share a supported BIER subdomain 10. When the second routing device determines that it shares at least one supported BIER subdomain with the first routing device, it returns a second message to the first routing device.
[0077] When the first packet carries the tunnel attributes of the I-PMSI / S-PMSI AD route, and the second routing device determines, based on the first BIER subdomain identifier carried in the tunnel attributes of the I-PMSI / S-PMSI AD route, that it and the first routing device have at least one BIER subdomain supported by each other, the second routing device returns a Leaf AD route to the first routing device. Normally, the Leaf AD route carries PMSI tunnel attribute information. In this case, the second packet can be carried in the tunnel attributes of the Leaf AD route.
[0078] It is understood that the second message in this embodiment of the invention also carries at least one of the following:
[0079] The number of BIER subdomains supported by the second routing device corresponds to the number of second BIER subdomain identifiers;
[0080] The second BFR identifier corresponds to the second BIER subdomain identifier;
[0081] The second prefix type corresponds to the second BIER subdomain identifier;
[0082] The second BFR prefix corresponds to the second BIER subdomain identifier.
[0083] It is understandable that the tunnel attribute format carried by the I-PMSI AD route, S-PMSI AD route, and Leaf AD route is the same. The fields included in this tunnel attribute information can be found in Table 1 above, and will not be repeated here.
[0084] S230, A transmission path for multicast data transmission is established between the second routing device and the first routing device. The transmission path is established by the first routing device based on the second BIER subdomain identifier carried in the second message.
[0085] After receiving the second message returned by the second routing device, the first routing device obtains the second BIER subdomain identifier, which represents the BIER subdomain supported by the second routing device, from the second message. Then, based on the second BIER subdomain identifier, it establishes a corresponding transmission path with the second routing device for multicast data transmission.
[0086] It is understandable that for an I-PMSI AD route or S-PMSI AD route sent from the first routing device to the second routing device, the transmission path between the first routing device and the second routing device corresponds to an I-PMSI tunnel or an S-PMSI tunnel. After the second routing device successfully joins the tunnel, the addition of the leaf node is completed, and multicast data transmission can be achieved between the first routing device and the second routing device.
[0087] It is understood that the multicast implementation method of this invention further includes: when the second routing device supports multiple BIER subdomains and the second routing device and the first routing device have multiple BIER subdomains that are commonly supported, there are multiple transmission paths established between the second routing device and the first routing device, and the multiple transmission paths correspond one-to-one with the multiple BIER subdomains that are commonly supported.
[0088] For example, if both R1 and R2 support BIER subdomain 10 and BIER subdomain 20, then the I-PMSI tunnel established between R1 and R2 includes I-PMSI#1 corresponding to BIER subdomain 10 and I-PMSI#2 corresponding to BIER subdomain 20. When R1 on the multicast source side receives multicast data from the destination node containing R2, R1 transmits the multicast data to R2 through I-PMSI#1 and I-PMSI#2, thus importing the multicast data into different BIER subdomains, forming a protection relationship between different BIER subdomains.
[0089] It is understood that the multicast implementation method in this embodiment of the invention further includes: a second routing device determining a primary BIER subdomain and a backup BIER subdomain from multiple commonly supported BIER subdomains; receiving multicast data transmitted from the transmission path corresponding to the primary BIER subdomain; and determining a new primary BIER subdomain from the backup BIER subdomain when the transmission path corresponding to the primary BIER subdomain is abnormal.
[0090] For example, R2 sets BIER subdomain 10 as the primary BIER subdomain and BIER subdomain 20 as the backup BIER subdomain. When R1 transmits multicast data to R2 via I-PMSI#1 for BIER subdomain 10 and I-PMSI#2 for BIER subdomain 20, R2 only receives the multicast data transmitted via I-PMSI#1 and discards the multicast data transmitted via I-PMSI#2. When BIER subdomain 10 experiences an anomaly, for example, if R2 detects an anomaly in the multicast data from R1 (or the BFD state is down), it initiates a primary / backup switchover, switching the primary BIER subdomain from BIER subdomain 10 to BIER subdomain 20, and receiving the multicast data sent by R1 via I-PMSI#2, thereby achieving a fast switchover to reduce network packet loss.
[0091] It should be understood that the multicast implementation method provided in this embodiment of the invention is also applicable to multicast transmission under the MLD / IGMP protocol. When the MLD / IGMP protocol is used, the first message can be a membership query message, and the first BIER subdomain identifier can be carried in the membership query message; when the first message is a membership query message, the second message corresponds to a membership report message, and the second BIER subdomain identifier is carried in the membership report message.
[0092] It is understandable that the membership query message and the membership report message have the same format, including the fields Sub-domain Num, Sub-domain ID, BFR-ID, and BFR-Prefix. Among them, Sub-domain ID, BFR-ID, and BFR-Prefix correspond to the BIER subdomains supported by the routing device.
[0093] To make it clearer and more understandable to those skilled in the art, the following will be used as an example. Figure 5 Taking the MVPN networking scenario shown as an example, the specific implementation process of the multicast implementation method provided in this application is explained.
[0094] Assuming R1 supports BIER subdomain 10 and BIER subdomain 20, R2 supports BIER subdomain 10, and R3 supports BIER subdomain 20, the process by which R1 transmits multicast data from the multicast source to R2 in BIER subdomain 10 and R3 in BIER subdomain 20 is as follows:
[0095] S310, R1 sends an I-PMSI AD route to R2 and R3. This I-PMSI AD route carries tunnel attributes, which include fields related to the BIER subdomains supported by R1: Sub-domain Num, Sub-domain ID, BFR-ID, Prefix Type, and BFR-Prefix. Please refer to Table 2 below for details.
[0096] Table 2
[0097] Sub-domain-number 2 Sub-domain-ID-1 10 BFR-ID-1 1 Prefix-type-1 1 BFR-prefix-1 100.0.0.1 Sub-domain-ID-2 20 BFR-ID-2 1 Prefix-type-2 2 BFR-prefix-2 100::1
[0098] S311a, after receiving the I-PMSI AD route sent by R1, R2 determines that it and R1 have a common supported BIER subdomain 10 based on the Sub-domain-ID-1 field in the tunnel attributes carried by the I-PMSI AD route. R2 returns a Leaf AD route to R1. This Leaf AD route carries tunnel attributes, which include fields related to the BIER subdomains supported by R2: Sub-domain Num, Sub-domain ID, BFR-ID, Prefix Type, and BFR-Prefix. Please refer to Table 3 below for details.
[0099] Table 3
[0100] Sub-domain-number 1 Sub-domain-ID-1 10 BFR-ID-1 2 Prefix-type-1 1 BFR-prefix-1 100.0.0.2
[0101] S311b, after receiving the I-PMSI AD route sent by R1, R3 determines that it and R1 have a common supported BIER subdomain 20 based on the Sub-domain-ID-2 field in the tunnel attributes carried by the I-PMSI AD route. R3 returns a Leaf AD route to R1. This Leaf AD route carries tunnel attributes, which include fields related to the BIER subdomains supported by R3: Sub-domain Num, Sub-domain ID, BFR-ID, Prefix Type, and BFR-Prefix. Please refer to Table 4 below for details.
[0102] Table 4
[0103] Sub-domain-number 1 Sub-domain-ID-1 20 BFR-ID-1 3 Prefix-type-1 2 BFR-prefix-1 100::3
[0104] S312a, after R1 receives the Leaf AD route returned by R2, it establishes an I-PMSI#1 tunnel to R2 in the BIER subdomain 10 according to the tunnel attributes carried by the Leaf AD route returned by R2, and performs multicast data transmission through the I-PMSI#1 tunnel.
[0105] S312b, after R1 receives the Leaf AD route returned by R3, it establishes an I-PMSI#2 tunnel to R3 in the BIER subdomain 20 according to the tunnel attributes carried by the Leaf AD route returned by R3, and performs multicast data transmission through the I-PMSI#2 tunnel.
[0106] S313 When the multicast data traffic meets the conditions for switching from I-PMSI tunnel to S-PMSI, R1 initiates the switch. R1 sends an S-PMSI AD route to R2 and R3. The S-PMSI AD route carries tunnel attributes, which contain fields related to the BIER subdomains supported by R1. See Table 2 above for details.
[0107] S314a, after receiving the S-PMSI AD route sent by R1, R2 determines that it and R1 have a common supported BIER subdomain 10 based on the Sub-domain-ID-1 field in the tunnel attributes carried by the S-PMSI AD route. R2 returns a Leaf AD route to R1. This Leaf AD route carries tunnel attributes, which include fields related to the BIER subdomains supported by R2: Sub-domain Num, Sub-domain ID, BFR-ID, Prefix Type, and BFR-Prefix. Please refer to Table 3 above for details.
[0108] S314b, after receiving the S-PMSI AD route sent by R1, R3 determines that it and R1 have a common supported BIER subdomain 20 based on the Sub-domain-ID-2 field in the tunnel attributes carried by the S-PMSI AD route. R3 returns a Leaf AD route to R1. This Leaf AD route carries tunnel attributes, which include fields related to the BIER subdomains supported by R3: Sub-domain Num, Sub-domain ID, BFR-ID, Prefix Type, and BFR-Prefix. Please refer to Table 4 above for details.
[0109] S315a, after R1 receives the Leaf AD route returned by R2, it establishes an S-PMSI#1 tunnel to R2 in the BIER subdomain 10 according to the tunnel attributes carried by the Leaf AD route returned by R2, and switches to the S-PMSI#1 tunnel for multicast data transmission.
[0110] S315b, after R1 receives the Leaf AD route returned by R3, it establishes an S-PMSI#2 tunnel to R3 in the BIER subdomain 20 according to the tunnel attributes carried by the Leaf AD route returned by R3, and switches to the S-PMSI#2 tunnel for multicast data transmission.
[0111] S316, R1 establishes BFD sessions with R2 and R3 through I-PMSI#1 and I-PMSI#2 respectively. R2 and R3 listen for BFD messages to determine the connectivity of the BIER tunnel. Since the destination node set of S-PMSI is a subset of the destination node set of I-PMSI, it is not necessary to establish a point-to-multipoint BFD session in each S-PMSI tunnel. Instead, the BIER tunnel status can be detected only through the BFD session established in the I-PMSI tunnel, thus saving BFD resources.
[0112] The following is based on Figure 6 Taking the MVPN networking scenario shown as an example, the specific implementation process of the multicast implementation method provided in this application will be further explained.
[0113] Assuming edge nodes R1, R2, and R3 all support BIER subdomain 10 and BIER subdomain 20, and intermediate nodes Rm support BIER subdomain 10 and Rn support BIER subdomain 20, the process of R1 transmitting multicast data to R2 and R3 after receiving multicast data from the multicast source is as follows:
[0114] S410, I-PMSI#1 corresponding to BIER subdomain 10 and I-PMSI#2 corresponding to BIER subdomain 20 are established between R1 and R2;
[0115] S420, R2 sets BIER subdomain 10 as the primary BIER subdomain and BIER subdomain 20 as the backup BIER subdomain.
[0116] S430, when R1 transmits multicast data to R2 through I-PMSI#1 of the corresponding BIER subdomain 10 and I-PMSI#2 of the corresponding BIER subdomain 20, R2 only receives the multicast data transmitted by I-PMSI#1 and discards the multicast data transmitted by I-PMSI#2.
[0117] S440 When BIER subdomain 10 fails, R2 initiates a primary / backup BIER subdomain switchover, switching the primary BIER subdomain from BIER subdomain 10 to BIER subdomain 20, and receiving multicast data sent by R1 from I-PMSI#2, achieving rapid switching to reduce network packet loss.
[0118] The processing steps for R3 to receive multicast data from R1 are the same as those for R2, and will not be repeated here.
[0119] Please see Figure 7 The illustration shows a routing device 500 provided in an embodiment of the present invention, including: a memory 510, a processor 520, and a computer program stored in the memory 510 and executable on the processor 520.
[0120] The processor 520 and memory 510 can be connected via a bus or other means.
[0121] Memory 510, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs and non-transitory computer-executable programs. Furthermore, memory 510 may include high-speed random access memory, and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some embodiments, the memory may optionally include memory remotely located relative to processor 520, and these remote memories can be connected to processor 520 via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
[0122] The non-transient software program and instructions required to implement the multicast implementation method of the above embodiments are stored in the memory 510. When executed by the processor 520, the multicast implementation method in any of the above embodiments is executed.
[0123] Furthermore, embodiments of the present invention also provide a computer-readable storage medium storing a computer program that is executed by a processor or controller. When the computer program is executed by the processor or controller, the multicast implementation method in any of the above embodiments is performed.
[0124] It will be understood by those skilled in the art that all or some of the steps and systems in the methods disclosed above can be implemented as software, firmware, hardware, and suitable combinations thereof. Some or all of the physical components can be implemented as software executed by a processor, such as a central processing unit, digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application-specific integrated circuit. Such software can be distributed on a computer-readable medium, which can include computer storage media (or non-transitory media) and communication media (or transient media). As is known to those skilled in the art, the term computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information (such as computer-readable instructions, data structures, program modules, or other data). Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technologies, CD-ROM, digital versatile disc (DVD) or other optical disc storage, magnetic cartridges, magnetic tape, disk storage or other magnetic storage devices, or any other medium that can be used to store desired information and is accessible to a computer. Furthermore, as is known to those skilled in the art, communication media typically contain computer-readable instructions, data structures, program modules, or other data in modulated data signals such as carrier waves or other transmission mechanisms, and may include any information delivery medium.
[0125] The above is a detailed description of the preferred embodiments of the present invention. However, the present invention is not limited to the above embodiments. Those skilled in the art can make various equivalent modifications or substitutions without departing from the spirit of the present invention. All such equivalent modifications or substitutions are included within the scope defined by the claims of the present invention.
Claims
1. A method for implementing multicast, the method comprising: A first routing device sends a first message to at least one second routing device, wherein the first message carries a plurality of first bit-indexed explicit copy BIER subdomain identifiers, the first routing device supports a plurality of BIER subdomains, and the first BIER subdomain identifiers are used to characterize the BIER subdomains supported by the first routing device. The first routing device receives a second message returned by the second routing device, wherein the second message carries at least one second BIER subdomain identifier, the second BIER subdomain identifier is used to characterize the BIER subdomains supported by the second routing device, and the second message is sent by the second routing device when it determines that it and the first routing device have at least one BIER subdomain commonly supported based on the multiple first BIER subdomain identifiers carried in the first message; The first routing device establishes a transmission path with the second routing device for multicast data transmission based on the second BIER subdomain identifier carried in the second message.
2. The method according to claim 1, characterized in that, The first message is carried in the tunnel attributes of the full public multicast service interface I-PMSI automatic route discovery or the selected public multicast service interface S-PMSI automatic route discovery; The second message is carried in the tunnel attribute of the leaf auto-discovery route.
3. The method according to claim 1, characterized in that, The first message also carries at least one of the following: The number of BIER subdomains supported by the first routing device corresponds to the number of first BIER subdomain identifiers; The first forwarding router BFR identifier corresponds to the first BIER subdomain identifier; The first prefix type corresponds to the first BIER subdomain identifier; The first BFR prefix corresponds to the first BIER subdomain identifier.
4. The method according to claim 1, characterized in that, The second message also carries at least one of the following: The number of BIER subdomains supported by the second routing device corresponds to the number of BIER subdomain identifiers. The second forwarding router BFR identifier corresponds to the second BIER subdomain identifier; The second prefix type corresponds to the second BIER subdomain identifier; The second BFR prefix corresponds to the second BIER subdomain identifier.
5. The method according to claim 1, characterized in that, The method further includes: When the transmission path established between the first routing device and the second routing device includes an I-PMSI tunnel and an S-PMSI tunnel, the first routing device and the second routing device establish a bidirectional forwarding detection (BFD) session only through the I-PMSI tunnel.
6. The method according to claim 1, characterized in that, The first message is a membership query message, and the first BIER subdomain identifier is carried in the membership query message; The second message is a membership report message, and the second BIER subdomain identifier is carried in the membership report message.
7. A method for implementing multicast, the method comprising: The second routing device receives a first message sent by the first routing device, wherein the first message carries multiple first bit-indexed explicit copy BIER subdomain identifiers, the first routing device supports multiple BIER subdomains, and the first BIER subdomain identifier is used to characterize the BIER subdomains supported by the first routing device. When the second routing device determines that it and the first routing device have at least one BIER subdomain supported by each other based on the multiple first BIER subdomain identifiers carried in the first message, the second routing device sends a second message to the first routing device, wherein the second message carries at least one second BIER subdomain identifier, and the second BIER subdomain identifier is used to characterize the BIER subdomain supported by the second routing device. The second routing device establishes a transmission path for multicast data transmission with the first routing device. The transmission path is established by the first routing device based on the second BIER subdomain identifier carried in the second message.
8. The method according to claim 7, further comprising: When the second routing device supports multiple BIER subdomains and the second routing device and the first routing device have multiple BIER subdomains supported by each other, there are multiple transmission paths established between the second routing device and the first routing device, and each of the multiple transmission paths corresponds one-to-one with the multiple BIER subdomains supported by each other.
9. The method according to claim 8, further comprising: The second routing device determines the primary BIER subdomain and the backup BIER subdomain from the plurality of commonly supported BIER subdomains; Receive multicast data transmitted from the transmission path corresponding to the main BIER subdomain; When the transmission path corresponding to the primary BIER subdomain is abnormal, a new primary BIER subdomain is determined from the backup BIER subdomain.
10. The method according to claim 7, characterized in that, The first message is carried in the tunnel attributes of the full public multicast service interface I-PMSI automatic route discovery or the selected public multicast service interface S-PMSI automatic route discovery; The second message is carried in the tunnel attribute of the leaf auto-discovery route.
11. The method according to claim 7, characterized in that, The first message also carries at least one of the following: The number of BIER subdomains supported by the first routing device corresponds to the number of first BIER subdomain identifiers; The first forwarding router BFR identifier corresponds to the first BIER subdomain identifier; The first prefix type corresponds to the first BIER subdomain identifier; The first BFR prefix corresponds to the first BIER subdomain identifier.
12. The method according to claim 7, characterized in that, The second message also carries at least one of the following: The number of BIER subdomains supported by the second routing device corresponds to the number of BIER subdomain identifiers. The second forwarding router BFR identifier corresponds to the second BIER subdomain identifier; The second prefix type corresponds to the second BIER subdomain identifier; The second BFR prefix corresponds to the second BIER subdomain identifier.
13. The method according to claim 7, characterized in that, The first message is a membership query message, and the first BIER subdomain identifier is carried in the membership query message; The second message is a membership report message, and the second BIER subdomain identifier is carried in the membership report message.
14. A routing device, characterized in that, include: A memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the computer program, implements the multicast implementation method as described in any one of claims 1 to 6, or the multicast implementation method as described in any one of claims 7 to 13.
15. A computer-readable storage medium, characterized in that, The system contains a computer program that, when executed by a processor, implements the multicast implementation method as described in any one of claims 1 to 6, or the multicast implementation method as described in any one of claims 7 to 13.
Citation Information
Patent Citations
Multicast flow overlay using registration over reliable transport
CN105991302A
Method and device for realizing message transmission
CN112448876A