WO2024021878A1 - 一种发送负载信息的方法、发送报文的方法及装置 - Google Patents

一种发送负载信息的方法、发送报文的方法及装置 Download PDF

Info

Publication number
WO2024021878A1
WO2024021878A1 PCT/CN2023/098565 CN2023098565W WO2024021878A1 WO 2024021878 A1 WO2024021878 A1 WO 2024021878A1 CN 2023098565 W CN2023098565 W CN 2023098565W WO 2024021878 A1 WO2024021878 A1 WO 2024021878A1
Authority
WO
WIPO (PCT)
Prior art keywords
network device
load information
path
information
network
Prior art date
Application number
PCT/CN2023/098565
Other languages
English (en)
French (fr)
Inventor
文学敏
林伟宏
熊六东
韩兆皎
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2024021878A1 publication Critical patent/WO2024021878A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/123Evaluation of link metrics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/0213Standardised network management protocols, e.g. simple network management protocol [SNMP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/124Shortest path evaluation using a combination of metrics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Definitions

  • the present application relates to the field of computer technology, and in particular, to a method of sending load information, a method and device for sending messages.
  • multiple network devices can be divided into a device cluster.
  • one or more paths can be established between different device clusters. For example, assuming that a direct path is established between any two device clusters in the network architecture, packets sent from device cluster A to device cluster B can be transmitted through the direct path between device cluster A and device cluster B. . In this way, the packet transmission rate is improved without being forwarded by network devices in other device clusters.
  • the network device can select one transmission path from multiple transmission paths as the target path based on the congestion conditions of multiple local network interfaces, thereby transmitting the packet through the target path.
  • the above method selects the target path based on the congestion situation of the local network interface as the congestion situation of the entire transmission path. It cannot determine the actual congestion situation of the transmission path, and therefore cannot find the most suitable destination path, and cannot guarantee the transmission performance of the message.
  • This application provides a method of sending load information, a method and a device for sending messages, aiming to find the most suitable transmission path to transmit the message, so as to improve the transmission performance of the message.
  • this application provides a method for sending load information, which method can be applied to a first network device in a first device cluster.
  • the first network device may first obtain the traffic information of the first network device. Then, the first network device can determine the load information of the first network device according to the local traffic information. Then, the first network device sends the load information of the first network device to the second network device in the second device cluster.
  • the load information of the first network device is used to indicate the ability of the first network device to receive and forward messages, and is used to determine the load information of the path including the first sub-path.
  • the first sub-path is a path from the second network device to the first network device.
  • the second network device can determine the load information of the first network device based on the load information of the first network device.
  • Information calculates the load information for this path.
  • the network device performs operations based on the load information of other network devices.
  • Route selection rather than just selecting routes based on congestion on the local network interface. In this way, the congestion situation of the network equipment on the path is taken into account, so that the information referenced by the network equipment when selecting the route can more fully reflect the congestion situation of the entire transmission path, thereby finding the most suitable transmission path to transmit the message, so as to improve the reporting rate. text transmission performance.
  • each network device connected to network devices in other device clusters can calculate its own load information. In this way, the granularity of the load information of the network device is refined and the accuracy of path selection is improved.
  • the load information of the first network device may include first load information and/or second load information.
  • the first load information is used to determine the load information of the first path
  • the first path is the shortest path from the second network device to the first network device
  • the first load information is used to instruct the first network device to receive and send data to the first network device.
  • the second load information is used to determine the load information of the second path.
  • the second path is the path from the second network device to the third network device through the first network device.
  • the second The load information is used to indicate the ability of the first network device to receive and forward packets to the network devices in the third device cluster, and the third network device belongs to the third device cluster.
  • the load information of the shortest path and the load information of the non-shortest path can be calculated through different load information.
  • different types of paths are evaluated through different types of load information, which improves the accuracy of path load information calculation, thereby improving the accuracy of path selection.
  • the above first load information is calculated based on the downlink traffic information of the first network device.
  • the downlink traffic information of the first network device is information related to the traffic sent by the first network device to other devices in the first device cluster.
  • the downlink traffic information of the first network device is used to indicate information about traffic sent by the first network device to other devices in the first device cluster. Therefore, the more downlink traffic of the first network device, the worse the ability of the first network device to forward traffic to other devices in the first device cluster. It can be seen that through the downlink traffic information of the first network device, it can be determined whether there are more packets being sent by the first network device to other devices in the first device cluster, thereby determining the information that the first network device can provide to the first device. The ability of other devices in the cluster to send packets.
  • the first load information is determined based on a ratio of downlink traffic and downlink bandwidth of the first network device.
  • the above-mentioned second load information is calculated based on the uplink traffic information of the first network device.
  • the uplink traffic information of the first network device is used to indicate information about traffic received by the first network device from other devices in the first device cluster. For the uplink traffic received by the first network device, the first network device needs to forward it to other network devices. Therefore, the greater the upstream traffic of the first network device, the worse the ability of the first network device to forward packets to other device clusters. It can be seen that through the uplink traffic information of the first network device, it can be determined whether there are many packets being sent by the first network device to other devices, thereby determining the number of packets that the first network device can provide for sending to devices in other device clusters. literary ability.
  • the first load information is determined based on the ratio of the uplink traffic of the first network device to the uplink bandwidth.
  • the load information of the first network device may be carried in the payload part of the message.
  • the first network device may send the first message to the second network device, and carry the first message in the payload part of the first message. Negative of network equipment load information.
  • the load information of the first network device includes first load information and second load information.
  • the first load information and the second load information can be carried in the same message.
  • the first payload information and the second payload information are carried in the payload part of the first message.
  • the first load information and the second load information may also be carried in different packets.
  • the first payload information may be carried in the payload part of the first message
  • the second payload information may be carried in the payload part of the second message. Similar to the first message, the second message is also another message sent by the first network device to the second device.
  • the first message further includes first indication information, and the first indication information is used to indicate that the payload part of the first message includes load information of the first network device.
  • the first indication information is carried in a control protocol header of the first message.
  • control protocol header includes a Neighbor Notification Protocol (NNP) header
  • NNP Neighbor Notification Protocol
  • subtype subtype of the NNP header.
  • the first message also includes a link layer (Link-Layer) message header
  • the Link-Layer message header includes second indication information
  • the second indication information is used to Indicate that the first message includes the control protocol message header.
  • the second indication information is carried in a protocol (Protocol) field of the Link-Layer message header.
  • the first network device can also receive load information sent by other network devices. That is, the first network device may receive the third load information sent by the fourth network device in the fourth device cluster, and the third load information is determined based on the traffic information of the fourth device. In this way, when a packet that can be transmitted through the sub-path between the first network device and the fourth network device is obtained, the first network device can determine the load information of the path based on the third load information.
  • this application provides a method of sending messages.
  • the method may be applied to the first network device in the first device cluster.
  • the first network device first obtains the target message sent to the destination device.
  • the destination device belongs to the second device cluster.
  • the first network device can plan the first path and the second path according to the network topology, and determine the first path and the second path from the first path and the second path according to the load information of the second network device and the complex in information of the third network device.
  • Target path Finally, the first network device sends the target packet to the destination device through the target path.
  • the first path is a path from the first network device to the destination device, and the first path passes through the second network device in the second device cluster.
  • the second path is the shortest path from the first network device to the destination device, and the second path passes through the third network device in the third device cluster.
  • the first network device can calculate the load of each path based on the load information of the network devices on the path, and select the most appropriate destination path to transmit the target based on the load of the path. message.
  • the congestion situation of the network equipment on the path is taken into account, so that the information referenced by the network equipment when selecting the route can more fully reflect the congestion situation of the entire transmission path, thereby finding the most suitable transmission path to transmit the message, so as to improve the reporting rate. text transmission performance.
  • the first path is the shortest path from the first network device to the destination device.
  • the load information of the first path may be determined according to the first load information of the second network device. where the second network device is the first
  • the load information is used to indicate the ability of the second network device to receive and forward packets to devices in the second device cluster.
  • the first load information of the second network device is determined based on the downlink traffic information of the second network device.
  • the downlink traffic information of the second network device is information related to the traffic sent by the second network device to other devices in the second device cluster.
  • the downlink traffic information of the second network device is used to indicate information about traffic sent by the second network device to other devices in the second device cluster. Therefore, the more downlink traffic of the second network device, the worse the ability of the second network device to forward traffic to other devices in the second device cluster. It can be seen that through the downlink traffic information of the second network device, it can be determined whether there are more packets being sent by the second network device to other devices in the second device cluster, thereby determining the information that the second network device can provide to the second device. The ability of other devices in the cluster to send packets is used to obtain the first load information of the second network device.
  • the second network device may advertise its first load information by sending a packet to the first network device.
  • the first payload information may be carried in the payload part of the message.
  • the first payload information may be carried in the payload part of the first packet.
  • the first message further includes first indication information, and the first indication information is used to indicate that the payload part of the first message includes the first load of the second network device. information.
  • the first indication information is carried in a control protocol header of the first message.
  • control protocol header includes an NNP header
  • first indication information is carried in a subtype field of the NNP header.
  • the first message further includes a link layer header
  • the Link-Layer header includes second indication information
  • the second indication information is used to indicate the first
  • the message includes the control protocol message header.
  • the second indication information is carried in the Protocol field of the Link-Layer message header.
  • the second path is a non-shortest path from the first network device to the destination device.
  • the load information of the second path may be determined according to the second load information of the third network device.
  • the second load information of the third network device is used to indicate the third network device's ability to receive and forward packets to devices outside the third device cluster.
  • the second load information of the third network device is determined based on the uplink traffic information of the third network device.
  • the uplink traffic information of the third network device is used to indicate information about traffic received by the third network device from other devices in the third device cluster.
  • the third network device needs to forward it to other network devices. Therefore, the greater the upstream traffic of the third network device, the worse the ability of the third network device to forward packets to other device clusters. It can be seen that through the uplink traffic information of the third network device, it can be determined whether there are more packets being sent by the third network device to other devices, thereby determining the number of packets that the third network device can provide for sending to devices in other device clusters. The ability of the document to obtain the second load information of the third network device.
  • the first network device may determine the load information of the path by combining the hop count of the path and the load condition of the port corresponding to the path, so as to more comprehensively evaluate the network performance of the path. Specifically, it is assumed that the first path corresponds to the first port on the first network device, and the second path corresponds to the second port on the first network device. Then choose When selecting the target path, the first network device may first determine the load information of the first path based on the load information of the first port, the hop count of the first path, and the load information of the second network device. The first network device may also determine the load information of the second path based on the load information of the second port, the hop count of the second path, and the load information of the second network device. Then, the first network device may determine the target path according to the load information of the first path and the load information of the second path.
  • embodiments of the present application provide a method for sending load information.
  • This method is applied to the first control plane device in a network architecture in which the control plane and the forwarding plane are separated.
  • the first control plane device is used to manage the first forwarding plane device in the first device cluster. Specifically, the first control plane device first obtains the traffic information of the first forwarding plane device. Next, the first control plane device determines the load information of the first forwarding plane device based on the traffic message of the first forwarding plane device, and sends the load information of the first forwarding plane device to the second forwarding plane device in the second forwarding plane device cluster. . In this way, the granularity of the load information of the forwarding plane device is refined and the accuracy of path selection is improved.
  • the first control plane device may send the load information of the first forwarding plane device to the second control plane device.
  • the second control plane device is used to manage the second forwarding plane device in the second forwarding plane device cluster.
  • the first control plane device may send the load information of the first forwarding plane device to the first forwarding plane device, and then the first forwarding plane device sends the load information of the first forwarding plane device to the second forwarding plane device. load information.
  • this application provides a device for sending load information.
  • the device is applied to a first network device in a first device cluster.
  • the device includes: a transceiver unit configured to obtain the load information of the first network device. Traffic information; a processing unit, configured to determine the load information of the first network device according to the traffic information of the first network device; a sending unit, configured to send the load information of the first network device to a second network device , the second network device belongs to the second network device cluster, the load information of the first network device is used to determine the load information of the path including the first sub-path, the first sub-path is from the second network The path from the device to the first network device.
  • the load information of the first network device includes first load information and/or second load information; the first load information is used to determine load information of the first path, and the first The path is the shortest path from the second network device to the first network device, and the first load information is used to instruct the first network device to receive and forward packets to devices in the first message cluster.
  • the capability of the document the second load information is used to determine the load information of a second path, the second path is a path from the second network device to the third network device via the first network device, and the The second load information is used to indicate the ability of the first network device to receive and forward packets to network devices in a third device cluster, and the third network device belongs to the third device cluster.
  • the traffic information of the first network device includes downlink traffic information of the first network device; and the processing unit is configured to determine the downlink traffic information of the first network device according to the downlink traffic information of the first network device. First load information.
  • the traffic information of the first network device includes uplink traffic information of the first device; and the processing unit is configured to determine the first network device based on the uplink traffic information of the first network device. 2. Load information.
  • the sending unit is specifically configured to send the first message to the second network device from the first network device, and the load information of the first network device is carried in the first network device. In the payload part of a message.
  • the first message also includes first indication information, and the first indication information is The payload part indicating that the first message includes load information of the first network device.
  • the first indication information is carried in a control protocol header of the first message.
  • control protocol header includes an NNP header
  • first indication information is carried in a subtype field of the NNP header.
  • the first message further includes a Link-Layer header
  • the Link-Layer header includes second indication information
  • the second indication information is used to indicate the first
  • the message includes the control protocol message header.
  • the second indication information is carried in the Protocol field of the Link-Layer message header.
  • the transceiver unit is further configured to receive third load information sent by a fourth network device, where the third load information is determined based on the traffic information of the fourth network device.
  • the network device belongs to the fourth device cluster.
  • the present application provides a device for sending a message.
  • the device is applied to the first network device in the first device cluster.
  • the device includes: a transceiver unit for obtaining a target message sent to the destination device.
  • the destination device belongs to the second device cluster; the processing unit is configured to determine the destination path from the first path and the second path according to the load information of the second network device and the load information of the third network device, and the third A path is a path from the first network device to the destination device via the second network device, and the second path is from the first network device to the destination device via the third device.
  • the load information of the second network device is determined based on the traffic information of the second network device
  • the load information of the third network device is determined based on the traffic information of the third network device
  • the first network device Belonging to the first device cluster the second network device belongs to the second device cluster
  • the third network device belongs to the third network device cluster
  • a sending unit is configured to send the data to the destination device through the destination path. Describe the target message.
  • the first path is the shortest path from the first network device to the destination device; the transceiver unit is also configured to obtain the first load information of the second network device , the first load information of the second network device is used to indicate the ability of the second network device to receive and forward packets to devices in the second device cluster; the processing unit is specifically configured to perform according to the The first load information of the second network device determines the load information of the first path.
  • the first load information of the second network device is determined based on the downlink traffic information of the second network device.
  • the transceiver unit is specifically configured to receive the first message sent by the second network device, and the first load information is carried in the payload part of the first message.
  • the first message further includes first indication information, and the first indication information is used to indicate that the payload part of the first message includes the first payload information.
  • the first indication information is carried in a control protocol header of the first message.
  • control protocol header includes an NNP header
  • first indication information is carried in the subtype field of the NNP message header.
  • the first message further includes a Link-Layer header
  • the Link-Layer header includes second indication information
  • the second indication information is used to indicate the first
  • the message includes the control protocol message header.
  • the second indication information is carried in the Protocol field of the Link-Layer message header.
  • the transceiver unit is further configured to obtain second load information of the third network device, and the second load information of the third network device is used to instruct the third network device to receive and the ability to forward packets to devices outside the third device cluster; the processing unit is specifically configured to determine the load information of the second path based on the second load information of the third network device.
  • the second load information of the third network device is determined based on the uplink traffic information of the third network device.
  • the first network device is connected to the second network device through a first port, and the first network device is connected to the third network device through a second port; the processing unit , specifically used to determine the load information of the first path according to the load information of the first port, the hop number of the first path and the load information of the second network device; according to the load of the second port information, the hop count of the second path and the load information of the third network device to determine the load information of the second path; according to the load information of the first path and the load information of the second path, from Select a target path from the first path and the second path.
  • this application provides a device for sending load information.
  • the device is applied to a first control plane device.
  • the device includes:
  • a transceiver unit configured to obtain traffic information of a first forwarding plane device, which belongs to a first forwarding plane device cluster;
  • a processing unit configured to determine the load information of the first forwarding plane device according to the traffic information of the first forwarding plane device
  • a sending unit configured to send the load information of the first forwarding plane device to a second forwarding plane device, the second forwarding plane device belongs to the second forwarding plane device cluster, and the load information of the first forwarding plane device is used to
  • the second forwarding plane device determines load information of a first path, and the first path includes the second forwarding plane device and the first forwarding plane device.
  • the present application provides a device, the device includes a memory and a processor, the memory is used to store instructions, and the processor is used to run the instructions, so that the device performs any of the foregoing aspects. the method described.
  • the present application provides a computer-readable storage medium, including instructions that, when executed on a processor, cause the processor to perform the method described in any of the preceding aspects.
  • the present application provides a computer program product, including a program, which when the program is run on a processor, causes the processor to perform the method described in any of the preceding aspects.
  • Figure 1 is a schematic structural diagram of a network architecture provided by an embodiment of the present application.
  • Figure 2 is another schematic structural diagram of a network architecture provided by an embodiment of the present application.
  • Figure 3 is an information interaction schematic diagram of a method for sending load information provided by an embodiment of the present application
  • Figure 4 is an information interaction schematic diagram of a method for sending messages provided by an embodiment of the present application.
  • Figure 5 is a schematic structural diagram of a device 700 for sending load information provided by an embodiment of the present application.
  • Figure 6 is a schematic structural diagram of a device 600 for sending messages provided by an embodiment of the present application.
  • Figure 7 is a schematic structural diagram of the device 700 provided by the embodiment of the present application.
  • FIG. 8 is a schematic structural diagram of the device 800 provided by the embodiment of the present application.
  • one or more direct links can be established between any two device clusters. Connect path. In this way, when there is no network congestion on the direct path between device clusters, messages across device clusters can be transmitted through the direct path between the source device cluster and the destination device cluster without being transited by other network devices, which improves the efficiency Message transmission performance.
  • HPC High Performance Computing
  • the network device at one end of the direct path can detect congestion on each local network interface, and transmit packets through other network interfaces after congestion occurs on the direct path.
  • this method uses the congestion situation at the entrance of the transmission path as the congestion situation of the entire path for route selection. For transmission paths with intermediate hops, the congestion at the entrance cannot reflect the congestion of the entire path. Therefore, the target path determined using the above method may not be the transmission path with the best network performance, and the packet transmission performance cannot be guaranteed.
  • FIG. 1 is a schematic structural diagram of a system provided by an embodiment of the present application.
  • the system shown in Figure 1 includes device 111, device 112, device 113, network device 121, network device 122, network device 123 and network device 124.
  • device 111 is connected to network device 121
  • device 112 is connected to network device 123
  • device 113 is connected to network device 122
  • any two devices among network device 121, network device 122, network device 123 and network device 124 are connected to each other.
  • the identity of the network interface on the network device 121 connected to the network device 122 is A1, the identity of the network interface on the network device 121 connected to the network device 123 is A2, and the identity of the network interface on the network device 121 connected to the network device 124 is A3. .
  • the identity of the network interface on the network device 122 connected to the network device 121 is B1, the identity of the network interface on the network device 122 connected to the network device 124 is B2, and the identity of the network interface on the network device 122 connected to the network device 123 is B3.
  • the identifier of the network interface connected to the device 112 on the network device 122 is B4.
  • Network device 121 belongs to device cluster 1, network device 122 and network device 123 belong to device cluster 2, and network device 124 belongs to device cluster 3.
  • device 111 is considered to belong to device cluster 1
  • device 112 and device 113 are considered to belong to device cluster 2.
  • the network device 121 can send it through the direct connection path with the network device 122; it can also use the network device 123 as a transit, and send the message to the network device 122 through the network device 123.
  • P1; the network device 124 can also be used as a relay to send the message P1 to the network device 122 through the network device 124. It can be seen that for message P1, there are at least "network device 121 ⁇ network device 122" and "network device 121 There are three transmission paths: ⁇ network device 123 ⁇ network device 122" and "network device 121 ⁇ network device 124 ⁇ network device 122".
  • the network device 121 can obtain the load conditions of the network interface A1, the network interface A2, and the network interface A3 respectively, and determine an appropriate target path according to the load conditions. For example, assume that network interface A1 and network interface A3 have high load. The load of network interface A2 is low, then network device 121 can send message P1 through network interface A2, and message P1 is transmitted through the path "network device 121 ⁇ network device 123 ⁇ network device 122".
  • the load of the network device 123 is not considered in the above method. If the load of the network device 123 is high, the message P1 sent by the network device 121 through the network interface A2 cannot be forwarded by the network device 123 in time. Then the delay of transmitting the message P1 through the path "network device 121 ⁇ network device 123 ⁇ network device 122" may be longer than the delay of transmitting the message P1 through the path "network device 121 ⁇ network device 122".
  • embodiments of the present application provide a method of sending load information and a method of sending messages, aiming to determine the load of the entire path based on the load of the network equipment on the path, thereby determining the optimal The destination path is used to transmit messages.
  • the method of sending load information and the method of sending messages provided by the embodiments of this application can be applied to the application scenario shown in Figure 1.
  • the method of storing data and the method of transmitting information may be executed by any one of the network device 121, the network device 122, the network device 123, and the network device 124.
  • the method of sending load information may be executed by the control plane of the network device, or may be executed by the forwarding plane of the network device.
  • the method of sending a message may be executed by the forwarding plane of the network device.
  • the forwarding plane may also be called a data plane.
  • the network devices within a device cluster that are connected to other device clusters are called cluster egress network devices.
  • network device 121, network device 122, network device 123, and network device 124 are all cluster egress network devices.
  • the cluster egress network device is connected to a device serving as a source device or a destination device (for example, network device 121 is connected to device 111).
  • the network devices in the device cluster can be divided into backbone (spine) network devices and leaf (leaf) network devices.
  • leaf network devices are not connected to devices in other device clusters, but are only connected to network devices in this cluster or devices serving as source devices or destination devices.
  • Backbone network devices are network devices within a device cluster that are connected to network devices in other device clusters. That is, the backbone network equipment is the above-mentioned cluster egress network equipment. Under this network architecture, the technical solution provided by the embodiments of this application can be executed by the cluster egress network device.
  • FIG. 2 is another schematic structural diagram of a system provided by an embodiment of the present application.
  • the system shown in Figure 2 includes device 211, device 212, network device 221, network device 222, network device 223, network device 224 and network device 225.
  • the network device 224 is connected to the device 211 and the network device 221 respectively
  • the network device 222 is connected to the network device 221, the network device 223 and the network device 225 respectively
  • the network device 223 is connected to the network device 221 and the network device 222 respectively
  • the network device 225 Connect to device 212 and network device 222 respectively.
  • the identifier of the network interface on the network device 222 connected to the network device 221 is C1
  • the identifier of the network interface on the network device 222 connected to the network device 223 is C2
  • the identifier of the network interface on the network device 222 connected to the device 212 is C2.
  • Network device 221 and network device 224 belong to device cluster 4
  • network device 222, network device 223 and network device 225 belong to device cluster 5.
  • device 211 is considered to belong to device cluster 4
  • device 212 is considered to belong to device cluster 5.
  • the network device 221, the network device 222 and the network device 223 in Figure 2 are cluster egress network devices. Therefore, the method of sending load information and the method of sending messages provided by the embodiments of this application can be executed by the network device 221, the network device 222, and the network device 223.
  • the network devices in the application scenarios shown in Figures 1 and 2 are forwarding plane devices, which are used to perform the message sending method provided by the embodiments of the present application.
  • the embodiment of the present application also provides a method for sending a payload message.
  • the control plane device can obtain the traffic information of the forwarding plane device, determine the load information of the forwarding plane device based on the traffic information of the forwarding plane device, and then forward it to the forwarding plane device through other control plane devices or forwarding plane devices.
  • Other forwarding plane equipment can be found below and will not be repeated here.
  • each network device in Figure 1 and Figure 2 can be a router (router) or a switch (switch).
  • Device 111, device 112, device 113, device 211 and device 212 may be terminal devices or servers.
  • the above-mentioned devices may be computer devices used for data processing. It can be understood that although only a limited number of network devices are shown in Figures 1 and 2, in actual application, each device cluster may include two or more network devices. One or more connections can be established between network devices in a device cluster. I won’t go into details here.
  • links across device clusters may be called global links, and connections within a device cluster may be called local links.
  • the path that passes through the connection between the device cluster to which the source device belongs and the device cluster to which the destination device belongs is called the shortest path
  • the transit path through the network devices of other device clusters is called the shortest path.
  • non-shortest path That is, for the above message P1, the path "network device 121 ⁇ network device 122" is the shortest path, and other paths are non-shortest paths.
  • FIG. 3 is a signaling interaction diagram of a method for sending load information provided by an embodiment of the present application, specifically including the following S301, S302 and S303.
  • the first network device obtains traffic information of the first network device.
  • the first network device belongs to the first device cluster, and the first network device is also connected to devices in other device clusters (such as the second network device described below).
  • the first network device may be any one of the network device 121, the network device 122, the network device 123 and the network device 124 in the embodiment shown in Figure 1, or it may be the network device 221 in the embodiment shown in Figure 2 , any one of the network devices 223 in the network device 222.
  • any network device in the device cluster that is connected to other device clusters can serve as the first network device to execute the method for sending load information provided by the embodiments of this application.
  • the traffic information of the first network device may include traffic information of the multiple network interfaces of the first network device.
  • network devices can obtain the load information of other network devices.
  • the load information of the network device is determined based on the traffic information of the network device.
  • the first network device may first obtain its own traffic information.
  • the traffic information of the first network device may be, for example, the traffic information of the first network device within a historical time period, or may be the traffic information of the first network device within a future event predicted based on the historical traffic information of the first network device. traffic information.
  • the load condition of the first network device can be determined, so that other network devices can determine whether the first network device is suitable for forwarding messages based on the load condition of the first network device.
  • the load information of the first network device may include downlink traffic information of the first network device and/or uplink traffic information of the first network device.
  • the downlink traffic information of the first network device can be used to calculate the first load information of the first network device
  • the uplink traffic information of the first network device can be used to calculate the second load information of the first network device.
  • the downlink traffic information of the first network device refers to the traffic information sent by the first network device to other devices in the first device cluster.
  • the downlink traffic information of the first network device is the total number of bytes of packets sent by the first network device to the devices in the first device cluster within a unit time.
  • the downlink traffic information of the network device 122 is the total number of bytes of packets sent by the network device 122 to the network device 123 within a unit time.
  • the downlink traffic information of the network device 222 is the total number of bytes of packets sent by the network device 222 to the network device 223 within the unit time, which is the same as the total number of bytes sent by the network device 222 to the network device 225 within the unit time. The total number of bytes of the message.
  • the traffic information sent by the first network device to these devices can also be used as part of the downlink traffic information of the first network device.
  • devices connected to the first network device may be considered to belong to the first device cluster. That is, in the application scenario shown in FIG. 1 , the downlink traffic information of the network device 122 may also include the total number of bytes of packets sent by the network device 122 to the device 112 within a unit time. Device 112 belongs to device cluster 2.
  • the uplink traffic information of the first network device refers to the traffic information received by the first network device from other devices in the first device cluster.
  • the upstream traffic information of the first network device is the total number of bytes of packets sent by the first network device from devices in the first device cluster to the first network device within a unit time.
  • the uplink traffic information of the network device 122 is the total number of bytes of packets received by the network device 122 within a unit time and sent by the network device 123 to the network device 122 .
  • the uplink traffic information of the network device 222 is the total number of bytes of the packets sent by the network device 223 to the network device 222 received by the network device 222 within a unit time, and is the same as the total number of bytes of the packets sent by the network device 223 to the network device 222.
  • the traffic information sent by these devices to the first network device can also be used as the uplink traffic information of the first network device. part. Accordingly, in these implementations, devices connected to the first network device may be considered to belong to the first device cluster. That is, in the application scenario shown in FIG. 1 , the uplink traffic information of the network device 122 may also include the total number of bytes of packets sent by the device 112 to the network device 122 within a unit time. Device 112 belongs to device cluster 2.
  • the first network device determines the load information of the first network device based on the traffic information of the first network device.
  • the first network device can determine the load information of the first network device based on the local traffic information.
  • the load information of the first network device is used to indicate the ability of the first network device to receive and forward messages.
  • messages across device clusters can be transmitted through the shortest path or through a non-shortest path. If the packet is transmitted through the shortest path, the packet is sent directly from the device cluster to which the source device belongs to the device cluster to which the destination device belongs. If the packet is transmitted through a non-shortest path, then the packet is sent from the device cluster of the source device to the intermediate device cluster, forwarded by one or more intermediate network devices, and then sent to the device cluster to which the destination device belongs. That is to say, the first network device can serve as the source device or destination device of the message and directly receive/send the message across the device cluster. It can also be used as an intermediate network device on a non-shortest path to forward packets. That is, the first network device can assume different roles in the process of forwarding messages.
  • the load information of the first network device may include first load information and/or second load information, which are respectively used to calculate the load information of the path when the first network device assumes different roles. They are introduced separately below.
  • the first load information is used to calculate the load information of the shortest path. That is, when the first network device is a network device on the shortest path, the first load information can be used as the load information of the first network device, and the load information of the shortest path can be calculated. For example, in the application scenario shown in Figure 1, if the above message P1 is transmitted through the path "network device 121 ⁇ network device 122", then the network device 121 can use the first load information of the network device 122 to calculate the path "network device 122". 121 ⁇ Network device 122" load.
  • the shortest path is the path directly connected from the device cluster to which the source device belongs to the device cluster to which the destination device belongs, without passing through other device clusters. If the first network device is a network device on the shortest path, then the first network device belongs to the device cluster to which the source device belongs, or the first network device belongs to the device cluster to which the destination device belongs. If the first network device belongs to the network device cluster to which the destination device belongs, the first network device is configured to receive messages sent by other device clusters to the first device cluster and forward them to other devices in the first device cluster.
  • the main indicator that affects the packet transmission performance is the ability of the first network device to forward packets to other devices in the first device cluster. That is to say, the first load information of the first network device is used to indicate the ability of the first network device to receive and forward messages to the devices in the first device cluster.
  • the first load information of the first network device is determined based on the downlink traffic information of the first network device.
  • the downlink traffic information of the first network device is used to indicate information about the traffic sent by the first network device to other devices in the first device cluster. Therefore, the more downlink traffic of the first network device, the worse the ability of the first network device to forward traffic to other devices in the first device cluster. It can be seen that through the downlink traffic information of the first network device, it can be determined whether there are more packets being sent by the first network device to other devices in the first device cluster, thereby determining the information that the first network device can provide to the first device. The ability of other devices in the cluster to send packets.
  • the first load information of the first network device may be determined according to the congestion level of the network interface. Specifically, the first network device may calculate the ratio of the downlink traffic of the first network device to the downlink bandwidth, and use the ratio as the first load information of the first network device. In this way, the first load information indicates an occupied proportion of the downlink bandwidth of the first network device. The more the downlink bandwidth of the first network device is occupied, the more the first network device collects data from the first device. The ability of other devices in the group to forward packets will be worse.
  • the first load information of the network device 123 can be determined based on the downlink traffic information of the network interface B3 and the downlink traffic information of the network interface B4. Specifically, the first load information of the network device 123 may be equal to the ratio of the first packet volume and the first bandwidth.
  • the first message volume is the sum of the total number of bytes of messages sent to the network device 123 through the network interface B3 within a unit time and the total number of bytes of messages sent to the device 112 through the network interface B4 within the unit time.
  • the first bandwidth is the sum of the theoretical transmission bandwidth of network interface B3 and the theoretical transmission bandwidth of network interface B4.
  • the first load information of the network device 222 can be determined based on the downlink traffic information of the network interface C2 and the downlink traffic information of the network interface C3. Specifically, the first load information of the network device 222 may be equal to the ratio of the second packet volume and the second bandwidth.
  • the second message volume is the sum of the total number of bytes of messages sent to the network device 223 through the network interface C2 within a unit time and the total number of bytes of messages sent to the device 212 through the network interface C3 within the unit time.
  • the second bandwidth is the sum of the theoretical transmission bandwidth of network interface C2 and the theoretical transmission bandwidth of network interface C3.
  • the first network device can be used to determine the path based on local load information and load information of other network devices. load information to select the appropriate path to transmit the message. For this case, the first network device does not need to send load information to other network devices. Therefore, in the above introduction to the first load information, only the case where the first device cluster is the device cluster to which the destination device belongs is considered. That is to say, if the first network device is located on the shortest path for packet transmission and does not belong to the source device of the packet, then the load information of the non-shortest path can be determined based on the second load information of the first network device
  • the second load information is used to calculate the load information of the non-shortest path. That is, when the first network device is a network device on a non-shortest path, the second load information can be used as the load information of the first network device to calculate the load information of the non-shortest path. For example, in the application scenario shown in Figure 1, if the above message P1 is transmitted through the path "network device 121 ⁇ network device 124 ⁇ network device 122", then the network device 121 can use the second load information of the network device 124 to calculate The load of the path "network device 121 ⁇ network device 124 ⁇ network device 122".
  • the non-shortest path is the path from the device cluster to which the source device belongs, through forwarding by one or more intermediate device clusters, and finally to the device cluster to which the destination device belongs. If the first network device is a network device in an intermediate device cluster on a non-shortest path, then when forwarding a message, the first network device first receives the message sent by the network device in the other device cluster, and then forwards the received message. Forwarded to a network device in another device cluster.
  • the main indicator that affects the packet transmission performance is the ability of the first network device to forward packets to network devices in other device clusters. That is to say, the second load information of the first network device is used to indicate the ability of the first network device to receive and forward packets to network devices in other device clusters other than the first device cluster.
  • the second load information of the first network device is determined based on the uplink traffic information of the first network device.
  • the uplink traffic information of the first network device is used to indicate the information of the traffic received by the first network device from other devices in the first device cluster.
  • the first network device needs to forward it to other network devices. Therefore, the greater the upstream traffic of the first network device, the worse the ability of the first network device to forward packets to other device clusters.
  • the uplink traffic information of the first network device it can be determined whether there are more packets being sent by the first network device to other devices, thereby determining whether the first network device can It provides the ability to send packets to devices in other device clusters.
  • the second load information of the first network device may be determined according to the congestion level of the network interface. Specifically, the first network device may calculate the ratio of the uplink traffic of the first network device to the uplink bandwidth, and use the ratio as the second load information of the first network device. In this way, the second load information indicates an occupied proportion of the uplink bandwidth of the first network device. The more the upstream bandwidth of the first network device is occupied, the worse the ability of the first network device to forward packets to devices in other device clusters.
  • the second load information of the network device 123 can be determined based on the uplink traffic information of the network interface B3 and the uplink traffic information of the network interface B4. Specifically, the second load information of the network device 123 may be equal to the ratio of the third packet volume and the third bandwidth.
  • the third message volume is the total number of bytes of messages received by the network device 122 through the network interface B3 and the network interface B4 within a unit time.
  • the third bandwidth is the sum of the theoretical receiving bandwidth of network interface B3 and the theoretical receiving bandwidth of network interface B4.
  • the second load information of the network device 222 can be determined based on the uplink traffic information of the network interface C2 and the uplink traffic information of the network interface C3. Specifically, the second load information of the network device 222 may be equal to the ratio of the fourth packet volume and the fourth bandwidth.
  • the fourth message volume is the sum of the total number of bytes of messages received by the network device 122 through the network interface C2 and the network interface C3 within a unit time.
  • the fourth bandwidth is the sum of the theoretical receiving bandwidth of network interface C2 and the theoretical receiving bandwidth of network interface C3.
  • the first network device can be used to determine the load information of the path based on the local load information and the load information of other network devices, thereby selecting an appropriate path. Transmit messages. For this case, the first network device does not need to send load information to other network devices.
  • the factor that affects the packet transmission performance is that the first network device sends the packet to other devices in the first device cluster. literary ability. Therefore, in the above introduction to the second load information, only the case where the first network device is an intermediate forwarding device of the message is considered. That is to say, if the first network device is located on a non-shortest path for packet transmission, the load information of the non-shortest path can be determined based on the second load information of the first network device.
  • the first load information may also be called the shortest load (min_load) information.
  • the second load information may also be called non-minimum load (NM_load) information.
  • S303 The first network device sends the load information of the first network device to the second network device.
  • the first network device may send the load information of the first network device to the second network device.
  • the device cluster to which the second network device belongs is different from the device cluster to which the first network device belongs.
  • the device cluster to which the second network device belongs is called the second device cluster. In this way, after receiving the message, the second network device can determine the path to transmit the message based on the load information of the first network device.
  • the load information of the first network device may be used by the second network device to determine the load of the path including the first sub-path.
  • the first sub-path is a link from the second network device to the first network device. That is, the load information of the first network device can be used to determine the load information of the path from the second network device to the first network device, or can also be used to determine the load information of the path from the second network device to the third network device via the first network device. Load information for the path.
  • the third network device does not belong to the first device cluster.
  • the first network device can forward the flow according to its own
  • the load information of the first network device is determined based on the load situation, and the load information of the first network device is notified to the second network device in another device cluster.
  • the second network device can determine the load information of the transmission path of the message based on the advertised load information, so as to select a path when forwarding the message. In this way, the network device selects routes based on the load information of other network devices, rather than only based on the congestion situation of the local network interface.
  • each network device connected to network devices in other device clusters can calculate its own load information. In this way, the granularity of the load information of the network device is refined and the accuracy of path selection is improved.
  • the load information of the first network device may include first load information and second load information.
  • the second network device can determine the message according to the first load information of the first network device. Load information of the shortest path of this packet. If the message received by the second network device and to be sent is a message sent from the second device cluster to the third device cluster, the second network device may determine the message based on the second load information of the first network device. Load information of the non-shortest path that passes through the first network device.
  • the load information of the shortest path and the load information of the non-shortest path can be calculated through different load information.
  • different types of paths are evaluated through different types of load information, which improves the accuracy of path load information calculation, thereby improving the accuracy of path selection.
  • the load information of the first network device is introduced above, and the method for the first network device to notify the load information of the first network device to the second network device is introduced below.
  • the load information of the first network device may be carried in the header of a message sent by the first network device to the second network device.
  • IPv6 Internet Protocol Version 6
  • the load information of the first network device may be carried in the header of a message sent by the first network device to the second network device.
  • the load information of the first network device may be carried in the payload part sent by the first network device to the second network device.
  • the first network device may generate a packet for transmitting its own load information and send it to the second network device.
  • the payload part of the message includes load information of the first network device (for example, the above-mentioned first load information and/or second load information).
  • the load information of the first network device includes first load information and second load information.
  • the first load information and the second load information can be carried in the same message.
  • the first payload information and the second payload information are carried in the payload part of the first message.
  • the first load information and the second load information may also be carried in different packets.
  • the first payload information may be carried in the payload part of the first message
  • the second payload information may be carried in the payload part of the second message.
  • the second message is also another message sent by the first network device to the second device.
  • the second network device can parse the first message to determine the load information of the first network device.
  • the message header of the first message may include first indication information to indicate that the payload part of the first message includes the load information of the first network device. . so, The second network device may obtain the load information of the first network device from the payload part of the first message according to the indication of the indication information in the message header of the first message.
  • the first indication information is carried in a control protocol header of the first message.
  • the first indication information may be carried in the NNP packet header.
  • the control protocol header of the first message may include an NNP header, and the NNP header includes a subtype field. This subtype is used to carry the first indication information.
  • not every packet may include a control protocol header.
  • the first message may also include second indication information to indicate that the first message includes a control protocol message header.
  • the second network device can parse the control protocol header of the first message according to the second indication information in the first message, and then obtain the first indication information from the control protocol header of the first message, Then, the load information of the first network device is obtained according to the instruction of the first instruction information.
  • the second indication information may be carried in the Link-Layer header of the first message.
  • the second indication information is carried in the Protocol field of the Link-Layer packet header of the first packet.
  • the embodiment of the present application also provides a method for obtaining load information in a network architecture in which the control plane device and the forwarding plane device are separated from each other. This method can be applied to the first control plane device, the first control plane device, and the first control plane device. The device is used to manage the first forwarding plane device in the first forwarding plane device cluster.
  • the first control plane device can obtain the traffic information of the first forwarding plane device, and the first forwarding plane device belongs to the first forwarding plane device cluster. Then, the first control plane device may determine the load information of the first forwarding plane device based on the traffic information of the first forwarding plane device, and send the load information of the first forwarding plane device to the second forwarding plane device in the second forwarding plane device cluster. load information. Optionally, the first control plane device may send the load information of the first forwarding plane device to the control plane device corresponding to the second forwarding plane device cluster, so that the control plane device sends the load information to the forwarding plane device in the second forwarding plane device cluster. Load information of the first forwarding plane device.
  • the first control plane device may also send the load information of the first forwarding plane device to the first forwarding plane device, and the first forwarding plane device may send the first forwarding plane device to the forwarding plane device in the second forwarding plane device cluster. load information.
  • the embodiment of the present application does not limit the method by which the first control plane device sends the load information of the first forwarding plane device.
  • the traffic information of the first forwarding plane device may include uplink traffic information and downlink traffic information
  • the load information of the first forwarding plane device includes first load information and second load information.
  • the method for the first network device to send the load information of the first network device to the second network device is introduced above.
  • the following describes a method for the first network device to determine the transmission path for forwarding the packet based on the load information of the second network device.
  • this figure is a signaling interaction diagram of the method for sending messages provided by the embodiment of the present application, specifically including the following S401, S402 and S403.
  • first network device in the embodiment shown in FIG. 4 and the “first network device” in the embodiment shown in FIG. 3 may be the same network device, or they may be different network devices.
  • S401 The first network device obtains the target message sent to the destination device.
  • the first network device belongs to the first device cluster
  • the destination device belongs to the second device cluster.
  • the destination device may be a server in the second device cluster, or the network device directly connected to the destination device belongs to the second device cluster.
  • the first network device After obtaining the destination message, the first network device determines that the destination message is a message that needs to be sent to the second device cluster, and continues to perform subsequent steps accordingly.
  • the first network device determines the target path from the first path and the second path based on the load information of the second network device and the load information of the third network device.
  • the first network device can determine multiple transmission paths from the first network device to the destination device according to the topology structure of the network system, and use these transmission paths to Select one of the paths as the destination path to transmit the target packet.
  • the first path is the shortest path from the first network device to the destination device.
  • a device in the second device cluster that is directly connected to the first network device is called a second network device, and the first path passes through the second network device.
  • the second path is a non-shortest path from the first network device to the destination device.
  • the second path passes through the third network device in the third device cluster. That is, the second path is a path from the first network device to the third network device, and then from the third network device to the second network device.
  • the first network device may determine the load information of the first path and the load information of the second path respectively.
  • the load information of the first path is determined based on the load information of the second network device
  • the load information of the second path is determined based on the load information of the third network device.
  • the load information of the path determined based on the load information of the network devices on the path can reflect the load conditions of other network devices except the first network device, and more comprehensively measure the load condition of the entire path. In this way, the accuracy of calculating the load information of the path is improved, thereby improving the accuracy of selecting the path.
  • the first network device first obtains the load information of the second network device. Before determining the load information of the second path, the first network device first obtains the load information of the third network device. Specifically, the second network device can send the load information of the second network device to the first network device through the implementation shown in Figure 3; the third network device can also send the load information of the second network device to the first network through the implementation shown in Figure 3. The device sends load information of the third network device.
  • the method of determining the load information please refer to the introduction of the embodiment shown in Figure 3 and will not be described again here.
  • the load information of the first network device may include first load information and second load information.
  • the load information of the second network device may also include first load information and second load information
  • the load information of the third network device may also include first load information and second load information.
  • the first load information of the second network device is used to indicate the second network device's ability to forward packets to other devices in the second device cluster
  • the second load information of the second network device is used to indicate the second network device's ability to forward packets to other devices in the second device cluster. The ability of network devices in other device clusters other than the second device cluster to forward packets.
  • the first load information of the third network device is used to indicate the ability of the third network device to forward packets to other devices in the third device cluster.
  • the third The second load information of the network device is used to indicate the ability of the third network device to forward packets to network devices in other device clusters except the third device cluster.
  • the first network device can calculate the load information of the first path based on the first load information of the second network device. Since the second path is a non-shortest path from the first network device to the destination device, and the destination device and the third network device belong to different device clusters, the first network device can calculate the calculation based on the second load information of the third network device. Load information of the second path.
  • the overall load information of the path is calculated through different types of load information, so that the calculated load information of the path can more accurately reflect the network performance of this path, so that Select the target path later.
  • the first network device may combine the hop count of the first path and the hop count of the second path to determine the load information of the first path and the load information of the second path respectively. Specifically, the first network device may multiply the hop number of the first path by the first load information of the second network device, and multiply the hop number of the second path by the second load information of the third network device. Then, the first network device compares the results of the two multiplications.
  • the first network device may determine the first path is the target path, thereby using the first path to transmit the target message. If the product of the hop number of the first path and the first load information of the second network device is greater than the product of the hop number of the second path and the second load information of the third local network device, the first network device may determine the second path. is the target path, thereby using the second path to transmit the target packet.
  • the first network device can also use the congestion situation of the network port to select a path.
  • the first network device may utilize the congestion situation of the network port and combine the load information of the second network device and the load information of the third network device to determine the load information of the first path and the load information of the second path.
  • the first network device may normalize the congestion situation of the network port corresponding to the second network device. Then, the first network device can compare the normalized first load information of the second network device with the normalized congestion situation of the network port, and then use the larger one to calculate the load information of the first path. Similarly, the first network device can also normalize the congestion situation of the network port corresponding to the third network device. Then, the first network device can compare the normalized second load information of the third network device with the normalized congestion situation of the network port, and then use the larger one to calculate the load information of the second path.
  • network device 121 is the first network device
  • network device 122 is the second network device
  • network device 124 is the third network device
  • device 112 is the destination device of the target packet.
  • the network device 121 can obtain the first load information of the network device 122 , and the second load information of the network device 124. In addition, the network device 121 can also obtain the congestion status of the network interface A1 and the congestion status of the network interface A3.
  • the network device 121 can compare the normalized first load information of the network device 122 and the normalized congestion situation of the network interface A1, and compare the larger of the two with the path "network device 121 ⁇ Network device 122" is multiplied by the hop count to obtain the load information of the path "Network device 121 ⁇ Network device 122".
  • the network device 121 may compare the normalized second load information of the network device 124 and the normalized congestion situation of the network interface A3 between them, and multiply the larger of the two by the hop count of the path "network device 121 ⁇ network device 124 ⁇ network device 122" to obtain the path "network device 121 ⁇ network device 124 ⁇ network device 122" load information.
  • the network device 121 can compare the load information of the path "network device 121 ⁇ network device 122" and the load information of the path "network device 121 ⁇ network device 124 ⁇ network device 122", and determine the path with smaller load information as Target path. If the load information of the path "network device 121 ⁇ network device 122" is equal to the load information of the path "network device 121 ⁇ network device 124 ⁇ network device 122", the network device 121 can determine the path "network device 121 ⁇ network device 122" is the target path.
  • the first network device can determine the load information of each non-shortest path through the above method of determining the load information of the second path, so as to determine the load information of each non-shortest path according to The load information of the first path, the load information of the second path and the load information of multiple non-shortest paths determine the target path. In this way, even if there are many optional paths, by determining the load information of each path and performing path selection based on the load information, the transmission path with optimal network performance can be found.
  • S403 The first network device transmits the target message according to the target path.
  • the first network device may transmit the target packet according to the target path.
  • the target path for transmitting the message is selected by the first network device from multiple paths based on the load information of the multiple paths, and the load information of the path is calculated based on the load information of the network devices on the path.
  • the load information of the path calculated based on the load information at the granular level of the network device can more accurately reflect the network performance of the path, thereby finding the optimal path to transmit the target packet and ensuring the transmission performance of the target packet.
  • an embodiment of the present application also provides a device 500 for sending load information.
  • the device 500 for sending load information can realize the function of the first network device in the embodiment shown in FIG. 3 .
  • the device 500 for sending load information includes a transceiver unit 510 and a processing unit 520.
  • the transceiver unit 510 is used to implement the function of transmitting and receiving data in the embodiment shown in Figure 3;
  • the processing unit 520 is used to implement the function of data processing in the embodiment shown in Figure 3.
  • the transceiver unit 510 is used to obtain a target message sent to a destination device, and the destination device belongs to the second device cluster.
  • the processing module 520 is configured to determine a target path from the first path and the second path according to the load information of the second network device and the load information of the third network device.
  • the first path is from the first network device.
  • the second path is a path from the first network device to the destination device via the third device.
  • the second network device is The load information is determined based on the traffic information of the second network device, the load information of the third network device is determined based on the traffic information of the third network device, the first network device belongs to the first device cluster, and the third network device The second network device belongs to the second device cluster, and the third network device belongs to the third network device cluster.
  • the transceiver unit 510 is also configured to send the target message to the destination device through the target path.
  • an embodiment of the present application also provides a device 600 for sending a message.
  • the device 600 for sending a message can realize the function of the first network device in the embodiment shown in FIG. 4 .
  • the device 600 for sending messages includes a transceiver unit 610 and a processing unit 620.
  • the transceiver unit 610 is used to implement the function of transmitting and receiving information in the embodiment shown in Figure 4; processing Unit 620 is used to implement the data processing function in the embodiment shown in Figure 4.
  • the transceiver unit 610 is used to obtain a target message sent to a destination device, and the destination device belongs to the second device cluster.
  • the transceiver module 620 is configured to determine a target path from the first path and the second path according to the load information of the second network device and the load information of the third network device.
  • the first path is from the first network device.
  • the second path is a path from the first network device to the destination device via the third device.
  • the second network device is The load information is determined based on the traffic information of the second network device, the load information of the third network device is determined based on the traffic information of the third network device, the first network device belongs to the first device cluster, and the third network device
  • the second network device belongs to the second device cluster, and the third network device belongs to the third network device cluster.
  • the transceiver unit 610 is also configured to send the target message to the destination device through the target path.
  • each functional module in the embodiment of the present application can be integrated into one module, or each module can exist physically alone, or two or more modules can be integrated into one module.
  • the transceiver module and the processing module may be the same module or different modules.
  • the above integrated modules can be implemented in the form of hardware or software function modules.
  • Figure 7 is a schematic structural diagram of a device 700 provided by an embodiment of the present application.
  • the above device 500 for sending a load message and the device 600 for sending a message can be implemented by the equipment shown in Figure 7 .
  • the device 700 includes at least one processor 701 , a communication bus 702 and at least one network interface 704 .
  • the device 700 may also include a memory 703 .
  • each unit module described in FIG. 5 when each unit module described in FIG. 5 is implemented by software, the software or program code required to perform the corresponding action is stored in the memory 703 .
  • the processor 701 is used to execute programs or instructions in the memory 703 to implement the processing steps of S301, S303 and S303 in the embodiment shown in Figure 3, or to implement the processing of S401, S402 and S403 in the embodiment shown in Figure 4 step.
  • the network interface 703 is used to implement communication between the device and other devices.
  • each unit module described in FIG. 7 is implemented by software
  • the software or program code required to perform the corresponding action is stored in the memory 703 .
  • the processor 701 is used to execute programs or instructions in the memory 703 to implement the processing steps in the above embodiments.
  • the network interface 703 is used to implement communication between the device and other devices.
  • the processor 701 can be a general central processing unit (Central Processing Unit, CPU), an application-specific integrated circuit (Application-specific Integrated Circuit, ASIC), or one or more integrated circuits (Integrated Circuit) used to control the execution of the program of the present application. ,IC).
  • the processor may be used to process messages or data to implement the methods provided in the embodiments of this application.
  • the processor can be used to obtain the traffic information of the first network device; according to the traffic information of the first network device , determine the load information of the first network device; send the load information of the first network device to the second network device.
  • the processor can be used to obtain the sending A target message to a destination device, which belongs to the second device cluster; determine the destination path from the first path and the second path according to the load information of the second network device and the load information of the third network device; through the The target path sends the target packet to the destination device.
  • Communication bus 702 is used to transfer information between processor 701, network interface 704, and memory 703.
  • the memory 703 can be a read-only memory (ROM) or other type of static storage device that can store static information and instructions.
  • the memory 703 can also be a random access memory (Random Access Memory, RAM) or can store information. and other types of dynamic storage devices with instructions, which can also be Compact Disc Read-only Memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital versatile discs, Blu-ray Optical disc, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer, but is not limited thereto.
  • the memory 703 may exist independently and be connected to the processor 701 through the communication bus 702 . Memory 703 may also be integrated with processor 701.
  • the memory 703 is used to store program codes or instructions for executing the technical solutions provided by the embodiments of this application, and is controlled by the processor 701 for execution.
  • the processor 701 is used to execute program codes or instructions stored in the memory 703 .
  • the program code may include one or more software modules.
  • the processor 701 can also store program codes or instructions for executing the technical solutions provided by the embodiments of the present application. In this case, the processor 701 does not need to read the program codes or instructions from the memory 703 .
  • the network interface 704 can be a device such as a transceiver, used to communicate with other devices or a communication network.
  • the communication network can be an Ethernet, a radio access network (RAN) or a wireless local area network (Wireless Local Area Networks, WLAN), etc.
  • the network interface 704 can be used to receive messages sent by other nodes in the segment routing network, and can also send messages to other nodes in the segment routing network.
  • the network interface 804 may be an Ethernet interface, a Fast Ethernet (FE) interface or a Gigabit Ethernet (GE) interface.
  • FE Fast Ethernet
  • GE Gigabit Ethernet
  • the device 700 may include multiple processors, such as the processor 701 and the processor 705 shown in FIG. 7 .
  • processors may be a single-CPU processor or a multi-CPU processor.
  • a processor here may refer to one or more devices, circuits, and/or processing cores for processing data (eg, computer program instructions).
  • FIG 8 is a schematic structural diagram of a device 800 provided by an embodiment of the present application.
  • the first network device in Figures 3 and 4 can be implemented by the device shown in Figure 8.
  • the device 800 includes a main control board and one or more interface boards.
  • the main control board communicates with the interface board.
  • the main control board is also called the main processing unit (Main Processing Unit, MPU) or route processing card (Route Processor Card).
  • the main control board includes the CPU and the memory.
  • the main control board is responsible for the control and management of each component in the device 800, including Route calculation, device management and maintenance functions.
  • the interface board is also called a Line Processing Unit (LPU) or Line Card (Line Card) and is used to receive and send messages.
  • LPU Line Processing Unit
  • Line Card Line Card
  • the device 800 also includes a switching network board.
  • the switching network board is communicatively connected to the main control board and the interface board.
  • the switching network board is used to forward the interface board.
  • the switching fabric board can also be called a switching fabric unit (Switch Fabric Unit, SFU).
  • the interface board includes CPU, memory, and forwarding engine and an interface card (Interface Card, IC), where the interface card may include one or more network interfaces.
  • the network interface can be an Ethernet interface, FE interface or GE interface, etc.
  • the CPU is communicated with the memory, forwarding engine and interface card respectively.
  • Memory is used to store forwarding tables.
  • the forwarding engine is used to forward received messages based on the forwarding table saved in the memory. If the destination address of the received message is the IP address of device 800, the message is sent to the CPU of the main control board or interface board for processing. Processing; if the destination address of the received message is not the IP address of device 800, the forwarding table is checked based on the destination. If the next hop and outbound interface corresponding to the destination address are found in the forwarding table, the message is Forwarded to the outbound interface corresponding to the destination address.
  • the forwarding engine may be a Network Processor (NP).
  • the interface card also called a daughter card, can be installed on the interface board and is responsible for converting photoelectric signals into data frames, checking the validity of the data frames and forwarding them to the forwarding engine or the interface board CPU for processing.
  • the CPU can also perform the function of the forwarding engine, such as implementing soft forwarding based on a general-purpose CPU, so that a forwarding engine is not required in the interface board.
  • the forwarding engine may be implemented through an ASIC or a field programmable gate array (Field Programmable Gate Array, FPGA).
  • the memory storing the forwarding table may also be integrated into the forwarding engine as part of the forwarding engine.
  • An embodiment of the present application also provides a chip system, including: a processor, the processor is coupled to a memory, and the memory is used to store programs or instructions. When the program or instructions are executed by the processor, the The chip system implements the method of sending load information performed by the first network device in the embodiment shown in FIG. 3, or enables the chip system to implement the method of sending messages performed by the first network device in the embodiment shown in FIG. 4.
  • processors in the chip system there may be one or more processors in the chip system.
  • the processor can be implemented in hardware or software.
  • the processor may be a logic circuit, an integrated circuit, or the like.
  • the processor may be a general-purpose processor implemented by reading software code stored in memory.
  • the memory may be integrated with the processor or may be provided separately from the processor, which is not limited by this application.
  • the memory can be a non-transient processor, such as a read-only memory ROM, which can be integrated on the same chip as the processor, or can be separately provided on different chips.
  • This application describes the type of memory, and the relationship between the memory and the processor. There is no specific limitation on how the processor is configured.
  • the chip system can be an FPGA, an ASIC, a system on chip (SoC), a CPU, an NP, or a digital signal processing circuit (Digital Signal Processor, DSP), it can also be a microcontroller (Micro Controller Unit, MCU), a programmable controller (Programmable Logic Device, PLD) or other integrated chips.
  • SoC system on chip
  • DSP Digital Signal Processor
  • MCU Micro Controller Unit
  • PLD Programmable Logic Device
  • each step in the above method embodiment can be completed by an integrated logic circuit of hardware in the processor or instructions in the form of software.
  • the method steps disclosed in conjunction with the embodiments of this application can be directly implemented by a hardware processor, or executed by a combination of hardware and software modules in the processor.
  • Embodiments of the present application also provide a computer-readable storage medium, including instructions that, when run on a computer, cause the computer to perform the information receiving method provided by the above method embodiments and performed by the forwarding plane device, or perform the above method.
  • Embodiments of the present application also provide a computer program product containing instructions that, when run on a computer, cause the computer to execute the method of sending load information provided by the above method embodiment and executed by the first network device, or execute the above The method embodiment provides a message sending method executed by the first network device.
  • the disclosed systems, devices and methods can be implemented in other ways.
  • the device embodiments described above are only illustrative.
  • the division of the units is only a logical module division. In actual implementation, there may be other division methods.
  • multiple units or components may be combined or can be integrated into another system, or some features can be ignored, or not implemented.
  • the coupling or direct coupling or communication connection between each other shown or discussed may be through some interfaces, and the indirect coupling or communication connection of the devices or units may be in electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place, or they may be distributed to multiple network units. Some or all of the units can be obtained according to actual needs to achieve the purpose of the solution of this embodiment.
  • each module unit in various embodiments of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit.
  • the above-mentioned integrated unit can be implemented in the form of hardware or in the form of software module unit.
  • the integrated unit is implemented in the form of a software module unit and sold or used as an independent product, it may be stored in a computer-readable storage medium.
  • the technical solution of the present application is essentially or contributes to the existing technology, or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium , including several instructions to cause a computer device (which may be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in various embodiments of this application.
  • the aforementioned storage media include: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disk or optical disk and other media that can store program code. .
  • Computer-readable media includes computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another.
  • Storage media can be any available media that can be accessed by a general purpose or special purpose computer.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提供了一种发送负载信息的方法、发送报文的方法及装置,旨在找到最合适的传输路径传输报文,以提高报文的传输性能。其中,所述发送负载信息的方法应用于第一设备集群中的第一网络设备,所述方法包括:第一网络设备获取所述第一网络设备的流量信息;所述第一网络设备根据所述第一网络设备的流量信息,确定所述第一网络设备的负载信息;所述第一网络设备向第二网络设备发送所述第一网络设备的负载信息,所述第二网络设备属于第二网络设备集群,所述第一网络设备的负载信息用于确定包括第一子路径的路径的负载信息,所述第一子路径为从所述第二网络设备到所述第一网络设备的路径。

Description

一种发送负载信息的方法、发送报文的方法及装置
本申请要求于2022年07月29日提交中国国家知识产权局、申请号为202210915313.4、发明名称为“一种发送负载信息的方法、发送报文的方法及装置”的中国专利申请的优先权,本申请还要求于2023年03月08日提交中国国家知识产权局、申请号为202310254859.4、发明名称为“一种发送负载信息的方法、发送报文的方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及计算机技术领域,尤其涉及一种发送负载信息的方法、发送报文的方法及装置。
背景技术
随着网络规模的扩大,可以将多个网络设备划分为一个设备集群。为了提高跨设备集群报文的传输速度,可以在不同的设备集群之间建立一条或多条路径。例如,假设网络架构中任意两个设备集群之间建立有直连路径,那么对于从设备集群A发往设备集群B的报文,可以通过设备集群A与设备集群B之间的直连路径传输。这样,不经过其他设备集群中网络设备的转发,提高了报文的传输速率。
但是,如果网络设备上与另一设备集群中网络设备连接的网络接口出现拥塞,那么该网络接口对应的直连路径可能出现网络拥塞。如果利用该直连路径传输报文,可能影响报文的传输性能。因此,为了保证报文的传输性能不受影响,网络设备可以结合本地的多个网络接口的拥塞情况从多条传输路径中选择一条传输路径作为目标路径,从而通过目标路径传输报文。
上述方法是根据本地网络接口的拥塞情况作为整条传输路径的拥塞情况来选择目标路径,不能确定传输路径真实的拥塞情况,也就无法找到最合适的目标路径,无法保证报文的传输性能。
发明内容
本申请提供了一种发送负载信息的方法、发送报文的方法及装置,旨在找到最合适的传输路径传输报文,以提高报文的传输性能。
第一方面,本申请提供了一种发送负载信息的方法,该方法可以应用于第一设备集群中的第一网络设备。在执行本申请提供的发送负载信息的方法时,第一网络设备可以先获取第一网络设备的流量信息。然后,第一网络设备可以根据本地的流量信息确定第一网络设备的负载信息。接着,第一网络设备向第二设备集群中的第二网络设备发送第一网络设备的负载信息。其中,第一网络设备的负载信息用于指示第一网络设备接收并转发报文的能力,用于确定包括第一子路径的路径的负载信息。第一子路径为从第二网络设备到第一网络设备的路径。也就是说,如果第二网络设备需要确定某条路径的负载信息,且该路径包括从第二网络设备到第一网络设备之间的部分,那么第二网络设备可以基于第一网络设备的负载信息计算该路径的负载信息。这样,网络设备根据其他网络设备的负载信息进行 选路,而非仅根据本地的网络接口的拥塞情况进行选路。如此,考虑到了路径上的网络设备的拥塞情况,使得网络设备选路时参考的信息能够更加全面地体现出整条传输路径的拥塞情况,从而找到最合适的传输路径传输报文,以提高报文的传输性能。另外,在本申请实施例中,每个与其他设备集群中网络设备连接的网络设备都可以计算自身的负载信息。如此,细化了网络设备的负载信息的粒度,提高了选择路径的准确性。
在一些可能的实现方式中,第一网络设备的负载信息可以包括第一负载信息和/或第二负载信息。其中,第一负载信息用于确定第一路径的负载信息,第一路径为从第二网络设备到第一网络设备的最短路径,第一负载信息用于指示第一网络设备接收并向第一报文集群中的设备转发报文的能力;第二负载信息用于确定第二路径的负载信息,第二路径为从第二网络设备经第一网络设备到第三网络设备的路径,第二负载信息用于指示第一网络设备接收并向第三设备集群中的网络设备转发报文的能力,第三网络设备属于第三设备集群。也就是说,对于经过相同的网络设备的最短路径和非最短路径,可以通过不同的负载信息计算最短路径的负载信息和非最短路径的负载信息。这样,通过不同类型的负载信息对不同类型的路径进行评估,提高了路径的负载信息计算的准确程度,从而提高了选择路径的准确性。
在一些可能的实现方式中,上述第一负载信息是根据第一网络设备的下行流量信息计算得到的。其中,第一网络设备的下行流量信息为第一网络设备向第一设备集群内其他设备发送的流量的相关信息。第一网络设备的下行流量信息用于指示第一网络设备向第一设备集群内其他设备发送的流量的信息。因此,第一网络设备的下行流量越多,第一网络设备能够提供的、向第一设备集群内其他设备转发流量的能力也就越差。可见,通过第一网络设备的下行流量信息,可以确定是否存在较多报文正在被第一网络设备向第一设备集群内其他设备发送,从而确定第一网络设备能够提供的、向第一设备集群内其他设备发送报文的能力。
在一些可能的实现方式中,第一负载信息根据第一网络设备的下行流量与下行带宽的比值确定。
在一些可能的实现方式中,上述第二负载信息是根据第一网络设备的上行流量信息计算得到的。其中,第一网络设备的上行流量信息用于指示第一网络设备接收的、来自第一设备集群内其他设备的流量的信息。对于第一网络设备接收的上行流量,需要第一网络设备向其他网络设备转发。因此,第一网络设备的上行流量越大,第一网络设备能够提供的、向其他设备集群转发报文的能力也就越差。可见,通过第一网络设备的上行流量信息,可以确定是否存在较多报文正在被第一网络设备向其他设备发送,从而确定第一网络设备能够提供的、向其他设备集群内的设备发送报文的能力。
在一些可能的实现方式中,第一负载信息根据第一网络设备的上行流量与上行带宽的比值确定。
在一些可能的实现方式中,第一网络设备的负载信息可以被携带在报文的负载(payload)部分中。具体地,在向第二网络设备通告第一网络设备的第一负载信息时,第一网络设备可以向第二网络设备发送第一报文,并在第一报文的payload部分中携带第一网络设备的负 载信息。可选地,如果第一网络设备的负载信息包括第一负载信息和第二负载信息。那么第一负载信息和第二负载信息可以被携带在相同的报文中。例如,第一负载信息和第二负载信息被携带在第一报文的payload部分。或者,第一负载信息和第二负载信息也可以被携带在不同的报文中。例如,第一负载信息可以被携带在第一报文的payload部分,第二负载信息被携带在第二报文的payload部分。与第一报文类似,第二报文也为第一网络设备向第二设备发送的另一报文。
在一些可能的实现方式中,所述第一报文还包括第一指示信息,所述第一指示信息用于指示所述第一报文的payload部分包括所述第一网络设备的负载信息。
在一些可能的实现方式中,所述第一指示信息被携带在所述第一报文的控制协议报文头中。
在一些可能的实现方式中,所述控制协议报文头包括邻居通告协议(Neighbor Notification Protocol,NNP)报文头,所述第一指示信息被携带在所述NNP报文头的子类型(subtype)字段中。
在一些可能的实现方式中,所述第一报文还包括链路层(Link-Layer)报文头,所述Link-Layer报文头包括第二指示信息,所述第二指示信息用于指示所述第一报文包括所述控制协议报文头。
在一些可能的实现方式中,所述第二指示信息被携带在所述Link-Layer报文头的协议(Protocol)字段中。
在一些可能的实现方式中,第一网络设备还可以接收其他网络设备发送的负载信息。即,第一网络设备可以接收第四设备集群中第四网络设备发送的第三负载信息,第三负载信息根据第四设备的流量信息确定。这样,在能够到可以通过第一网络设备到第四网络设备之间的子路径传输的报文时,第一网络设备可以根据第三负载信息确定该路径的负载信息。
第二方面,本申请提供了一种发送报文的方法。该方法可以应用于第一设备集群中的第一网络设备。在执行本申请提供的发送报文的方法时,第一网络设备先获取发往目的设备的目标报文。其中,目的设备属于第二设备集群。接着,第一网络设备可以根据网络拓扑规划出第一路径和第二路径,并根据第二网络设备的负载信息和第三网络设备的复杂in信息,从第一路径和第二路径中确定出目标路径。最后,第一网络设备通过目标路径向目的设备发送目标报文。其中,第一路径为从第一网络设备到目的设备的路径,第一路径经过第二设备集群中的第二网络设备。第二路径为从第一网络设备到目的设备的最短路径,第二路径经过第三设备集群中的第三网络设备。这样,如果第一网络设备到目的设备之间存在多条路径,第一网络设备可以根据路径上网络设备的负载信息计算每条路径的负载,并根据路径的负载选择最合适的目标路径传输目标报文。如此,考虑到了路径上的网络设备的拥塞情况,使得网络设备选路时参考的信息能够更加全面地体现出整条传输路径的拥塞情况,从而找到最合适的传输路径传输报文,以提高报文的传输性能。
在一些可能的实现方式中,第一路径是从第一网络设备到目的设备的最短路径。第一路径的负载信息可以根据第二网络设备的第一负载信息确定。其中,第二网络设备的第一 负载信息用于指示第二网络设备接收并向所述第二设备集群中的设备转发报文的能力。
在一些可能的实现方式中,第二网络设备的第一负载信息根据第二网络设备的下行流量信息确定。其中,第二网络设备的下行流量信息为第二网络设备向第二设备集群内其他设备发送的流量的相关信息。第二网络设备的下行流量信息用于指示第二网络设备向第二设备集群内其他设备发送的流量的信息。因此,第二网络设备的下行流量越多,第二网络设备能够提供的、向第二设备集群内其他设备转发流量的能力也就越差。可见,通过第二网络设备的下行流量信息,可以确定是否存在较多报文正在被第二网络设备向第二设备集群内其他设备发送,从而确定第二网络设备能够提供的、向第二设备集群内其他设备发送报文的能力,得到第二网络设备的第一负载信息。
在一些可能的实现方式中,第二网络设备可以通过向第一网络设备发送报文,以通告自身的第一负载信息。具体地,第一负载信息可以被携带在报文的payload部分中。假设第二网络设备向第一网络设备发送的第一报文,那么第一负载信息可以被携带在第一报文的payload部分。
在一些可能的实现方式中,所述第一报文还包括第一指示信息,所述第一指示信息用于指示所述第一报文的payload部分包括所述第二网络设备的第一负载信息。
在一些可能的实现方式中,所述第一指示信息被携带在所述第一报文的控制协议报文头中。
在一些可能的实现方式中,所述控制协议报文头包括NNP报文头,所述第一指示信息被携带在所述NNP报文头的subtype字段中。
在一些可能的实现方式中,所述第一报文还包括链路层报文头,所述Link-Layer报文头包括第二指示信息,所述第二指示信息用于指示所述第一报文包括所述控制协议报文头。
在一些可能的实现方式中,所述第二指示信息被携带在所述Link-Layer报文头的Protocol字段中。
在一些可能的实现方式中,第二路径是从第一网络设备到目的设备的非最短路径。第二路径的负载信息可以根据第三网络设备的第二负载信息确定。其中,第三网络设备的第二负载信息用于指示第三网络设备接收并向第三设备集群以外的设备转发报文的能力。
在一些可能的实现方式中,第三网络设备的第二负载信息根据第三网络设备的上行流量信息确定。其中,第三网络设备的上行流量信息用于指示第三网络设备接收的、来自第三设备集群内其他设备的流量的信息。对于第三网络设备接收的上行流量,需要第三网络设备向其他网络设备转发。因此,第三网络设备的上行流量越大,第三网络设备能够提供的、向其他设备集群转发报文的能力也就越差。可见,通过第三网络设备的上行流量信息,可以确定是否存在较多报文正在被第三网络设备向其他设备发送,从而确定第三网络设备能够提供的、向其他设备集群内的设备发送报文的能力,得到第三网络设备的第二负载信息。
在一些可能的实现方式中,第一网络设备可以结合路径的跳数和路径对应的端口的负载情况确定路径的负载信息,以便更加全面地评估路径的网络性能。具体地,假设第一路径对应第一网络设备上的第一端口,第二路径对应第一网络设备上的第二端口。那么在选 择目标路径时,第一网络设备可以先根据第一端口的负载信息、第一路径的跳数和第二网络设备的负载信息确定第一路径的负载信息。第一网络设备还可以根据第二端口的负载信息、第二路径的跳数和第二网络设备的负载信息确定第二路径的负载信息。接着,第一网络设备可以根据第一路径的负载信息和第二路径的负载信息确定目标路径。
第三方面,本申请实施例提供了一种发送负载信息的方法。该方法应用于控制面与转发面分离的网络架构中的第一控制面设备。第一控制面设备用于管理第一设备集群中的第一转发面设备。具体地,第一控制面设备先获取第一转发面设备的流量信息。接着,第一控制面设备根据第一转发面设备的流量消息确定第一转发面设备的负载信息,并向第二转发面设备集群中的第二转发面设备发送第一转发面设备的负载信息。如此,细化了转发面设备的负载信息的粒度,提高了选择路径的准确性。
在一些可能的实现方式中,第一控制面设备可以向第二控制面设备发送第一转发面设备的负载信息。第二控制面设备用于管理第二转发面设备集群中的第二转发面设备。
在一些可能的实现方式中,第一控制面设备可以向第一转发面设备发送第一转发面设备的负载信息,再由第一转发面设备向第二转发面设备发送第一转发面设备的负载信息。
第四方面,本申请提供了一种发送负载信息的装置,所述装置应用于第一设备集群中的第一网络设备,所述装置包括:收发单元,用于获取所述第一网络设备的流量信息;处理单元,用于根据所述第一网络设备的流量信息,确定所述第一网络设备的负载信息;发送单元,用于向第二网络设备发送所述第一网络设备的负载信息,所述第二网络设备属于第二网络设备集群,所述第一网络设备的负载信息用于确定包括第一子路径的路径的负载信息,所述第一子路径为从所述第二网络设备到所述第一网络设备的路径。
在一些可能的实现方式中,所述第一网络设备的负载信息包括第一负载信息和/或第二负载信息;所述第一负载信息用于确定第一路径的负载信息,所述第一路径为从所述第二网络设备到所述第一网络设备的最短路径,所述第一负载信息用于指示所述第一网络设备接收并向所述第一报文集群中的设备转发报文的能力;所述第二负载信息用于确定第二路径的负载信息,所述第二路径为从所述第二网络设备经所述第一网络设备到第三网络设备的路径,所述第二负载信息用于指示所述第一网络设备接收并向第三设备集群中的网络设备转发报文的能力,所述第三网络设备属于所述第三设备集群。
在一些可能的实现方式中,所述第一网络设备的流量信息包括所述第一网络设备的下行流量信息;所述处理单元,用于根据所述第一网络设备的下行流量信息确定所述第一负载信息。
在一些可能的实现方式中,所述第一网络设备的流量信息包括所述第一设备的上行流量信息;所述处理单元,用于根据所述第一网络设备的上行流量信息确定所述第二负载信息。
在一些可能的实现方式中,所述发送单元,具体用于所述第一网络设备向所述第二网络设备发送第一报文,所述第一网络设备的负载信息被携带在所述第一报文的payload部分中。
在一些可能的实现方式中,所述第一报文还包括第一指示信息,所述第一指示信息用 于指示所述第一报文的payload部分包括所述第一网络设备的负载信息。
在一些可能的实现方式中,所述第一指示信息被携带在所述第一报文的控制协议报文头中。
在一些可能的实现方式中,所述控制协议报文头包括NNP报文头,所述第一指示信息被携带在所述NNP报文头的subtype字段中。
在一些可能的实现方式中,所述第一报文还包括Link-Layer报文头,所述Link-Layer报文头包括第二指示信息,所述第二指示信息用于指示所述第一报文包括所述控制协议报文头。
在一些可能的实现方式中,所述第二指示信息被携带在所述Link-Layer报文头的Protocol字段中。
在一些可能的实现方式中,所述收发单元,还用于接收第四网络设备发送的第三负载信息,所述第三负载信息根据所述第四网络设备的流量信息确定,所述第四网络设备属于第四设备集群。
第五方面,本申请提供了一种发送报文的装置,所述装置应用于第一设备集群中的第一网络设备,所述装置包括:收发单元,用于获取发往目的设备的目标报文,所述目的设备属于第二设备集群;处理单元,用于根据第二网络设备的负载信息和第三网络设备的负载信息,从第一路径和第二路径中确定目标路径,所述第一路径为从所述第一网络设备经所述第二网络设备到所述目的设备的路径,所述第二路径为从所述第一网络设备经所述第三设备到所述目的设备的路径,所述第二网络设备的负载信息根据所述第二网络设备的流量信息确定,所述第三网络设备的负载信息根据所述第三网络设备的流量信息确定,所述第一网络设备属于第一设备集群,所述第二网络设备属于所述第二设备集群,所述第三网络设备属于第三网络设备集群;发送单元,用于通过所述目标路径向所述目的设备发送所述目标报文。
在一些可能的实现方式中,所述第一路径为从所述第一网络设备到所述目的设备的最短路径;所述收发单元,还用于获取所述第二网络设备的第一负载信息,所述第二网络设备的第一负载信息用于指示所述第二网络设备接收并向所述第二设备集群中的设备转发报文的能力;所述处理单元,具体用于根据所述第二网络设备的第一负载信息确定所述第一路径的负载信息。
在一些可能的实现方式中,所述第二网络设备的第一负载信息根据所述第二网络设备的下行流量信息确定。
在一些可能的实现方式中,所述收发单元,具体用于接收所述第二网络设备发送的第一报文,所述第一负载信息被携带在所述第一报文的payload部分中。
在一些可能的实现方式中,所述第一报文还包括第一指示信息,所述第一指示信息用于指示所述第一报文的payload部分包括所述第一负载信息。
在一些可能的实现方式中,所述第一指示信息被携带在所述第一报文的控制协议报文头中。
在一些可能的实现方式中,所述控制协议报文头包括NNP报文头,所述第一指示信息 被携带在所述NNP报文头的subtype字段中。
在一些可能的实现方式中,所述第一报文还包括Link-Layer报文头,所述Link-Layer报文头包括第二指示信息,所述第二指示信息用于指示所述第一报文包括所述控制协议报文头。
在一些可能的实现方式中,所述第二指示信息被携带在所述Link-Layer报文头的Protocol字段中。
在一些可能的实现方式中,所述收发单元,还用于获取所述第三网络设备的第二负载信息,所述第三网络设备的第二负载信息用于指示所述第三网络设备接收并向所述第三设备集群以外的设备转发报文的能力;所述处理单元,具体用于根据所述第三网络设备的第二负载信息确定所述第二路径的负载信息。
在一些可能的实现方式中,所述第三网络设备的第二负载信息根据所述第三网络设备的上行流量信息确定。
在一些可能的实现方式中,所述第一网络设备通过第一端口与所述第二网络设备连接,所述第一网络设备通过第二端口与所述第三网络设备连接;所述处理单元,具体用于根据所述第一端口的负载信息、所述第一路径的跳数和所述第二网络设备的负载信息确定所述第一路径的负载信息;根据所述第二端口的负载信息、所述第二路径的跳数和所述第三网络设备的负载信息确定所述第二路径的负载信息;根据所述第一路径的负载信息和所述第二路径的负载信息,从所述第一路径和所述第二路径中选择目标路径。
第六方面,本申请提供一种发送负载信息的装置,所述装置应用于第一控制面设备,所述装置包括:
收发单元,用于获取第一转发面设备的流量信息,所述第一转发面设备属于第一转发面设备集群;
处理单元,用于根据所述第一转发面设备的流量信息,确定所述第一转发面设备的负载信息;
发送单元,用于向第二转发面设备发送所述第一转发面设备的负载信息,所述第二转发面设备属于第二转发面设备集群,所述第一转发面设备的负载信息用于所述第二转发面设备确定第一路径的负载信息,所述第一路径包括所述第二转发面设备和所述第一转发面设备。
第七方面,本申请提供了一种设备,所述设备包括存储器和处理器,所述存储器用于存储指令,所述处理器用于运行所述指令,以使得所述设备执行如前述任一方面所述的方法。
第八方面,本申请提供了一种计算机可读存储介质,包括指令,当其在处理器上执行时,以使得所述处理器执行如前述任一方面所述的方法。
第九方面,本申请提供了一种计算机程序产品,包括程序,当所述程序在处理器上运行时,以使得所述处理器执行如前述任一方面所述的方法。
附图说明
图1为本申请实施例提供的网络架构的一种结构示意图;
图2为本申请实施例提供的网络架构的另一种结构示意图;
图3为本申请实施例提供的发送负载信息的方法的一种信息交互示意图;
图4为本申请实施例提供的发送报文的方法的一种信息交互示意图;
图5为本申请实施例提供的发送负载信息的装置700的一种结构示意图;
图6为本申请实施例提供的发送报文的装置600的一种结构示意图;
图7为本申请实施例提供的设备700的一种结构示意图;
图8为本申请实施例提供的设备800的一种结构示意图。
具体实施方式
对于报文传输性能要求较高的网络,例如高性能计算机群(High Performance Computing,HPC)、超级计算机网络或片上网络等网络架构中,可以在任意两个设备集群之间建立一条或多条直连路径。这样,在设备集群之间的直连路径未出现网络拥塞时,跨设备集群的报文可以通过源设备集群和目的设备集群之间的直连路径传输,无需经过其他网络设备的中转,提高了报文的传输性能。
如果设备集群之间的直连路径出现了网络拥塞,再通过直连路径传输报文可能影响到报文的传输性能。为此,直连路径一端的网络设备可以检测本地各个网络接口的拥塞情况,并在直连路径出现拥塞之后,通过其他网络接口传输报文。但是,这种方法是将传输路径的入口的拥塞情况作为整条路径的拥塞情况进行选路。对于存在中间跳的传输路径,入口的拥塞情况难以反映整条路径的拥塞情况。因此,采用上述方法确定的目标路径可能并不是网络性能最佳的传输路径,无法确保报文的传输性能。
下面结合附图1提供的一种网络架构进行简单介绍。
参见图1,该图为本申请实施例提供的系统的一种结构示意图。在图1所示的系统中,包括设备111、设备112、设备113、网络设备121、网络设备122、网络设备123和网络设备124。其中,设备111与网络设备121连接,设备112与网络设备123连接,设备113与网络设备122连接,网络设备121、网络设备122、网络设备123和网络设备124之间任意两个设备彼此连接。网络设备121上与网络设备122连接的网络接口的标识为A1,网络设备121上与网络设备123连接的网络接口的标识为A2,网络设备121上与网络设备124连接的网络接口的标识为A3。网络设备122上与网络设备121连接的网络接口的标识为B1,网络设备122上与网络设备124连接的网络接口的标识为B2,网络设备122上与网络设备123连接的网络接口的标识为B3,网络设备122上与设备112连接的网络接口的标识为B4。网络设备121属于设备集群1、网络设备122和网络设备123属于设备集群2、网络设备124属于设备集群3。
在一些可能的实现中,设备111被视为属于设备集群1,设备112和设备113被视为属于设备集群2。
对于从设备111发往设备112的报文P1,网络设备121可以通过与网络设备122之间的直连路径发送;也可以通过网络设备123作为中转,通过网络设备123向网络设备122发送报文P1;还可以通过网络设备124作为中转,通过网络设备124向网络设备122发送报文P1。可见,对于报文P1,至少存在“网络设备121→网络设备122”、“网络设备121 →网络设备123→网络设备122”和“网络设备121→网络设备124→网络设备122”三条传输路径。
因此,在转发报文P1之前,网络设备121可以分别获取网络接口A1、网络接口A2和网络接口A3的负载情况,并根据负载情况确定合适的目标路径。例如,假设网络接口A1和网络接口A3的负载较高。网络接口A2的负载较低,那么网络设备121可以通过网络接口A2发送报文P1,报文P1通过路径“网络设备121→网络设备123→网络设备122”传输。
但是,上述方法中并未考虑到网络设备123的负载。如果网络设备123的负载较高,网络设备121通过网络接口A2发送的报文P1无法被网络设备123及时转发。那么通过路径“网络设备121→网络设备123→网络设备122”传输报文P1的时延可能比通过路径“网络设备121→网络设备122”传输报文的P1的时延更长。
通过上述分析可以看出,由于只考虑了网络设备本地的网络接口的拥塞情况,传统的路径选择方法中无法选出最优的目标路径来传输报文。
为了解决上述提技术问题,本申请实施例提供了一种发送负载信息的方法和发送报文的方法,旨在基于路径上网络设备的负载确定整条路径的负载的方案,从而确定最优的目标路径用于传输报文。
本申请实施例提供的发送负载信息的方法和发送报文的方法可以应用于图1所示的应用场景。其中,所述存储数据的方法和信息发送的方法可以由网络设备121、网络设备122、网络设备123和网络设备124中任意一个网络设备执行。其中,所述发送负载信息的方法可以由网络设备的控制面执行,也可以由网络设备的转发面执行。所述发送报文的方法可以由网络设备的转发面执行。可选地,所述转发面又可以被称为数据面。
实际应用时,设备集群内与其他设备集群中连接的网络设备称为集群出口网络设备。例如图1所示的应用场景中网络设备121、网络设备122、网络设备123和网络设备124均为集群出口网络设备。在图1所示的应用场景中,集群出口网络设备与作为源设备或目的设备的设备连接(例如网络设备121与设备111连接)。
而在一些其他的应用场景中,考虑到设备集群内终端设备或服务器的数量可能较多,可以将设备集群内的网络设备分为骨干(spine)网络设备和叶子(leaf)网络设备。其中,叶子网络设备不与其他设备集群内的设备连接,只与本集群内的网络设备或作为源设备或目的设备的设备连接。骨干网络设备为设备集群内与其他设备集群内的网络设备连接的网络设备。即,骨干网络设备为上述集群出口网络设备。在这种网络架构下,本申请实施例提供的技术方案可以由集群出口网络设备执行。
例如,参见图2,该图为本申请实施例提供的系统的另一种结构示意图。在图2所示的系统中,包括设备211、设备212、网络设备221、网络设备222、网络设备223、网络设备224和网络设备225。其中,网络设备224分别与设备211和网络设备221连接,网络设备222分别与网络设备221、网络设备223和网络设备225连接,网络设备223分别与网络设备221和网络设备222连接,网络设备225分别与设备212和网络设备222连接。其 中,网络设备222上与网络设备221连接的网络接口的标识为C1,网络设备222上与网络设备223连接的网络接口的标识为C2,网络设备222上与设备212连接的网络接口的标识为C3。网络设备221和网络设备224属于设备集群4,网络设备222、网络设备223和网络设备225属于设备集群5。
在一些可能的实现中,设备211被视为属于设备集群4,设备212被视为属于设备集群5。
根据前文介绍可知,图2中的网络设备221、网络设备222和网络设备223为集群出口网络设备。因此,本申请实施例提供的发送负载信息的方法和发送报文的方法可以由网络设备221、网络设备222和网络设备223执行。
可选地,在控制面与转发面分离的网络架构中,图1和图2所示应用场景中的网络设备为转发面设备,用于执行本申请实施例提供的发送报文的方法。此外,本申请实施例还提供了一种发送负载消息的方法。在执行该发送负载消息的方法时,控制面设备可以获取转发面设备的流量信息,并根据转发面设备的流量信息确定转发面设备的负载信息,再通过其他控制面设备或转发面设备转发给其他转发面设备。关于这部分内容的介绍可以参见下文,这里不再赘述。
其中,图1和图2中的各个网络设备可以是路由器(router)或交换机(switch)。设备111、设备112、设备113、设备211和设备212可以是终端设备或服务器。在超级计算机网络或HPC集群中,上述设备可以是用于进行数据处理的计算机设备。可以理解的是,虽然图1和图2中仅示出了有限的数个网络设备,实际应用时,每个设备集群可以包括两个或更多的网络设备。设备集群中的网络设备之间可以建立一条或多条连接。这里不再赘述。
在本申请实施例中,跨设备集群之间的链路可以被称为全局连接(global link),一个设备集群内部之间的连接被称为本地连接(local link)。对于从源设备发往目的设备的报文,经过源设备所属的设备集群和目的设备所属的设备集群之间的连接的路径被称为最短路径,通过其他设备集群的网络设备的中转的路径被称为非最短路径。即,在对于上述报文P1,路径“网络设备121→网络设备122”为最短路径,其他路径为非最短路径。
首先以本申请实施例提供的技术方案由第一网络设备执行为例,介绍本申请实施例提供的发送负载信息的方法。参见图3,该图为本申请实施例提供的发送负载信息的方法的一种信令交互图,具体包括以下S301、S302和S303。
S301:第一网络设备获取第一网络设备的流量信息。
在本申请实施例中,第一网络设备属于第一设备集群,且第一网络设备还与其他设备集群中的设备(例如下文所述的第二网络设备)连接。例如,第一网络设备可以是图1所示实施例中的网络设备121、网络设备122、网络设备123和网络设备124中的任意一个,也可以是图2所示实施例中的网络设备221、网络设备222中网络设备223中的任意一个。具体实现时,设备集群中任一与其他设备集群连接的网络设备均可作为第一网络设备执行本申请实施例提供的发送负载信息的方法。如果第一网络设备包括多个网络接口,第一网络设备的流量信息可以包括第一网络设备的多个网络接口的流量信息。
为了选出最适合的传输路径传输报文,网络设备可以获取其他网络设备的负载信息。网络设备的负载信息根据本网络设备的流量信息确定。相应地,为了确定第一网络设备的负载信息,第一网络设备可以先获取自身的流量信息。其中,第一网络设备的流量信息例如可以是第一网络设备在历史时间段内的流量信息,也可以是基于第一网络设备的历史流量信息预测出的、第一网络设备在未来一段事件内的流量信息。基于第一网络设备的流量信息,可以确定第一网络设备的负载情况,以便其他网络设备基于第一网络设备的负载情况判断第一网络设备是否适用于转发报文。
具体实现时,第一网络设备的负载信息可以包括第一网络设备的下行流量信息和/或第一网络设备的上行流量信息。其中,第一网络设备的下行流量信息可以用于计算第一网络设备的第一负载信息,第一网络设备的上行流量信息可以用于计算第一网络设备的第二负载信息。关于第一负载信息和第二负载信息的介绍可以参见下文,这里不再赘述。
第一网络设备的下行流量信息是指第一网络设备向第一设备集群内其他设备发送的流量的信息。在一些可能的实现中,第一网络设备的下行流量信息为第一网络设备在单位时间内向第一设备集群内的设备发送的报文的总字节数。
例如,在图1所示的应用场景中,网络设备122的下行流量信息为网络设备122在单位时间内向网络设备123发送的报文的总字节数。在图2所示的应用场景中,网络设备222的下行流量信息为网络设备222在单位时间内向网络设备223发送的报文的总字节数,与网络设备222在单位时间内向网络设备225发送的报文的总字节数之和。
如果第一网络设备与服务器或计算机等设备直接连接,那么第一网络设备向这些设备发送的流量的信息也可以作为第一网络设备的下行流量信息的一部分。相应地,在这些实现方式中,与第一网络设备连接的设备可以被视为属于第一设备集群。即,在图1所示的应用场景中,网络设备122的下行流量信息还可以包括网络设备122在单位时间内向设备112发送的报文的总字节数。设备112属于设备集群2。
第一网络设备的上行流量信息是指第一网络设备接收的、来自第一设备集群内其他设备的流量的信息。在一些可能的实现中,第一网络设备的上行流量信息为第一网络设备在单位时间内来自第一设备集群内的设备向第一网络设备发送的报文的总字节数。
例如,在图1所示的应用场景中,网络设备122的上行流量信息为网络设备122在单位时间内接收的、由网络设备123向网络设备122发送的报文的总字节数。在图2所示的应用场景中,网络设备222的上行流量信息为网络设备222在单位时间内接收的、由网络设备223向网络设备222发送的报文的字节总数,与网络设备222在单位时间内接收的、由网络设备225向网络设备222发送的报文的字节总数之和。
与第一网络设备的下行流量信息类似,如果第一网络设备与服务器或计算机等设备直接连接,那么这些设备向第一网络设备发送的流量的信息也可以作为第一网络设备的上行流量信息的一部分。相应地,在这些实现方式中,与第一网络设备连接的设备可以被视为属于第一设备集群。即,在图1所示的应用场景中,网络设备122的上行流量信息还可以包括设备112在单位时间内向网络设备122发送的报文的总字节数。设备112属于设备集群2。
S302:第一网络设备根据第一网络设备的流量信息,确定第一网络设备的负载信息。
在获取到本地的流量信息之后,第一网络设备可以根据本地的流量信息,确定第一网络设备的负载信息。其中,第一网络设备的负载信息用于指示第一网络设备接收并转发报文的能力。
根据前文介绍可知,跨设备集群的报文可以通过最短路径传输,也可以通过非最短路径传输。如果报文通过最短路径传输,那么该报文直接从源设备所属的设备集群被发往目的设备所属的设备集群。如果报文的通过非最短路径传输,那么该报文从源设备所述的设备集群被发往中间设备集群,经一个或多个中间网络设备的转发再发往目的设备所属的设备集群。也就是说,第一网络设备既可以作为报文的源设备或目的设备,直接接收/发送跨设备集群的报文。也可以作为非最短路径上的中间网络设备转发报文。即第一网络设备可以在转发报文的过程中承担不同的角色。
相应地,在本申请实施例中,第一网络设备的负载信息可以包括第一负载信息和/或第二负载信息,分别用于计算第一网络设备承担不同角色时路径的负载信息。下面分别进行介绍。
第一负载信息用于计算最短路径的负载信息。即,当第一网络设备为最短路径上的网络设备时,可以将第一负载信息作为第一网络设备的负载信息,计算最短路径的负载信息。例如,在图1所示的应用场景中,如果上述报文P1通过路径“网络设备121→网络设备122”传输,那么网络设备121可以利用网络设备122的第一负载信息,计算路径“网络设备121→网络设备122”的负载。
根据前文介绍,最短路径为从源设备所属的设备集群,直连到目的设备所属的设备集群的路径,其间不经过其他设备集群。如果第一网络设备为最短路径上的网络设备,那么第一网络设备属于源设备所属的设备集群,或者第一网络设备属于目的设备所属的设备集群。如果第一网络设备属于目的设备所属的网络设备集群,第一网络设备用于接收其他设备集群发往第一设备集群的报文,并向第一设备集群内的其他设备转发。
在上述过程中,影响报文传输性能的主要指标为第一网络设备向第一设备集群内其他设备转发报文的能力。也就是说,第一网络设备的第一负载信息用于指示第一网络设备接收并向第一设备集群中的设备转发报文的能力。
可选地,第一网络设备的第一负载信息根据第一网络设备的下行流量信息确定。根据前文介绍可知,第一网络设备的下行流量信息用于指示第一网络设备向第一设备集群内其他设备发送的流量的信息。因此,第一网络设备的下行流量越多,第一网络设备能够提供的、向第一设备集群内其他设备转发流量的能力也就越差。可见,通过第一网络设备的下行流量信息,可以确定是否存在较多报文正在被第一网络设备向第一设备集群内其他设备发送,从而确定第一网络设备能够提供的、向第一设备集群内其他设备发送报文的能力。
作为一种可能的实现,第一网络设备的第一负载信息可以根据网络接口的拥塞程度确定。具体地,第一网络设备可以计算第一网络设备的下行流量与下行带宽的比值,并将该比值作为第一网络设备的第一负载信息。这样,第一负载信息指示第一网络设备的下行带宽中被占用的比例。第一网络设备的下行带宽被占用的越多,第一网络设备向第一设备集 群内的其他设备转发报文的能力也就越差。
例如,对于图1所示的应用场景,网络设备123的第一负载信息可以根据网络接口B3的下行流量信息,以及网络接口B4的下行流量信息确定。具体地,网络设备123的第一负载信息可以等于第一报文量和第一带宽的比值。第一报文量为单位时间内通过网络接口B3发往网络设备123的报文的总字节数,与单位时间内通过网络接口B4发往设备112的报文的总字节数之和。第一带宽为网络接口B3的理论发送带宽与网络接口B4的理论发送带宽之和。
对于图2所示的应用场景,网络设备222的第一负载信息可以根据网络接口C2的下行流量信息和网络接口C3的下行流量信息确定。具体地,网络设备222的第一负载信息可以等于第二报文量和第二带宽的比值。第二报文量为单位时间内通过网络接口C2发往网络设备223的报文的总字节数,与单位时间内通过网络接口C3发往设备212的报文的总字节数之和。第二带宽为网络接口C2的理论发送带宽与网络接口C3的理论发送带宽之和。
可以理解的是,如果第一网络设备属于源设备所属的设备集群,即第一设备集群包括源设备,那么第一网络设备可以用于根据本地的负载信息,和其他网络设备的负载信息确定路径的负载信息,从而选择合适的路径传输报文。对于这种情况,第一网络设备无需向其他网络设备发送负载信息。因此,在上述对于第一负载信息的介绍中,仅考虑第一设备集群为目的设备所属的设备集群的情况。也就是说,如果第一网络设备位于报文传输的最短路径上,且不属于报文的源设备,那么可以根据第一网络设备的第二负载信息确定该非最短路径的负载信息
第二负载信息用于计算非最短路径的负载信息。即,当第一网络设备为非最短路径上的网络设备时,可以将第二负载信息作为第一网络设备的负载信息,计算非最短路径的负载信息。例如,在图1所示的应用场景中,如果上述报文P1通过路径“网络设备121→网络设备124→网络设备122”传输,那么网络设备121可以利用网络设备124的第二负载信息,计算路径“网络设备121→网络设备124→网络设备122”的负载。
根据前文介绍,非最短路径为从源设备所属的设备集群,经过一个或多个中间设备集群的转发,最终到达目的设备所属的设备集群的路径。如果第一网络设备为非最短路径上中间设备集群中的网络设备,那么在转发报文时,第一网络设备先接收其他设备集群中网络设备发送的报文,然后再将接收到的报文转发给另一设备集群中的网络设备。
在上述过程中,影响报文传输性能的主要指标为第一网络设备向其他设备集群中的网络设备转发报文的能力。也就是说,第一网络设备的第二负载信息用于指示第一网络设备接收并向第一设备集群以外其他设备集群中的网络设备转发报文的能力。
可选地,第一网络设备的第二负载信息根据第一网络设备的上行流量信息确定。根据前文介绍可知,第一网络设备的上行流量信息用于指示第一网络设备接收的、来自第一设备集群内其他设备的流量的信息。对于第一网络设备接收的上行流量,需要第一网络设备向其他网络设备转发。因此,第一网络设备的上行流量越大,第一网络设备能够提供的、向其他设备集群转发报文的能力也就越差。可见,通过第一网络设备的上行流量信息,可以确定是否存在较多报文正在被第一网络设备向其他设备发送,从而确定第一网络设备能 够提供的、向其他设备集群内的设备发送报文的能力。
作为一种可能的实现,第一网络设备的第二负载信息可以根据网络接口的拥塞程度确定。具体地,第一网络设备可以计算第一网络设备的上行流量与上行带宽的比值,并将该比值作为第一网络设备的第二负载信息。这样,第二负载信息指示第一网络设备的上行带宽中被占用的比例。第一网络设备的上行带宽被占用的越多,第一网络设备向其他设备集群内的设备转发报文的能力也就越差。
例如,对于图1所示的应用场景,网络设备123的第二负载信息可以根据网络接口B3的上行流量信息,以及网络接口B4的上行流量信息确定。具体地,网络设备123的第二负载信息可以等于第三报文量和第三带宽的比值。第三报文量为网络设备122在单位时间内通过网络接口B3和网络接口B4接收的报文的总字节数。第三带宽为网络接口B3的理论接收带宽与网络接口B4的理论接收带宽之和。
对于图2所示的应用场景,网络设备222的第二负载信息可以根据网络接口C2的上行流量信息和网络接口C3的上行流量信息确定。具体地,网络设备222的第二负载信息可以等于第四报文量和第四带宽的比值。第四报文量为网络设备122在单位时间内通过网络接口C2和网络接口C3接收的报文的总字节数之和。第四带宽为网络接口C2的理论接收带宽与网络接口C3的理论接收带宽之和。
可以理解的是,如果第一网络设备属于源设备所属的设备集群,那么第一网络设备可以用于根据本地的负载信息,和其他网络设备的负载信息确定路径的负载信息,从而选择合适的路径传输报文。对于这种情况,第一网络设备无需向其他网络设备发送负载信息。另外,如果第一网络设备属于目的设备所属的设备集群,无论报文通过最短路径还是非最短路径传输,影响报文传输性能的因素都为第一网络设备向第一设备集群内其他设备发送报文的能力。因此,在上述对于第二负载信息的介绍中,仅考虑第一网络设备为报文的中间转发设备的情况。也就是说,如果第一网络设备位于报文传输的非最短路径上,可以根据第一网络设备的第二负载信息确定该非最短路径的负载信息。
在本申请实施例中,第一负载信息又可以称为最短负载(min_load)信息。第二负载信息又可以被称为非最短负载(NM_load)信息。
S303:第一网络设备向第二网络设备发送第一网络设备的负载信息。
在确定了本地的负载信息之后,第一网络设备可以向第二网络设备发送第一网络设备的负载信息。其中,第二网络设备所属的设备集群与第一网络设备所属的设备集群不同。在本申请实施例中,将第二网络设备所属的设备集群称为第二设备集群。这样,第二网络设备在接收到报文之后,可以根据第一网络设备的负载信息确定传输报文的路径。
具体地,第一网络设备的负载信息可以用于第二网络设备确定包括第一子路径的路径的负载。第一子路径为从第二网络设备到第一网络设备的链路。即,第一网络设备的负载信息可以用于确定从第二网络设备到第一网络设备的路径的负载信息,也可以用于确定从第二网络设备经第一网络设备到第三网络设备的路径的负载信息。第三网络设备不属于第一设备集群。
通过执行图2所示实施例提供的负载信息的方法,第一网络设备可以根据自身转发流 量的情况确定自身的负载信息,并将第一网络设备的负载信息通告给另一设备集群中的第二网络设备。第二网络设备可以根据通告的负载信息确定报文的传输路径的负载信息,从而在转发报文时进行选路。这样,网络设备根据其他网络设备的负载信息进行选路,而非仅根据本地的网络接口的拥塞情况进行选路。如此,考虑到了路径上的网络设备的拥塞情况,使得网络设备选路时参考的信息能够更加全面地体现出整条传输路径的拥塞情况,从而找到最合适的传输路径传输报文,以提高报文的传输性能。另外,在本申请实施例中,每个与其他设备集群中网络设备连接的网络设备都可以计算自身的负载信息。如此,细化了网络设备的负载信息的粒度,提高了选择路径的准确性。
根据前文介绍可知,第一网络设备的负载信息可以包括第一负载信息和第二负载信息。相应地,如果第二网络设备接收到的、待发送的报文为从第二设备集群发往第一设备集群的报文,那么第二网络设备可以根据第一网络设备的第一负载信息确定该报文的最短路径的负载信息。如果第二网络设备接收到的、待发送的报文为从第二设备集群发往第三设备集群的报文,那么第二网络设备可以根据第一网络设备的第二负载信息确定该报文的非最短路径的负载信息,该非最短路径途径第一网络设备。
也就是说,对于经过相同的网络设备的最短路径和非最短路径,可以通过不同的负载信息计算最短路径的负载信息和非最短路径的负载信息。这样,通过不同类型的负载信息对不同类型的路径进行评估,提高了路径的负载信息计算的准确程度,从而提高了选择路径的准确性。
上面介绍了第一网络设备的负载信息,下面介绍第一网络设备向第二网络设备通告第一网络设备的负载信息的方法。
在一些可能的实现方式中,第一网络设备的负载信息可以被携带在第一网络设备发往第二网络设备的报文头中。例如,在互联网协议第6版(Internet Protocol Version 6,IPv6)网络中,第一网络设备的负载信息可以被携带在第一网络设备发往第二网络设备的报文的报文头中。
在一些其他可能的实现方式中,第一网络设备的负载信息可以被携带在第一网络设备发往第二网络设备的payload部分中。例如,第一网络设备可以生成用于传输自身负载信息的报文并向第二网络设备发送。相应地,该报文的payload部分中包括第一网络设备的负载信息(例如上述第一负载信息和/或第二负载信息)。
可选地,如果第一网络设备的负载信息包括第一负载信息和第二负载信息。那么第一负载信息和第二负载信息可以被携带在相同的报文中。例如,第一负载信息和第二负载信息被携带在第一报文的payload部分。或者,第一负载信息和第二负载信息也可以被携带在不同的报文中。例如,第一负载信息可以被携带在第一报文的payload部分,第二负载信息被携带在第二报文的payload部分。与第一报文类似,第二报文也为第一网络设备向第二设备发送的另一报文。
第二网络设备接收到第一报文之后,可以对第一报文进行解析,从而确定第一网络设备的负载信息。可选地,为了便于第二网络设备解析第一报文,第一报文的报文头中可以包括第一指示信息,以指示第一报文的payload部分中包括第一网络设备的负载信息。这样, 第二网络设备可以根据第一报文的报文头中指示信息的指示,从第一报文的payload部分中获取第一网络设备的负载信息。
在一些可能的实现方式中,所述第一指示信息被携带在所述第一报文的控制协议报文头中。例如,第一指示信息可以被携带在的NNP报文头。具体地,第一报文的控制协议报文头中可以包括NNP报文头,且NNP报文头包括subtype字段。该subtype用于携带第一指示信息。
在实际的应用场景中,可能并非每个报文均包括控制协议报文头。相应地,第一报文中还可以包括第二指示信息,以指示第一报文包括控制协议报文头。这样,第二网络设备可以根据第一报文中的第二指示信息,解析第一报文的控制协议报文头,进而从第一报文的控制协议报文头中获取第一指示信息,再根据第一指示信息的指示获取第一网络设备的负载信息。
具体地,第二指示信息可以被携带在第一报文的Link-Layer报文头中。例如,在一些可能的实现方式中,所述第二指示信息被携带在第一报文的Link-Layer报文头的Protocol字段中。
除此以外,本申请实施例还提供了一种应用于控制面设备与转发面设备相互分离的网络架构中的获取负载信息的方法,该方法可以应用于第一控制面设备,第一控制面设备用于管理第一转发面设备集群中的第一转发面设备。
具体地,第一控制面设备可以获取第一转发面设备的流量信息,第一转发面设备属于第一转发面设备集群。接着,第一控制面设备可以根据第一转发面设备的流量信息,确定第一转发面设备的负载信息,并向第二转发面设备集群中的第二转发面设备发送第一转发面设备的负载信息。可选地,第一控制面设备可以向第二转发面设备集群对应的控制面设备发送第一转发面设备的负载信息,以便该控制面设备向第二转发面设备集群中的转发面设备发送第一转发面设备的负载信息。或者,第一控制面设备也可以向第一转发面设备发送第一转发面设备的负载信息,并由第一转发面设备向第二转发面设备集群中的转发面设备发送第一转发面设备的负载信息。本申请实施例对第一控制面设备发送第一转发面设备的负载信息的方法不做限定。
与图3所示实施例类似,第一转发面设备的流量信息可以包括上行流量信息和下行流量信息,第一转发面设备的负载信息包括第一负载信息和第二负载信息。实际应用时,对于控制面设备与转发面设备分离的情况,控制面设备执行的动作与图3所示实施例类似,流量信息和负载信息对应的设备存在区别。
上面介绍了第一网络设备向第二网络设备发送第一网络设备的负载信息的方法。下面介绍第一网络设备根据第二网络设备的负载信息确定转发报文的传输路径的方法。参见图4,该图为本申请实施例提供的发送报文的方法的一种信令交互图,具体包括以下S401、S402和S403。
可以理解的是,图4所示实施例中的“第一网络设备”和图3所示实施例中的“第一网络设备”可以是相同的网络设备,也可以是不同的网络设备。
S401:第一网络设备获取发往目的设备的目标报文。
在本实施例中,第一网络设备属于第一设备集群,目的设备属于第二设备集群。例如,目的设备可以是第二设备集群中的服务器,或者,与目的设备直连的网络设备属于第二设备集群。
第一网络设备在获取到目的报文之后,确定目的报文为需要发往第二设备集群的报文,并据此继续执行后续步骤。
S402:第一网络设备根据第二网络设备的负载信息和第三网络设备的负载信息,从第一路径和第二路径中确定目标路径。
由于目的报文为从第一设备集群发往第二设备集群的报文,第一网络设备可以根据网络系统的拓扑结构,确定多条从第一网络设备到目的设备的传输路径,并从这些路径中选择一条路径作为传输目标报文的目标路径。
在本实施例中,从第一网络设备到目的设备之间存在第一路径和第二路径。其中,第一路径为从第一网络设备到目的设备的最短路径。在第二设备集群中与第一网络设备直接连接的设备被称为第二网络设备,第一路径途径第二网络设备。第二路径为从第一网络设备到目的设备的非最短路径。第二路径途径第三设备集群中的第三网络设备。即,第二路径为从第一网络设备到第三网络设备,再从第三网络设备到第二网络设备的路径。
为了从第一路径和第二路径中选择性能更优的路径来传输目标报文,第一网络设备可以分别确定第一路径的负载信息和第二路径的负载信息。其中,第一路径的负载信息根据第二网络设备的负载信息确定,第二路径的负载信息根据第三网络设备的负载信息确定。这样,根据路径上网络设备的负载信息确定的路径的负载信息,可以体现除了第一网络设备以外其他网络设备的负载情况,更加全面地衡量路径整体的负载情况。如此,提高了路径的负载信息计算的准确程度,从而提高了选择路径的准确性。
可以理解的是,在确定第一路径的负载信息之前,第一网络设备先获取第二网络设备的负载信息。在确定第二路径的负载信息之前,第一网络设备先获取第三网络设备的负载信息。具体地,第二网络设备可以通过图3所示的实现方式,向第一网络设备发送第二网络设备的负载信息;第三网络设备也可以通过图3所示的实现方式,向第一网络设备发送第三网络设备的负载信息。关于确定负载信息的方法可以参见图3所示实施例的介绍,这里不再赘述。
根据前文介绍可知,第一网络设备的负载信息可以包括第一负载信息和第二负载信息。相似地,在本实施例中,第二网络设备的负载信息也可以包括第一负载信息和第二负载信息,第三网络设备的负载信息也可以包括第一负载信息和第二负载信息。其中,第二网络设备的第一负载信息用于指示第二网络设备向第二设备集群中其他设备转发报文的能力,第二网络设备的第二负载信息用于指示第二网络设备向除第二设备集群以外其他设备集群中的网络设备转发报文的能力,第三网络设备的第一负载信息用于指示第三网络设备向第三设备集群中其他设备转发报文的能力,第三网络设备的第二负载信息用于指示第三网络设备向除第三设备集群以外其他设备集群中的网络设备转发报文的能力。
由于第一路径为第一网络设备到目的设备之间的最短路径,且目的设备与第二网络设 备均属于第二设备集群,那么第一网络设备可以根据第二网络设备的第一负载信息计算第一路径的负载信息。由于第二路径为第一网络设备到目的设备之间的非最短路径,且目的设备与第三网络设备属于不同的设备集群,那么第一网络设备可以根据第三网络设备的第二负载信息计算第二路径的负载信息。
可见,对于传输目标报文的最短路径和非最短路径,通过不同类型的负载信息计算路径整体的负载信息,使得计算得到的路径的负载信息可以更加准确地体现出这条路径的网络性能,以便于后续选择目标路径。
实际应用时,考虑到最短路径的跳数小于非最短路径的跳数,而路径的跳数又会对路径的整体时延产生影响。为此,第一网络设备可以结合第一路径的跳数和第二路径的跳数,分别确定第一路径的负载信息和第二路径的负载信息。具体地,第一网络设备可以将第一路径的跳数与第二网络设备的第一负载信息相乘,将第二路径的跳数与第三网络设备的第二负载信息相乘。接着,第一网络设备比较两次相乘得到的结果。
如果第一路径的跳数与第二网络设备的第一负载信息的乘积不大于第二路径的跳数与第三网络设备的第二负载信息的乘积,第一网络设备可以将第一路径确定为目标路径,从而利用第一路径传输目标报文。如果第一路径的跳数与第二网络设备的第一负载信息的乘积大于第二路径的跳数与第三本网络设备的第二负载信息的乘积,第一网络设备可以将第二路径确定为目标路径,从而利用第二路径传输目标报文。
根据前文介绍可知,第一网络设备还可以利用网络端口的拥塞情况进行路径选择。在本实施例中,第一网络设备可以利用网络端口的拥塞情况,结合第二网络设备的负载信息和第三网络设备的负载信息,确定第一路径的负载信息和第二路径的负载信息。
例如,在一些可能的实现方式中,第一网络设备可以将第二网络设备对应的网络端口的拥塞情况归一化。接着,第一网络设备可以比较归一化后第二网络设备的第一负载信息,与归一化后网络端口的拥塞情况的大小,然后利用其中较大者计算第一路径的负载信息。相似地,第一网络设备还可以将第三网络设备对应的网络端口的拥塞情况归一化。接着,第一网络设备可以比较归一化后第三网络设备的第二负载信息,与归一化后网络端口的拥塞情况的大小,然后利用其中较大者计算第二路径的负载信息。
例如,以图1所示的应用场景为例进行说明。假设网络设备121为第一网络设备,网络设备122为第二网络设备,网络设备124为第三网络设备,设备112为目标报文的目的设备。
为了从路径“网络设备121→网络设备122”和路径“网络设备121→网络设备124→网络设备122”中选择目标路径以传输目标报文,网络设备121可以获取网络设备122的第一负载信息,以及网络设备124的第二负载信息。另外,网络设备121还可以获取网络接口A1的拥塞情况,以及网络接口A3的拥塞情况。
接着,网络设备121可以比较归一化后网络设备122的第一负载信息,以及归一化后网络接口A1的拥塞情况之间的大小,并将二者中较大的与路径“网络设备121→网络设备122”的跳数相乘,得到路径“网络设备121→网络设备122”的负载信息。网络设备121可以比较归一化后网络设备124的第二负载信息,以及归一化后网络接口A3的拥塞情况 之间的大小,并将二者中较大的与路径“网络设备121→网络设备124→网络设备122”的跳数相乘,得到路径“网络设备121→网络设备124→网络设备122”的负载信息。
然后,网络设备121可以比较路径“网络设备121→网络设备122”的负载信息和路径“网络设备121→网络设备124→网络设备122”的负载信息,并将其中负载信息较小的路径确定为目标路径。如果路径“网络设备121→网络设备122”的负载信息与路径“网络设备121→网络设备124→网络设备122”的负载信息相等,网络设备121可以将路径“网络设备121→网络设备122”确定为目标路径。
可以理解的是,如果第一网络设备到目的设备之间存在多条非最短路径,第一网络设备可以通过上述确定第二路径的负载信息的方法确定每条非最短路径的负载信息,从而根据第一路径的负载信息、第二路径的负载信息以及多条非最短路径的负载信息确定目标路径。如此,即使存在较多可选的路径,通过确定每个路径的负载信息并基于负载信息进行路径选择,可以找到网络性能最优的传输路径。
S403:第一网络设备根据目标路径传输目标报文。
在确定了目标路径之后,第一网络设备可以根据目标路径传输目标报文。这样,由于传输报文的目标路径是第一网络设备根据多条路径的负载信息从多条路径中选出的,而路径的负载信息是根据路径上网络设备的负载信息计算的。这样,基于网络设备粒度级别的负载信息计算出的路径的负载信息,可以更加准确地体现出现路径的网络性能的优劣,从而找到最优的路径传输目标报文,保障目标报文的传输性能。
参见图5,本申请实施例还提供了一种发送负载信息的装置500,该发送负载信息的装置500可以实现图3所示实施例中第一网络设备的功能。该发送负载信息的装置500包括收发单元510和处理单元520。其中,收发单元510,用于实现图3所示实施例中收发数据的功能;处理单元520,用于实现图3所示实施例中数据处理的功能。
具体的,所述收发单元510,用于获取发往目的设备的目标报文,所述目的设备属于第二设备集群。
所述处理模块520,用于根据第二网络设备的负载信息和第三网络设备的负载信息,从第一路径和第二路径中确定目标路径,所述第一路径为从所述第一网络设备经所述第二网络设备到所述目的设备的路径,所述第二路径为从所述第一网络设备经所述第三设备到所述目的设备的路径,所述第二网络设备的负载信息根据所述第二网络设备的流量信息确定,所述第三网络设备的负载信息根据所述第三网络设备的流量信息确定,所述第一网络设备属于第一设备集群,所述第二网络设备属于所述第二设备集群,所述第三网络设备属于第三网络设备集群。
所述收发单元510,还用于通过所述目标路径向所述目的设备发送所述目标报文。
具体执行过程请参考上述图3所示实施例中相应步骤的详细描述,这里不再一一赘述。
参见图6,本申请实施例还提供了一种发送报文的装置600,该发送报文的装置600可以实现图4所示实施例中第一网络设备的功能。该发送报文的装置600包括收发单元610和处理单元620。其中,收发单元610,用于实现图4所示实施例中收发信息的功能;处理 单元620,用于实现图4所示实施例中数据处理的功能。
具体的,所述收发单元610,用于获取发往目的设备的目标报文,所述目的设备属于第二设备集群。
所述收发模块620,用于根据第二网络设备的负载信息和第三网络设备的负载信息,从第一路径和第二路径中确定目标路径,所述第一路径为从所述第一网络设备经所述第二网络设备到所述目的设备的路径,所述第二路径为从所述第一网络设备经所述第三设备到所述目的设备的路径,所述第二网络设备的负载信息根据所述第二网络设备的流量信息确定,所述第三网络设备的负载信息根据所述第三网络设备的流量信息确定,所述第一网络设备属于第一设备集群,所述第二网络设备属于所述第二设备集群,所述第三网络设备属于第三网络设备集群。
所述收发单元610,还用于通过所述目标路径向所述目的设备发送所述目标报文
具体执行过程请参考上述图4所示实施例中相应步骤的详细描述,这里不再一一赘述。
需要说明的是,本申请实施例中对模块(单元)划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。本申请实施例中的各功能模块可以集成在一个模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。例如,上述实施例中,收发模块和处理模块可以是同一个模块,也不同的模块。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块形式实现。
图7是本申请实施例提供的一种设备700的结构示意图。上文中的发送负载消息的装置500和发送报文装置600可以通过图7所示的设备来实现。参见图7,该设备700包括至少一个处理器701,通信总线702以及至少一个网络接口704,可选地,该设备700还可以包括存储器703。
具体地,在图5中所描述的各单元模块为通过软件实现的情况下,执行相应动作所需的软件或程序代码存储在存储器703中。所述处理器701用于执行存储器703中的程序或指令,以实现图3所示实施例中S301、S303和S303的处理步骤,或实现图4所示实施例中S401、S402和S403的处理步骤。网络接口703用于实现该装置与其他设备之间的通信。
或者,在图7中所描述的各单元模块为通过软件实现的情况下,执行相应动作所需的软件或程序代码存储在存储器703中。所述处理器701用于执行存储器703中的程序或指令,以实现上述实施例中的处理步骤。网络接口703用于实现该装置与其他设备之间的通信。
处理器701可以是一个通用中央处理器(Central Processing Unit,CPU)、特定应用集成电路(Application-specific Integrated Circuit,ASIC)或一个或多个用于控制本申请方案程序执行的集成电路(Integrated Circuit,IC)。处理器可以用于对报文或数据进行处理,以实现本申请实施例中提供的方法。
比如,当图3中的第一网络设备通过图7所示的设备来实现时,该处理器可以用于,获取所述第一网络设备的流量信息;根据所述第一网络设备的流量信息,确定所述第一网络设备的负载信息;向第二网络设备发送所述第一网络设备的负载信息。
当图6中的第一网络设备通过图7所示的设备来实现时,该处理器可以用于,获取发 往目的设备的目标报文,所述目的设备属于第二设备集群;根据第二网络设备的负载信息和第三网络设备的负载信息,从第一路径和第二路径中确定目标路径;通过所述目标路径向所述目的设备发送所述目标报文。
通信总线702用于在处理器701、网络接口704和存储器703之间传送信息。
存储器703可以是只读存储器(Read-only Memory,ROM)或可存储静态信息和指令的其它类型的静态存储设备,存储器703还可以是随机存取存储器(Random Access Memory,RAM)或者可存储信息和指令的其它类型的动态存储设备,也可以是只读光盘(Compact Disc Read-only Memory,CD-ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。存储器703可以是独立存在,通过通信总线702与处理器701相连接。存储器703也可以和处理器701集成在一起。
可选地,存储器703用于存储执行本申请实施例提供的技术方案的程序代码或指令,并由处理器701来控制执行。处理器701用于执行存储器703中存储的程序代码或指令。程序代码中可以包括一个或多个软件模块。可选地,处理器701也可以存储执行本申请实施例提供的技术方案的程序代码或指令,在这种情况下处理器701不需要到存储器703中读取程序代码或指令。
网络接口704可以为收发器一类的装置,用于与其它设备或通信网络通信,通信网络可以为以太网、无线接入网(RAN)或无线局域网(Wireless Local Area Networks,WLAN)等。在本申请实施例中,网络接口704可以用于接收分段路由网络中的其他节点发送的报文,也可以向分段路由网络中的其他节点发送报文。网络接口804可以为以太接口(Ethernet)接口、快速以太(Fast Ethernet,FE)接口或千兆以太(Gigabit Ethernet,GE)接口等。
在具体实现中,作为一种实施例,设备700可以包括多个处理器,例如图7中所示的处理器701和处理器705。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
图8是本申请实施例提供的一种设备800的结构示意图。图3和图4中的第一网络设备可以通过图8所示的设备来实现。参见图8所示的设备结构示意图,设备800包括主控板和一个或多个接口板。主控板与接口板通信连接。主控板也称为主处理单元(Main Processing Unit,MPU)或路由处理卡(Route Processor Card),主控板包括CPU和存储器,主控板负责对设备800中各个组件的控制和管理,包括路由计算、设备管理和维护功能。接口板也称为线处理单元(Line Processing Unit,LPU)或线卡(Line Card),用于接收和发送报文。在一些实施例中,主控板与接口板之间或接口板与接口板之间通过总线通信。在一些实施例中,接口板之间通过交换网板通信,在这种情况下设备800也包括交换网板,交换网板与主控板、接口板通信连接,交换网板用于转发接口板之间的数据,交换网板也可以称为交换网板单元(Switch Fabric Unit,SFU)。接口板包括CPU、存储器、转发引擎 和接口卡(Interface Card,IC),其中接口卡可以包括一个或多个网络接口。网络接口可以为Ethernet接口、FE接口或GE接口等。CPU与存储器、转发引擎和接口卡分别通信连接。存储器用于存储转发表。转发引擎用于基于存储器中保存的转发表转发接收到的报文,如果接收到的报文的目的地址为设备800的IP地址,则将该报文发送给主控板或接口板的CPU进行处理;如果接收到的报文的目的地址不是设备800的IP地址,则根据该目的地查转发表,如果从转发表中查找到该目的地址对应的下一跳和出接口,将该报文转发到该目的地址对应的出接口。转发引擎可以是网络处理器(Network Processor,NP)。接口卡也称为子卡,可安装在接口板上,负责将光电信号转换为数据帧,并对数据帧进行合法性检查后转发给转发引擎处理或接口板CPU。在一些实施例中,CPU也可执行转发引擎的功能,比如基于通用CPU实现软转发,从而接口板中不需要转发引擎。在一些实施例中,转发引擎可以通过ASIC或现场可编程门阵列(Field Programmable Gate Array,FPGA)实现。在一些实施例中,存储转发表的存储器也可以集成到转发引擎中,作为转发引擎的一部分。
本申请实施例还提供一种芯片系统,包括:处理器,所述处理器与存储器耦合,所述存储器用于存储程序或指令,当所述程序或指令被所述处理器执行时,使得该芯片系统实现上述图3所示实施例中第一网络设备执行的发送负载信息的方法,或使得该芯片系统实现上述图4所示实施例中第一网络设备执行的发送报文的方法。
可选地,该芯片系统中的处理器可以为一个或多个。该处理器可以通过硬件实现也可以通过软件实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软件实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现。
可选地,该芯片系统中的存储器也可以为一个或多个。该存储器可以与处理器集成在一起,也可以和处理器分离设置,本申请并不限定。示例性的,存储器可以是非瞬时性处理器,例如只读存储器ROM,其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请对存储器的类型,以及存储器与处理器的设置方式不作具体限定。
示例性的,该芯片系统可以是FPGA,可以是ASIC,还可以是系统芯片(System on Chip,SoC),还可以是CPU,还可以是NP,还可以是数字信号处理电路(Digital Signal Processor,DSP),还可以是微控制器(Micro Controller Unit,MCU),还可以是可编程控制器(Programmable Logic Device,PLD)或其他集成芯片。
应理解,上述方法实施例中的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
本申请实施例还提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行以上方法实施例提供的、由转发面设备执行的信息接收方法,或执行以上方法实施例提供的、由第一网络设备执行的发送负载信息的方法,或执行以上方法实施例提供的、由第一网络设备执行的发送报文方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行以上方法实施例提供的、由第一网络设备执行的发送负载信息的方法,或执行以上方法实施例提供的、由第一网络设备执行的发送报文方法。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑模块划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要获取其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各模块单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件模块单元的形式实现。
所述集成的单元如果以软件模块单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (51)

  1. 一种发送负载信息的方法,其特征在于,所述方法应用于第一设备集群中的第一网络设备,所述方法包括:
    第一网络设备获取所述第一网络设备的流量信息;
    所述第一网络设备根据所述第一网络设备的流量信息,确定所述第一网络设备的负载信息;
    所述第一网络设备向第二网络设备发送所述第一网络设备的负载信息,所述第二网络设备属于第二网络设备集群,所述第一网络设备的负载信息用于确定包括第一子路径的路径的负载信息,所述第一子路径为从所述第二网络设备到所述第一网络设备的路径。
  2. 根据权利要求1所述的方法,其特征在于,所述第一网络设备的负载信息包括第一负载信息和/或第二负载信息;
    所述第一负载信息用于确定第一路径的负载信息,所述第一路径为从所述第二网络设备到所述第一网络设备的最短路径,所述第一负载信息用于指示所述第一网络设备接收并向所述第一报文集群中的设备转发报文的能力;所述第二负载信息用于确定第二路径的负载信息,所述第二路径为从所述第二网络设备经所述第一网络设备到第三网络设备的路径,所述第二负载信息用于指示所述第一网络设备接收并向第三设备集群中的网络设备转发报文的能力,所述第三网络设备属于所述第三设备集群。
  3. 根据权利要求2所述的方法,其特征在于,所述第一网络设备的流量信息包括所述第一网络设备的下行流量信息;
    所述第一网络设备根据所述第一网络设备的流量信息,确定所述第一网络设备的负载信息包括:
    所述第一网络设备根据所述第一网络设备的下行流量信息确定所述第一负载信息。
  4. 根据权利要求2所述的方法,其特征在于,所述第一网络设备的流量信息包括所述第一设备的上行流量信息;
    所述第一网络设备根据所述第一网络设备的流量信息,确定所述第一网络设备的负载信息包括:
    所述第一网络设备根据所述第一网络设备的上行流量信息确定所述第二负载信息。
  5. 根据权利要求2-4任一项所述的方法,其特征在于,所述第一网络设备向第二网络设备发送所述第一网络设备的负载信息包括:
    所述第一网络设备向所述第二网络设备发送第一报文,所述第一网络设备的负载信息被携带在所述第一报文的负载payload部分中。
  6. 根据权利要求5所述的方法,其特征在于,所述第一报文还包括第一指示信息,所述第一指示信息用于指示所述第一报文的payload部分包括所述第一网络设备的负载信息。
  7. 根据权利要求6所述的方法,其特征在于,所述第一指示信息被携带在所述第一报文的控制协议报文头中。
  8. 根据权利要求7所述的方法,其特征在于,所述控制协议报文头包括邻居通告协议NNP报文头,所述第一指示信息被携带在所述NNP报文头的子类型subtype字段中。
  9. 根据权利要求7或8所述的方法,其特征在于,所述第一报文还包括链路层Link-Layer报文头,所述Link-Layer报文头包括第二指示信息,所述第二指示信息用于指示所述第一报文包括所述控制协议报文头。
  10. 根据权利要求9所述的方法,其特征在于,所述第二指示信息被携带在所述Link-Layer报文头的协议Protocol字段中。
  11. 根据权利要求1-10任一项所述的方法,其特征在于,所述方法还包括:
    所述第一网络设备接收第四网络设备发送的第三负载信息,所述第三负载信息根据所述第四网络设备的流量信息确定,所述第四网络设备属于第四设备集群。
  12. 一种发送报文的方法,其特征在于,所述方法应用于第一设备集群中的第一网络设备,所述方法包括:
    所述第一网络设备获取发往目的设备的目标报文,所述目的设备属于第二设备集群;
    所述第一网络设备根据第二网络设备的负载信息和第三网络设备的负载信息,从第一路径和第二路径中确定目标路径,所述第一路径为从所述第一网络设备经所述第二网络设备到所述目的设备的路径,所述第二路径为从所述第一网络设备经所述第三设备到所述目的设备的路径,所述第二网络设备的负载信息根据所述第二网络设备的流量信息确定,所述第三网络设备的负载信息根据所述第三网络设备的流量信息确定,所述第二网络设备属于所述第二设备集群,所述第三网络设备属于第三网络设备集群;
    所述第一网络设备通过所述目标路径向所述目的设备发送所述目标报文。
  13. 根据权利要求12所述的方法,其特征在于,所述第一路径为从所述第一网络设备到所述目的设备的最短路径,所述方法还包括:
    所述第一网络设备获取所述第二网络设备的第一负载信息,所述第二网络设备的第一负载信息用于指示所述第二网络设备接收并向所述第二设备集群中的设备转发报文的能力;
    所述第一网络设备根据所述第二网络设备的第一负载信息确定所述第一路径的负载信息。
  14. 根据权利要求13所述的方法,其特征在于,所述第二网络设备的第一负载信息根据所述第二网络设备的下行流量信息确定。
  15. 根据权利要求13或14所述的方法,其特征在于,所述第一网络设备获取所述第二网络设备的第一负载信息包括:
    所述第一网络设备接收所述第二网络设备发送的第一报文,所述第一负载信息被携带在所述第一报文的负载payload部分中。
  16. 根据权利要求15所述的方法,其特征在于,所述第一报文还包括第一指示信息,所述第一指示信息用于指示所述第一报文的payload部分包括所述第一负载信息。
  17. 根据权利要求16所述的方法,其特征在于,所述第一指示信息被携带在所述第一报文的控制协议报文头中。
  18. 根据权利要求17所述的方法,其特征在于,所述控制协议报文头包括邻居通告协议NNP报文头,所述第一指示信息被携带在所述NNP报文头的子类型subtype字段中。
  19. 根据权利要求17或18所述的方法,其特征在于,所述第一报文还包括链路层 Link-Layer报文头,所述Link-Layer报文头包括第二指示信息,所述第二指示信息用于指示所述第一报文包括所述控制协议报文头。
  20. 根据权利要求19所述的方法,其特征在于,所述第二指示信息被携带在所述Link-Layer报文头的协议Protocol字段中。
  21. 根据权利要求12-20任一项所述的方法,其特征在于,所述方法还包括:
    所述第一网络设备获取所述第三网络设备的第二负载信息,所述第三网络设备的第二负载信息用于指示所述第三网络设备接收并向所述第三设备集群以外的设备转发报文的能力;
    所述第一网络设备根据所述第三网络设备的第二负载信息确定所述第二路径的负载信息。
  22. 根据权利要求21所述的方法,其特征在于,所述第三网络设备的第二负载信息根据所述第三网络设备的上行流量信息确定。
  23. 根据权利要求12-22任一项所述的方法,其特征在于,所述第一网络设备通过第一端口与所述第二网络设备连接,所述第一网络设备通过第二端口与所述第三网络设备连接;
    所述第一网络设备根据所述第二网络设备的负载信息和第三网络设备的负载信息,从第一路径和第二路径中确定目标路径包括:
    所述第一网络设备根据所述第一端口的负载信息、所述第一路径的跳数和所述第二网络设备的负载信息确定所述第一路径的负载信息;
    所述第一网络设备根据所述第二端口的负载信息、所述第二路径的跳数和所述第三网络设备的负载信息确定所述第二路径的负载信息;
    所述第一网络设备根据所述第一路径的负载信息和所述第二路径的负载信息,从所述第一路径和所述第二路径中选择目标路径。
  24. 一种发送负载信息的方法,其特征在于,所述方法应用于第一控制面设备,所述方法包括:
    第一控制面设备获取第一转发面设备的流量信息,所述第一转发面设备属于第一转发面设备集群;
    所述第一控制面设备根据所述第一转发面设备的流量信息,确定所述第一转发面设备的负载信息;
    所述第一控制面设备向第二转发面设备发送所述第一转发面设备的负载信息,所述第二转发面设备属于第二转发面设备集群,所述第一转发面设备的负载信息用于所述第二转发面设备确定第一路径的负载信息,所述第一路径包括所述第二转发面设备和所述第一转发面设备。
  25. 一种发送负载信息的装置,其特征在于,所述装置应用于第一设备集群中的第一网络设备,所述装置包括:
    收发单元,用于获取所述第一网络设备的流量信息;
    处理单元,用于根据所述第一网络设备的流量信息,确定所述第一网络设备的负载信息;
    发送单元,用于向第二网络设备发送所述第一网络设备的负载信息,所述第二网络设备属于第二网络设备集群,所述第一网络设备的负载信息用于确定包括第一子路径的路径的负载信息,所述第一子路径为从所述第二网络设备到所述第一网络设备的路径。
  26. 根据权利要求25所述的装置,其特征在于,所述第一网络设备的负载信息包括第一负载信息和/或第二负载信息;所述第一负载信息用于确定第一路径的负载信息,所述第一路径为从所述第二网络设备到所述第一网络设备的最短路径,所述第一负载信息用于指示所述第一网络设备接收并向所述第一报文集群中的设备转发报文的能力;所述第二负载信息用于确定第二路径的负载信息,所述第二路径为从所述第二网络设备经所述第一网络设备到第三网络设备的路径,所述第二负载信息用于指示所述第一网络设备接收并向第三设备集群中的网络设备转发报文的能力,所述第三网络设备属于所述第三设备集群。
  27. 根据权利要求26所述的装置,其特征在于,所述第一网络设备的流量信息包括所述第一网络设备的下行流量信息;
    所述处理单元,用于根据所述第一网络设备的下行流量信息确定所述第一负载信息。
  28. 根据权利要求26所述的装置,其特征在于,所述第一网络设备的流量信息包括所述第一设备的上行流量信息;
    所述处理单元,用于根据所述第一网络设备的上行流量信息确定所述第二负载信息。
  29. 根据权利要求25-28任一项所述的装置,其特征在于,
    所述发送单元,具体用于所述第一网络设备向所述第二网络设备发送第一报文,所述第一网络设备的负载信息被携带在所述第一报文的负载payload部分中。
  30. 根据权利要求29所述的装置,其特征在于,所述第一报文还包括第一指示信息,所述第一指示信息用于指示所述第一报文的payload部分包括所述第一网络设备的负载信息。
  31. 根据权利要求30所述的装置,其特征在于,所述第一指示信息被携带在所述第一报文的控制协议报文头中。
  32. 根据权利要求31所述的装置,其特征在于,所述控制协议报文头包括邻居通告协议NNP报文头,所述第一指示信息被携带在所述NNP报文头的子类型subtype字段中。
  33. 根据权利要求31或32所述的装置,其特征在于,所述第一报文还包括链路层Link-Layer报文头,所述Link-Layer报文头包括第二指示信息,所述第二指示信息用于指示所述第一报文包括所述控制协议报文头。
  34. 根据权利要求33所述的装置,其特征在于,所述第二指示信息被携带在所述Link-Layer报文头的协议Protocol字段中。
  35. 根据权利要求25-34任一项所述的装置,其特征在于,
    所述收发单元,还用于接收第四网络设备发送的第三负载信息,所述第三负载信息根据所述第四网络设备的流量信息确定,所述第四网络设备属于第四设备集群。
  36. 一种发送报文的装置,其特征在于,所述装置应用于第一设备集群中的第一网络设备,所述装置包括:
    收发单元,用于获取发往目的设备的目标报文,所述目的设备属于第二设备集群;
    处理单元,用于根据第二网络设备的负载信息和第三网络设备的负载信息,从第一路径和第二路径中确定目标路径,所述第一路径为从所述第一网络设备经所述第二网络设备到所述目的设备的路径,所述第二路径为从所述第一网络设备经所述第三设备到所述目的设备的路径,所述第二网络设备的负载信息根据所述第二网络设备的流量信息确定,所述第三网络设备的负载信息根据所述第三网络设备的流量信息确定,所述第一网络设备属于第一设备集群,所述第二网络设备属于所述第二设备集群,所述第三网络设备属于第三网络设备集群;
    所述收发单元,还用于通过所述目标路径向所述目的设备发送所述目标报文。
  37. 根据权利要求36所述的装置,其特征在于,所述第一路径为从所述第一网络设备到所述目的设备的最短路径;
    所述收发单元,还用于获取所述第二网络设备的第一负载信息,所述第二网络设备的第一负载信息用于指示所述第二网络设备接收并向所述第二设备集群中的设备转发报文的能力;
    所述处理单元,具体用于根据所述第二网络设备的第一负载信息确定所述第一路径的负载信息。
  38. 根据权利要求37所述的装置,其特征在于,所述第二网络设备的第一负载信息根据所述第二网络设备的下行流量信息确定。
  39. 根据权利要求37或38所述的装置,其特征在于,
    所述收发单元,具体用于接收所述第二网络设备发送的第一报文,所述第一负载信息被携带在所述第一报文的负载payload部分中。
  40. 根据权利要求39所述的装置,其特征在于,所述第一报文还包括第一指示信息,所述第一指示信息用于指示所述第一报文的payload部分包括所述第一负载信息。
  41. 根据权利要求40所述的装置,其特征在于,所述第一指示信息被携带在所述第一报文的控制协议报文头中。
  42. 根据权利要求41所述的装置,其特征在于,所述控制协议报文头包括邻居通告协议NNP报文头,所述第一指示信息被携带在所述NNP报文头的子类型subtype字段中。
  43. 根据权利要求41或42所述的装置,其特征在于,所述第一报文还包括链路层Link-Layer报文头,所述Link-Layer报文头包括第二指示信息,所述第二指示信息用于指示所述第一报文包括所述控制协议报文头。
  44. 根据权利要求43所述的装置,其特征在于,所述第二指示信息被携带在所述Link-Layer报文头的协议Protocol字段中。
  45. 根据权利要求36-44任一项的装置,其特征在于,
    所述收发单元,还用于获取所述第三网络设备的第二负载信息,所述第三网络设备的第二负载信息用于指示所述第三网络设备接收并向所述第三设备集群以外的设备转发报文的能力;
    所述处理单元,具体用于根据所述第三网络设备的第二负载信息确定所述第二路径的负载信息。
  46. 根据权利要求45所述的装置,其特征在于,所述第三网络设备的第二负载信息根据所述第三网络设备的上行流量信息确定。
  47. 根据权利要求36-46任一项所述的装置,其特征在于,所述第一网络设备通过第一端口与所述第二网络设备连接,所述第一网络设备通过第二端口与所述第三网络设备连接;
    所述处理单元,具体用于根据所述第一端口的负载信息、所述第一路径的跳数和所述第二网络设备的负载信息确定所述第一路径的负载信息;根据所述第二端口的负载信息、所述第二路径的跳数和所述第三网络设备的负载信息确定所述第二路径的负载信息;根据所述第一路径的负载信息和所述第二路径的负载信息,从所述第一路径和所述第二路径中选择目标路径。
  48. 一种发送负载信息的装置,其特征在于,所述装置应用于第一控制面设备,所述装置包括:
    收发单元,用于获取第一转发面设备的流量信息,所述第一转发面设备属于第一转发面设备集群;
    处理单元,用于根据所述第一转发面设备的流量信息,确定所述第一转发面设备的负载信息;
    所述收发单元,还用于向第二转发面设备发送所述第一转发面设备的负载信息,所述第二转发面设备属于第二转发面设备集群,所述第一转发面设备的负载信息用于所述第二转发面设备确定第一路径的负载信息,所述第一路径包括所述第二转发面设备和所述第一转发面设备。
  49. 一种设备,其特征在于,所述设备包括存储器和处理器,所述存储器用于存储指令,所述处理器用于运行所述指令,以使得所述设备执行如权利要求1-24任一项所述的方法。
  50. 一种计算机可读存储介质,其特征在于,包括指令,当其在处理器上执行时,实现权利要求1-24任一项所述的方法。
  51. 一种计算机程序产品,其特征在于,包括程序,当所述程序在处理器上运行时,执行上述权利要求1-24任一项所述的方法。
PCT/CN2023/098565 2022-07-29 2023-06-06 一种发送负载信息的方法、发送报文的方法及装置 WO2024021878A1 (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN202210915313 2022-07-29
CN202210915313.4 2022-07-29
CN202310254859.4A CN117478580A (zh) 2022-07-29 2023-03-08 一种发送负载信息的方法、发送报文的方法及装置
CN202310254859.4 2023-03-08

Publications (1)

Publication Number Publication Date
WO2024021878A1 true WO2024021878A1 (zh) 2024-02-01

Family

ID=89635352

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/098565 WO2024021878A1 (zh) 2022-07-29 2023-06-06 一种发送负载信息的方法、发送报文的方法及装置

Country Status (2)

Country Link
CN (1) CN117478580A (zh)
WO (1) WO2024021878A1 (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160344633A1 (en) * 2014-01-20 2016-11-24 Zte Corporation Load balancing method, device, system and computer storage medium
US20180159779A1 (en) * 2016-12-07 2018-06-07 Cisco Technology, Inc. Load Balancing Eligible Packets in Response to a Policing Drop Decision
CN108156004A (zh) * 2016-12-02 2018-06-12 中国移动通信有限公司研究院 Sdn控制器及交换机管理方法
CN111629400A (zh) * 2019-02-27 2020-09-04 华为技术有限公司 一种卫星协作通信的方法、装置及系统
CN113595919A (zh) * 2020-04-30 2021-11-02 华为技术有限公司 一种负载分担的方法及装置
CN113645145A (zh) * 2021-08-02 2021-11-12 迈普通信技术股份有限公司 负载均衡方法、装置、网络设备及计算机可读存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160344633A1 (en) * 2014-01-20 2016-11-24 Zte Corporation Load balancing method, device, system and computer storage medium
CN108156004A (zh) * 2016-12-02 2018-06-12 中国移动通信有限公司研究院 Sdn控制器及交换机管理方法
US20180159779A1 (en) * 2016-12-07 2018-06-07 Cisco Technology, Inc. Load Balancing Eligible Packets in Response to a Policing Drop Decision
CN111629400A (zh) * 2019-02-27 2020-09-04 华为技术有限公司 一种卫星协作通信的方法、装置及系统
CN113595919A (zh) * 2020-04-30 2021-11-02 华为技术有限公司 一种负载分担的方法及装置
CN113645145A (zh) * 2021-08-02 2021-11-12 迈普通信技术股份有限公司 负载均衡方法、装置、网络设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN117478580A (zh) 2024-01-30

Similar Documents

Publication Publication Date Title
CN106998302B (zh) 一种业务流量的分配方法及装置
CN107360092B (zh) 用于数据网络中的平衡负载的系统和方法
WO2016045411A1 (zh) 一种片上网络系统,及片上网络通信链路的建立方法
US9730140B2 (en) Transmission control method, node, and non-transitory computer-readable recording medium
US9426080B2 (en) Data communication apparatus, data transmission method, and computer system
CN108206753B (zh) 一种检测时延的方法、装置及系统
US9124529B1 (en) Methods and apparatus for assessing the quality of a data path including both layer-2 and layer-3 devices
WO2014083780A1 (ja) 通信装置、通信装置を有するルータ、バスシステム、およびバスシステムを有する半導体回路の回路基板
US11303571B2 (en) Data communication method and data communications network
US20230096063A1 (en) Communication method and apparatus
WO2022253087A1 (zh) 一种数据传输方法、节点、网络管理器及系统
CN107332793B (zh) 一种报文转发方法、相关设备及系统
US10476774B2 (en) Selective transmission of bidirectional forwarding detection (BFD) messages for verifying multicast connectivity
US20230198897A1 (en) Method, network device, and system for controlling packet sending
WO2023226633A1 (zh) 故障处理方法、相关设备和系统
CN117354253A (zh) 一种网络拥塞通知方法、装置及存储介质
Nguyen et al. An evolvable, scalable, and resilient control channel for software defined wireless access networks
WO2024021878A1 (zh) 一种发送负载信息的方法、发送报文的方法及装置
US20220158919A1 (en) Information Sharing Method and Apparatus in Redundancy Network, and Computer Storage Medium
WO2022052800A1 (zh) 一种通信系统、数据处理方法以及相关设备
WO2022007861A1 (zh) 通知故障的方法和电子设备
CN114124753B (zh) 一种报文发送方法及设备
EP4277226A1 (en) Packet transmission method, transmission control method, apparatus, and system
TWI821882B (zh) 丟包率的檢測方法、通信裝置及通信系統
CN117749667A (zh) 带宽信息的发送方法、装置、设备及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23845091

Country of ref document: EP

Kind code of ref document: A1