Message forwarding control method and device, controller, storage medium and program product

By building a network topology diagram and generating tag forwarding tables in the backbone network through software-defined network controllers, the problems of low packet forwarding efficiency and complex network management in traditional routing mode are solved, and more efficient packet forwarding and simplified network management are achieved.

CN119561886APending Publication Date: 2025-03-04SHANGHAI DIANYIN INFORMATION TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411851051.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-16
Publication Date
2025-03-04

AI Technical Summary

Technical Problem

When traditional routing mode deals with large-scale networks, there are problems such as low packet forwarding efficiency and high network management complexity.

Method used

The software-defined network controller obtains the node status and link status of each routing node in the backbone network, builds a network topology diagram and performs path calculations, and generates a tag forwarding table to guide message forwarding.

Benefits of technology

It improves packet forwarding efficiency, simplifies network management configuration, enhances network flexibility and scalability, and reduces the impact of network failures.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119561886A_ABST
    Figure CN119561886A_ABST
Patent Text Reader

Abstract

The invention relates to a message forwarding control method and device, a controller, a storage medium and a program product. The method comprises the steps that a software defined network controller obtains the node state of each routing node in a backbone network and the link state of a transmission link used for connecting each routing node; constructing a network topological graph of the backbone network based on the node state and the link state, and performing path calculation based on the network topological graph to obtain a path calculation result; sending the path calculation result to each routing node, so that each routing node generates a corresponding label forwarding table based on the path calculation result; a path label of a corresponding message forwarding path is recorded in a label forwarding table corresponding to each routing node; the label forwarding tables corresponding to the routing nodes on the same message forwarding path comprise the same path label; the path label is used for guiding the to-be-forwarded message to be forwarded in the backbone network. By adopting the method, the message forwarding efficiency can be improved, and the network management complexity can be reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a message forwarding control method, device, controller, storage medium and program product. Background Art

[0002] When it is necessary to forward message data in the network, routing technology is often needed to smoothly forward the message from the source node to the target node. In traditional technology, the IP (Internet Protocol) address of the next hop node and the IP address of the target node recorded in the routing table of the routing node are mainly searched to realize message forwarding. However, with the rapid development of the Internet, the scale and complexity of the network are increasing, and the traditional routing mode can no longer meet the needs of modern networks. When dealing with large-scale networks, traditional routing designs have problems such as low message forwarding efficiency and complex network management. Summary of the invention

[0003] Based on this, it is necessary to provide a message forwarding control method, device, controller, storage medium and program product that can improve message forwarding efficiency and reduce network management complexity in response to the above technical problems.

[0004] In a first aspect, the present application provides a message forwarding control method, which is applied to a software defined network controller; the method comprises:

[0005] Acquire the node status of each routing node in the backbone network and the link status of the transmission link used to connect each of the routing nodes;

[0006] Constructing a network topology map of the backbone network based on the node status and the link status, and performing path calculation based on the network topology map to obtain a path calculation result;

[0007] The path calculation result is sent to each routing node, so that each routing node generates a corresponding label forwarding table based on the path calculation result; the label forwarding table corresponding to each routing node records the path label of the corresponding message forwarding path; the label forwarding table corresponding to each routing node located on the same message forwarding path contains the same path label; the path label is used to guide the message to be forwarded to be forwarded in the backbone network.

[0008] In one embodiment, the method further comprises:

[0009] If it is detected that the node status and the link status are updated, the network topology diagram of the backbone network is reconstructed based on the updated node status and link status;

[0010] Path recalculation is performed based on the updated network topology graph to obtain a path calculation result, and the step of sending the path calculation result to each of the routing nodes is continued.

[0011] In one embodiment, the software defined network controller communicates with each routing node in the backbone network through the netconf protocol to achieve communication between the control plane and the forwarding plane; sending the path calculation result to each routing node includes:

[0012] The path calculation result is sent to each routing node through a communication channel constructed between the software defined network controller and each routing node based on the netconf protocol.

[0013] In one embodiment, each routing node in the backbone network includes a source routing node and a non-source routing node; the label forwarding table corresponding to the source routing node also includes a target network address of a target routing node in a message forwarding path where the source routing node is located; the target routing node is any one of the non-source routing nodes; the message carries the target network address, and after the message enters the source routing node, the source routing node searches the local label forwarding table for a path label matching the target network address, adds the found path label to the message, and forwards the message to the target routing node based on the path label carried in the message.

[0014] In one embodiment, the message carries a user identifier; after the message enters the source routing node, the source routing node generates a user tag corresponding to the user identifier, adds the user tag to a local tag forwarding table, and adds the user tag to the message.

[0015] In one embodiment, after the message is forwarded to the target routing node, the target routing node pops out the path label and the user label in the message.

[0016] In a second aspect, the present application provides a message forwarding control device, which is applied to a software defined network controller; the device comprises:

[0017] An acquisition module, used to acquire the node status of each routing node in the backbone network, and the link status of the transmission link connecting each of the routing nodes;

[0018] A construction module, used to construct a network topology map of the backbone network based on the node status and the link status, and perform path calculation based on the network topology map to obtain a path calculation result;

[0019] A sending module is used to send the path calculation result to each routing node, so that each routing node generates a corresponding label forwarding table based on the path calculation result; the label forwarding table corresponding to each routing node records the path label of the corresponding message forwarding path; the label forwarding table corresponding to each routing node located on the same message forwarding path contains the same path label; the path label is used to guide the message to be forwarded to be forwarded in the backbone network.

[0020] In a third aspect, the present application provides a software-defined network controller, including a memory and a processor, wherein a computer program is stored in the memory, and the processor implements the steps in the method embodiments of the present application when executing the computer program.

[0021] In a fourth aspect, the present application provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps in the method embodiments of the present application.

[0022] In a fifth aspect, the present application provides a computer program product, including a computer program, which implements the steps in the method embodiments of the present application when the computer program is executed by a processor.

[0023] The above-mentioned message forwarding control method, device, controller, storage medium and program product obtain the node status of each routing node in the backbone network and the link status of the transmission link used to connect each routing node through a software-defined network controller; construct a network topology diagram of the backbone network based on the node status and link status, and perform path calculation based on the network topology diagram to obtain the path calculation result; send the path calculation result to each routing node so that each routing node generates a corresponding label forwarding table based on the path calculation result; the label forwarding table corresponding to each routing node records the path label of the corresponding message forwarding path; the label forwarding table corresponding to each routing node on the same message forwarding path contains the same path label; the path label is used to guide the forwarding of the message to be forwarded in the backbone network. Compared with the traditional routing control scheme, the present application uniformly manages each routing node in the backbone network through a software-defined network controller, separates the control plane and the forwarding plane, simplifies the network management configuration, enhances the flexibility and scalability of the network, and improves the reliability of the network based on real-time node monitoring and link monitoring and dynamic adjustment mechanism, and reduces the impact of network failures. At the same time, the message is forwarded in the network through the path label of the message forwarding path recorded in the label forwarding table corresponding to each routing node, realizing the path of message transmission associated with the label. This simplifies the forwarding process of the forwarding plane and improves the message forwarding efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0024] Figure 1 A schematic diagram of a flow chart of a message forwarding control method in an embodiment;

[0025] Figure 2 A schematic diagram of a system architecture for message forwarding control in an embodiment;

[0026] Figure 3 A schematic diagram of a label operation process in an embodiment;

[0027] Figure 4 A schematic diagram of a routing topology for message forwarding control in an embodiment;

[0028] Figure 5 is a schematic diagram of a forwarding label table in a multi-user scenario in one embodiment;

[0029] Figure 6 is a structural block diagram of a message forwarding control device in an embodiment;

[0030] Figure 7 An internal structure diagram of a software-defined network controller in one embodiment;

[0031] FIG8 is a diagram showing the internal structure of a software defined network controller in another embodiment. DETAILED DESCRIPTION

[0032] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0033] In one embodiment, Figure 1 As shown, a message forwarding control method is provided, which is applied to a software defined network controller; the method comprises the following steps:

[0034] Step 102, obtaining the node status of each routing node in the backbone network and the link status of the transmission link used to connect each routing node.

[0035] Among them, the Software Defined Network (SDN) controller is the brain of the backbone network. It is understandable that the software defined network controller is also a component of the backbone network. It is responsible for real-time status monitoring of each routing node in the backbone network, network topology perception, calculation and dynamic adjustment of the optimal path. SDN realizes centralized management and intelligent scheduling of network traffic by separating the control plane and the data plane.

[0036] Step 104: construct a network topology map of the backbone network based on the node status and the link status, and perform path calculation based on the network topology map to obtain a path calculation result.

[0037] It can be understood that the path calculation result includes all possible message forwarding paths, that is, all possible routing paths for forwarding the message from the source routing node to the target routing node.

[0038] Step 106, sending the path calculation result to each routing node, so that each routing node generates a corresponding label forwarding table based on the path calculation result; the label forwarding table corresponding to each routing node records the path label of the corresponding message forwarding path; the label forwarding table corresponding to each routing node located on the same message forwarding path contains the same path label; the path label is used to guide the message to be forwarded to be forwarded in the backbone network.

[0039] Specifically, the software-defined network controller can send the path calculation results to each routing node. For each routing node, the routing node can generate a label forwarding table corresponding to the routing node based on the received path calculation results. The label forwarding table corresponding to the routing node records the path label of the corresponding message forwarding path. The label forwarding table corresponding to each routing node on the same message forwarding path contains the same path label, and the path label is used to guide the forwarding of the message to be forwarded in the backbone network.

[0040] In one embodiment, Figure 2 As shown, the backbone network includes a software defined network controller (i.e., SDNController) and multiple routing nodes, wherein wisdom is the code name of the software project running on the software defined network controller, and fate is the code name of the software project running on the routing node. The multiple routing nodes include multiple edge routers (i.e., PE) and multiple data forwarding devices (i.e., POP). fate is responsible for collecting the node status of each routing node in the backbone network, collecting the link status of the transmission link connecting each of the routing nodes and reporting it to wisdom, as well as receiving the path calculation results sent by the software defined network controller, and generating corresponding label forwarding tables based on the path calculation results. wisdom is responsible for receiving the node status of each routing node in the backbone network sent by fate, as well as the link status of the transmission link used to connect each of the routing nodes, and constructing a network topology map of the backbone network based on the node status and link status, and performing path calculation based on the network topology map to obtain the path calculation results, and sending the path calculation results to fate, etc. The SDN controller communicates with the POP forwarding point through the netconf protocol, and the POP nodes are connected through dedicated lines or GRE tunnels. POP node information, PE node information, link information, and path information will be stored in the Mysql database, and POP node status, PE node status, link status, and path status will be stored in the Influxdb database.

[0041] In one embodiment, the path label of the message forwarding path is implemented based on MPLS (Multi-Protocol Label Switching) technology. MPLS is a protocol that uses labels to guide the high-speed forwarding of data messages. Based on MPLS technology, the present application maps the message forwarding path into a short, fixed-length path label with only local significance, and replaces the IP table lookup in the traditional routing table with path label switching, thereby significantly improving the message forwarding efficiency.

[0042] In the above-mentioned message forwarding control method, the node status of each routing node in the backbone network and the link status of the transmission link used to connect each routing node are obtained through the software-defined network controller; the network topology diagram of the backbone network is constructed based on the node status and the link status, and the path calculation is performed based on the network topology diagram to obtain the path calculation result; the path calculation result is sent to each routing node, so that each routing node generates a corresponding label forwarding table based on the path calculation result; the label forwarding table corresponding to each routing node records the path label of the corresponding message forwarding path; the label forwarding table corresponding to each routing node on the same message forwarding path contains the same path label; the path label is used to guide the forwarding of the message to be forwarded in the backbone network. Compared with the traditional routing control scheme, the present application uniformly manages each routing node in the backbone network through the software-defined network controller, separates the control plane and the forwarding plane, simplifies the network management configuration, enhances the flexibility and scalability of the network, and improves the reliability of the network based on real-time node monitoring and link monitoring and dynamic adjustment mechanism, and reduces the impact of network failures. At the same time, the message is forwarded in the network through the path label of the message forwarding path recorded in the label forwarding table corresponding to each routing node, realizing the path of message transmission using label association. The forwarding process of the forwarding plane is simplified and the message forwarding efficiency is improved. In addition, when there is a change in node status or link status, only the routing forwarding rules of the nodes before and after the changed node are affected, which reduces the impact range and improves the efficiency of disconnection recovery and routing convergence.

[0043] In one embodiment, the method also includes: if it is monitored that the node status and link status have been updated, rebuilding the network topology map of the backbone network based on the updated node status and link status; recalculating the path based on the updated network topology map to obtain the path calculation result, and continuing to execute the step of sending the path calculation result to each routing node.

[0044] Specifically, the software-defined network controller can periodically obtain the node status of each routing node in the backbone network, as well as the link status of the transmission link used to connect each routing node, build a network topology map of the backbone network based on the node status and link status, and perform path calculation based on the network topology map to obtain the path calculation result, and send the path calculation result to each routing node, so that each routing node generates a corresponding label forwarding table based on the path calculation result; the label forwarding table corresponding to each routing node records the path label of the corresponding message forwarding path; the label forwarding table corresponding to each routing node on the same message forwarding path contains the same path label; the path label is used to guide the forwarding of the message to be forwarded in the backbone network. If the software-defined network controller detects that the node status and link status have been updated, the software-defined network controller can reconstruct the network topology map of the backbone network based on the updated node status and link status; recalculate the path based on the updated network topology map to obtain the path calculation result, and continue to execute the step of sending the path calculation result to each routing node.

[0045] In the above embodiment, after the software-defined network controller detects that the node status and link status have been updated, it promptly updates the network topology diagram of the backbone network and updates the path calculation results, which can further improve the message forwarding efficiency.

[0046] In one embodiment, the software-defined network controller communicates with each routing node in the backbone network through the NetConf protocol to achieve communication between the control plane and the forwarding plane; the path calculation result is sent to each routing node, including: sending the path calculation result to each routing node through a communication channel constructed between the software-defined network controller and each routing node based on the NetConf protocol.

[0047] Among them, netconf (Network Configuration Protocol) is a network management protocol based on XML (Extensible Markup Language), which provides a programmable method for configuring and managing network devices. Users can use this protocol to set attributes, obtain attribute values, obtain statistical information, etc. This makes it very convenient for the development of third-party software, and it is easy to develop special customized network management software in an environment with mixed vendors and different devices.

[0048] In the above embodiment, the mutual communication between the control plane and the forwarding plane is completed based on the NETCONF protocol, and the routing control is uniformly managed by the software-defined network controller, which simplifies the network management configuration and enhances the flexibility and scalability of the network.

[0049] In one embodiment, each routing node in the backbone network includes a source routing node and a non-source routing node; the label forwarding table corresponding to the source routing node also includes a target network address of a target routing node on a message forwarding path where the source routing node is located; the target routing node is any one of the non-source routing nodes; the message carries the target network address, and after the message enters the source routing node, the source routing node searches the local label forwarding table for a path label matching the target network address, adds the found path label to the message, and forwards the message to the target routing node based on the path label carried in the message.

[0050] In one embodiment, Figure 3 As shown in the figure, the path label of the packet forwarding path is implemented based on MPLS (Multi-Protocol Label Switching) technology. MPLS supports multiple layers of labels, that is, label nesting. The basic operations of MPLS labels include label push, label swap, and label pop, which are the basic actions of label forwarding and are components of the label forwarding information table. Push: When an IP packet enters an MPLS domain (a network area consisting of a series of continuous label switching routers is called an MPLS domain), the MPLS edge device inserts a new label between the Layer 2 header and the IP header of the packet; or the MPLS intermediate device adds a new label to the top of the label stack as needed (that is, label nesting encapsulation). Swap: When a packet is forwarded within the MPLS domain, the label assigned by the next hop is used to replace the top label of the MPLS packet stack according to the label forwarding table. Pop: When a packet leaves the MPLS domain, the label of the MPLS packet is removed; or the top label of the stack is removed at the node of the penultimate hop of the MPLS to reduce the number of labels in the label stack. At the last hop, the MPLS label is actually no longer useful. The label is popped out at the penultimate hop, thus reducing the processing burden of the last hop.

[0051] In the above embodiment, after the message enters the source routing node, the source routing node searches the local label forwarding table for a path label that matches the target network address, adds the found path label to the message, and forwards the message to the target routing node based on the path label carried in the message. In this way, the message can be forwarded along a predetermined path, which can further improve the message forwarding efficiency and facilitate network management.

[0052] In one embodiment, the message carries a user identifier; after the message enters the source routing node, the source routing node generates a user tag corresponding to the user identifier, adds the user tag to a local tag forwarding table, and adds the user tag to the message.

[0053] In the above embodiment, by adding the user tag to the local tag forwarding table and adding the user tag to the message, isolation of different users in a multi-user scenario during message forwarding can be achieved, so that the target routing node can quickly identify the user who sent the message.

[0054] In one embodiment, after the message is forwarded to the target routing node, the target routing node pops out the path label and the user label in the message.

[0055] In one embodiment, Figure 4 As shown in the figure, PE and P are routing nodes in the backbone network, where PE is the source routing node (i.e., edge router) and P is the data forwarding device (i.e., POP node). The message from PE1 to PE2 via P1 and P2 is a message forwarding path, and the associated path label (i.e., PePath Lable) is 1001. PE1 will generate an ingress rule to push the 1001 label to the header of the message, and at the same time generate a transmit rule to swap the 1001 label to 1001, with the next hop being 192.168.1.2, and forward it from the IF1 interface. Each P node will also generate a transmit rule associated with the corresponding next hop IP and outbound interface, until the message reaches PE2, the local rule will pop off the 1001 label, restore the original message, and finally realize the complete forwarding of the message in the MPLS domain.

[0056] In one embodiment, Figure 5 As shown in the figure, a VRF is assigned to each customer (i.e., user) on PE1, and an MPLS label is assigned to each customer (customer 1: 100, customer 2: 200). At the same time, two ingress routing rules are generated to push the user label to the header of the message. Then, the multi-label feature of MPLS is used to continue to push the label value of PePath to form a double-layer label, such as 1001 / 100. When it reaches the target PE, the local rule first pops up the path label, and then the egress routing rule pops up the user label, and forwards the message to the corresponding VRF interface, thereby realizing multi-user isolation.

[0057] In the above embodiment, after the message is forwarded to the target routing node, the path label and the user label in the message are popped out by the target routing node, so that clean message data can be obtained, which is convenient for the subsequent target routing node to perform corresponding service processing.

[0058] It should be understood that, although each step in the flow chart of the above-mentioned embodiments is shown in order, these steps are not necessarily performed in order. Unless there is a clear explanation in this article, the execution of these steps does not have strict order restrictions, and these steps can be performed in other orders. Moreover, at least a portion of the steps in the above-mentioned embodiments may include a plurality of sub-steps or a plurality of stages, and these sub-steps or stages are not necessarily performed at the same time, but can be performed at different times, and the execution order of these sub-steps or stages is not necessarily performed in order, but can be performed in turn or alternately with at least a portion of other steps or sub-steps or stages of other steps.

[0059] In one embodiment, Figure 6 As shown, a message forwarding control device 600 is provided, which is applied to a software defined network controller; the device specifically includes:

[0060] An acquisition module 602 is used to acquire the node status of each routing node in the backbone network and the link status of the transmission link connecting each routing node;

[0061] A construction module 604 is used to construct a network topology map of the backbone network based on the node status and the link status, and perform path calculation based on the network topology map to obtain a path calculation result;

[0062] The sending module 606 is used to send the path calculation result to each routing node so that each routing node generates a corresponding label forwarding table based on the path calculation result; the label forwarding table corresponding to each routing node records the path label of the corresponding message forwarding path; the label forwarding table corresponding to each routing node located on the same message forwarding path contains the same path label; the path label is used to guide the message to be forwarded to be forwarded in the backbone network.

[0063] In one embodiment, the construction module 604 is also used to rebuild the network topology of the backbone network based on the updated node status and link status if it is monitored that the node status and link status have been updated; recalculate the path based on the updated network topology to obtain the path calculation result, and notify the sending module 606 to continue to execute the step of sending the path calculation result to each routing node.

[0064] In one embodiment, the software-defined network controller communicates with each routing node in the backbone network through the NetConf protocol to achieve communication between the control plane and the forwarding plane; the sending module 606 is also used to send the path calculation results to each routing node through a communication channel constructed between the software-defined network controller and each routing node based on the NetConf protocol.

[0065] In one embodiment, each routing node in the backbone network includes a source routing node and a non-source routing node; the label forwarding table corresponding to the source routing node also includes a target network address of a target routing node on a message forwarding path where the source routing node is located; the target routing node is any one of the non-source routing nodes; the message carries the target network address, and after the message enters the source routing node, the source routing node searches the local label forwarding table for a path label matching the target network address, adds the found path label to the message, and forwards the message to the target routing node based on the path label carried in the message.

[0066] In one embodiment, the message carries a user identifier; after the message enters the source routing node, the source routing node generates a user tag corresponding to the user identifier, adds the user tag to a local tag forwarding table, and adds the user tag to the message.

[0067] In one embodiment, after the message is forwarded to the target routing node, the target routing node pops out the path label and the user label in the message.

[0068] The above-mentioned message forwarding control device obtains the node status of each routing node in the backbone network and the link status of the transmission link used to connect each routing node through a software-defined network controller; constructs a network topology diagram of the backbone network based on the node status and the link status, and performs path calculation based on the network topology diagram to obtain the path calculation result; sends the path calculation result to each routing node, so that each routing node generates a corresponding label forwarding table based on the path calculation result; the label forwarding table corresponding to each routing node records the path label of the corresponding message forwarding path; the label forwarding table corresponding to each routing node on the same message forwarding path contains the same path label; the path label is used to guide the forwarding of the message to be forwarded in the backbone network. Compared with the traditional routing control scheme, the present application uniformly manages each routing node in the backbone network through a software-defined network controller, separates the control plane and the forwarding plane, simplifies the network management configuration, enhances the flexibility and scalability of the network, and improves the reliability of the network and reduces the impact of network failures based on real-time node monitoring and link monitoring and dynamic adjustment mechanisms. At the same time, the message is forwarded in the network through the path label of the message forwarding path recorded in the label forwarding table corresponding to each routing node, realizing the path of message transmission using label association. The forwarding process of the forwarding plane is simplified and the message forwarding efficiency is improved. In addition, when there is a change in node status or link status, only the routing forwarding rules of the nodes before and after the changed node are affected, which reduces the impact range and improves the efficiency of disconnection recovery and routing convergence.

[0069] Each module in the above-mentioned message forwarding control device can be stored in the memory of the software-defined network controller in the form of software, so that the processor can call and execute the corresponding operations of each of the above-mentioned modules.

[0070] In one embodiment, a software defined network controller is provided. The software defined network controller may be a server, and its internal structure diagram may be as follows: Figure 7 As shown. The software-defined network controller includes a processor, a memory, an input / output interface (Input / Output, referred to as I / O) and a communication interface. Among them, the processor, the memory and the input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. Among them, the processor of the software-defined network controller is used to provide computing and control capabilities. The memory of the software-defined network controller includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The input / output interface of the software-defined network controller is used to exchange information between the processor and an external device. The communication interface of the software-defined network controller is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, a message forwarding control method is implemented.

[0071] In one embodiment, a software-defined network controller is provided, which can be a terminal, and its internal structure diagram can be shown in Figure 8. The software-defined network controller includes a processor, a memory, an input / output interface, a communication interface, a display unit and an input device. Among them, the processor, the memory and the input / output interface are connected through a system bus, and the communication interface, the display unit and the input device are connected to the system bus through the input / output interface. Among them, the processor of the software-defined network controller is used to provide computing and control capabilities. The memory of the software-defined network controller includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The input / output interface of the software-defined network controller is used to exchange information between the processor and an external device. The communication interface of the software-defined network controller is used to communicate with an external terminal in a wired or wireless manner, and the wireless manner can be implemented through WIFI, a mobile cellular network, NFC (near field communication) or other technologies. When the computer program is executed by the processor, a message forwarding control method is implemented. The display unit of the software-defined network controller is used to form a visually visible image, and can be a display screen, a projection device or a virtual reality imaging device. The display screen can be a liquid crystal display screen or an electronic ink display screen. The input device of the software-defined network controller can be a touch layer covering the display screen, or a button, trackball or touchpad set on the shell of the software-defined network controller, or an external keyboard, touchpad or mouse, etc.

[0072] Those skilled in the art will understand that Figure 7 The structure shown in Figure 8 is only a block diagram of a partial structure related to the solution of the present application, and does not constitute a limitation on the software-defined network controller to which the solution of the present application is applied. The specific software-defined network controller may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.

[0073] In one embodiment, a software-defined network controller is further provided, including a memory and a processor, wherein a computer program is stored in the memory, and the processor implements the steps in the above-mentioned method embodiments when executing the computer program.

[0074] In one embodiment, a computer-readable storage medium is provided, storing a computer program, which implements the steps in the above method embodiments when executed by a processor.

[0075] In one embodiment, a computer program product is provided, including a computer program, and when the computer program is executed by a processor, the steps in the above method embodiments are implemented.

[0076] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant laws, regulations and standards of relevant countries and regions.

[0077] Those of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), tape, floppy disk, flash memory or optical memory, etc. Volatile memory can include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM).

[0078] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0079] The above-mentioned embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the invention patent. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the patent of the present application shall be subject to the attached claims.

Claims

1. A message forwarding control method, characterized in that: Applied to a software defined network controller; the method comprises: Acquire the node status of each routing node in the backbone network and the link status of the transmission link used to connect each of the routing nodes; Constructing a network topology map of the backbone network based on the node status and the link status, and performing path calculation based on the network topology map to obtain a path calculation result; The path calculation result is sent to each routing node, so that each routing node generates a corresponding label forwarding table based on the path calculation result; the label forwarding table corresponding to each routing node records the path label of the corresponding message forwarding path; the label forwarding table corresponding to each routing node located on the same message forwarding path contains the same path label; the path label is used to guide the message to be forwarded to be forwarded in the backbone network.

2. The method according to claim 1, characterized in that: The method further comprises: If it is detected that the node status and the link status are updated, the network topology diagram of the backbone network is reconstructed based on the updated node status and link status; Path recalculation is performed based on the updated network topology graph to obtain a path calculation result, and the step of sending the path calculation result to each of the routing nodes is continued.

3. The method according to claim 1, characterized in that The software defined network controller communicates with each routing node in the backbone network through the netconf protocol to achieve communication between the control plane and the forwarding plane; The sending the path calculation result to each of the routing nodes includes: The path calculation result is sent to each routing node through a communication channel constructed between the software defined network controller and each routing node based on the netconf protocol.

4. The method according to claim 1, characterized in that: Each routing node in the backbone network includes a source routing node and a non-source routing node; the label forwarding table corresponding to the source routing node also includes a target network address of a target routing node on a message forwarding path where the source routing node is located; the target routing node is any one of the non-source routing nodes; the message carries the target network address, and after the message enters the source routing node, the source routing node searches a local label forwarding table for a path label matching the target network address, adds the found path label to the message, and forwards the message to the target routing node based on the path label carried in the message.

5. The method according to claim 4, characterized in that The message carries a user identifier; after the message enters the source routing node, the source routing node generates a user tag corresponding to the user identifier, adds the user tag to a local tag forwarding table, and adds the user tag to the message.

6. The method according to claim 5, characterized in that After the message is forwarded to the target routing node, the target routing node pops out the path label and the user label in the message.

7. A message forwarding control device, characterized in that: Applied to a software defined network controller; the device comprises: An acquisition module, used to acquire the node status of each routing node in the backbone network, and the link status of the transmission link connecting each of the routing nodes; A construction module, used to construct a network topology map of the backbone network based on the node status and the link status, and perform path calculation based on the network topology map to obtain a path calculation result; A sending module is used to send the path calculation result to each routing node, so that each routing node generates a corresponding label forwarding table based on the path calculation result; the label forwarding table corresponding to each routing node records the path label of the corresponding message forwarding path; the label forwarding table corresponding to each routing node located on the same message forwarding path contains the same path label; the path label is used to guide the message to be forwarded to be forwarded in the backbone network.

8. A software defined network controller, comprising a memory and a processor, wherein the memory stores a computer program, characterized in that: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 6 are implemented.

9. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.

10. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.