Data sending method, network device, storage medium and computer program product

By dividing the data to be sent into multiple message groups and sending them in parallel, the problem of reduced data transmission speed caused by bandwidth limitations at the router's egress end is solved, achieving more efficient data transmission.

CN121907765APending Publication Date: 2026-04-21CHINA MOBILE COMM LTD RES INST +1
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
CHINA MOBILE COMM LTD RES INST
Filing Date
2024-10-18
Publication Date
2026-04-21

AI Technical Summary

Technical Problem

Due to bandwidth limitations at the router's egress point, data traffic transmission speeds decrease, leading to congestion.

Method used

After receiving the data to be sent, it is divided into multiple message groups to be sent and sent in parallel through multiple second interfaces. By using predetermined grouping conditions and message group forwarding conditions, the data is ensured to be transmitted on multiple interfaces.

Benefits of technology

It improved data transmission rate, resolved packet loss due to data congestion on wide area networks, and enhanced user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121907765A_ABST
    Figure CN121907765A_ABST
Patent Text Reader

Abstract

The invention provides a data sending method, network equipment, a storage medium and a computer program product. And receiving to-be-sent data through the first interface, and determining to-be-grouped sending data from the to-be-sent data based on a preset condition. And dividing the to-be-grouped sending data into one or more to-be-sent message groups based on a predetermined grouping condition. And further, one or more message groups to be sent are sent through one or more third interfaces. Therefore, smooth transmission of the to-be-sent data is ensured, the data transmission rate is improved, and the problem of data congestion and packet loss of a wide area network is avoided.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of wireless communication technology, and in particular to a data transmission method, network device, storage medium, and computer program product. Background Technology

[0002] With the ever-increasing demand for data transmission, computation, and processing, a large amount of data traffic is transmitted to routers. Due to bandwidth limitations at the router's egress point, congestion can occur in data traffic transmission, resulting in a significant decrease in data transmission speed. Summary of the Invention

[0003] This disclosure provides a data transmission method, network device, storage medium, and computer program product. Data to be transmitted is received through a first interface and divided into message groups. These message groups are then transmitted through a second interface. This allows for parallel transmission of data across multiple links via the second interface, thereby improving data transmission speed.

[0004] In one aspect, this embodiment provides a data transmission method, including: receiving data to be transmitted via a first interface; dividing the data to be transmitted into one or more message groups to be transmitted based on predetermined grouping conditions; and transmitting the one or more message groups to be transmitted via one or more second interfaces respectively corresponding to the one or more message groups to be transmitted.

[0005] In this embodiment of the disclosure, dividing the data to be sent into one or more message groups to be sent based on predetermined grouping conditions includes: determining the data to be grouped and sent in the data to be sent based on predetermined classification conditions; and dividing the data to be grouped and sent into one or more message groups to be sent based on the predetermined grouping conditions.

[0006] In this embodiment of the disclosure, the above-mentioned division of the data to be sent into one or more message groups to be sent based on predetermined grouping conditions includes: determining the data to be grouped and sent in the data to be sent based on the required transmission rate of the data to be sent and the interface transmission rate of the one or more second interfaces; and dividing the data to be grouped and sent into the one or more message groups to be sent based on the predetermined grouping conditions.

[0007] In this embodiment of the disclosure, determining the data to be sent in groups among the data to be sent based on predetermined classification conditions includes: determining the application category of the data to be sent based on the message information of the data to be sent; and determining the data to be sent whose application category satisfies the predetermined classification conditions as the data to be sent in groups.

[0008] In this embodiment of the disclosure, the above-mentioned division of the data to be sent into one or more message groups based on predetermined grouping conditions includes: dividing the data to be sent into one or more message groups based on one or more of the following: the total message length of the group, the number of messages in the group, and the data throughput of the group.

[0009] In this embodiment of the disclosure, the one or more message groups to be sent include a packet extension header, the packet extension header indicating one or more of the following: the start of the message group to be sent, the end of the message group to be sent, the flow identifier of the message group to be sent, and the packet identifier of the message group to be sent.

[0010] In this embodiment of the disclosure, the physical address of the first interface is the physical address of one of the one or more second interfaces.

[0011] In this embodiment of the disclosure, sending the one or more message groups to be sent via one or more second interfaces corresponding to the one or more message groups to be sent includes: determining the one or more third interfaces corresponding to the one or more message groups to be sent based on predetermined message group forwarding conditions; sending the one or more message groups to be sent via the one or more third interfaces when the one or more third interfaces are physical interfaces; and mapping the one or more third interfaces to the one or more second interfaces when the one or more third interfaces are virtual interfaces, and sending the one or more message groups to be sent via the one or more second interfaces.

[0012] On the other hand, embodiments of this disclosure provide a network device, including: a communication interface configured to perform wireless communication with a terminal device; a memory for storing computer-readable instructions; and a processor for executing the computer-readable instructions, causing the network device to perform the data transmission method.

[0013] In another aspect, embodiments of this disclosure provide a non-transitory computer-readable storage medium for storing computer-readable instructions that, when executed by a processor, cause the processor to perform the aforementioned data transmission method.

[0014] In another aspect, embodiments of this disclosure provide a computer program product, including a computer program that, when executed by a processor, implements the above-described data transmission method.

[0015] This disclosure provides a data transmission method, network device, storage medium, and computer program product. The method receives data to be transmitted through a first interface and divides the data into packets based on predetermined grouping conditions. The packets are then transmitted through a second interface. This allows high-speed data transmission to be converted into parallel transmission via multiple second interfaces and multiple links, thereby improving data transmission rate, resolving packet loss due to wide area network congestion, and ultimately enhancing user experience. Attached Figure Description

[0016] The above and other objects, features, and advantages of this disclosure will become more apparent from the more detailed description of the embodiments thereof in conjunction with the accompanying drawings. The drawings are provided to further illustrate the embodiments of this disclosure and form part of the specification. They are used together with the embodiments of this disclosure to explain the disclosure and do not constitute a limitation thereof. In the drawings, the same reference numerals generally represent the same components or steps.

[0017] Figure 1 The illustration shows an environmental application diagram according to an embodiment of the present disclosure.

[0018] Figure 2 A flowchart illustrating a data transmission method according to an embodiment of the present disclosure is shown schematically.

[0019] Figure 3 A flowchart illustrating another data transmission method according to an embodiment of this disclosure is shown schematically.

[0020] Figure 4 A flowchart illustrating another data transmission method according to an embodiment of the present disclosure is shown schematically.

[0021] Figure 5 A schematic diagram of another data transmission method according to an embodiment of the present disclosure is shown.

[0022] Figure 6 A flowchart illustrating another data transmission method according to an embodiment of the present disclosure is shown schematically.

[0023] Figure 7 A flowchart illustrating another data transmission method according to an embodiment of the present disclosure is shown schematically.

[0024] Figure 8 A schematic diagram of another data transmission method according to an embodiment of the present disclosure is shown.

[0025] Figure 9 A block diagram of a network device according to an embodiment of the present disclosure is shown schematically.

[0026] Figure 10A block diagram of a non-transitory computer-readable storage medium according to an embodiment of the present disclosure is illustrated schematically.

[0027] Figure 11 A block diagram of a computer program product according to an embodiment of the present disclosure is shown schematically. Detailed Implementation

[0028] To make the objectives, technical solutions, and advantages of this disclosure more apparent, exemplary embodiments according to this disclosure will now be described in detail with reference to the accompanying drawings. Obviously, the described embodiments are merely some embodiments of this disclosure, and not all embodiments of this disclosure. It should be understood that this disclosure is not limited to the exemplary embodiments described herein.

[0029] Figure 1 The illustration shows an environmental application diagram according to an embodiment of the present disclosure.

[0030] like Figure 1 As shown, the intelligent computing center network 100 may include a network device 101 and a destination device 102. The network device 101 and the destination device 102 can perform real-time data transmission through the intelligent computing center network 100.

[0031] Network device 101 can receive data to be sent, divide the received data into one or more message groups, and send the message groups to destination device 102 through one or more second interfaces. Network device 101 can be a router, mobile device, etc. No restrictions are placed here.

[0032] Destination device 102 can receive one or more packets to be sent by network device 101, and sort and restore the received packets to read data. Destination device 102 may include any type of electronic device, such as mobile devices, tablets, laptops, workstations, virtual reality devices, gaming devices, set-top boxes, digital streaming media devices, vehicle terminals, smart TVs, set-top boxes, etc.

[0033] In some cases, network device 101 can receive high-speed data to be transmitted, but due to the bandwidth limitation of the network device 101's egress port, multiple egress ports need to be determined to transmit this high-speed data. For example, there may be a transmission rate convergence ratio, such as the data rate to be transmitted is 400G, while the network device 101's egress port rate is 100G. This can cause congestion at the network device 101's egress port; therefore, multiple egress ports need to be determined to ensure the normal transmission of the data.

[0034] In other scenarios, network device 101 can receive multiple low-rate data streams to be transmitted. However, due to bandwidth limitations of its egress ports, it's necessary to allocate resources across these multiple low-rate data streams and multiple egress ports on network device 101 to ensure the data is transmitted smoothly and completely to the destination device 102. For example, in an elephant stream scenario, the egress port bandwidth may be sufficient, but transmitting multiple data streams through the same egress port can lead to overload. For instance, network device 101 might receive three 60G data streams, while its egress port has a rate of 100G. Therefore, it's necessary to determine the number of egress ports on network device 101 and allocate egress ports to the data streams to ensure proper transmission.

[0035] Figure 2 A flowchart illustrating a data transmission method according to an embodiment of the present disclosure is shown schematically.

[0036] like Figure 2 As shown, the data transmission method of this disclosure embodiment includes:

[0037] S201, Receive the data to be sent via the first interface.

[0038] In this embodiment of the disclosure, the network device may include a first interface for providing high-bandwidth port access. The network device can receive data to be sent to a destination device through the first interface. For example, the network device can receive message data to be sent to a user terminal through the first interface.

[0039] S202. Based on predetermined grouping conditions, the above-mentioned data to be sent is divided into one or more message groups to be sent.

[0040] In this embodiment of the disclosure, the network device receives data to be transmitted and divides the data into one or more message groups to be transmitted according to predetermined grouping conditions. Then, the one or more message groups to be transmitted are sent to the first interface.

[0041] In another embodiment of this disclosure, the network device receives data to be transmitted and sends the data to be transmitted to a first interface. Then, according to predetermined packet conditions, the data to be transmitted is divided into one or more packet groups to be transmitted.

[0042] According to embodiments of this disclosure, a network device can divide data to be sent into one or more groups of packets to be sent according to predetermined grouping conditions. For example, the data to be sent can be grouped according to packet length. Another example is grouping the data to be sent according to creation time, and so on.

[0043] For example, the router receives data to be sent to user A via the first interface. Based on predetermined packet conditions, it divides the data into one or more packet groups according to the packet length. Then, it sends the one or more packet groups to the first interface, and then to user A via the second interface.

[0044] S203. Send the one or more message groups to be sent via one or more second interfaces corresponding to the one or more message groups to be sent.

[0045] In this embodiment of the disclosure, the network device sends one or more packets to be sent to one or more second interfaces, and then sends one or more packets to be sent to the destination device through one or more second interfaces.

[0046] In some embodiments, the network device can divide the data to be transmitted into multiple message groups, and send each message group to a different second interface, and then send the message groups to the destination device through the second interface. For example, the network device can divide the data to be transmitted into two message groups, message group A and message group B. Message group A is sent to second interface A, and message group B is sent to second interface B.

[0047] In some embodiments, the network device can divide the data to be transmitted into multiple packet groups, and send each packet group to a second interface, then transmit the packet group to the destination device through the second interface. For example, the network device can divide the data to be transmitted into three packet groups: packet group A, packet group B, and packet group C. Packet groups A and B are sent to second interface A, and packet group C is sent to second interface B.

[0048] The data transmission method provided in this disclosure receives data to be transmitted through a first interface. Based on grouping conditions, the data to be transmitted is divided into one or more message groups. The one or more message groups are then transmitted through one or more second interfaces. This allows high-speed data to be converted into multiple low-speed message groups, which can then be transmitted in parallel across multiple links using multiple second interfaces, thereby improving data transmission rate and resolving wide area network congestion issues.

[0049] In embodiments of this disclosure, the above-mentioned division of data to be sent into one or more message groups to be sent based on predetermined grouping conditions includes: determining data to be grouped and sent in the data to be sent based on predetermined classification conditions; and dividing the data to be grouped and sent into one or more message groups to be sent based on predetermined grouping conditions.

[0050] In this embodiment of the disclosure, the network device can also determine the data to be sent in packets based on predetermined classification conditions. For example, the data to be sent in packets can be determined according to the application type of the data to be sent; or, the data to be sent in packets can be determined according to the destination address and source address of the data to be sent; or, the data to be sent in packets can be determined according to the creation time of the data to be sent; or, the data to be sent in packets can be determined according to the IP protocol or version of the data to be sent, etc., and no limitation is made here.

[0051] In this embodiment of the disclosure, when data to be transmitted is determined, the data is divided into one or more message groups based on predetermined grouping conditions, and then transmitted to the destination device via one or more second interfaces.

[0052] According to embodiments of this disclosure, based on predetermined classification conditions, data to be grouped for transmission is determined from the data to be sent. This data is then divided into one or more message groups. This allows for further filtering of the data to be sent, identifying the data that needs to be grouped, thereby improving the accuracy of the data transmission process and ensuring that all data to be sent is successfully delivered to the destination device.

[0053] In embodiments of this disclosure, dividing data to be sent into one or more message groups to be sent based on predetermined grouping conditions includes: determining data to be grouped and sent in the data to be sent based on the required transmission rate of the data to be sent and the interface transmission rate of one or more second interfaces; and dividing the data to be grouped and sent into the one or more message groups to be sent based on the predetermined grouping conditions.

[0054] In this embodiment of the disclosure, the data to be sent is determined based on the relationship between the required transmission rate of the data to be sent and the interface transmission rates of one or more second interfaces.

[0055] In some embodiments, data to be transmitted with a required transmission rate greater than the interface transmission rate of one or more second interfaces is identified as data to be packetized and transmitted. For example, if data A in the data to be transmitted requires a transmission rate of 400G, which is greater than the interface transmission rate of 100G of the second interface A, then data A can be identified as data to be packetized and transmitted.

[0056] In other embodiments, if the required transmission rate of a single data item in the data to be transmitted is less than the interface transmission rate of a second interface, but the sum of the required transmission rates of that single data item and other data to be transmitted is greater than the interface transmission rate of a second interface, then that single data item and the other data can be identified as data to be packetized and transmitted. For example, data A in the data to be transmitted requires a transmission rate of 60G, which is less than the interface transmission rate of 100G of the second interface A. Simultaneously, data B and data C, which need to be transmitted together, both require a transmission rate of 60G. Therefore, the total required transmission rate of data A, B, and C is 180G, which is greater than the interface transmission rate of 100G of the second interface A. Thus, data A, B, and C can be identified as data to be packetized and transmitted.

[0057] According to embodiments of this disclosure, the data to be packetized is determined based on the required transmission rate of the data to be transmitted and the interface transmission rate of the second interface. This data is then divided into one or more packet groups. This allows for the filtering of the data to be packetized, ensuring that all data to be transmitted is successfully delivered to the destination device.

[0058] In embodiments of this disclosure, the above-mentioned determination of data to be sent in groups based on predetermined classification conditions includes: determining the application category of the data to be sent based on the message information of the data to be sent; and determining the data to be sent whose application category satisfies the predetermined classification conditions as data to be sent in groups.

[0059] In this embodiment of the disclosure, the message information of the data to be sent can be obtained through the layer 3 and 4 header information of the message data. The application category of the data to be sent is determined through the layer 3 and 4 header information of the message data. For example, the application category of the data to be sent can be determined by the source IP address and destination IP address typically found in the layer 3 header information of the message data. Another example is the application category of the data to be sent can be determined by using the source port and destination port found in the layer 4 header information of the message data.

[0060] In this embodiment of the disclosure, the predetermined classification criteria can also be the seven-layer content information included in the message data. Furthermore, the network device can also identify the application type based on the seven-layer content information of the message data.

[0061] For example, deep packet inspection (DPI) technology can be used to extract seven layers of packet data. DPI can identify packet encapsulation and then reassemble a series of packets to restore application data. The application category of the data to be sent can then be determined based on the characteristics of the application data.

[0062] For example, if the predetermined classification condition is that the data has a specified source IP address and a specified destination IP address, the network device can obtain the Layer 3 header information of the data to be sent. Based on the source IP address and destination IP address in the Layer 3 header information, it determines the application category of the data to be sent. Then, based on the specified source IP address and specified destination IP address, it selects the data to be sent whose source IP address and destination IP address are specified within the application category as the data to be sent in packets.

[0063] According to embodiments of this disclosure, the application category in the data to be sent is determined based on message information. Then, the data to be sent that meets predetermined classification conditions within the application category is identified as data to be grouped and sent. This allows for the filtering of data to be sent that meets the conditions, thereby improving data transmission efficiency.

[0064] In embodiments of this disclosure, data to be sent is divided into one or more message groups to be sent based on predetermined grouping conditions, including: dividing data to be sent into one or more message groups to be sent based on one or more of the total message length of the group, the number of messages in the group, and the data throughput of the group.

[0065] In this embodiment of the disclosure, the data to be sent can be grouped according to one or more of the following: total message length, number of messages, and data throughput.

[0066] For example, grouping by total message length allows us to define a group of data to be sent as a single packet with a predetermined message length. This allows us to divide the data into multiple groups of the predetermined message length. Similarly, grouping by message quantity allows us to assume that every N messages form a group of data to be sent. This allows us to divide the data into multiple groups of N messages. Furthermore, grouping by message throughput allows us to assume that a throughput of 5kbps constitutes a group of data to be sent. This allows us to divide the data into multiple groups of data with a throughput of 5kbps.

[0067] In some embodiments, the network device may also group the data to be transmitted based on the total message length and the number of messages. Alternatively, the network device may also group the data to be transmitted based on the total message length, the number of messages, and the message throughput.

[0068] It is understood that the embodiments of this disclosure can group data to be sent according to different grouping methods based on different needs, and no limitation is made herein. For example, when ensuring message integrity is required, the number of messages can be given as the first priority when grouping data to be sent. At the same time, the transmission efficiency of the message groups to be sent can also be considered, so the message length can be given as the second priority. Thus, while ensuring message integrity, transmission efficiency can also be optimized.

[0069] According to embodiments of this disclosure, dividing the data to be transmitted into message groups in different ways can meet the different needs of the data during the transmission process, thereby further improving the efficiency of data transmission.

[0070] In embodiments of this disclosure, one or more message groups to be sent include a packet extension header that indicates one or more of the following: the start of the message group to be sent, the end of the message group to be sent, the flow identifier of the message group to be sent, and the packet identifier of the message group to be sent.

[0071] In this embodiment of the disclosure, the message group to be sent includes a destination address, a source address, a packet extension header, a destination port, a source port, and message data. The packet extension header is used to identify the message group to be sent.

[0072] In this embodiment of the disclosure, the flow identifier of the message group to be sent can be used to identify different traffic originating from the same node. The packet identifier of the message group to be sent can be used for different message packets of the same traffic.

[0073] For example, if the flow identifier of the first packet to be sent is A1 and the packet identifier is a1, and the flow identifier of the second packet to be sent is A1 and the packet identifier is a2, then it can be determined that the first packet to be sent and the second packet to be sent are different packets of the same traffic. As another example, if the flow identifier of the first packet to be sent is A1 and the flow identifier of the second packet to be sent is A2, then it can be determined that the first packet to be sent and the second packet to be sent are different traffic originating from the same node. As yet another example, if the flow identifier of the first packet to be sent is A1 and the flow identifier of the second packet to be sent is B1, then it can be determined that the first packet to be sent and the second packet to be sent are different traffic originating from different nodes, and so on.

[0074] According to embodiments of this disclosure, the message groups to be sent are identified using a packet extension header. Furthermore, each message group to be sent is numbered using the packet identifier. Thus, identifying the data without destroying the original data ensures data integrity and improves the accuracy of data transmission.

[0075] In embodiments of this disclosure, the physical address of the first interface is the physical address of one of the one or more second interfaces.

[0076] In this embodiment of the disclosure, the physical address of the first interface can be the physical address of any one of the one or more second interfaces. For example, the first interface includes four second interfaces. The physical address of the first interface can be the physical address of the first second interface. Alternatively, the physical address of the first interface can be the physical address of the third second interface.

[0077] According to embodiments of this disclosure, the physical address of a second interface is used as the physical address of the first interface, thereby determining the independent physical address of the first interface. Furthermore, data to be sent can be transmitted to the first interface based on its physical address, thus improving the accuracy of data transmission.

[0078] In embodiments of this disclosure, transmitting one or more groups of messages to be transmitted via one or more second interfaces, each corresponding to one or more groups of messages to be transmitted, includes:

[0079] Based on the predetermined message group forwarding conditions, determine one or more third interfaces corresponding to one or more message groups to be sent.

[0080] In this embodiment of the disclosure, a predetermined message group forwarding condition is used to indicate the forwarding path of a message group to be sent. In some embodiments, the predetermined message group forwarding condition can determine a first interface that needs to receive the data to be sent, and a third interface that needs to receive the message group to be sent. For example, according to the predetermined message group forwarding condition, the data to be sent A is sent to the first interface G1, and the message group to be sent a1, which is divided into segments of the data to be sent A, is sent to the third interface P1, and the message group to be sent a2, which is divided into segments of the data to be sent A, is sent to the third interface P2.

[0081] In the embodiments of this disclosure, the predetermined message group forwarding conditions can be preset or obtained through a self-learning process. In some embodiments, a first interface, a second interface, and a third interface can be preset, and the transmission paths of each message group to be sent can be set to obtain the predetermined message group forwarding conditions. In other embodiments, the predetermined message group forwarding conditions can be obtained through a self-learning process. For example, when the data to be sent is first divided into message groups and sent to the second interface, the transmission path of each message group to be sent is obtained to generate the predetermined message group forwarding conditions. In addition, the predetermined message group forwarding conditions can also be obtained in other ways, which are not limited here.

[0082] Figure 3 A flowchart illustrating another data transmission method according to an embodiment of this disclosure is shown schematically.

[0083] Figure 3 The data transmission method shown includes the following steps:

[0084] S301, Receive data to be sent via the first interface.

[0085] S302. Based on the message information of the data to be sent, determine the application category of the data to be sent.

[0086] S303. Determine the data to be sent that meets the predetermined classification conditions for the application category as the data to be sent in groups.

[0087] S304. Based on predetermined grouping conditions, divide the data to be sent into one or more message groups to be sent.

[0088] S305. Based on the predetermined message group forwarding conditions, determine one or more third interfaces corresponding to one or more message groups to be sent.

[0089] S306. When one or more third interfaces are physical interfaces, send one or more groups of messages to be sent via one or more third interfaces.

[0090] In this embodiment of the disclosure, when the third interface is a physical interface, the second interface can be the third interface. In some embodiments, predetermined packet forwarding conditions can determine a first interface that needs to receive data to be sent, and determine a third interface that needs to receive packet groups to be sent, and the third interface sends the packet groups to be sent.

[0091] In some embodiments, the network device receives data to be sent via a first interface. Based on the message information of the data to be sent, the network device can determine the data to be grouped for transmission and further divide the data to be sent into groups of packets to be sent. Based on predetermined packet forwarding conditions, the network device can first send the packets to be sent to the first interface, and then send the packets to be sent to the corresponding third interface. This allows the network device to identify the data to be grouped from multiple data sets, thus ensuring the normal transmission of each data set. Simultaneously, dividing the data to be sent into multiple packets and sending these multiple packets through multiple interfaces ensures normal data transmission and avoids congestion during transmission.

[0092] Figure 4 A flowchart illustrating another data transmission method according to an embodiment of the present disclosure is shown schematically.

[0093] Figure 4 The data transmission method shown includes the following steps:

[0094] S401, Receive data to be sent via the first interface.

[0095] S402. Determine the application category of the data to be sent based on the message information of the data to be sent.

[0096] S403. Determine the data to be sent that meets the predetermined classification conditions for the application category as the data to be sent in groups.

[0097] S404. Based on predetermined grouping conditions, divide the data to be sent into one or more message groups to be sent.

[0098] S405. Based on the predetermined message group forwarding conditions, determine one or more third interfaces corresponding to one or more message groups to be sent.

[0099] S406. When one or more third interfaces are virtual interfaces, map one or more third interfaces to one or more second interfaces, and send one or more message groups to be sent via one or more second interfaces.

[0100] In this embodiment, the network device sends the packet group to be sent to a first interface, and then sends the packet group to the corresponding third interface. If the third interface is a virtual interface, the packet group is then sent to a second interface that has a mapping relationship with the third interface, and the second interface forwards the packet group to the destination device. In this case, the second interface is a physical interface.

[0101] In this embodiment of the disclosure, the virtual interface may be a slice sub-interface or a tunnel interface. In some embodiments, the predetermined packet forwarding conditions may determine a first interface that needs to receive data to be sent, a third interface that needs to receive packet groups to be sent, and a mapping relationship between the third interface and a second interface, so that the packet groups to be sent can be sent by the second interface.

[0102] According to embodiments of this disclosure, determining the transmission path of a message group to be sent based on predetermined message group forwarding conditions can ensure the smooth transmission of the message group to be sent.

[0103] Figure 5 A schematic diagram of another data transmission method according to an embodiment of the present disclosure is shown.

[0104] like Figure 5 As shown, based on the determined application category of the data to be sent, the data to be sent in packets is determined, and the number of second interfaces is determined according to the data transmission rate of the packets and the transmission rate of the second interface. Figure 5As shown, based on the data transmission rate of 400G and the transmission rate of a second interface of 100G, the number of second interfaces is determined to be four. Therefore, the four second interfaces are second interface P1, second interface P2, second interface P3, and second interface P4. Simultaneously, the physical address of the first interface can also be determined; for example, the physical address MAC1 of the second interface P1 can be used as the physical address of the first interface.

[0105] like Figure 5 As shown, the data to be sent can be divided into multiple message groups according to predetermined grouping conditions, and the message group extension header can be determined to identify each message group. If the number of message groups to be sent is determined according to the number of the second interface mentioned above, the data to be sent can be divided into four message groups, and the group identifiers of the four message groups are C1, C2, C3 and C4 respectively.

[0106] like Figure 5 As shown, based on predetermined packet forwarding conditions and the physical address MAC1 of the first interface, four packet groups to be sent are first sent to the first interface G1. In some embodiments, when the third interface is a virtual interface, for example, in tunnel interface mode, each packet group to be sent can be sent to the corresponding third interface based on predetermined packet forwarding conditions. Then, based on the predetermined packet forwarding conditions and the physical address of the second interface, the packet group is mapped from the third interface to the second interface.

[0107] like Figure 5 As shown, message group C1 is sent to the third interface VM1, message group C2 is sent to the third interface VM2, message group C3 is sent to the third interface VM3, and message group C4 is sent to the third interface VM4. Then, the third interface VM1 is mapped to the second interface P1, and the second interface P1 sends message group C1; the third interface VM2 is mapped to the second interface P2, and the second interface P2 sends message group C2; the third interface VM3 is mapped to the second interface P3, and the second interface P3 sends message group C3; and the third interface VM4 is mapped to the second interface P4, and the second interface P4 sends message group C4.

[0108] The destination device receives message groups C1, C2, C3, and C4 sent by the network device. Since message groups C1, C2, C3, and C4 reach the egress node via different paths, the timing of the messages may vary. However, within the same message group, messages are forwarded along the same path, so the timing remains unchanged. Therefore, the destination device needs to sort the received message groups C1, C2, C3, and C4, and then concatenate and read the sorted message groups.

[0109] In some embodiments, when multiple message groups to be sent are transmitted through the same third interface, i.e., when multiple third interfaces are combined into a single fiber optic transmission via a multiplexer, the timing of messages outside and inside the message groups to be sent remains unchanged, so there is no need to reorder the message groups to be sent.

[0110] In this embodiment, all packets belonging to the same packet group are forwarded via the same path, ensuring that packets within the same packet group are not out of order, thus reducing the de-ordering pressure on the destination device. Furthermore, for cases where there is a convergence ratio between the ingress and egress transmission rates, such as a packet data transmission rate of 400G and an egress port transmission rate of 100G, the packet data is distributed across multiple paths based on a predetermined packet group forwarding condition scheduling mapping. This change in packet scheduling method easily solves the WAN congestion problem.

[0111] Figure 6 A flowchart illustrating another data transmission method according to an embodiment of the present disclosure is shown schematically.

[0112] Figure 6 The data transmission method shown includes the following steps:

[0113] S601, Receive data to be sent via the first interface.

[0114] S602. Based on the required transmission rate of the data to be sent and the interface transmission rate of one or more second interfaces, determine the data to be sent in groups within the data to be sent.

[0115] S603. Based on the above-mentioned predetermined grouping conditions, the above-mentioned data to be sent is divided into one or more message groups to be sent.

[0116] S604. Based on the predetermined message group forwarding conditions, determine one or more third interfaces corresponding to one or more message groups to be sent.

[0117] S605. When one or more third interfaces are physical interfaces, send one or more groups of messages to be sent via one or more third interfaces.

[0118] In some embodiments, the first interface receives the data to be transmitted and determines the data to be packetized based on the required transmission rate of the data to be transmitted and the interface transmission rates of one or more second interfaces. This allows for the identification of data to be transmitted that would cause congestion on the third interface, and these data are then designated as the data to be packetized.

[0119] Furthermore, the data to be transmitted is divided into groups of packets to be sent. Based on predetermined packet forwarding conditions, the network device can first send the packets to be sent to the first interface, and then send the packets to be sent to the corresponding third interface. This ensures the normal transmission of each piece of data to be sent and avoids congestion during transmission.

[0120] Figure 7 A flowchart illustrating another data transmission method according to an embodiment of the present disclosure is shown schematically.

[0121] Figure 7 The data transmission method shown includes the following steps:

[0122] S701 receives data to be sent via the first interface.

[0123] S702. Based on the required transmission rate of the data to be sent and the interface transmission rate of one or more second interfaces, determine the data to be sent in packets within the data to be sent.

[0124] S703. Based on the above-mentioned predetermined grouping conditions, the above-mentioned data to be sent is divided into one or more message groups to be sent.

[0125] S704. Based on the predetermined message group forwarding conditions, determine one or more third interfaces corresponding to one or more message groups to be sent.

[0126] S705. When one or more third interfaces are virtual interfaces, map one or more third interfaces to one or more second interfaces, and send one or more message groups to be sent via one or more second interfaces.

[0127] In this embodiment, the message group to be sent is sent to a first interface, and then to a corresponding third interface. If the third interface is a virtual interface, the message group is then sent to a second interface that has a mapping relationship with the third interface, and the second interface forwards the message group to the destination device. In this case, the second interface is a physical interface.

[0128] Figure 8 A schematic diagram illustrating another data transmission method according to an embodiment of the present disclosure is shown.

[0129] like Figure 8 As shown, there are three data packets to be transmitted: S1, S2, and S3. The transmission rate of data packet S1 is 60Gb / s. The transmission rate of one third interface is 100Gb / s. The number of third interfaces is then determined based on the data transmission rates of the packets and the third interface. Figure 8As shown, based on the total data transmission rate of 180G for the packets S1, S2, and S3 to be transmitted and a third interface transmission rate of 100G, the number of third interfaces is determined to be two. Therefore, the two third interfaces are third interface P1 and third interface P2. Simultaneously, based on the above data transmission method, the physical address of the first interface can be determined to be the physical address of one of the third interfaces; for example, the physical address MAC1 of the third interface P1 can be determined to be the physical address of the first interface.

[0130] like Figure 8 As shown, the data S1, S2, and S3 to be sent are divided into multiple message groups according to predetermined grouping conditions, and the group identifier of each message group is determined based on the packet extension header. For example, the data S1, S2, and S3 to be sent are divided into four message groups respectively. Figure 8 As shown, the data to be sent, S1, is divided into four groups of messages to be sent, with group identifiers C1, C2, C3, and C4, respectively. The data to be sent, S2, is divided into four groups of messages to be sent, with group identifiers D1, D2, D3, and D4, respectively. The data to be sent, S3, is divided into four groups of messages to be sent, with group identifiers E1, E2, E3, and E4, respectively.

[0131] like Figure 8 As shown, based on predetermined packet forwarding conditions and the physical address MAC1 of the first interface, twelve packet groups to be sent are first sent to the first interface G1. In some embodiments, when the third interface is a physical interface, based on predetermined packet forwarding conditions, each packet group to be sent is sent to the corresponding third interface, and the third interface then sends the packet group to be sent.

[0132] like Figure 8 As shown, based on the predetermined packet forwarding conditions and the physical address of the third interface, packets C1, C3, D1, D3, E1, and E3 are sent to the third interface P1, and packets C2, C4, D2, D4, E2, and E4 are sent to the third interface P2. Then, the third interface P1 sends packets C1, C3, D1, D3, E1, and E3, and the third interface P2 sends packets C2, C4, D2, D4, E2, and E4.

[0133] The destination device receives multiple packets to be sent from the network device. It then reassembles and sorts these packets according to their extended headers.

[0134] In this embodiment of the disclosure, the data to be transmitted can be divided into multiple message groups. The number of message groups into which the data to be transmitted can be determined based on the data transmission rate and the number of third interfaces. For example... Figure 8As shown, the data S1 to be sent can be divided into four message groups, or it can be divided into two message groups. The data to be sent can be divided into different numbers of message groups, but ultimately, when multiple message groups are forwarded to a third interface, the total data transmission rate of the multiple message groups is less than or equal to the data transmission rate of a single third interface.

[0135] Therefore, through the embodiments of this disclosure, when transmitting large data streams and with sufficient transmission rate at the egress port, the data to be sent can be distributed across multiple channels and paths based on the scheduling mapping of predetermined message group forwarding conditions to optimize network performance, avoid single-point overload problems, and thus ensure the overall high availability and stability of the network.

[0136] It is understood that embodiments of this disclosure may have multiple first interfaces. For example, first interface G1 and first interface G2. First interface G1 and first interface G2 each correspond to multiple third interfaces.

[0137] Figure 9 A block diagram of a network device according to an embodiment of the present disclosure is shown schematically;

[0138] like Figure 9 As shown, the network device 900 of this embodiment includes a communication interface 901, a memory 902, and a processor 903.

[0139] Communication interface 901 is configured to perform wireless communication with a terminal device. Memory 902 is used to store computer-readable instructions. Processor 903 is used to execute the aforementioned computer-readable instructions, causing the network device to perform the aforementioned data transmission method.

[0140] Figure 10 A block diagram illustrating a non-transitory computer-readable storage medium according to an embodiment of the present disclosure is shown schematically.

[0141] like Figure 10 As shown, a non-transitory computer-readable storage medium 1000 according to an embodiment of the present disclosure is used to store computer-readable instructions 1001, which, when executed by a processor, cause the processor to perform the data transmission method as described above.

[0142] Figure 11 A block diagram of a computer program product according to an embodiment of the present disclosure is shown schematically;

[0143] like Figure 11 As shown, a computer program product 1100 according to an embodiment of the present disclosure includes a computer program 1101, which, when executed by a processor, implements the data transmission method described above.

[0144] The above description, with reference to the accompanying drawings, illustrates a data transmission method, network device, storage medium, and computer program product according to embodiments of the present disclosure. The method involves receiving data to be transmitted via a first interface and determining data to be grouped for transmission from the data to be transmitted based on preset conditions. Then, based on a preset method, the data to be grouped for transmission is divided into one or more message groups to be transmitted. Further, the one or more message groups to be transmitted are transmitted through one or more third interfaces. This ensures the smooth transmission of the data to be transmitted while avoiding congestion during transmission.

[0145] The basic principles of this disclosure have been described above with reference to specific embodiments. However, it should be noted that the advantages, benefits, and effects mentioned in this disclosure are merely examples and not limitations, and should not be considered as essential features of each embodiment of this disclosure. Furthermore, the specific details disclosed above are for illustrative and facilitative purposes only, and are not limitations. These details do not limit the scope of this disclosure to the necessity of employing the aforementioned specific details for implementation.

[0146] The block diagrams of devices, apparatuses, devices, and systems disclosed herein are merely illustrative examples and are not intended to require or imply that they must be connected, arranged, or configured in the manner shown in the block diagrams. As those skilled in the art will recognize, these devices, apparatuses, devices, and systems can be connected, arranged, and configured in any manner. Words such as “comprising,” “including,” “having,” etc., are open-ended terms meaning “including but not limited to,” and are used interchangeably with them. The terms “or” and “and” as used herein refer to the terms “and / or,” and are used interchangeably with them unless the context clearly indicates otherwise. The term “such as” as used herein refers to the phrase “such as but not limited to,” and is used interchangeably with it.

[0147] Additionally, as used herein, the “or” used in a list of items beginning with “at least one” indicates a separate list, such that a list of, for example, “at least one of A, B, or C” means A or B or C, or AB or AC or BC, or ABC (i.e., A and B and C). Furthermore, the wording “exemplary” does not imply that the described example is preferred or better than other examples.

[0148] It should also be noted that in the systems and methods of this disclosure, the components or steps can be decomposed and / or recombined. These decompositions and / or recombinations should be considered as equivalent solutions to this disclosure.

[0149] Various changes, substitutions, and modifications can be made to the technology described herein without departing from the teachings defined by the appended claims. Furthermore, the scope of the claims of this disclosure is not limited to the specific aspects of the processes, machines, manufactures, events, means, methods, and actions described above. Currently existing or later-developed processes, machines, manufactures, events, means, methods, or actions that perform substantially the same function or achieve substantially the same result as the corresponding aspects described above can be utilized. Therefore, the appended claims include such processes, machines, manufactures, events, means, methods, or actions within their scope.

[0150] The above description of the disclosed aspects is provided to enable any person skilled in the art to make or use this disclosure. Various modifications to these aspects will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other aspects without departing from the scope of this disclosure. Therefore, this disclosure is not intended to be limited to the aspects shown herein, but rather to be carried out within the widest scope consistent with the principles and novel features disclosed herein.

[0151] The above description has been given for purposes of illustration and description. Furthermore, this description is not intended to limit the embodiments of this disclosure to the forms disclosed herein. Although numerous exemplary aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, alterations, additions, and sub-combinations thereof.

Claims

1. A data transmission method, characterized in that, The method includes: Receive data to be sent via the first interface; Based on predetermined grouping conditions, the data to be sent is divided into one or more message groups to be sent; The one or more message groups to be sent are transmitted via one or more second interfaces corresponding to the one or more message groups to be sent.

2. The data transmission method according to claim 1, characterized in that, The step of dividing the data to be sent into one or more message groups based on predetermined grouping conditions includes: Based on predetermined classification criteria, determine the data to be grouped and sent from the data to be sent; and Based on the predetermined grouping conditions, the data to be sent is divided into one or more message groups to be sent.

3. The data transmission method according to claim 1, characterized in that, The step of dividing the data to be sent into one or more message groups based on predetermined grouping conditions includes: Based on the required transmission rate of the data to be sent and the interface transmission rate of the one or more second interfaces, determine the data to be packetized and sent from the data to be sent; and Based on the predetermined grouping conditions, the data to be sent is divided into one or more message groups to be sent.

4. The data transmission method according to claim 2, characterized in that, The step of determining the data to be grouped and sent from the data to be sent based on predetermined classification conditions includes: Based on the message information of the data to be sent, determine the application category of the data to be sent; and The data to be sent that meets the predetermined classification conditions for the application category is determined as the data to be grouped and sent.

5. The data transmission method according to any one of claims 1 to 4, characterized in that, The step of dividing the data to be sent into one or more message groups based on predetermined grouping conditions includes: The data to be sent is divided into one or more message groups based on one or more of the following: the total message length of the group, the number of messages in the group, and the data throughput of the group.

6. The data transmission method according to claim 5, characterized in that, The one or more packets to be transmitted include a packet extension header, which indicates one or more of the following: The start of the message group to be sent, the end of the message group to be sent, the flow identifier of the message group to be sent, and the group identifier of the message group to be sent.

7. The data transmission method according to any one of claims 1 to 6, characterized in that, The physical address of the first interface is the physical address of one of the one or more second interfaces.

8. The data transmission method according to any one of claims 1 to 7, characterized in that, The transmission of the one or more groups of messages to be transmitted via one or more second interfaces respectively corresponding to the one or more groups of messages to be transmitted includes: Based on the predetermined message group forwarding conditions, determine the one or more third interfaces corresponding to the one or more message groups to be sent; If the one or more third interfaces are physical interfaces, the one or more groups of messages to be sent are transmitted via the one or more third interfaces; and If the one or more third interfaces are virtual interfaces, the one or more third interfaces are mapped to the one or more second interfaces, and the one or more groups of messages to be sent are sent via the one or more second interfaces.

9. A network device, characterized in that, include: The communication interface is configured to perform wireless communication with the terminal device. Memory, used to store computer-readable instructions; as well as A processor for executing the computer-readable instructions, causing the network device to perform the data transmission method as described in any one of claims 1 to 8.

10. A non-transitory computer-readable storage medium for storing computer-readable instructions, characterized in that, When computer-readable instructions are executed by the processor, the processor performs the data transmission method as described in any one of claims 1 to 8.

11. A computer program product, comprising a computer program, characterized in that, When a computer program is executed by a processor, it implements the data transmission method as described in any one of claims 1 to 8.