Upward transmission method and device of message

By obtaining message attributes to determine their set and selecting the optimal transmission channel, the problem of low data transmission efficiency in existing technologies is solved, achieving efficient load balancing and cost optimization.

CN116418733BActive Publication Date: 2026-04-21NANJING CENTCO COMM CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
NANJING CENTCO COMM CO LTD
Filing Date
2021-12-30
Publication Date
2026-04-21

AI Technical Summary

Technical Problem

In existing technologies, load balancing based on cell switching requires the addition of multiple cell headers, which is costly and has poor versatility. On the other hand, load balancing based on packet switching results in low utilization of the switching channel and requires additional packet buffering, leading to low data transmission efficiency.

Method used

By obtaining the target attributes of the uplink message, determining the message set to which it belongs, and selecting a matching transmission channel from multiple transmission channels for transmission, combined with a load balancing algorithm to select the optimal channel, efficient message transmission is achieved.

Benefits of technology

It improves data transmission efficiency, avoids switching channel congestion and additional buffering requirements, reduces design costs, and increases the utilization rate of switching channels.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116418733B_ABST
    Figure CN116418733B_ABST
Patent Text Reader

Abstract

This invention discloses an uplink transmission method and apparatus for messages, and a downlink transmission method and apparatus for messages. The uplink transmission method includes: obtaining target message attributes of a first uplink message, wherein the first uplink message is an uplink message preceding the second uplink message that belongs to the same data stream as the currently received second uplink message; determining a second message set to which the second uplink message belongs based on the target message attributes; determining a second transmission channel matching the second uplink message from multiple transmission channels based on the second message set; and submitting the second uplink message to the second transmission channel, wherein the second transmission channel is used to transmit the second uplink message. This technical solution solves the problem of low data transmission efficiency in related technologies.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of communications, and more specifically, to an uplink transmission method and apparatus for messages. Background Technology

[0002] To improve the transmission efficiency of Ethernet data streams, load balancing is required across various switching channels to prevent transmission efficiency degradation due to congestion on some channels. Currently, commonly used switching channel load balancing technologies mainly include cell-based switching load balancing and packet-based switching load balancing.

[0003] Cell-based load balancing requires adding multiple cell headers, and the cost of manufacturing the switching boards that implement cell switching is high, resulting in poor versatility and reusability. Packet-based load balancing divides each Ethernet data stream into time segments sequentially, processing one segment before moving on to the next, i.e., processing the segmented time segments serially. When only one switching channel is selected for transmission in each time segment, only one switching channel serves the current data stream at any given time, potentially leading to low link utilization of the switching channel. Furthermore, if the switching channel becomes congested, it not only further reduces channel utilization but also necessitates the design of additional packet buffers to store Ethernet packets that have been selected for switching paths but cannot be sent in time, thus increasing the design cost of the Ethernet switching chip.

[0004] No effective solutions have yet been proposed to address issues such as low data transmission efficiency in related technologies. Summary of the Invention

[0005] The present invention provides an uplink transmission method and apparatus for messages, and a downlink transmission method and apparatus for messages, so as to at least solve the problems of low data transmission efficiency in related technologies.

[0006] According to one embodiment of the present invention, an uplink transmission method for a message is provided, comprising: obtaining target message attributes of a first uplink message, wherein the first uplink message is an uplink message preceding the second uplink message that belongs to the same data stream as the currently received second uplink message;

[0007] The second message set to which the second uplink message belongs is determined based on the target message attributes;

[0008] Based on the second message set, a second transmission channel matching the second uplink message is determined from multiple transmission channels;

[0009] The second uplink message is submitted to the second transmission channel, wherein the second transmission channel is used to transmit the second uplink message.

[0010] Optionally, determining the second transmission channel matching the second uplink message from multiple transmission channels based on the second message set includes:

[0011] When the second message set includes the first uplink message, the second transmission channel is determined according to the first transmission channel among the plurality of transmission channels, wherein the first transmission channel is the transmission channel used to transmit the first uplink message;

[0012] If the second message set does not include the first uplink message, the second transmission channel is determined based on the transmission information of each of the plurality of transmission channels.

[0013] Optionally, determining the second transmission channel based on the first transmission channel among the plurality of transmission channels includes one of the following:

[0014] The first transmission channel is designated as the second transmission channel;

[0015] If the transmission load of the first transmission channel is less than or equal to the first load threshold, the first transmission channel is determined as the second transmission channel; if the transmission load of the first transmission channel is greater than the first load threshold, the second transmission channel is determined from the other transmission channels included in the plurality of transmission channels besides the first transmission channel.

[0016] Optionally, determining the second transmission channel based on the transmission information of each of the plurality of transmission channels includes one of the following:

[0017] The transmission channel with the smallest transmission load among the plurality of transmission channels is determined as the second transmission channel;

[0018] The second transmission channel is determined from the transmission channels whose transmission load is less than or equal to the second load threshold.

[0019] Optionally, determining the second message set to which the second uplink message belongs based on the target message attributes includes:

[0020] When the target message attribute is used to indicate that the first uplink message is the end message of the first message set, the next message set of the first message set is determined as the second message set, and the second uplink message is determined as the start message of the second message set;

[0021] If the target message attribute indicates that the first uplink message is not the end message of the first message set, the first message set is determined as the second message set, and the message information of the second uplink message is used to determine whether the second uplink message is the end message of the first message set.

[0022] Optionally, determining whether the second uplink message is the end message of the first message set based on the message information of the second uplink message includes:

[0023] If the message information includes target time information, and the time difference between the target time information and the time information corresponding to the start message of the first message set is greater than or equal to a time threshold, then the second uplink message is determined to be the end message of the first message set.

[0024] If the message information includes target time information, and the time difference between the target time information and the time information corresponding to the start message of the first message set is less than a time threshold, then the second uplink message is determined not to be the end message of the first message set.

[0025] If the message information includes target data information, and the total data between the target data information and the cumulative data information of the first message set is greater than or equal to a data threshold, then the second uplink message is determined to be the end message of the first message set.

[0026] If the message information includes target data information, and the total data between the target data information and the cumulative data information of the first message set is less than a data threshold, then the second uplink message is determined not to be the end message of the first message set.

[0027] Optionally, after determining the second uplink message as the start message of the second message set, the method further includes:

[0028] Add the set identifier of the second message set to the second uplink message.

[0029] According to another embodiment of the present invention, a downlink transmission method for a message is also provided, comprising: determining whether the target set identifier of the currently received target message set is consistent with the set identifier to be sent, wherein the target message set includes a plurality of downlink messages, and the plurality of downlink messages are assigned to the target message set according to the message attributes corresponding to the uplink messages sent by the transmitting device;

[0030] If the target set identifier matches the set identifier to be sent, forward the target message set; after all target message sets have been forwarded, adjust the set identifier to be sent to the next set identifier.

[0031] If the target set identifier does not match the set identifier to be sent, the target message set is cached.

[0032] Optionally, after caching the target packet set, the method further includes:

[0033] Waiting for the set identifier to be sent to be adjusted;

[0034] If it is determined that the set identifier to be sent has been adjusted to the target set identifier, the target packet set is extracted from the cache and the target packet set is forwarded.

[0035] Optionally, determining whether the target set identifier of the currently received target message set matches the set identifier to be sent includes:

[0036] Determine the target data stream to which the target packet set belongs from multiple data streams to be forwarded;

[0037] The set identifier corresponding to the target data stream is obtained from the data stream and set identifier that have a corresponding relationship, and is used as the set identifier to be sent.

[0038] According to another embodiment of the present invention, an uplink transmission device for a message is also provided, comprising: an acquisition module, configured to acquire target message attributes of a first uplink message, wherein the first uplink message is an uplink message preceding the second uplink message that belongs to the same data stream as the currently received second uplink message;

[0039] The first determining module is used to determine the second message set to which the second uplink message belongs based on the target message attributes;

[0040] The second determining module is used to determine, based on the second message set, a second transmission channel that matches the second uplink message from multiple transmission channels;

[0041] The submission module is used to submit the second uplink message to the second transmission channel, wherein the second transmission channel is used to transmit the second uplink message.

[0042] According to another embodiment of the present invention, a downlink transmission device for a message is also provided, comprising: a fourth determining module, configured to determine whether the target set identifier of the currently received target message set is consistent with the set identifier to be sent, wherein the target message set includes a plurality of downlink messages, and the plurality of downlink messages are assigned to the target message set according to the message attributes corresponding to the uplink messages sent by the transmitting device;

[0043] The forwarding module is used to forward the target packet set when the target set identifier is consistent with the set identifier to be sent; and to adjust the set identifier to be sent to the next set identifier after all the target packet sets have been forwarded.

[0044] The first caching module is used to cache the target message set when the target set identifier is inconsistent with the set identifier to be sent.

[0045] According to another aspect of the present invention, a computer-readable storage medium is also provided, wherein a computer program is stored in the computer program, wherein the computer program is configured to execute the above-described uplink transmission method and downlink transmission method of the message when it is run.

[0046] According to another aspect of the present invention, an electronic device is also provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the above-described uplink transmission method and downlink transmission method of the message through the computer program.

[0047] In this embodiment of the invention, the target message attribute of the first uplink message is obtained, wherein the first uplink message is the preceding uplink message of the second uplink message belonging to the same data stream as the currently received second uplink message; the second message set to which the second uplink message belongs is determined based on the target message attribute; based on the second message set, a second transmission channel matching the second uplink message is determined from multiple transmission channels; the second uplink message is submitted to the second transmission channel, wherein the second transmission channel is used to transmit the second uplink message. That is, based on the target message attribute of the preceding uplink message of the second uplink message belonging to the currently received second uplink message belonging to the same data stream as the currently received second uplink message, the second message set to which the currently received second uplink message belongs is determined, and then a second transmission channel for transmitting the second message set is determined from multiple transmission channels. This achieves the rapid selection of a transmission channel matching the second message set by determining the second message set to which the currently received second uplink message belongs. By adopting the above technical solution, the problem of low data transmission efficiency in related technologies is solved, and the technical effect of improving data transmission efficiency is achieved. Attached Figure Description

[0048] The accompanying drawings, which are included to provide a further understanding of the invention and form part of this invention, illustrate exemplary embodiments of the invention and are used to explain the invention, but do not constitute an undue limitation of the invention. In the drawings:

[0049] Figure 1 This is a hardware structure block diagram of a computer terminal for an uplink transmission method and a downlink transmission method of a message according to an embodiment of the present invention.

[0050] Figure 2 This is a flowchart of an uplink transmission method for a message according to an embodiment of the present invention;

[0051] Figure 3 This is a schematic diagram of the uplink transmission method of a message according to an embodiment of the present invention;

[0052] Figure 4 This is a schematic diagram of the time window segmentation according to an embodiment of the present invention;

[0053] Figure 5 This is a structural block diagram of an uplink transmission device for a message according to an embodiment of the present invention;

[0054] Figure 6 This is a flowchart of a downlink transmission method for a message according to an embodiment of the present invention;

[0055] Figure 7 This is a flowchart illustrating a downlink transmission method for a message according to an embodiment of the present invention;

[0056] Figure 8 This is a flowchart illustrating the recording data stream of an Active WSN in the downlink transmission method of a message according to an embodiment of the present invention;

[0057] Figure 9 This is a schematic diagram of the structure of a switching chip implemented according to an embodiment of the present invention;

[0058] Figure 10 This is a structural block diagram of a downlink transmission device for a message according to an embodiment of the present invention. Detailed Implementation

[0059] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.

[0060] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0061] The method embodiments provided in this invention can be executed on a computer terminal, a computer terminal, or a similar computing device. Taking running on a computer terminal as an example, Figure 1 This is a hardware structure block diagram of a computer terminal for an uplink transmission method and a downlink transmission method for a message, according to an embodiment of the present invention. Figure 1 As shown, a computer terminal may include one or more ( Figure 1 Only one is shown in the diagram. A processor 102 (which may include, but is not limited to, a microprocessor MCU or a programmable logic device FPGA, etc.) and a memory 104 for storing data are also shown. In one exemplary embodiment, the computer terminal may further include a transmission device 106 for communication functions and an input / output device 108. Those skilled in the art will understand that... Figure 1 The structure shown is for illustrative purposes only and does not limit the structure of the computer terminal described above. For example, the computer terminal may also include components that are more complex than those described above. Figure 1 The more or fewer components shown, or having the same Figure 1 Equivalent functions or ratios shown Figure 1 The functions shown have more different configurations.

[0062] The memory 104 can be used to store computer programs, such as application software programs and modules, like the computer programs corresponding to the uplink and downlink transmission methods of messages in this embodiment of the invention. The processor 102 executes various functional applications and data processing by running the computer programs stored in the memory 104, thereby implementing the methods described above. The memory 104 may include high-speed random access memory and non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 104 may further include memory remotely located relative to the processor 102, and these remote memories can be connected to a computer terminal via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.

[0063] The transmission device 106 is used to receive or send data via a network. Specific examples of the network described above may include a wireless network provided by a communication provider for the computer terminal. In one example, the transmission device 106 includes a Network Interface Controller (NIC), which can connect to other network devices via a base station to communicate with the Internet. In another example, the transmission device 106 may be a Radio Frequency (RF) module used for wireless communication with the Internet.

[0064] This embodiment provides an uplink transmission method for messages, applied to the aforementioned computer terminal. Figure 2 This is a flowchart of an uplink transmission method for a message according to an embodiment of the present invention, the process including the following steps:

[0065] Step S202: Obtain the target message attribute of the first uplink message, wherein the first uplink message is the previous uplink message of the second uplink message that belongs to the same data stream as the currently received second uplink message;

[0066] Step S204: Determine the second message set to which the second uplink message belongs based on the target message attributes;

[0067] Step S206: Based on the second message set, determine the second transmission channel that matches the second uplink message from multiple transmission channels;

[0068] Step S208: Submit the second uplink message to the second transmission channel, wherein the second transmission channel is used to transmit the second uplink message.

[0069] Through the above steps, the set of second messages to which the currently received second uplink message belongs can be determined based on the target message attributes of the preceding uplink message belonging to the same data stream as the currently received second uplink message. Then, the second transmission channel for transmitting the second message set is determined from multiple transmission channels. This achieves the rapid selection of a matching transmission channel for the second message set by determining the set to which the currently received second uplink message belongs. This technical solution solves the problem of low data transmission efficiency in related technologies, achieving the technical effect of improving data transmission efficiency.

[0070] In the technical solution provided in step S202 above, the target message attributes of the first uplink message may include, but are not limited to, message attributes such as the SOW (Start Of Window) marker or the EOW (End of Window) marker.

[0071] In the technical solution provided in step S204 above, the second message set to which the currently received second uplink message belongs can be determined based on the target message attribute of the first uplink message, but is not limited to. The second message set may include, but is not limited to, multiple uplink messages.

[0072] In one exemplary embodiment, determining the second message set to which the second uplink message belongs may include, but is not limited to, the following:

[0073] In scenario one, if the target message attribute is used to indicate that the first uplink message is the end message of the first message set, the next message set of the first message set is determined as the second message set, and the second uplink message is determined as the start message of the second message set.

[0074] Optionally, in this embodiment, the first uplink message can be determined to be the end message of the first message set based on the EOW flag of the first uplink message, and the next message set of the first message set can be determined as the second message set, the currently received second uplink message can be determined as the start message of the second message set, and the SOW flag can be added to the second uplink message or the packet descriptor of the second uplink message.

[0075] In scenario two, if the target message attribute is used to indicate that the first uplink message is not the end message of the first message set, the first message set is determined as the second message set, and whether the second uplink message is the end message of the first message set is determined based on the message information of the second uplink message.

[0076] Optionally, in this embodiment, if the first uplink message is not the end message of the first message set, then the first uplink message and the second uplink message are in the same message set. It is possible, but not limited to, determining the first message set to which the first uplink message belongs as the second message set to which the currently received second uplink message belongs. It is possible, but not limited to, determining whether the second uplink message is the end message of the second message set based on the time when the second uplink message is received, or the data of the second uplink message, or the time when the packet descriptor of the second uplink message is generated, etc.

[0077] In an exemplary embodiment, determining whether the second uplink message is the end message of the first message set based on the message information of the second uplink message may include, but is not limited to, the following situations:

[0078] Scenario 1: If the message information includes target time information, and the time difference between the target time information and the time information corresponding to the start message of the first message set is greater than or equal to a time threshold, then the second uplink message is determined to be the end message of the first message set.

[0079] Scenario 2: If the message information includes target time information and the time difference between the target time information and the time information corresponding to the start message of the first message set is less than a time threshold, then it is determined that the second uplink message is not the end message of the first message set.

[0080] Optionally, in this embodiment, the target time information may include, but is not limited to, the time of receiving the second uplink message and the time of receiving the start message of the first message set, or the time of generating the packet descriptor of the second uplink message and the time of generating the packet descriptor of the start message of the first message set, etc.

[0081] Optionally, in this embodiment, the time threshold may include, but is not limited to, WCD (Worst Case Delay, longest delay of the switching path), or WCS (Worst Case Skew, maximum delay difference of the switching path), as well as time thresholds set according to the actual needs of transmitting messages, etc.

[0082] Optionally, in this embodiment, if the time difference between receiving the second uplink message and receiving the start message of the first message set is greater than or equal to a time threshold, or the time difference between generating the packet descriptor of the second uplink message and generating the packet descriptor of the start message of the first message set is greater than or equal to a time threshold, then the second uplink message is the end message of the first message set.

[0083] Optionally, in this embodiment, if the time difference between receiving the second uplink message and receiving the start message of the first message set is less than a time threshold, or the time difference between generating the packet descriptor of the second uplink message and generating the packet descriptor of the start message of the first message set is less than a time threshold, then the second uplink message is not the end message of the first message set.

[0084] In scenario 3, if the message information includes target data information and the total data between the target data information and the cumulative data information of the first message set is greater than or equal to a data threshold, the second uplink message is determined to be the end message of the first message set.

[0085] Scenario 4: If the message information includes target data information, and the total data between the target data information and the cumulative data information of the first message set is less than a data threshold, then it is determined that the second uplink message is not the end message of the first message set.

[0086] Optionally, in this embodiment, the data information may include, but is not limited to, the data volume of the second uplink message and the data volume of the messages accumulated in the first message set, or the data volume of the packet descriptor corresponding to the second uplink message and the data volume of the packet descriptor corresponding to the messages accumulated in the first message set, etc.

[0087] Optionally, in this embodiment, if the sum of the data volume of the received second uplink message and the data volume of the messages accumulated in the first message set is greater than or equal to the data threshold, or if the sum of the data volume of the packet descriptor of the received second uplink message and the data volume of the packet descriptor of the messages accumulated in the first message set is greater than or equal to the data threshold, then the second uplink message is the end message of the first message set.

[0088] Optionally, in this embodiment, if the sum of the data volume of the received second uplink message and the data volume of the messages accumulated in the first message set is less than the data threshold, or the sum of the data volume of the packet descriptor of the received second uplink message and the data volume of the packet descriptor of the messages accumulated in the first message set is less than the data threshold, etc., then the second uplink message is the end message of the first message set.

[0089] In one exemplary embodiment, after determining the second uplink message as the start message of the second message set, the set identifier of the second message set may be added in the following manner, but is not limited to: adding the set identifier of the second message set to the second uplink message.

[0090] Optionally, in this embodiment, if it is determined that the second uplink message is the starting message of the second message set, the set identifier of the second message set (such as: time window sequence number, data stream number to which the time window belongs, etc.) can be added to the second uplink message or the packet descriptor corresponding to the second uplink message.

[0091] In the technical solution provided in step S206 above, after determining the second message set to which the second uplink message belongs, a second transmission channel that can transmit the second message set can be determined from multiple transmission channels, but is not limited to.

[0092] In one exemplary embodiment, determining the second transmission channel that matches the second uplink message may include, but is not limited to, the following situations:

[0093] In scenario one, if the second message set includes the first uplink message, the second transmission channel is determined based on the first transmission channel among the plurality of transmission channels, wherein the first transmission channel is the transmission channel used to transmit the first uplink message.

[0094] Optionally, in this embodiment, if the second message set includes the first uplink message, then the first uplink message and the second uplink message may, but are not limited to, both be in the second message set, and the second transmission channel for transmitting the second uplink message may, but is not limited to, be determined based on the first transmission channel for transmitting the first uplink message.

[0095] In the second scenario, if the second message set does not include the first uplink message, the second transmission channel is determined based on the transmission information of each of the plurality of transmission channels.

[0096] Optionally, in this embodiment, if the second message set does not include the first uplink message, then the second uplink message may be, but is not limited to, the starting message of the second message set, and the second transmission channel may be determined based on, but is not limited to, the transmission load of multiple transmission channels, whether the transmission channel is idle, or the amount of data transmitted by the transmission channel, etc.

[0097] In one exemplary embodiment, the second transmission channel may be determined based on a first transmission channel among the plurality of transmission channels in one of the following ways:

[0098] Method 1: The first transmission channel is designated as the second transmission channel;

[0099] Optionally, in this embodiment, if the first uplink message and the second uplink message can be, but are not limited to, both in the second message set, then the first transmission channel for transmitting the first uplink message can be, but is not limited to, the second transmission channel for transmitting the second uplink message, thereby enabling the transmission of messages contained in the same message set through the same transmission channel.

[0100] Method 2: If the transmission load of the first transmission channel is less than or equal to the first load threshold, the first transmission channel is determined as the second transmission channel; if the transmission load of the first transmission channel is greater than the first load threshold, the second transmission channel is determined from the other transmission channels included in the plurality of transmission channels besides the first transmission channel.

[0101] Optionally, in this embodiment, if the transmission load of the first transmission channel is greater than the first load threshold, a transmission channel with a transmission load less than or equal to the first load threshold can be randomly selected from multiple transmission channels other than the first transmission channel, or the transmission channel with the lightest transmission load can be selected from multiple transmission channels other than the first transmission channel as the second transmission channel. This enables the FLB (Flow Load Balancing) to be notified through flow control when the transmission channel becomes congested. The FLB can immediately split the packet set of packets that have not yet been transmitted through the transmission channel and reselect the transmission channel. This reduces the possibility of further deterioration of bandwidth utilization if transmission channel congestion occurs. In addition, there is no need to store Ethernet packets that cannot be sent out in time due to the current transmission channel congestion.

[0102] In one exemplary embodiment, the second transmission channel may be determined, but is not limited to, by one of the following methods, based on the transmission information of each of the plurality of transmission channels:

[0103] Method 1: The transmission channel with the smallest transmission load among the multiple transmission channels is determined as the second transmission channel.

[0104] Optionally, in this embodiment, if the second uplink message is the starting message of the second message set, the second transmission channel can be determined by, but is not limited to, the idlest transmission channel among multiple transmission channels or the transmission channel with the least amount of cumulative data transmitted, thereby achieving traffic balancing among transmission channels.

[0105] Method 2: Determine the second transmission channel from among the transmission channels whose transmission load is less than or equal to the second load threshold.

[0106] In the technical solution provided in step S208 above, the second uplink message is submitted to the second transmission channel for transmitting the second uplink message. This realizes the determination of the transmission channel of the messages contained in the second message set by the second message set to which the second uplink message belongs, shortens the delay time between transmitting multiple uplink messages, and improves the efficiency of message transmission.

[0107] To better understand the process of the uplink transmission method of the above message, the implementation flow of the uplink transmission method of the above message will be described below in conjunction with optional embodiments, but it is not intended to limit the technical solution of the embodiments of the present invention.

[0108] This embodiment provides an uplink transmission method for messages. Figure 3 This is a schematic diagram of the uplink transmission method of a message according to an embodiment of the present invention, as shown below. Figure 3 As shown, the specific steps include the following:

[0109] Step S301: Receive message;

[0110] Step S302: Segment the time window to which the received packets belong (i.e., the aforementioned target packet set). In order to achieve load balancing between switching channels, the same data stream needs to be sent through multiple switching channels, so it is first necessary to segment the time window corresponding to each data stream. Figure 4 This is a schematic diagram of time window segmentation according to an embodiment of the present invention. After receiving packet descriptors, the FLB divides all packet descriptors belonging to the same flow into multiple time windows. The time window used by the FLB to select and switch switching paths is called a "Link Window". The number of Link Windows for each data flow can be determined according to its traffic volume, user configuration, or other methods. Each Link Window selects one switching channel to transmit data. When segmenting Link Windows, the FLB processes based on packet descriptors, and the data is transmitted in parallel on the corresponding switching channel. Flow Recording (FR) uses this Link Window to sort the data flow. Each data flow can be segmented into one or more time windows according to its traffic volume or other methods. Each time window can contain one or more complete Ethernet packets.

[0111] The size of each time window (link window) can be determined, but is not limited to, by one of the following methods:

[0112] Method 1: The size of the time window is determined based on the duration. The first packet descriptor of each time window is marked with SOW and then the timing starts. When the duration of the time window exceeds a certain value, the current packet descriptor is marked with EOW to indicate the end of the time window. The time value used to determine the end of the time window can be WCD time, WCS time, or a configurable time.

[0113] Method 2: The size of the time window is determined based on the amount of data sent. The first packet descriptor of each time window is marked with SOW, and then the amount of data contained in the current time window (e.g., number of bytes) is counted. When the counted amount of data exceeds a certain value, the current packet descriptor is marked with EOW to indicate the end of this time window. The value used to compare the amount of data can be a configured value or can be determined automatically based on the bandwidth of the switching channel.

[0114] Method 3: Passive time window segmentation. In addition to the active time window segmentation methods mentioned above, there are other segmentation methods, such as passive time window segmentation. When the switching channel becomes congested, flow control can notify the FLB, and the FLB can immediately perform time window segmentation and switching channel reselection. This reduces the possibility of further deterioration of bandwidth utilization when switching channel congestion occurs, and there is no need to store Ethernet packets that cannot be sent out in time due to the current switching channel congestion.

[0115] Step S303: Generate time window number WSN. After FLB divides the time window, the selected time window number WSN is placed in the corresponding position of the packet descriptor to sort the FR.

[0116] Step S304: Select a switching channel for the segmented time window. After the time window is segmented, FLB will select a suitable switching channel for each time window based on the load of the switching channels. Through data stream segmentation and switching channel selection, load balancing among the switching channels is achieved.

[0117] Meanwhile, FLB processes packet descriptor information. Although packet descriptors are processed sequentially, the length of the data packet corresponding to each packet descriptor can cause varying degrees of "stretching" on the switching channel. Figure 4As shown, the time difference between processing packet descriptors in the first and second time windows is 'a'. Therefore, the time interval between sending the first data packet in each of these two time windows is also 'a'. Due to the "lengthening" of the packet, the second time window begins sending data packets while the first time window is still sending them. This allows each switching channel to transmit data simultaneously, achieving parallel transmission of the switching channels and improving the utilization of switching bandwidth.

[0118] Step S305: Transmit the packets contained in the time window through the selected switching channel. After FLB processing is complete and the switching channel selection is finished, the Ethernet packets corresponding to the packet descriptors need to be read from the packet buffer and sent downlink through the selected switching channel. On the switched network, each switching channel selects a fixed forwarding path to ensure that the forwarding delay of all data packets within the same time window is consistent. In this way, data packets within the same time window do not need to be rearranged, and FR only needs to rearrange the order between time windows.

[0119] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods of the various embodiments of the present invention.

[0120] Figure 5 This is a structural block diagram of an uplink transmission device for a message according to an embodiment of the present invention; as shown below. Figure 5 As shown, it includes:

[0121] The acquisition module 52 is used to acquire the target message attribute of the first uplink message, wherein the first uplink message is the previous uplink message of the second uplink message that belongs to the same data stream as the currently received second uplink message;

[0122] The first determining module 54 is used to determine the second message set to which the second uplink message belongs based on the target message attributes;

[0123] The second determining module 56 is used to determine, based on the second message set, a second transmission channel that matches the second uplink message from multiple transmission channels;

[0124] The submission module 58 is used to submit the second uplink message to the second transmission channel, wherein the second transmission channel is used to transmit the second uplink message.

[0125] Through the above embodiments, the set of second messages to which the currently received second uplink message belongs can be determined based on the target message attributes of the preceding uplink message belonging to the same data stream as the currently received second uplink message. Then, a second transmission channel for transmitting the second message set can be determined from multiple transmission channels. This achieves the rapid selection of a transmission channel matching the second message set by determining the set to which the currently received second uplink message belongs. By adopting the above technical solution, the problem of low data transmission efficiency in related technologies is solved, achieving the technical effect of improving data transmission efficiency.

[0126] In one exemplary embodiment, the second determining module includes:

[0127] The first determining unit is configured to determine the second transmission channel based on the first transmission channel among the plurality of transmission channels when the second message set includes the first uplink message, wherein the first transmission channel is the transmission channel used to transmit the first uplink message;

[0128] The second determining unit is configured to determine the second transmission channel based on the transmission information of each of the plurality of transmission channels when the second message set does not include the first uplink message.

[0129] In one exemplary embodiment, the first determining unit is configured to:

[0130] The first transmission channel is designated as the second transmission channel;

[0131] If the transmission load of the first transmission channel is less than or equal to the first load threshold, the first transmission channel is determined as the second transmission channel; if the transmission load of the first transmission channel is greater than the first load threshold, the second transmission channel is determined from the other transmission channels included in the plurality of transmission channels besides the first transmission channel.

[0132] In one exemplary embodiment, the second determining unit is used for one of the following:

[0133] The transmission channel with the smallest transmission load among the plurality of transmission channels is determined as the second transmission channel;

[0134] The second transmission channel is determined from the transmission channels whose transmission load is less than or equal to the second load threshold.

[0135] In an exemplary embodiment, the first determining module includes:

[0136] The third determining unit is configured to, when the target message attribute indicates that the first uplink message is the end message of the first message set, determine the next message set of the first message set as the second message set, and determine the second uplink message as the start message of the second message set;

[0137] The fourth determining unit is configured to determine the first message set as the second message set when the target message attribute indicates that the first uplink message is not the end message of the first message set, and to determine whether the second uplink message is the end message of the first message set based on the message information of the second uplink message.

[0138] In one exemplary embodiment, the fourth determining unit is configured to:

[0139] If the message information includes target time information, and the time difference between the target time information and the time information corresponding to the start message of the first message set is greater than or equal to a time threshold, then the second uplink message is determined to be the end message of the first message set.

[0140] If the message information includes target time information, and the time difference between the target time information and the time information corresponding to the start message of the first message set is less than a time threshold, then the second uplink message is determined not to be the end message of the first message set.

[0141] If the message information includes target data information, and the total data between the target data information and the cumulative data information of the first message set is greater than or equal to a data threshold, then the second uplink message is determined to be the end message of the first message set.

[0142] If the message information includes target data information, and the total data between the target data information and the cumulative data information of the first message set is less than a data threshold, then the second uplink message is determined not to be the end message of the first message set.

[0143] In one exemplary embodiment, the apparatus further includes:

[0144] The third determining module is used to add the set identifier of the second message set to the second uplink message after determining the second uplink message as the start message of the second message set.

[0145] This embodiment provides a downlink transmission method for messages, applied to the aforementioned computer terminal. Figure 6 This is a flowchart of a downlink transmission method for a message according to an embodiment of the present invention, the process including the following steps:

[0146] Step S602: Determine whether the target set identifier of the currently received target message set is consistent with the set identifier to be sent, wherein the target message set includes multiple downlink messages, and the multiple downlink messages are assigned to the target message set according to the message attributes corresponding to the uplink messages sent by the sending device;

[0147] Step S604: If the target set identifier is consistent with the set identifier to be sent, forward the target message set; after all target message sets have been forwarded, adjust the set identifier to be sent to the next set identifier.

[0148] Step S606: If the target set identifier is inconsistent with the set identifier to be sent, the target message set is cached.

[0149] Through the above steps, it is determined whether the target set identifier of the currently received target message set is consistent with the set identifier to be sent. The target message set includes multiple downlink messages, which are assigned to the target message set based on the message attributes corresponding to the uplink messages sent by the transmitting device. If the target set identifier and the set identifier to be sent are consistent, the target message set is forwarded. After all target message sets have been forwarded, the set identifier to be sent is adjusted to the next set identifier. If the target set identifier and the set identifier to be sent are inconsistent, the target message set is cached. That is, the target message set includes multiple downlink messages assigned based on the message attributes corresponding to the uplink messages sent by the transmitting device. If the target set identifier of the currently received target message set is consistent with the set identifier to be sent, the target message set is forwarded; if the target set identifier of the currently received target message set is inconsistent with the set identifier to be sent, the target message set is cached. This achieves sorting of the received target message sets by set identifier, ensuring the correct order of the forwarded message sets. By adopting the above technical solution, the problem of low data transmission efficiency in related technologies is solved, and the technical effect of improving data transmission efficiency is achieved.

[0150] In the technical solution provided in step S602 above, the target set identifier of the received target message set and the set identifier to be sent may, but are not limited to, be set identifiers belonging to the same data stream message set, or set identifiers belonging to different data stream message sets, etc.

[0151] In one exemplary embodiment, it can be determined, but is not limited to, whether the target set identifier of the currently received target message set is consistent with the set identifier to be sent by: determining the target data stream to which the target message set belongs from multiple data streams to be forwarded; obtaining the set identifier corresponding to the target data stream from data streams and set identifiers with corresponding relationships as the set identifier to be sent.

[0152] Optionally, in this embodiment, it is possible, but not limited to, determining the target data stream to which the target message set belongs, and determining whether the target data stream's target set identifier is consistent with the target set identifier based on the target data stream's target set identifier.

[0153] In the technical solution provided in step S604 above, if the received target message set is the message set to be sent in the target data stream to which the target message set belongs, the target message set can be forwarded, but is not limited to forwarding the target message set; after all the target message sets have been forwarded, the set identifier of the target data stream to which the target message set belongs is adjusted to the next set identifier.

[0154] In the technical solution provided in step S606 above, if the received target message set is not the message set to be sent in the target data stream to which the target message set belongs, the target message set can be cached and the target data stream can continue to wait for the message set to be sent.

[0155] In one exemplary embodiment, the cached target packet set may be forwarded in the following manner, but is not limited to: waiting for the set identifier to be sent to be adjusted; and if it is determined that the set identifier to be sent has been adjusted to the target set identifier, retrieving the target packet set from the cache and forwarding the target packet set.

[0156] Optionally, in this embodiment, if the set identifier to be sent of the target data stream has been adjusted to the target set identifier of the received target message set, the target message set is extracted from the cache and forwarded, ensuring the correct order of forwarding message sets belonging to the target data stream.

[0157] To better understand the process of the downlink transmission method of the above message, the implementation flow of the downlink transmission method of the above message will be described below in conjunction with optional embodiments, but it is not intended to limit the technical solution of the embodiments of the present invention.

[0158] This embodiment provides a downlink transmission method for messages. Figure 7 This is a flowchart illustrating a downlink transmission method for a message according to an embodiment of the present invention, as shown below. Figure 7 As shown, the specific steps are as follows:

[0159] Step S701: Receive time window;

[0160] Step S702: Determine whether the WSN (Window Sequence Number) of the received time window (i.e., the aforementioned target set identifier) ​​is consistent with the Active WSN (Active Window Sequence Number) of the data stream to which the time window belongs (i.e., the aforementioned set identifier to be sent). FR will rearrange the order of time windows among the data streams to which the time window belongs based on the received time window number WSN.

[0161] Step S703: If the WSN of the time window received by each data stream is equal to the Active WSN, then the FR completes the sorting and directly sends the received time window. Whenever the FR determines that the sorting is complete, it sends the packet descriptors contained in the sorted window to the next-level module, thus completing the sorting process.

[0162] Step S704: If the received WSN is not equal to the Active WSN, buffer the time window until the Active WSN matches the WSN of the time window. If the time window number of the received time window is not equal to the time window sequence number that the data stream to which the time window belongs is waiting for, temporarily store the packet descriptor of the received time window in a buffer until the Active WSN matches the WSN of the time window before sending it.

[0163] When processing data, FR needs to record the ActiveWSN for each stream, which is the WSN that each data stream is currently waiting for. Figure 8 This is a flowchart illustrating the recording data stream of an Active WSN in the downlink transmission method of a message according to an embodiment of the present invention, as shown below. Figure 8 As shown, the ActiveWSN of each data stream starts from 0. Each time a time window is completed, the ActiveWSN is incremented by 1; otherwise, the current ActiveWSN value is maintained.

[0164] FR can determine whether the current time window has ended based on the EOW flag in the received packet descriptor. Uplink FLB only marks the last packet of each time window with the EOW flag, so the EOW flag can be directly used to determine the end of the time window.

[0165] From the sorting mechanism of FR, we can see that if the time between the next time window and the previous time window of a data stream is definitely greater than WCD, then once the packet descriptor of the next time window is received, it can be directly determined that the previous time window has ended. Figure 4 The diagram shows a "Flow Window". Flow Windows are used in FR (Flow Window) to determine the end of a time window. Each Flow Window can consist of multiple Link Windows, as described above. Figure 4 Each Flow Window of the data flow shown contains two Link Window.

[0166] When FLB divides the time window, it ensures that the interval between two flow windows is greater than WCD or a certain specific value. In this way, when FR receives data belonging to the third flow window, it can naturally determine that all link windows belonging to the first flow window have arrived.

[0167] In addition, FR receives data information from each Link Window. On the one hand, it records and maintains the information and status of each data in the Link Window. On the other hand, it sorts the multiple Link Windows contained in the Flow Window according to this information and status until the data information corresponding to all Link Windows has been confirmed to be received. Then the sorting of Flow Windows is completed and it can wait to be sent to the next level module.

[0168] This embodiment provides a method for transmitting messages. Figure 9 This is a schematic diagram of the structure of a switching chip implemented according to an embodiment of the present invention, as shown below. Figure 9As shown, an Ethernet switching chip typically consists of modules such as a Network Interface, a Fabric Interface, Ingress Packet Processing (IP), Egress Packet Processing (EPP), a Packet Buffer, Traffic Management (TM), Flow Load Balancing (FLB), and Flow Recording (FR). The FLB module is responsible for dividing the Ethernet data stream into multiple time windows according to selected rules, and then selecting a switching link to send the packets in each time window based on the load of the switching links. Since the latency of different switching links is different during transmission, the order in which the downlink line card receives data packets will be different from the original order of the data stream. The FR module rearranges the out-of-order input data stream to its original order. The reordered data packets are then sent out sequentially through the destination port, completing the forwarding process in the Ethernet switching device.

[0169] When transmitting uplink messages, Ethernet data packets are input through the network interface and stored in the packet buffer. The packet header is processed by the uplink packet processing module (IngressPP) to generate a packet descriptor, and then output through the FLB to select an appropriate switching interface (Fabric Interface).

[0170] In the uplink packet processing (Ingress PP), Ethernet data packets obtain their forwarding information based on the service processing results. This forwarding information may include: destination line card number, destination port number, priority, FLB flow number, etc. This forwarding information, along with information such as the Ethernet packet length, forms a packet descriptor and is sent to the FLB module. After selecting a switching channel, the FLB sends the Ethernet packet to the switching network through that channel.

[0171] When transmitting downlink packets, after the downlink data packets are input from the Fabric Interface, they are stored in the sorting buffer, then reordered by the Downlink Data Flow Sorting (FR) module, and processed by the Egress Packet Processing (EPRP) module before being sent out from the Network Interface. The Traffic Management module is responsible for functions such as traffic shaping, rate limiting, congestion avoidance, and hierarchical scheduling.

[0172] Within the entire Ethernet switching chip, the Network Interface, Fabric Interface, and Packet Buffer modules process complete Ethernet packets; the Ingress Packet Processing (Ingress PP), Egress Packet Processing (Egress PP), and Traffic Management / TM modules process packet headers or packet descriptors. The Uplink Load Balancing (FLB) and Downlink Flow Ordering (FR) modules also process packet descriptors, not complete Ethernet packets.

[0173] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods of the various embodiments of the present invention.

[0174] Figure 10 This is a structural block diagram of a downlink transmission device for a message according to an embodiment of the present invention; as shown below. Figure 10 As shown, it includes:

[0175] The fourth determining module 102 is used to determine whether the target set identifier of the currently received target message set is consistent with the set identifier to be sent, wherein the target message set includes multiple downlink messages, and the multiple downlink messages are assigned to the target message set according to the message attributes corresponding to the uplink messages sent by the sending device;

[0176] The forwarding module 104 is used to forward the target packet set when the target set identifier is consistent with the set identifier to be sent; and to adjust the set identifier to be sent to the next set identifier after all the target packet sets have been forwarded.

[0177] The first caching module 106 is used to cache the target message set when the target set identifier is inconsistent with the set identifier to be sent.

[0178] Through the above embodiments, the target message set includes multiple downlink messages divided according to the message attributes corresponding to the uplink messages sent by the sending device. If the target set identifier of the currently received target message set matches the set identifier to be sent, the target message set is forwarded; if the target set identifier of the currently received target message set does not match the set identifier to be sent, the target message set is cached. This achieves sorting of the received target message sets by set identifier, ensuring the correct order of the forwarded message sets. By adopting the above technical solution, the problem of low data transmission efficiency in related technologies is solved, achieving the technical effect of improving data transmission efficiency.

[0179] In one exemplary embodiment, the apparatus further includes:

[0180] The second caching module is used to wait for the adjustment of the set identifier to be sent after caching the target message set;

[0181] The extraction module is used to extract the target packet set from the cache and forward the target packet set when it is determined that the set identifier to be sent has been adjusted to the target set identifier.

[0182] In one exemplary embodiment, the fourth determining module includes:

[0183] The fifth determining unit is used to determine the target data stream to which the target packet set belongs from multiple data streams to be forwarded;

[0184] The acquisition unit is used to acquire the set identifier corresponding to the target data stream from the data stream and set identifier that have a corresponding relationship, and use it as the set identifier to be sent.

[0185] Embodiments of the present invention also provide a storage medium comprising a stored program, wherein the program, when executed, performs any of the methods described above.

[0186] Optionally, in this embodiment, the storage medium may be configured to store program code for performing the following steps:

[0187] S11, obtain the target message attribute of the first uplink message, wherein the first uplink message is the previous uplink message of the second uplink message that belongs to the same data stream as the currently received second uplink message;

[0188] S12, determine the second message set to which the second uplink message belongs based on the target message attributes;

[0189] S13, based on the second message set, determine the second transmission channel that matches the second uplink message from multiple transmission channels;

[0190] S14, the second uplink message is submitted to the second transmission channel, wherein the second transmission channel is used to transmit the second uplink message.

[0191] Optionally, in this embodiment, the storage medium may also be configured to store program code for performing the following steps:

[0192] S21, determine whether the target set identifier of the currently received target message set is consistent with the set identifier to be sent, wherein the target message set includes multiple downlink messages, and the multiple downlink messages are assigned to the target message set according to the message attributes corresponding to the uplink messages sent by the sending device;

[0193] S22, if the target set identifier is consistent with the set identifier to be sent, forward the target message set; after all target message sets have been forwarded, adjust the set identifier to be sent to the next set identifier;

[0194] S23, if the target set identifier is inconsistent with the set identifier to be sent, the target message set is cached.

[0195] Embodiments of the present invention also provide an electronic device including a memory and a processor, the memory storing a computer program and the processor being configured to run the computer program to perform the steps in any of the above method embodiments.

[0196] Optionally, the electronic device may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor and the input / output device is connected to the processor.

[0197] Optionally, in this embodiment, the processor can be configured to perform the following steps via a computer program:

[0198] S11, obtain the target message attribute of the first uplink message, wherein the first uplink message is the previous uplink message of the second uplink message that belongs to the same data stream as the currently received second uplink message;

[0199] S12, determine the second message set to which the second uplink message belongs based on the target message attributes;

[0200] S13, based on the second message set, determine the second transmission channel that matches the second uplink message from multiple transmission channels;

[0201] S14, the second uplink message is submitted to the second transmission channel, wherein the second transmission channel is used to transmit the second uplink message.

[0202] Optionally, in this embodiment, the processor may also be configured to perform the following steps via a computer program:

[0203] S21, determine whether the target set identifier of the currently received target message set is consistent with the set identifier to be sent, wherein the target message set includes multiple downlink messages, and the multiple downlink messages are assigned to the target message set according to the message attributes corresponding to the uplink messages sent by the sending device;

[0204] S22, if the target set identifier is consistent with the set identifier to be sent, forward the target message set; after all target message sets have been forwarded, adjust the set identifier to be sent to the next set identifier;

[0205] S23, if the target set identifier is inconsistent with the set identifier to be sent, the target message set is cached.

[0206] Optionally, in this embodiment, the storage medium may include, but is not limited to, various media capable of storing program code, such as USB flash drives, read-only memory (ROM), random access memory (RAM), portable hard drives, magnetic disks, or optical disks.

[0207] Optionally, specific examples in this embodiment can refer to the examples described in the above embodiments and optional implementations, and will not be repeated here.

[0208] It is obvious to those skilled in the art that the modules or steps of the present invention described above can be implemented using general-purpose computing devices. They can be centralized on a single computing device or distributed across a network of multiple computing devices. Optionally, they can be implemented using computer-executable program code, thereby storing them in a storage device for execution by a computing device. In some cases, the steps shown or described can be performed in a different order than those presented herein, or they can be fabricated as separate integrated circuit modules, or multiple modules or steps can be fabricated as a single integrated circuit module. Thus, the present invention is not limited to any particular combination of hardware and software.

[0209] The above description is merely a preferred embodiment of the present invention and is not intended to limit the invention. Various modifications and variations can be made to the invention by those skilled in the art. Any modifications, equivalent substitutions, or improvements made within the principles of the present invention should be included within the scope of protection of the present invention.

Claims

1. A method for uplink transmission of a message, characterized in that, include: Obtain the target message attribute of the first uplink message, wherein the first uplink message is the previous uplink message of the second uplink message that belongs to the same data stream as the currently received second uplink message; The second message set to which the second uplink message belongs is determined based on the target message attributes; Based on the second message set, a second transmission channel matching the second uplink message is determined from multiple transmission channels; The second uplink message is submitted to the second transmission channel, wherein the second transmission channel is used to transmit the second uplink message; The step of determining the second message set to which the second uplink message belongs based on the target message attribute includes: when the target message attribute indicates that the first uplink message is the end message of the first message set, determining the next message set of the first message set as the second message set, determining the second uplink message as the start message of the second message set, and marking the packet descriptor of the second uplink message with a time window first packet identifier, wherein the first uplink message with the target message attribute being a time window last packet identifier is the end message of the first message set; when the target message attribute indicates that the first uplink message is not the end message of the first message set, determining the first message set as the second message set, and determining whether the second uplink message is the end message of the first message set based on the message information of the second uplink message. The step of determining the second transmission channel matching the second uplink message from multiple transmission channels based on the second message set includes: when the second message set includes the first uplink message, determining the second transmission channel based on a first transmission channel among the multiple transmission channels, wherein the first transmission channel is the transmission channel used to transmit the first uplink message; and when the second message set does not include the first uplink message, determining the second transmission channel based on the transmission information of each of the multiple transmission channels. The method further includes, after determining the second uplink message as the start message of the second message set, adding the set identifier of the second message set to the second uplink message, wherein the set identifier includes a time window sequence number. The step of determining whether the second uplink message is the end message of the first message set based on the message information of the second uplink message includes: determining that the second uplink message is the end message of the first message set when the message information includes target time information and the time difference between the target time information and the time information corresponding to the start message of the first message set is greater than or equal to a time threshold; determining that the second uplink message is not the end message of the first message set when the message information includes target time information and the time difference between the target time information and the time information corresponding to the start message of the first message set is less than a time threshold; determining that the second uplink message is the end message of the first message set when the message information includes target data information and the total data between the target data information and the cumulative data information of the first message set is greater than or equal to a data threshold; and determining that the second uplink message is not the end message of the first message set when the message information includes target data information and the total data between the target data information and the cumulative data information of the first message set is less than a data threshold.

2. The method according to claim 1, characterized in that, Determining the second transmission channel based on the first transmission channel among the plurality of transmission channels includes one of the following: The first transmission channel is designated as the second transmission channel; If the transmission load of the first transmission channel is less than or equal to the first load threshold, the first transmission channel is determined as the second transmission channel; if the transmission load of the first transmission channel is greater than the first load threshold, the second transmission channel is determined from the other transmission channels included in the plurality of transmission channels besides the first transmission channel.

3. The method according to claim 1, characterized in that, Determining the second transmission channel based on the transmission information of each of the plurality of transmission channels includes one of the following: The transmission channel with the smallest transmission load among the plurality of transmission channels is determined as the second transmission channel; The second transmission channel is determined from the transmission channels whose transmission load is less than or equal to the second load threshold.

4. An uplink transmission device for messages, characterized in that, include: The acquisition module is used to acquire the target message attributes of the first uplink message, wherein the first uplink message is the previous uplink message of the second uplink message that belongs to the same data stream as the currently received second uplink message; The first determining module is used to determine the second message set to which the second uplink message belongs based on the target message attributes; The second determining module is used to determine, based on the second message set, a second transmission channel that matches the second uplink message from multiple transmission channels; The submission module is used to submit the second uplink message to the second transmission channel, wherein the second transmission channel is used to transmit the second uplink message; The first determining module includes: a third determining unit, configured to, when the target message attribute indicates that the first uplink message is the end message of the first message set, determine the next message set of the first message set as the second message set, determine the second uplink message as the start message of the second message set, and add a time window first packet identifier to the packet descriptor of the second uplink message, wherein the first uplink message with the target message attribute being a time window last packet identifier is the end message of the first message set; and a fourth determining unit, configured to, when the target message attribute indicates that the first uplink message is not the end message of the first message set, determine the first message set as the second message set, and determine whether the second uplink message is the end message of the first message set based on the message information of the second uplink message; The second determining module includes: a first determining unit, configured to determine the second transmission channel based on a first transmission channel among the plurality of transmission channels when the second message set includes the first uplink message, wherein the first transmission channel is a transmission channel used to transmit the first uplink message; and a second determining unit, configured to determine the second transmission channel based on transmission information of each transmission channel among the plurality of transmission channels when the second message set does not include the first uplink message. It also includes: a third determining module, used to add the set identifier of the second message set to the second uplink message after determining the second uplink message as the start message of the second message set, wherein the set identifier includes a time window sequence number; The fourth determining unit is configured to: determine that the second uplink message is the end message of the first message set when the message information includes target time information and the time difference between the target time information and the time information corresponding to the start message of the first message set is greater than or equal to a time threshold; determine that the second uplink message is not the end message of the first message set when the message information includes target time information and the time difference between the target time information and the time information corresponding to the start message of the first message set is less than a time threshold; determine that the second uplink message is the end message of the first message set when the message information includes target data information and the total data between the target data information and the cumulative data information of the first message set is greater than or equal to a data threshold; and determine that the second uplink message is not the end message of the first message set when the message information includes target data information and the total data between the target data information and the cumulative data information of the first message set is less than a data threshold.

5. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a stored program, wherein the program, when executed, performs the method described in any one of claims 1 to 3.

6. An electronic device comprising a memory and a processor, characterized in that, The memory stores a computer program, and the processor is configured to execute the method described in any one of claims 1 to 3 through the computer program.

Citation Information

Patent Citations

  • Message shunting method and device

    CN103888364A

  • Fragmented data packet processing method and device

    CN110730143A