Multicast fast rerouting method based on node cluster
By forming a node cluster in the network, making each node backup each other, the problem of excessive multicast rerouting caused by unstable routing paths is solved, and the stability and efficiency of multicast transmission are achieved.
Patent Information
- Application Number
- CN202311719810.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-14
- Publication Date
- 2025-06-17
AI Technical Summary
During the transmission process of existing networks, the cost of multicast rerouting caused by unstable routing paths is too high, affecting the quality of multicast service.
By forming several clusters of network forwarding nodes, the nodes in the cluster are backed up each other. When the bearer node fails, the multicast route is switched to the backup node of the failed bearer node and the same cluster to achieve stable multicast transmission.
The cost of multicast rerouting is reduced, the quality of multicast service is improved, and the stability of multicast transmission in the network is ensured.
Smart Images

Figure CN120166064A_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of multicast transmission in a network environment, and particularly relates to a method for fast rerouting of network layer multicast. Background Art
[0002] With the development of Internet services, unicast and broadcast in traditional IP communication methods cannot effectively solve the problem of single-point sending and multi-point receiving. Therefore, a multicast communication method has been developed. Multicast refers to sending data packets in an IP network in a best-effort delivery form to a certain determined node set (i.e., a multicast group), which effectively solves the problem of single-point sending and multi-point receiving, realizes efficient data transmission from point to multi-point in the IP network, and can save a large amount of network bandwidth and reduce network load.
[0003] Due to the dynamics of multicast, the multicast forwarding tree formed by multicast group members and multicast transmission nodes needs to be calculated in real time. Once a forwarding node or a forwarding link of the multicast forwarding tree fails after the scale of the multicast forwarding tree reaches a certain level, the routing rules of the entire multicast forwarding tree mostly need to be recalculated, which takes a long time and has a large calculation cost, thus affecting the quality of multicast services.
[0004] To solve this problem, in addition to ensuring the stability of multicast forwarding nodes and links, minimizing the influence range of faulty nodes and fast rerouting are also important ways to solve the problem. How to achieve efficient and stable multicast transmission at the lowest cost is an important issue, which is of great significance for the network to more conveniently provide some new value-added services, including information service fields such as online live broadcast, Internet TV, and real-time video conferencing. Summary of the Invention
[0005] The purpose of this application is to overcome the defect that the multicast rerouting cost is too high due to unstable routing paths in the existing network transmission process.
[0006] To achieve the above purpose, this application provides a method for fast multicast rerouting based on a node cluster, including:
[0007] A node cluster is composed of several network nodes. Each node in the node cluster serves as a backup for each other and provides multicast services uniformly to the outside of the cluster;
[0008] When a bearing node fails during the multicast data transmission, the upstream node of the faulty network link or the failed bearing node switches the multicast route to the backup node in the same cluster as the faulty bearing node to achieve the stability of multicast transmission;
[0009] The bearing node is a network node that establishes a multicast forwarding tree within the node cluster;
[0010] The backup node is a network node in the node cluster other than the bearing node.
[0011] As an improvement to the above method, the functions of the network nodes included in the node cluster include:
[0012] Having the function of a network routing and switching node;
[0013] Having the functions of copying, modifying fields, and forwarding data packets;
[0014] Having the functions of selecting upstream and downstream nodes of the multicast forwarding tree and maintaining the multicast forwarding tree;
[0015] Supporting sending node information to the network management system and obtaining cluster affiliation information.
[0016] As an improvement to the above method, the method for forming a node cluster includes: the network management system divides the node cluster according to clustering rules through static configuration; the clustering rules include: operator information, geographical location, and network status.
[0017] As an improvement to the above method, the network management system is used to maintain the network nodes of the entire network and the affiliation information of each node cluster; provide a network node information query service interface for network nodes to obtain the affiliation information of each node cluster.
[0018] As an improvement to the above method, the multicast forwarding tree refers to the multicast routing strategy of each network node during the transmission of the multicast data stream, including: the upstream node, downstream node, and routing status information of the current node.
[0019] As an improvement to the above method, the method for synchronously backing up the multicast forwarding tree within the node cluster includes:
[0020] After receiving the multicast control message, the bearing node generates a multicast forwarding tree on this node and sends the multicast control message marked as a synchronization message to the backup node;
[0021] After receiving the multicast control message marked as a synchronization message, the backup node generates a multicast forwarding tree exactly the same as that of the bearing node and no longer sends synchronized multicast control messages;
[0022] Each bearing node in the cluster regularly synchronizes the multicast forwarding tree change information cached on this node to the backup node, and the change information includes: addition, deletion, and upstream and downstream changes of the multicast forwarding tree.
[0023] As an improvement to the above method, the multicast control message includes, in addition to the control fields with traditional multicast, a synchronization identifier; the synchronization identifier is used to distinguish the multicast control message from the cluster synchronization message.
[0024] As an improvement of the above method, the multicast control information is used to identify the multicast group, node intention, node status, and upstream and downstream relationship information, and is used to generate the flag bit of the multicast forwarding tree;
[0025] The node intention includes joining or leaving the multicast.
[0026] As an improvement of the above method, when a carrier node fails during the multicast data transmission, the upstream node of the faulty network link or the failed carrier node switches the multicast route to the backup node in the same cluster as the faulty carrier node, including:
[0027] 1) A certain multicast node in the node cluster receives a multicast join request from a downstream node, and this multicast node becomes the carrier node of this multicast stream in the node cluster; the carrier node marks the downstream node as downstream and forwards the multicast join request to the upstream node;
[0028] 2) The carrier node marks the multicast join request message as a synchronization message within the node cluster and forwards it to the backup node in the node cluster; the backup node also marks the downstream node as downstream according to the synchronization message;
[0029] 3) After the carrier node receives the multicast join success message from the upstream node, it marks the upstream node as upstream, and at the same time marks the multicast join success message as a synchronization message within the cluster and forwards it to the backup node; the backup node also marks the upstream node as upstream according to the synchronization message;
[0030] 4) The multicast data stream is transmitted along the path of "upstream node - carrier node - downstream node", and at the same time the backup node has a backup with exactly the same multicast forwarding tree routing strategy for switching; when the carrier node fails and the upstream node senses this failure, through the cluster information, the downstream is changed to one of the backup nodes as the new carrier node; the multicast data stream is changed to be transmitted along the path of "upstream node - new carrier node - downstream node" to achieve fast rerouting of the multicast.
[0031] Compared with the prior art, the advantages of this application are:
[0032] A multicast fast rerouting method based on node clusters proposed by this method forms several clusters from network forwarding nodes, so that each node within the cluster is a backup for each other. When a network forwarding node fails, it can reduce the cost of multicast rerouting and improve the quality of multicast services. BRIEF DESCRIPTION OF THE DRAWINGS
[0033] Figure 1 The figure shows the flow chart of the multicast fast rerouting method based on node clusters;
[0034] Figure 2 The figure shows the schematic diagram of the network structure of the multicast fast rerouting embodiment;
[0035] Figure 3 The figure shows the flowchart of the multicast forwarding tree synchronization backup embodiment;
[0036] Figure 4 The figure shows the flowchart of the multicast fast rerouting embodiment. Specific embodiments
[0037] The technical solution of the present application will be described in detail below with reference to the accompanying drawings.
[0038] The present application proposes a multicast fast rerouting method based on node clusters. By forming clusters of multicast forwarding nodes in the network according to certain clustering rules, where each node in each cluster is a backup to each other, and the entire cluster externally acts as a logical node to provide multicast services, so that multicast routing has several naturally formed backup routes at each forwarding node. In this way, when a multicast node fails, the upstream multicast node can achieve fast rerouting, thereby restoring the multicast service.
[0039] As Figure 1 shown, the multicast fast rerouting method based on node clusters provided by the present application involves traditional multicast nodes and multicast cluster nodes, including a method for forming node clusters, a method for synchronizing and backing up multicast forwarding trees, and a method for dynamically maintaining multicast forwarding trees. The method includes:
[0040] Step 1: Several multicast nodes form a node cluster according to certain clustering rules, and each node in the cluster is a backup to each other, and uniformly provides multicast services to the outside of the cluster;
[0041] The functions that the multicast cluster nodes need to have include but are not limited to:
[0042] Having the function of a network routing and switching node;
[0043] Having the functions of copying, modifying fields, and forwarding data packets;
[0044] Having the functions of selecting upstream and downstream of the multicast forwarding tree and maintaining the multicast forwarding tree;
[0045] Supporting sending node information to the network management system and obtaining node cluster subordinate information. The node cluster subordinate information is the node information included in the node cluster.
[0046] The method for forming node clusters includes but is not limited to dividing node clusters according to certain clustering rules through static configuration in the network management system. The clustering rules include but are not limited to operator information, geographical location, network status, etc.
[0047] The network management system is used to maintain the network nodes and the subordinate information of each cluster in the whole network, and can provide a network node information query service interface so that the network nodes can obtain the subordinate information of each cluster.
[0048] Step 2: When a certain node in the cluster needs to establish a multicast forwarding tree, it can use the cluster synchronization message to completely back up the multicast forwarding tree to the remaining nodes in the cluster. At this time, this node is called the bearing node, and the remaining nodes are called backup nodes;
[0049] The multicast forwarding tree refers to the multicast routing strategies of each network node during the transmission of the multicast data stream, including but not limited to information such as the upstream node, downstream node, and routing status of the current node.
[0050] The process of the multicast forwarding tree synchronization backup method is as follows:
[0051] 1) After receiving the multicast control message, when generating the multicast forwarding tree at its own node, the bearing node will mark the multicast control message as a synchronization message and send it to the backup nodes;
[0052] 2) After receiving the multicast control message marked as a synchronization message, the backup nodes will generate a multicast forwarding tree exactly the same as that of the bearing node, and at this time, no synchronous multicast control message will be sent;
[0053] 3) Each bearing node in the cluster regularly synchronizes the changes of the multicast forwarding tree cached at its own node to the backup nodes, including but not limited to the addition, deletion, and upstream and downstream changes of the multicast forwarding tree.
[0054] In addition to the control fields of traditional multicast, the multicast control message also needs to have a synchronization identifier to distinguish the multicast control message from the cluster synchronization message.
[0055] The multicast control information is used to identify the flag bits for generating the multicast forwarding tree, including but not limited to the multicast group, node intention (join multicast, leave multicast, etc.), node status, upstream and downstream relationship, etc.
[0056] Step 3: When a bearing node fails during the transmission of multicast data, the upstream node of the faulty network link or the faulty bearing node will quickly switch the multicast route to the backup node in the same cluster as the faulty bearing node, so as to ensure the stability of multicast transmission.
[0057] The multicast fast rerouting method includes the following steps:
[0058] 1) The multicast node B-1 in cluster B receives a multicast join request from the downstream node C. Node B-1 immediately becomes the bearing node of this multicast stream in cluster B, marks node C as the downstream, and then forwards the multicast join request to the upstream node A;
[0059] 2) After Node B-1 marks the multicast join request message as an in-cluster synchronization message, it forwards it to Node B-2 within Cluster B. According to the synchronization message, B-2 also marks Node C as the downstream node;
[0060] 3) After Node B-1 receives the multicast join success message from the upstream node A, it marks Node A as the upstream node. At the same time, it marks the multicast join success message as an in-cluster synchronization message and forwards it to Node B-2. According to the synchronization message, B-2 also marks Node A as the upstream node;
[0061] 4) The multicast data stream will be transmitted along the path A → B-1 → C. At the same time, B-2 has a backup with exactly the same multicast forwarding tree routing strategy for switching. When B-1 fails and A senses this failure, through the cluster information, the downstream node can be quickly changed to B-2, and the multicast data stream will be changed to be transmitted along the path A → B-2 → C, thus realizing fast rerouting of multicast.
[0062] To make the technical solution of this application clearer, the following further details this application in conjunction with the accompanying drawings. It should be understood that the specific examples described herein are only used to explain this application and are not limited to this application.
[0063] The technical solution of this application is in a network that bears multicast forwarding. According to certain clustering rules, the forwarding nodes are formed into several clusters. The multicast forwarding trees within the clusters are backed up with each other at each node, so that when a node or link fails, the upstream node can quickly realize multicast rerouting to ensure the stability of the multicast service.
[0064] As Figure 2 shown, in the embodiment of this application, the API integrated in the user-side node or user host has the ability to send multicast join messages, and the network that bears multicast forwarding contains four clusters, and each cluster contains several forwarding nodes with multicast forwarding capabilities. Among them, a single multicast forwarding node is mainly responsible for processing multicast join requests from the user side. In addition to having the basic multicast routing and forwarding functions, it also needs to have the following functions: uniquely identify the multicast service through a multicast identifier, including relevant multicast control messages, multicast routing strategies, and multicast data streams, etc.; can copy and forward multicast data according to the routing and forwarding rules, and can modify the destination node of the forwarding according to conditions; can trigger the node identity switch through the multicast data stream, such as switching the backup node to the bearing node; can obtain information about the cluster of a specific node and the IPs of all nodes within the cluster by querying the network management system. The clusters in the network are represented by capital letters, such as Cluster A, B, C, D, and the identifiers of each forwarding node within the cluster are: (B-1, B-2, B-3, …, B-n).
[0065] All multicast forwarding nodes are logically classified according to the number of hops of the nodes from the user and the multicast source server, including: edge nodes, intermediate nodes, and multicast source nodes. Among them, the edge node refers to the first-hop node for the user to access the network; the multicast source node refers to the first-hop node for the multicast source server to transmit the multicast data stream; the rest are intermediate nodes. At the same time, when dividing the node identity according to the multicast forwarding tree maintained by a certain node, this node is the current node, the source node of the multicast data stream is called the upstream node, and the destination node of the multicast data stream is the downstream node. Generally speaking, a multicast forwarding tree node has one and only one upstream node, and there can be multiple downstream nodes; the downstream node of the edge node is the user device, and the upstream node of the multicast source node is the multicast source server.
[0066] The multicast control message consists of a multicast join message, a multicast join success message, and a multicast join failure message. The information carried in the message includes at least: multicast stream identifier, source IP, destination IP, multicast source IP address, multicast message type identifier. Among them, the multicast stream identifier is used to uniquely identify the multicast stream information, the multicast source IP address is used to identify the IP address of the final requested multicast source of the multicast user, and the multicast message type identifier is used to identify the multicast join message, multicast join success, and failure information.
[0067] The network initialization process supporting multicast fast rerouting includes: multicast forwarding node initialization, network management system cluster information initialization, and user access to the network. The specific initialization embodiments are as follows:
[0068] Step 1) When a multicast forwarding node first accesses the network, it needs to register its IP network address, network operator, geographical location and other information to the network management system, and at the same time start a timer to regularly query the information of the cluster where this node is located and the other nodes in the cluster.
[0069] Step 2) After receiving the network information of each network node, the network management system divides each node into several clusters without supervision through a certain clustering algorithm; at the same time, it provides an interface for each node to regularly query the cluster where it is located and the other nodes in the cluster.
[0070] Step 3) When a user first accesses the network, it obtains the IP information of any one or several edge nodes through the network management system or by configuring the service route.
[0071] The manifestation of the multicast forwarding routing policy in each forwarding node is the multicast forwarding tree, including but not limited to various information related to the multicast forwarding rules such as multicast upstream, multicast downstream, multicast source, multicast forwarding tree status, node status, etc. The downstream node of the edge node is the user device. Due to the particularity of the TCP connection, when the edge node fails, unless the user device supports the function of resuming data transfer from a different point (i.e., using the third node to replace the faulty node to transfer data), otherwise the method cannot achieve the switching of the edge node and fast rerouting.
[0072] The network management system can provide the registration service of node information, can calculate the classification of each cluster under the current topology in real time, and can provide each node to query the information of its own cluster and the other nodes within the cluster.
[0073] Figure 3 The following is the flowchart of multicast forwarding tree synchronization backup. The user device initiates a multicast join request, and the processing flow of each node is the same. Taking the node B-1 in cluster B as an example, the specific communication process embodiment is as follows:
[0074] Step 1) The node B-1 in cluster B receives the multicast join message of multicast x;
[0075] Step 2) The node B-1 creates the multicast forwarding tree of multicast x, and records the source IP of the join message, that is, the node C-2, as the downstream node;
[0076] Step 3) According to the routing policy, the node B-1 selects the upstream node A-1 of multicast x, constructs a multicast join message and sends it to the node A-1. After waiting for the upstream reply message, start to execute the subsequent process from step 5);
[0077] Step 3*) This step is the behavior of the upstream node A-1 triggered by step 3). After the node A-1 receives the multicast join message of multicast x, it marks B-1 as the downstream node and at the same time replies with a multicast join success message;
[0078] Step 4) The node B-1 sets the synchronization flag of the received multicast join message to 1, and then sends the multicast join message with this synchronization flag to the other nodes within cluster B;
[0079] Step 4*) This step is the behavior of the other nodes within the cluster triggered by step 4). The other nodes within cluster B construct the multicast forwarding tree of multicast x and mark the source IP of the multicast join message as the downstream;
[0080] Step 5) The node B-1 receives the multicast join success message of multicast x;
[0081] Step 6) The node B-1 searches for the multicast forwarding tree of multicast x, and records the source IP of the join success message, that is, the node A-1, as the upstream node;
[0082] Step 7) Node B-1 converts the multicast forwarding tree of multicast x into a forwarding table;
[0083] Step 8) Node B-1 sets the synchronization flag of the received multicast join success message to 1, and then sends the multicast join success message with the synchronization flag to the remaining nodes in Cluster B; The process of the bearer node constructing the multicast forwarding tree ends.
[0084] Step 8*) This step is the behavior of the remaining nodes in the cluster triggered by Step 8). The remaining nodes in Cluster B search for the multicast forwarding tree of multicast x, mark the source IP of the multicast join success message as the upstream; Then convert the multicast forwarding tree of multicast x into a forwarding table; The process of the backup node backing up the multicast forwarding tree ends.
[0085] As Figure 4 shown in the flowchart of multicast forwarding tree synchronization and backup, still taking the failure of node B-1 in Cluster B as an example, the specific communication process embodiments are as follows:
[0086] Step 1) Node A-1 does not receive the node heartbeat message from node B-1 within the timeout period, indicating that node B-1 has failed;
[0087] Step 2) Node A-1 queries the remaining nodes of Cluster B from the network management, and obtains the IPs of the remaining nodes. If there are remaining nodes, execute Step 3), if not, then execute Step 6);
[0088] Step 3) Node A-1 queries all multicast forwarding tree structures and traverses the multicast forwarding trees with B-1 as the downstream;
[0089] Step 3.1) Modify the downstream of the multicast forwarding tree to any other backup node in Cluster B. In this embodiment, node B-2 is used;
[0090] Step 3.2) Due to the modification of the multicast routing policy of the upstream node A-1, node B-2 in Cluster B receives the multicast data stream, and the multicast data stream triggers node B-2 to modify its own identity to a bearer node, and the multicast rerouting ends;
[0091] Step 4) Node A-1 waits for the multicast initiator to rejoin the multicast, and the multicast rerouting ends.
[0092] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application and not to limit them. Although the present application has been described in detail with reference to the embodiments, those of ordinary skill in the art should understand that any modification or equivalent replacement of the technical solutions of the present application does not depart from the spirit and scope of the technical solutions of the present application, and they should all be covered by the scope of the claims of the present application.
Claims
1. A multicast fast rerouting method based on node clusters, comprising: A node cluster is composed of several network nodes. Each node within the node cluster serves as a backup for the others and provides multicast services uniformly to the outside of the cluster. When a carrier node fails during the transmission of multicast data, the upstream node of the faulty network link or the failed carrier node switches the multicast route to the backup node in the same cluster as the faulty carrier node to ensure the stability of multicast transmission. The carrier node is a network node within the node cluster that establishes a multicast forwarding tree. The backup node is a network node within the node cluster other than the carrier node.
2. The multicast fast rerouting method based on node clusters according to claim 1, wherein The node cluster, including network nodes, has the following functions: Having the function of a network routing and switching node; Having the function of replicating, modifying fields, and forwarding data packets; Having the function of selecting upstream and downstream nodes of the multicast forwarding tree and maintaining the multicast forwarding tree; and Supporting sending node information to the network management system and obtaining cluster affiliation information.
3. The multicast fast rerouting method based on node clusters according to claim 1, wherein The method for forming a node cluster includes: The network management system divides the node cluster according to clustering rules through static configuration; the clustering rules include: operator information, geographical location, and network status.
4. The multicast fast rerouting method based on node clusters according to claim 2 or 3, wherein The network management system is used to maintain network-wide network nodes and the affiliation information of each node cluster. Providing a network node information query service interface for network nodes to obtain the affiliation information of each node cluster.
5. The multicast fast rerouting method based on node clusters according to claim 1, wherein The multicast forwarding tree refers to the multicast routing strategy of each network node during the transmission of multicast data streams, including: upstream nodes, downstream nodes, and routing status information of the current node.
6. The multicast fast rerouting method based on node clusters according to claim 1, wherein The method for synchronously backing up the multicast forwarding tree within the node cluster includes: After receiving a multicast control message, the carrier node generates a multicast forwarding tree at this node and sends the multicast control message marked as a synchronization message to the backup node. After receiving the multicast control message marked as a synchronization message, the backup node generates a multicast forwarding tree identical to that of the carrier node and no longer sends synchronization multicast control messages. Each carrier node within the cluster regularly synchronizes the multicast forwarding tree change information cached at this node to the backup node. The change information includes: addition, deletion, and upstream and downstream changes of the multicast forwarding tree.
7. The multicast fast rerouting method based on node clusters according to claim 1 or 6, wherein The multicast control message, in addition to including the control fields of traditional multicast, also includes a synchronization identifier; the synchronization identifier is used to distinguish multicast control messages from cluster-internal synchronization messages.
8. The multicast fast rerouting method based on node clusters according to claim 7, wherein The multicast control information is used to identify multicast groups, node intentions, node status, and upstream and downstream relationship information, and is used as a flag bit for generating a multicast forwarding tree. The node intention includes joining or leaving the multicast.
9. The multicast fast rerouting method based on node clusters according to claim 1, wherein When a carrier node fails during the transmission of multicast data, the upstream node of the faulty network link or the failed carrier node switches the multicast route to the backup node in the same cluster as the faulty carrier node, including: 1) A certain multicast node within the node cluster receives a multicast join request from a downstream node, and this multicast node becomes the carrier node of this multicast stream within the node cluster; the carrier node marks the downstream node as downstream and forwards the multicast join request to the upstream node. 2) The carrier node marks the multicast join request message as a cluster-internal synchronization message and forwards it to the backup node within the node cluster; the backup node also marks the downstream node as downstream according to the synchronization message. 3) After the bearer node receives the multicast join success message from the upstream node, it marks the upstream node as the upstream, and at the same time marks the multicast join success message as an in-cluster synchronization message and forwards it to the backup node; the backup node also marks the upstream node as the upstream according to the synchronization message; 4) The multicast data stream is transmitted along the path of "upstream node - bearer node - downstream node", and at the same time the backup node has a backup with exactly the same multicast forwarding tree routing strategy for switching; when the bearer node fails and the upstream node senses the failure, through the cluster information, the downstream is changed to one of the backup nodes as the new bearer node; the multicast data stream is changed to be transmitted along the path of "upstream node - new bearer node - downstream node" to achieve fast rerouting of multicast.