A multicast routing method and routing device

By recording the correspondence between the network device interface and the upstream device ID, selecting the interface with the largest or minimum ID identification to send multicast messages, solving the problem that multicast traffic forwarding cannot share traffic in traditional networks, and realizing multicast routing routing Sharing and bandwidth optimization.

CN115499367BActive Publication Date: 2025-02-11NEW H3C TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211058657.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-08-30
Publication Date
2025-02-11
Estimated Expiration
2042-08-30

AI Technical Summary

Technical Problem

In traditional networks, the forwarding of multicast traffic has defects and cannot share traffic on multiple uplink paths, resulting in waste of intermediate bandwidth and increased pressure on network equipment.

Method used

By receiving messages sent by upstream devices, recording the corresponding relationship between the ID identification of the own interface and the upstream device, and selecting the interface with the largest or least ID identification according to the relationship to send multicast join messages, realizing multicast routing.

Benefits of technology

In a network with equivalent routing, the routing sharing of multicast traffic is realized, reducing the bandwidth waste of intermediate devices and the pressure on network devices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115499367B_ABST
    Figure CN115499367B_ABST
Patent Text Reader

Abstract

The present specification provides a method and a routing device for multicast routing, the method comprising: receiving a first message sent by two or more upstream devices, the first message carrying an ID of each upstream device, the ID being used to uniquely identify the upstream device, recording the correspondence between its own interface and the ID, and selecting the interface corresponding to the largest ID to send a multicast join message according to the correspondence, or selecting the interface corresponding to the smallest ID to send a multicast join message. Through this method, multicast routing in a network with equal-cost links can be realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of communication technology, and in particular to a multicast routing method and a routing device. Background Art

[0002] Usually, in traditional network communication, there are two modes. One is the "one-to-one" communication between the source host and the target host, namely unicast, and the second is the communication between a source host and all other hosts in the network, namely broadcast. Then, if information needs to be sent from the source host to multiple target hosts in the network, either broadcast mode is used, so that all hosts in the network will receive the information, or unicast mode is used, where the source host sends the information to each different target host. It can be seen that in the broadcast mode, information will be sent to hosts that do not need the information, thereby wasting bandwidth resources and even causing broadcast storms: in the unicast mode, bandwidth resources will be wasted due to multiple repetitions of data packets, and the load of the source host will increase due to multiple data replications. Therefore, unicast and broadcast have defects in multi-point transmission.

[0003] In this case, multicast technology came into being.

[0004] Multicast is also called multi-target broadcast or multicast. It is a transmission method used in the network that allows the message to be sent to a selected subset of all possible destinations, that is, to send information to multiple addresses that are clearly specified. It is a method of communication between a sender and multiple receivers. Together with anycast and unicast, multicast is also a packet transmission method of IPv6. Multicast can also be used in wireless data networks in CDPD technology.

[0005] ECMP (Equal-Cost Multipath Routing) is an equal-cost multipath protocol. In a network environment where there are multiple different links to the same destination address, if traditional routing technology is used, the data packet sent to the destination address can only use one of the links, and the other links are in a backup state or invalid state. In addition, it takes a certain amount of time to switch between them in a dynamic routing environment. The equal-cost multipath routing protocol can use multiple links at the same time in this network environment, which not only increases the transmission bandwidth, but also can back up the data transmission of the failed link without delay and packet loss. Summary of the invention

[0006] The present disclosure provides a multicast routing method and a routing device, through which multicast routing can be implemented in a network with equal-cost links.

[0007] The present disclosure provides a method for multicast routing, the method comprising:

[0008] receiving a first message sent by two or more upstream devices, wherein the first message carries an ID of each upstream device, and the ID is used to uniquely identify the upstream device;

[0009] Record the correspondence between its own interface and ID identification;

[0010] According to the corresponding relationship, the interface corresponding to the largest ID identifier is selected to send the multicast join message, or the interface corresponding to the smallest ID identifier is selected to send the multicast join message.

[0011] Optionally, before receiving first messages sent by two or more upstream devices, the method includes:

[0012] Determine whether there are equivalent links between itself and two or more upstream devices;

[0013] If so, determine whether there is a PIM neighbor;

[0014] If there are PIM neighbors, receiving first messages sent by two or more upstream devices is performed.

[0015] The ID identification includes: the Router ID of the upstream device.

[0016] The step of selecting the interface corresponding to the largest ID identifier according to the corresponding relationship to send the multicast join message includes:

[0017] According to the parity of the designated bit of the multicast group address to be added to the multicast, the interface corresponding to the largest ID identifier is selected to send the multicast join message, or the interface corresponding to the smallest ID identifier is selected to send the multicast join message.

[0018] It can be seen from the above method that by obtaining the correspondence between its own interface and the upstream device, it is possible to control a certain interface to send a multicast join message to the corresponding upstream device, thereby realizing multicast routing.

[0019] The present disclosure also provides a method for multicast routing, the method comprising:

[0020] Receive a multicast join message and determine the parity of a designated bit of the multicast group address to be added to the multicast;

[0021] According to the judgment result, using the recorded correspondence between the interface and the ID identifier, select the interface corresponding to the largest ID identifier to send the multicast join message, or select the interface corresponding to the smallest ID identifier to send the multicast join message;

[0022] The ID is used to uniquely identify the upstream device.

[0023] The method for obtaining the corresponding relationship includes:

[0024] Receiving first messages sent by two or more upstream devices, wherein the first messages carry IDs of the upstream devices;

[0025] Record the correspondence between its own interface and ID.

[0026] The present disclosure also provides a routing device, the routing device comprising:

[0027] A receiving module, used to receive a first message sent by two or more upstream devices, wherein the first message carries an ID of each upstream device, and the ID is used to uniquely identify the upstream device;

[0028] A recording module, used to record the correspondence between the interface through which the first message is received and the ID identifier;

[0029] The processing module is used to select the interface corresponding to the largest ID identifier to send the multicast join message according to the corresponding relationship, or select the interface corresponding to the smallest ID identifier to send the multicast join message.

[0030] The routing device also includes:

[0031] A judgment module, used to judge whether there are equivalent links between itself and two or more upstream devices;

[0032] If so, determine whether there is a PIM neighbor;

[0033] If there are PIM neighbors, receiving first messages sent by two or more upstream devices is performed.

[0034] The present disclosure also provides a routing device, the routing device comprising:

[0035] A receiving module, used for receiving a multicast join message;

[0036] A determination module, used for determining the parity of a designated bit of a multicast group address to be added to the multicast;

[0037] A processing module, used for selecting the interface corresponding to the largest ID identifier to send the multicast join message, or selecting the interface corresponding to the smallest ID identifier to send the multicast join message according to the judgment result and using the recorded correspondence between the interface and the ID identifier;

[0038] The ID is used to uniquely identify the upstream device.

[0039] The receiving module is further configured to receive a first message sent by two or more upstream devices, wherein the first message carries an ID of each upstream device;

[0040] The processing module is also used to record the corresponding relationship between its own interface and the ID identifier. BRIEF DESCRIPTION OF THE DRAWINGS

[0041] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the specification and, together with the description, serve to explain the principles of the specification.

[0042] Figure 1 A schematic diagram of a network architecture provided for an embodiment of the present disclosure.

[0043] Figure 2 A flowchart of a multicast routing method provided in an embodiment of the present disclosure. DETAILED DESCRIPTION

[0044] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The implementations described in the following exemplary embodiments do not represent all implementations consistent with this specification. Instead, they are merely examples of devices and methods consistent with some aspects of this specification as detailed in the appended claims.

[0045] The terms used in this specification are for the purpose of describing specific embodiments only and are not intended to limit this specification. The singular forms "a", "the" and "the" used in this specification and the appended claims are also intended to include plural forms unless the context clearly indicates otherwise. It should also be understood that the term "and / or" used herein refers to and includes any or all possible combinations of one or more associated listed items.

[0046] It should be understood that although the terms first, second, third, etc. may be used in this specification to describe various information, this information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other. For example, without departing from the scope of this specification, the first information may also be referred to as the second information, and similarly, the second information may also be referred to as the first information. Depending on the context, the word "if" as used herein may be interpreted as "at the time of" or "when" or "in response to determining".

[0047] At present, the forwarding of multicast traffic in traditional networks (scenarios with equal-cost routing) has the following disadvantages:

[0048] 1. Multicast routing is based on unicast routing. In the presence of equal-cost routes, only one interface can be used to forward multicast traffic, and traffic cannot be shared on multiple upstream paths.

[0049] 2. For different devices, the traffic with the same multicast group address is hashed to the same upstream device, which can only be achieved through address planning and adjustment, which lacks flexibility.

[0050] like Figure 1 As shown in the figure, in the MLAG multicast scenario, two devices need to join the same multicast group to direct traffic.

[0051] The two directional lines represent traffic forwarding paths of different multicast groups. The same multicast group may have non-overlapping forwarding paths, resulting in a waste of intermediate bandwidth.

[0052] For example, there are equal-cost routes from mLAG device 1 and mLAG device 2 to the multicast source, and the next hops are both Router 3 and Router 2.

[0053] The optimal upstream path is selected based on the following RPF:

[0054] a Select the route with the longest mask match.

[0055] bIf the masks are the same, the route with the highest routing priority is selected.

[0056] cIf the route priorities are also the same, the selection is made in the order of multicast static route, MBGP route, and unicast route.

[0057] d If equal-cost routes exist, the one with the larger next-hop IP address is selected.

[0058] Router 3 and Router 4 will only select neighbors with larger IP addresses in equal-cost routes as upstream forwarding paths to send join messages for diversion, thus wasting multicast traffic bandwidth of intermediate devices, such as the traffic between service area->Router 2->Router 4.

[0059] In the scenario of IP address planning, although some multicast traffic replication points can be controlled to sink to the vicinity of multicast clients, different multicast data can only be forwarded through the path with a large IP address, and load sharing cannot be done on multiple paths.

[0060] In order to implement multicast routing in a network with equal-cost routes, the present disclosure provides a multicast routing method, such as Figure 2 As shown, the method includes:

[0061] S201 receives a first message sent by two or more upstream devices, where the first message carries an ID of each upstream device, where the ID is used to uniquely identify the upstream device;

[0062] S202 records the correspondence between its own interface and ID identification;

[0063] S203: According to the corresponding relationship, select the interface corresponding to the largest ID identifier to send the multicast join message, or select the interface corresponding to the smallest ID identifier to send the multicast join message.

[0064] In this embodiment, the first message may be a Hello message. Specifically, a target parameter is added to the Hello message of PIM. The target parameter may be an address parameter. For example, Router ID is used as the target parameter. In other embodiments, the target parameter may also be other set parameters.

[0065] In this embodiment, the corresponding relationship can be automatically learned by the routing device or set by an administrator.

[0066] In an example of automatic learning, itself (set as the first network device) receives the first message from the first interface, obtains the ID identifier in the first message, and can record the correspondence between the first interface and the ID identifier. Similarly, after the second interface receives the first message sent by other upstream network devices, it can record the correspondence between the second interface and the ID identifier of other upstream devices.

[0067] In a setting example, an administrator can manually configure the ID identification of its own interface and the upstream network device in each network device, and save the record in the network device.

[0068] In this embodiment, before receiving the first message sent by two or more upstream devices, it can also be determined whether there are equivalent links between itself and the two or more upstream devices. For example, by finding the route to the multicast source address, the routing table can be checked to see whether there are multiple paths. If there are multiple paths, it means that there are equivalent routes. After determining that there are equivalent routes, it is determined whether there are PIM neighbors, where each PIM neighbor can be simply understood as a neighbor interface on the network device. If there are PIM neighbors, the first message sent by the two or more upstream devices is received.

[0069] In step S203, the step of selecting the interface corresponding to the largest ID identifier according to the corresponding relationship to send the multicast join message includes:

[0070] According to the parity of the designated bit of the multicast group address to be added to the multicast, the interface corresponding to the largest ID identifier is selected to send the multicast join message, or the interface corresponding to the smallest ID identifier is selected to send the multicast join message.

[0071] In one embodiment, the designated bit may be the last bit of the address of the multicast group to be joined. If the bit is an odd bit, the interface corresponding to the largest ID identifier is selected to send the multicast join message. If the bit is an even bit, the interface corresponding to the smallest ID identifier is selected to send the multicast join message.

[0072] Alternatively, if the bit is an odd number, the interface corresponding to the smallest ID is selected to send the multicast join message; if the bit is an even number, the interface corresponding to the largest ID is selected to send the multicast join message.

[0073] Alternatively, according to the network load requirement, the port of the maximum ID or the minimum ID corresponding to the parity of the designated bit may be switched periodically to achieve the effect of load sharing.

[0074] It should be noted that, in this embodiment, only the designated bit is taken as the last bit for illustration, and in other embodiments, any bit can be selected as the designated bit.

[0075] It can be seen from the above embodiments that when equal-cost routes exist for multicast, traffic can be shared on multi-hop links (by specifying the parity of the bit, selecting an upstream device with a large ID or an upstream device with a small ID to send a multicast join message), thereby reducing the pressure on network devices.

[0076] Furthermore, through this embodiment, multicast can no longer be compared based on the size of the interface address, and the deployment is flexible.

[0077] Through this embodiment, a flexible multicast routing method is provided, and the multicast path can be adjusted according to demand, thereby reducing unnecessary duplication of intermediate devices and alleviating the pressure on network devices.

[0078] Based on the above method embodiments, the present disclosure also provides a method for multicast routing, which includes:

[0079] Receive a multicast join message and determine the parity of a designated bit of the multicast group address to be added to the multicast;

[0080] According to the judgment result, using the recorded correspondence between the interface and the ID identifier, select the interface corresponding to the largest ID identifier to send the multicast join message, or select the interface corresponding to the smallest ID identifier to send the multicast join message;

[0081] The ID is used to uniquely identify the upstream device.

[0082] In this embodiment, the method for obtaining the corresponding relationship includes:

[0083] Receiving first messages sent by two or more upstream devices, wherein the first messages carry IDs of the upstream devices;

[0084] Record the correspondence between its own interface and ID.

[0085] Based on various method embodiments, the embodiments of the present disclosure further provide a routing device, which may be a network device such as a router, a switch, or a server that supports multicast forwarding.

[0086] In this embodiment, the routing device includes:

[0087] A receiving module, used to receive a first message sent by two or more upstream devices, wherein the first message carries an ID of each upstream device, and the ID is used to uniquely identify the upstream device;

[0088] A recording module, used to record the correspondence between the interface through which the first message is received and the ID identifier;

[0089] The processing module is used to select the interface corresponding to the largest ID identifier to send the multicast join message according to the corresponding relationship, or select the interface corresponding to the smallest ID identifier to send the multicast join message.

[0090] The judgment module is used to judge whether there are equivalent links between itself and two or more upstream devices;

[0091] If so, determine whether there is a PIM neighbor;

[0092] If there are PIM neighbors, receiving first messages sent by two or more upstream devices is performed.

[0093] The present disclosure also provides a routing device, the routing device comprising:

[0094] A receiving module, used for receiving a multicast join message;

[0095] A determination module, used for determining the parity of a designated bit of a multicast group address to be added to the multicast;

[0096] A processing module, used for selecting the interface corresponding to the largest ID identifier to send the multicast join message, or selecting the interface corresponding to the smallest ID identifier to send the multicast join message according to the judgment result and using the recorded correspondence between the interface and the ID identifier;

[0097] The ID is used to uniquely identify the upstream device.

[0098] The receiving module is further configured to receive a first message sent by two or more upstream devices, wherein the first message carries an ID of each upstream device;

[0099] The processing module is also used to record the corresponding relationship between its own interface and the ID identifier.

[0100] The above is a description of a specific embodiment of the specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recorded in the claims can be performed in an order different from that in the embodiments and still achieve the desired results. In addition, the processes depicted in the drawings do not necessarily require the specific order or continuous order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0101] Those skilled in the art will readily appreciate other embodiments of the specification after considering the specification and practicing the invention claimed herein. The specification is intended to cover any variations, uses or adaptations of the specification that follow the general principles of the specification and include common knowledge or customary techniques in the art that are not claimed in the specification. The specification and examples are to be considered exemplary only, and the true scope and spirit of the specification are indicated by the following claims.

[0102] It should be understood that the present description is not limited to the precise structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present description is limited only by the appended claims.

[0103] The above description is only a preferred embodiment of this specification and is not intended to limit this specification. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of this specification should be included in the scope of protection of this specification.

Claims

1. A method for multicast routing, characterized in that: The method comprises: receiving a first message sent by two or more upstream devices, wherein the first message carries an ID of each upstream device, and the ID is used to uniquely identify the upstream device; Record the correspondence between its own interface and ID identification; According to the corresponding relationship, select the interface corresponding to the maximum ID identifier to send the multicast join message, or select the interface corresponding to the minimum ID identifier to send the multicast join message; The step of selecting the interface corresponding to the largest ID identifier according to the corresponding relationship to send the multicast join message includes: According to the parity of the designated bit of the multicast group address to be added to the multicast, the interface corresponding to the largest ID identifier is selected to send the multicast join message, or the interface corresponding to the smallest ID identifier is selected to send the multicast join message.

2. The method according to claim 1, characterized in that Before receiving first messages sent by two or more upstream devices, the method includes: Determine whether there are equivalent links between itself and two or more upstream devices; If so, determine whether there is a PIM neighbor; If there are PIM neighbors, receiving first messages sent by two or more upstream devices is performed.

3. The method according to claim 1, characterized in that The ID identification includes: the Router ID of the upstream device.

4. A routing device, characterized in that: The routing device comprises: A receiving module, used to receive a first message sent by two or more upstream devices, wherein the first message carries an ID of each upstream device, and the ID is used to uniquely identify the upstream device; A recording module, used to record the correspondence between the interface through which the first message is received and the ID identifier; A processing module, used for selecting an interface corresponding to the maximum ID identifier to send a multicast join message according to the corresponding relationship, or selecting an interface corresponding to the minimum ID identifier to send a multicast join message; The step of selecting the interface corresponding to the largest ID identifier according to the corresponding relationship to send the multicast join message includes: According to the parity of the designated bit of the multicast group address to be added to the multicast, the interface corresponding to the largest ID identifier is selected to send the multicast join message, or the interface corresponding to the smallest ID identifier is selected to send the multicast join message.

5. The routing device according to claim 4, characterized in that: The routing device also includes: A judgment module, used to judge whether there are equivalent links between itself and two or more upstream devices; If so, determine whether there is a PIM neighbor; If there are PIM neighbors, receiving first messages sent by two or more upstream devices is performed.

Citation Information

Patent Citations

  • Method, system and apparatus for PIM DM to support bandwidth reservation and establishing multicast list

    CN101291242A

  • Method, system and equipment for transmitting data in elastic grouping ring

    CN101534231A