CN111800827A - Data transmission method, device and storage medium - Google Patents

Data transmission method, device and storage medium Download PDF

Info

Publication number
CN111800827A
CN111800827A CN202010544994.9A CN202010544994A CN111800827A CN 111800827 A CN111800827 A CN 111800827A CN 202010544994 A CN202010544994 A CN 202010544994A CN 111800827 A CN111800827 A CN 111800827A
Authority
CN
China
Prior art keywords
terminal
message
terminals
data
messages
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010544994.9A
Other languages
Chinese (zh)
Other versions
CN111800827B (en
Inventor
赖国强
梁文锦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Sundray Technologies Co ltd
Original Assignee
Shenzhen Sundray Technologies Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Sundray Technologies Co ltd filed Critical Shenzhen Sundray Technologies Co ltd
Priority to CN202010544994.9A priority Critical patent/CN111800827B/en
Publication of CN111800827A publication Critical patent/CN111800827A/en
Application granted granted Critical
Publication of CN111800827B publication Critical patent/CN111800827B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/06Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
    • H04W28/065Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information using assembly or disassembly of packets

Landscapes

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

Abstract

The embodiment of the application discloses a data transmission method, data transmission equipment and a computer readable storage medium, wherein the method comprises the following steps: obtaining the number of messages which are pre-sent to each terminal in the current statistical period; determining the division length of the message in the fragmentation mode according to the number of the messages; according to the division length, at least part of messages which are pre-sent to at least part of terminals in each terminal are fragmented; and transmitting the data after the fragmentation of the at least part of messages to the at least part of terminals in parallel.

Description

Data transmission method, device and storage medium
Technical Field
The present application relates to data transmission technologies, and in particular, to a data transmission method, device, and computer-readable storage medium.
Background
WIFI6 in the wireless fidelity (WIFI) standard, which is fully called ethernet 802.11.ax protocol, is a latest generation wireless local area network transmission technology. WIFI6 mainly uses Orthogonal Frequency Division Multiple Access (OFDMA) and multi-user multiple input multiple output (MU-MIMO) techniques. The MU-MIMO technology allows a router to communicate with multiple devices simultaneously, such as data required for transmitting to multiple terminals in parallel. The OFDMA technique divides a radio channel into a plurality of subchannels in a frequency domain to form Resource Units (RUs), and data to be transmitted may be carried in a corresponding RU, instead of occupying the entire channel, for transmission. In the related art, using MU-MIMO and OFDMA techniques, the WIFI6 router may carry data that needs to be sent to several terminals in parallel on RUs allocated to each terminal, and send these RUs carrying data in parallel. For convenience of description, these terminals are referred to as concurrent transmission terminals. Therefore, the method can realize the simultaneous parallel transmission of a plurality of users without queuing and mutual competition, improves the wireless transmission efficiency and reduces the transmission delay. In general, WIFI6 is suitable for low bandwidth application scenarios, and the transmission efficiency for packet data packets is higher. However, there are big packet data in addition to the small packet data in the service type of the terminal, that is, the WIFI6 router needs to send not only the small packet data to each terminal, but also the big packet data to the terminal.
For the situation that the data which needs to be sent to the terminal by the WIFI6 router in parallel comprises a big packet and a small packet, the following scheme is adopted in the related technology: the large packet data and the small packet data are both allocated to one RU, and in order to match the large packet data, the frequency band of the RU allocated to the large packet data and the small packet data is wide, and the transmission of the large packet data occupies more channel resources, which lengthens the whole parallel transmission time. To realize parallel transmission (simultaneous transmission), it is necessary to fill many invalid data in the RU occupied by the small packet data to realize parallel transmission with the large packet data. Thus, the transmission efficiency is significantly reduced. If large packet data is split into multiple RU bearers, the number of RUs that can be allocated to small packet data is reduced, resulting in a portion of the small packets not being sent to the terminal in a timely manner and only being transmitted in the next or subsequent transmission opportunity. In this case, the WIFI6 router needs to transmit the large packet data required by the terminal to a small number of terminals, and the transmission delay of most other terminals that need the small packet data becomes high as a whole, so that the experience of the user of the terminal that needs the small packet data is obviously reduced. Therefore, in the related art, under the condition that data transmitted to a terminal in parallel includes both big packet data and small packet data and/or the number of concurrent transmission terminals that need the WIFI6 router to send data to the concurrent transmission terminal is large, the WIFI6 router cannot fully exert the characteristics of low transmission delay, high transmission efficiency and the like.
Disclosure of Invention
In order to solve the existing technical problem, embodiments of the present application provide a data transmission method, a device, and a computer-readable storage medium.
The technical scheme of the embodiment of the application is realized as follows:
in a first aspect, an embodiment of the present application provides a data transmission method, where the method includes:
obtaining the number of messages which are pre-sent to each terminal in the current statistical period;
determining the division length of the message in the fragmentation mode according to the number of the messages;
according to the division length, at least part of messages which are pre-sent to at least part of terminals in each terminal are fragmented;
and transmitting the data after the fragmentation of the at least part of messages to the at least part of terminals in parallel.
In the foregoing aspect, the method further includes:
acquiring the number of terminals which are pre-sent to the message in the current statistical period;
determining whether to fragment the message according to the number of the terminals;
and under the condition of determining to fragment the message, determining the division length of the message according to the number of messages pre-sent to each terminal.
In the foregoing scheme, the division length is a division length for performing data link layer fragmentation and/or a division length for performing network layer fragmentation on a packet;
correspondingly, the determining the division length of the message for fragmentation according to the number of the messages includes:
acquiring the total number of messages to be sent to all terminals according to the number of messages to be sent to each terminal;
obtaining the ratio of the messages to be pre-sent to each terminal according to the number of the messages to be pre-sent to each terminal and the total number;
and determining the division length of the data link layer fragments and/or the network layer fragments of the message according to the ratio.
In the foregoing solution, the determining, according to the ratio, a division length for performing data link layer fragmentation and/or a division length for performing network layer fragmentation on a packet includes:
distributing a weighted value for each terminal according to the ratio;
obtaining the average length of the messages which are pre-sent to each terminal;
and determining the division length of the data link layer fragments and/or the network layer fragments of the message according to the average length of the message which is pre-sent to each terminal and the weight value distributed to each terminal.
In the foregoing solution, the fragmenting, according to the division length, at least part of the messages pre-sent by at least part of the terminals includes:
fragmenting at least part of messages pre-sent by at least part of terminals in each terminal at least according to the division length of data link layer fragmentation of the messages;
correspondingly, the sending, to the at least part of the terminals, the data obtained by fragmenting the at least part of the packets in parallel includes:
and transmitting the data subjected to data link layer fragmentation on the at least part of messages to the at least part of terminals in parallel.
In the above-mentioned scheme, the first step,
loading the data after the fragmentation of the at least part of the messages on resource units RU allocated to each at least part of the terminals;
and carrying out parallel transmission by utilizing each RU.
In the foregoing aspect, the method further includes:
comparing the division length with the length of each message pre-received by each terminal;
determining that a terminal with at least one message in the pre-received message and the length of the message being greater than the division length is the at least part of terminals;
and determining the message with the message length larger than the division length in each terminal of the at least part of terminals as the at least part of message.
In the foregoing solution, determining whether to fragment the packet according to the number of the terminals includes:
judging whether the number of the terminals is greater than or equal to a preset first threshold value or not;
and determining to fragment the message when the first threshold is greater than or equal to the first threshold.
In a second aspect, an embodiment of the present application provides a data transmission device, including:
the first obtaining unit is used for obtaining the number of messages which are pre-sent to each terminal in the current statistical period;
the first determining unit is used for determining the division length of the message in the fragmentation mode according to the number of the messages;
the fragmentation unit is used for fragmenting at least part of messages which are pre-sent to at least part of the terminals in the terminals according to the division length;
and the sending unit is used for sending the data after the fragmentation of at least part of messages to at least part of terminals in parallel.
In the foregoing solution, the apparatus further includes:
the second obtaining unit is used for obtaining the number of terminals which are pre-sent to the message in the current statistical period;
a second determining unit, configured to determine whether to fragment the packet according to the number of the terminals;
correspondingly, the first determining unit is configured to determine the division length for fragmenting the packet according to the number of packets that are pre-sent to each terminal when the second determining unit determines that the packet is fragmented.
In a third aspect, the present application provides a computer-readable storage medium, on which a computer program is stored, which when executed by a processor implements the steps of the foregoing method.
In a fourth aspect, an embodiment of the present application provides a data transmission device, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor executes the computer program to implement the steps of the foregoing method.
An embodiment of the application provides a data transmission method, a device and a computer readable storage medium, wherein the method comprises the following steps: obtaining the number of messages which are pre-sent to each terminal in the current statistical period; determining the division length of the message in the fragmentation mode according to the number of the messages; according to the division length, at least part of messages which are pre-sent to at least part of terminals in each terminal are fragmented; and transmitting the data after the fragmentation of the at least part of messages to the at least part of terminals in parallel.
According to the embodiment of the application, the concurrent transmission is realized by carrying out fragment division on the message. The data that can be applicable to routing equipment or switch to terminal parallel transmission not only include big packet data but also include packet data and/or need WIFI6 router or switch to send the data to its concurrent transmission terminal's that the quantity is more the situation, utilize the burst data to carry out concurrent transmission, can significantly reduce transmission delay, improve transmission efficiency.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings needed to be used in the description of the embodiments or the prior art will be briefly introduced below, it is obvious that the drawings in the following description are only embodiments of the present application, and for those skilled in the art, other drawings can be obtained according to the provided drawings without creative efforts.
Fig. 1 is a schematic diagram of an ethernet four-layer model according to an embodiment of the present application;
fig. 2 is a first schematic flow chart illustrating an implementation of a data transmission method according to an embodiment of the present application;
fig. 3 is a schematic diagram illustrating an implementation flow of a data transmission method according to an embodiment of the present application;
fig. 4 is a schematic flow chart illustrating an implementation of the data transmission method according to the embodiment of the present application;
fig. 5 is a schematic flow chart illustrating an implementation of the data transmission method according to the embodiment of the present application;
FIG. 6 is a schematic view of an application scenario according to an embodiment of the present application;
fig. 7 is a schematic flow chart illustrating an implementation of the data transmission method according to the embodiment of the present application;
fig. 8 is a schematic structural diagram of a data transmission device according to an embodiment of the present application;
fig. 9 is a schematic hardware configuration diagram of a data transmission device according to an embodiment of the present application.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the technical solutions in the embodiments of the present application will be described clearly and completely with reference to the accompanying drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application. In the present application, the embodiments and features of the embodiments may be arbitrarily combined with each other without conflict. The steps illustrated in the flow charts of the figures may be performed in a computer system such as a set of computer-executable instructions. Also, while a logical order is shown in the flow diagrams, in some cases, the steps shown or described may be performed in an order different than here.
Before describing aspects of the embodiments of the present application, technical terms that may be referred to in the embodiments of the present application will be described.
1) Parallel transmission, which may also be regarded as concurrent transmission, mainly refers to parallel transmission, and is used for transmitting data to at least two terminals simultaneously by a routing device or a switch. It can be understood that, because the WIFI6 router or switch adopts MU-MIMO technology, it has a parallel transmission function, and can transmit data required by each terminal to multiple terminals in parallel (simultaneously). Of course, the routing device in the embodiment of the present application also has a function of receiving data from each terminal.
2) RU (Resource Unit), can be considered as a channel Resource. The OFDMA technique divides a radio channel into a plurality of subchannels in the frequency domain, forming individual RUs. As to how many RUs the frequency domain resource of which bandwidth is divided into, there is a certain specification of the partial correlation protocol, such as theoretically 160MHz (megahertz) bandwidth can be divided into 74 RUs, and 80MHz bandwidth can be divided into 37 RUs.
3) Packet data and large packet data are two opposite concepts. The small packet data may be data with a small message length, and the large packet data may be data with a large message length.
4) Maximum Transmission Unit (MTU), which is the size of the Maximum once transmitted data provided by the data link layer to its upper layer, typically the network layer (IP) layer;
5) the Maximum Message Segment Size (MSS) is an option defined by a Transmission Control Protocol (TCP), and the MSS option is used for the Maximum data length that can be carried by each message Segment when the transceiver negotiates communication when the TCP connection is established.
In 4) and 5), those skilled in the art should know that, as shown in fig. 1, the model in ethernet includes four layers (the four-layer model is described in a hierarchy from bottom to top): the data link layer, the network layer (IP layer), the transport layer, and the application layer are examples, and data to be sent is sent by the application layer, and the application layer needs to transmit the data to be sent to the transport layer first, the transport layer adds a TCP header to the data to be sent, and the IP layer adds at least an IP header to obtain MTU data, and finally the data to be sent is sent in the form of MTU data. Theoretically, the length of the MSS message plus the length of the header data equals the MTU. Taking the TCP protocol as an example, assuming that the MSS is 1400 bytes of data to be transmitted, plus 20 bytes of IP header and 20 bytes of TCP header, the MTU is 1400+20+ 20-1600 bytes. In practical applications, if some other message information needs to be added before transmission, the MTU needs to add the length of other message. In a word, the MTU is the size of the message sent out last; and the MSS is the size of the data that needs to be sent out.
The following data transmission methods provided in the embodiments of the present application may be applied to a routing device or a switch. Further, the method is applied to the routing equipment or the switch adopting the WIFI6 technology.
The embodiment of the present application provides an embodiment of a data transmission method, which is applied to a routing device or a switch. The routing device may specifically be a router, such as a router using WIFI6 technology (WIFI6 router).
As shown in fig. 2, the method includes:
s101: obtaining the number of messages which are pre-sent to each terminal in the current statistical period;
in this step, the recipes of S101 to S104 are executed in units of statistical cycles. The statistical period is a preset value, and may be in units of minutes, hours, days, and the like, or may be in units of seconds, microseconds, and milliseconds. Preferably in minutes and hours. The routing equipment or the switch monitors or monitors the number of messages which need to be pre-sent to each terminal by the routing equipment or the switch in each statistical period.
S102: determining the division length of the message in the fragmentation mode according to the number of the messages;
in this step, the division length for fragmenting the messages pre-sent by each terminal is determined according to the number of the messages pre-sent to each terminal by the routing device or the switch.
S103: according to the division length, at least part of messages which are pre-sent to at least part of terminals in each terminal are fragmented;
in this step, the routing device or the switch may fragment each packet of each terminal according to the determined division length. And each message of part of terminals can be fragmented. And the partial messages of partial terminals can be fragmented. The specific setting is flexible according to the actual situation.
S104: and transmitting the data after the fragmentation of the at least part of messages to the at least part of terminals in parallel.
In this step, the routing device or the switch sends the fragmentation data of the partial messages at least to the partial terminals in parallel. For convenience of description, the fragmented data of the message is referred to as fragmented data.
The main body executing S101 to S104 is a routing device or a switch.
In S101-S104, concurrent transmission is realized by dividing the message into fragments. The data that can be applicable to routing equipment or switch to terminal parallel transmission not only include big packet data but also include packet data and/or need WIFI6 router or switch to send the more condition of the concurrent transmission terminal's of data quantity to it, utilize the burst data to carry out concurrent transmission, can split into burst data and carry out parallel transmission together with packet data with the big packet data that need split at least, can significantly reduce transmission delay, improve transmission efficiency.
The embodiment of the present application provides another embodiment of a data transmission method, which is applied to a routing device or a switch. The routing device may be specifically a router, such as a router using WIFI6 technology. As shown in fig. 3, the method includes:
s201: determining the number of terminals which are pre-sent to the messages in the current statistical period and the number of the messages which are pre-sent to each terminal;
in this step, the schemes of S201 to S205 are executed with the statistical period as a time unit. Statistical periods may be in units of minutes, hours, days, etc. And monitoring or monitoring the number of terminals which need the routing equipment or the switch to send messages to the terminals in advance in each statistical period and the number of messages which need the routing equipment or the switch to send messages to the terminals in advance in the corresponding number in each statistical period.
S202: determining whether to fragment the message according to the number of the terminals;
in this step, it is determined whether fragmentation of the pre-sent messages to each terminal in the statistical period is needed or not according to the number of the terminals to which the routing device or the switch is needed to send the messages to the routing device or the switch in the statistical period.
S203: under the condition that the message is determined to be fragmented, determining the division length of the message for fragmentation according to the number of messages pre-sent to each terminal;
according to the number of the terminals which need to send the messages to the routing equipment or the switch, the division length of the message which needs to be sent to each terminal in advance to be fragmented is determined according to the number of the messages which need to be sent to each terminal in advance by the routing equipment or the switch.
S204: according to the division length, at least part of messages pre-sent by at least part of terminals in each terminal are fragmented;
in this step, the routing device or the switch may fragment each packet of each terminal according to the determined division length. And each message of part of terminals can be fragmented. And the partial messages of partial terminals can be fragmented. The specific setting is flexible according to the actual situation.
S205: and at least transmitting the data after the fragmentation of the at least part of messages to at least part of the terminals in parallel.
In this step, the routing device or the switch sends, to at least some of the terminals, at least some of the messages that are to be received by some of the terminals in parallel, and the fragmented data is obtained.
The main body executing S201 to S205 is a routing device or a switch.
In the solutions shown in S201 to S205, it is determined whether the packet needs to be fragmented according to the determined number of terminals to which the packet needs to be sent by the routing device in advance in a statistical period. The scheme of whether the message is fragmented or not according to the number of the terminals is simple and easy to implement and popularize. And under the condition that the message is determined to be fragmented, determining the division length for dividing the message according to the number of the messages pre-sent to each terminal, dividing the fragment data of the message according to the division length, and sending the fragment data required by each terminal to at least part of terminals in parallel. The scheme can realize the division and the parallel transmission of the fragment data of the message, is suitable for the situation that the data which is transmitted to the terminal in parallel by the routing equipment or the switch comprises both big packet data and small packet data, and can avoid the problems of high transmission delay, low transmission efficiency and the like when the big packet data and the small packet data are transmitted in parallel in the related technology by using the scheme of carrying out the fragmentation on the message to carry out the division and the parallel transmission of the message data. That is, in the embodiment of the present application, a scheme of parallel transmission of large and small packet data may be implemented by performing fragment division on packet data and performing parallel transmission on fragment data. Compared with the related technology, the parallel transmission is carried out by utilizing the fragment data, the transmission time delay can be greatly reduced, and the transmission efficiency is improved.
In the foregoing embodiment, the division length is a division length for performing data link layer fragmentation on a packet and/or a division length for performing network layer fragmentation on a packet. That is, the division length is the aforementioned MTU length and/or MSS. As shown in fig. 4, the method further comprises:
s301: acquiring the total number of messages to be sent to all terminals according to the number of messages to be sent to each terminal;
in this step, the number of messages to be sent to each terminal is added to obtain the total number.
S302: obtaining the ratio of the messages to be pre-sent to each terminal according to the number of the messages to be pre-sent to each terminal and the total number;
in this step, the ratio of the messages to be pre-sent to a terminal is equal to the number/total number of the messages to be pre-sent to the terminal.
S303: and determining the division length of the data link layer fragments and/or the network layer fragments of the message according to the ratio.
In this step, the MTU length and/or the MSS are obtained according to the ratio of the pre-sent messages to each terminal.
S301 to S303 may be regarded as a further description of the foregoing scheme for determining the division length for fragmenting the packets pre-sent by each terminal according to the number of the packets pre-sent by each terminal.
The schemes shown in S301 to S303 are schemes for obtaining the MTU length and/or the MSS according to a ratio of the number of messages to the total number, which are pre-sent by each terminal. Accurate calculation of the division length can be realized. The large message data can be divided into fragments according to the MTU length in the data link layer and the MSS length in the network layer, so that fragment concurrent transmission of the large packet data is realized, and the problem of high transmission delay caused by integral concurrent transmission of the large packet data can be avoided. Therefore, the transmission time delay can be reduced, and the transmission efficiency can be improved.
In S303, the scheme of determining the division length of the data link layer fragment and/or the division length of the network layer fragment for the packet according to the ratio may also be implemented by the scheme shown in fig. 5.
As shown in fig. 5, the method includes:
s3031: distributing a weighted value for each terminal according to the ratio;
s3032: obtaining the average length of the messages which are pre-sent to each terminal;
s3033: and determining the division length of the data link layer fragments and/or the network layer fragments of the message according to the average length of the message which is pre-sent to each terminal and the weight value distributed to each terminal.
In S3031 to S3033, the weight values are assigned to each terminal according to the principle that the larger the proportion value of the pre-sent message to a terminal is, the larger the weight value assigned to the terminal is, and the sum of the weight values assigned to all terminals is 1. And correspondingly multiplying the weighted value distributed for each terminal with the average length of the message pre-sent to each terminal, and then summing to obtain the MTU length and/or the MSS. The scheme of calculating the MTU length and/or the MSS according to the average length of the messages which are pre-sent to each terminal and the weight values distributed to each terminal can ensure the calculation accuracy of the MTU length and/or the MSS.
As can be seen from the foregoing description of technical terms, the data that is finally sent in parallel by the routing device or the switch to the terminal is MTU data, and thus, according to the division length, the fragmentation of at least part of the packets that are pre-sent by at least part of the terminals may be: fragmenting at least part of messages pre-sent by at least part of terminals in each terminal according to at least the division length of data link layer fragmentation of the messages, namely according to the length of MTU; and transmitting data obtained by performing data link layer fragmentation on the at least part of messages pre-transmitted by the at least part of terminals to the at least part of terminals in parallel, namely transmitting fragmentation data of the target messages required by each target terminal to each target terminal in parallel.
In another embodiment of the foregoing, determining whether to fragment the packet according to the number of the terminals includes: judging whether the number of the terminals in the current statistical period is greater than or equal to a preset first threshold value or not; and determining to fragment the message when the first threshold is greater than or equal to the first threshold. The first threshold may be a preset value, such as 10, 20, or 30. Furthermore, the first threshold may also be a physical quantity that may be related to the number of concurrent transmission terminals supported by the routing device or the switch device, such as related to the maximum number of concurrent transmission terminals supported. Specifically, the first threshold is M (P/N), and P < N; m is the maximum number of concurrent transmission terminals supported by the routing device or switch, which may be determined by the hardware chip of the routing device or switch. The number is also typically fixed after a routing device or switch leaves the factory. P is a positive integer of 1 or more, such as P ═ 1, 2, and the like. N is a positive integer of 2 or more, for example, N-2, N-3, or the like. Taking P equal to 1 and N equal to 2 as an example, it is equivalent to determining whether the number of terminals is greater than or equal to half of the maximum number of concurrent transmission terminals supported by the routing device (1/2). Or taking P equal to 2 and M equal to 3 as an example, it is equivalent to 2/3 that determines whether the number of the terminals is greater than or equal to the maximum number of concurrent transmission terminals supported by the routing device, and if so, the packet is fragmented. And if not, not fragmenting the message. The scheme for determining whether to fragment the message or not according to the mode that whether the number of the terminals in the current statistical period is greater than or equal to the preset first threshold value is simple and easy to implement. In addition, the method also conforms to the practical application situation, and it can be understood that the WIFI6 router or switch in the related art cannot highlight the advantage of low transmission delay under the condition of a large number of concurrent transmission terminals, and can experience the advantage of low transmission delay under the condition of a small number of concurrent transmission terminals. In the embodiment of the application, when the number of the concurrent transmission terminals is greater than or equal to half of the maximum number of the concurrent transmission terminals supported by the routing device or the switch or 2/3, the concurrent transmission is realized by means of concurrently transmitting the fragment data after the message is fragmented, so that the problem of high transmission delay of the WIFI6 router or the switch when the number of the concurrent transmission terminals is large in the related art can be greatly avoided. That is, when the number of the concurrent transmission terminals is greater than or equal to half of the maximum number of the concurrent transmission terminals supported by the routing device or the switch, the concurrent transmission is realized by fragmenting and concurrently transmitting the fragment data to the packet, and the problem of high transmission delay in the case of a large number of the concurrent transmission terminals in the related art can be solved.
In the foregoing embodiment, before S103 and/or S204, the method further includes: and selecting the target terminal and the target message which needs to be pre-sent to the target terminal from the terminals of which the number is obtained in the current statistical period. Specifically, the division length determined in the current statistical period and the length of each message pre-received by each terminal in the current statistical period can be compared; determining a terminal with at least one message in the pre-received messages, wherein the length of the message is greater than the division length, as the target terminal; and determining the message with the message length larger than the division length in each terminal of at least part of the terminals as the target message. It is understood that the target terminal here corresponds to at least part of the terminals in S103 and/or S204, and the target message here corresponds to at least part of the messages in S103 and/or S204. That is, for each terminal that is obtained in the current statistical period and to which a message is to be sent, the message that is to be sent to each terminal does not need to be fragmented. Nor does all messages sent to one of the terminals need to be fragmented. And obtaining which terminal/terminals need to adopt the fragmentation mode to transmit message data in parallel through the division length determined in the current statistical period and the length of each message pre-received by each terminal in the current statistical period, and obtaining which message/messages of each terminal need to adopt the fragmentation mode to transmit in parallel in the terminal which needs to adopt the fragmentation mode. Therefore, the message fragmentation division and the concurrent transmission can be carried out on the terminal which needs to adopt the fragmentation mode to carry out the parallel transmission of the message data, and the message fragmentation division and the concurrent transmission can be carried out on the message which needs to adopt the fragmentation mode to carry out the parallel transmission, so that the targeted fragmentation division and the concurrent transmission can be realized, and the problem of resource waste caused by the fragmentation division and the concurrent transmission of all the messages of all the terminals can be avoided.
In the foregoing solution, before transmitting the fragmented data in parallel, the method further includes: loading the data after the target message is fragmented on RUs distributed to each at least part of terminals; and carrying out parallel transmission by utilizing each RU. Equivalently, the RUs pre-allocated to each target terminal are used for carrying and sending the fragment data or the whole message data of each target terminal, so that rapid and accurate concurrent transmission can be realized. In practical applications, after a routing device or a switch leaves a factory, the number of supportable maximum concurrent transmission terminals is usually fixed, and a certain number of RUs are allocated to the supportable maximum concurrent transmission terminals in advance. If the number of terminals requiring the routing device to send downlink message data in the current statistical period is smaller than the maximum concurrent transmission number supportable by the routing device, in each concurrent transmission process, an idle RU exists, and the idle RU is allocated to the target terminals for use according to the priority of the message data required by each target terminal, so as to avoid the waste of idle RU resources.
In the foregoing solution, a parallel sending function in a parallel transmission function of a routing device or an exchange is described, which can send message data required by each terminal to a plurality of terminals in parallel (simultaneously), and the routing device or the exchange further has a receiving function: the routing device or the switch can receive the message sent by each terminal according to the preset message receiving length. The predetermined message receiving length is a message receiving length which is allowed to be received by the routing equipment.
The technical solution of the embodiment of the present application is further described with reference to fig. 6 and 7.
Those skilled in the art should understand that both the routing device and the switch using the WIFI technology can be applied to the foregoing technical solution. In this application scenario, as shown in fig. 6, a routing device is described as a WIFI6 router, that is, the execution subject of S01 to S10 is the WIFI6 router.
In this application scenario, as shown in fig. 6, a plurality of user terminals in a unit or a company use the same WIFI6 router for data transmission, and a statistical period is 5 minutes for example. If in the same statistical period, some user terminals in the plurality of user terminals download data, software application packages and the like from the server side through the WIFI6 router; some user terminals receive voice data, video data or text data from opposite-end users through the WIFI6 router. The foregoing situation is considered as a situation in which the WIFI6 router needs to transmit data (packet data) obtained from the server or the opposite-end user terminal to the corresponding terminal in the unit, and is a situation in which the WIFI6 router transmits downlink data. The case of the WIFI6 router transmitting the upstream data may be transmitting data generated by a user terminal in a unit or a company to a server or other opposite user terminals. In this application scenario, the download data, the software application package, the voice data, the video data, or the text data sent by the WIFI6 router to the user terminal in the company or the unit, and the data generated by the user terminal in the unit or the company and to be transmitted to the server or the opposite end user through the WIFI6 router are all regarded as messages.
In the application scenario, the case that the WIFI6 router transmits downlink data is mainly taken as an example for explanation, and the case that the WIFI6 router transmits uplink data is taken as a secondary scheme for explanation. As shown in fig. 7, the following is detailed.
S01: and the WIFI6 router monitors the uplink and/or downlink message data in real time or at regular time.
In this step, it is preferable to monitor the uplink and downlink packet data at regular time, and also monitor the downlink packet data. A timing duration may be regarded as a statistical period, and if the timing duration is set to 5 minutes, uplink and/or downlink packet data is monitored every 5 minutes.
S02: according to the monitoring result, calculating the number of user terminals in a unit or a company which needs the WIFI6 router to send downlink message data in the current statistical period, such as the current 5 minutes;
in this step, the number of user terminals in the unit or company that needs the WIFI6 router to send the message to within the current 5 minutes is calculated according to the monitoring result. The WIFI6 router can identify whether the message data is uplink data or downlink data according to the monitored source of the message data. For example, in the case where a message data originating from a server or an opposite user terminal other than the user terminal inside a company or an organization is monitored, the message data is considered as downlink data. When message data generated by a user terminal originating in a company or a unit is monitored, the message data is regarded as uplink data. And calculating the number of the user terminals in the unit or the company needing the WIFI6 router to send the downlink message data in the current 5 minutes.
For convenience of description, the number of user terminals in a unit or a company requiring the WIFI6 router to send downlink message data in the current statistical period, such as the current 5 minutes, is regarded as the first number calculated in the current statistical period.
S03: judging whether the first number is greater than or equal to half of the maximum number of concurrent transmission terminals supported by the WIFI6 routing equipment;
if the judgment result is larger than or equal to the Maximum Transmission Unit (MTU) and the maximum transmission unit (MSS), the step S04 is executed;
if the judgment result is less than the preset threshold value, the MTU and the MSS are not adjusted, and concurrent transmission is carried out according to the processing flow in the related technology;
it can be understood that, in this step, the MTU and the MSS are adjusted when the number of the concurrent transmission terminals is smaller, mainly considering that the WIFI6 router adopts the OFDMA technology, and therefore, the advantages of low transmission delay and no waiting queue for the user terminal will be highlighted when the number of the concurrent transmission terminals is smaller. And in the case of a large number of concurrent transmissions, the aforementioned advantages will not be present or will be insignificant. Based on this, in this application scenario, in a case that the first number is greater than or equal to half of the maximum number of concurrent transmission terminals supported by the WIFI6 routing device, the procedure of adjusting the MTU and the MSS is started. It can be understood that half of the maximum number of concurrent transmission terminals supported by the WIFI6 routing device is the aforementioned first threshold; it may also be that the process of adjusting the MTU and MSS is initiated in the case that greater than or equal to 2/3, the maximum number of concurrent transmission terminals supported by the WIFI6 routing device. After the MTU and the MSS are adjusted, the large downlink message data are equivalently fragmented, the fragmented data are successively and parallelly transmitted, and the transmission effect can be equivalent to the transmission of small packet data or the concurrent transmission of a small number of terminals, so that the advantages of low transmission delay of a WIFI6 router and no waiting queue of user terminals can be greatly realized under the condition of large concurrent transmission number by the fragmented transmission.
S04: according to the monitoring result, calculating or counting the number of the downlink message data which are monitored in the current statistical period, such as the current 5 minutes and are sent to the corresponding user terminal in the unit, and the length of each downlink message sent to the corresponding user terminal; calculating the average message length sent to the corresponding terminal according to the number of each downlink message sent to each user terminal and the length of each downlink message;
for example, it is assumed that a unit or a company has 10 user terminals inside, but it is monitored that only three user terminals (terminal A, B and terminal C) need to send downlink messages in the current statistical period. For example, the total number of messages sent to the terminal a by the WIFI6 router is 10, and the average message length is 300 bytes. The total number of messages sent to the terminal B by the WIFI6 router is 5, and the average message length is 500 bytes. The total number of messages sent to terminal C is 2, and the average message length is 1000 bytes. The average message length is the sum of the byte numbers of all downlink messages which need to be sent to one of the user terminals in the current statistical period/the total number of the downlink messages sent to the user terminal in the current statistical period.
S05: calculating the total number of terminals which need to be sent by the WIFI6 router to downlink message data in the current statistical period, such as the current 5 minutes; calculating the ratio of the messages to be pre-sent to the corresponding terminal according to the number of the messages to be pre-sent to the corresponding terminal and the total number;
in this step, the ratio of the messages to be pre-sent to one of the terminals, such as the terminal a, is equal to the number of the pre-sent messages to the one of the terminals/the total number of the terminals which need the WIFI6 router to send downlink message data to the one of the terminals and are monitored in the current statistical period. For example, the ratio of the pre-sent message to the terminal a is 10/(10+5+2) 10/17; the ratio value of the message to be pre-sent to the terminal B is 5/(10+5+2) 5/17;
and the ratio of the pre-sent message to the terminal C is 2/(10+5+2) 2/17.
S06: distributing a weighted value for each terminal according to the ratio;
in this step, the weight value is distributed to each terminal according to the principle that the larger the proportion value of the pre-sent message to a terminal is, the larger the weight value distributed to the terminal is, and the sum of the weight values distributed to all terminals is 1. The calculation of the MTU length and the MSS is carried out according to the principle, so that the calculation accuracy can be ensured.
In practical application, the weighted value assigned to each terminal is rounded to the ratio calculated for the corresponding terminal, and if the ratio is a decimal, the weighted value can be rounded up or rounded up. Weight value w assigned to terminal A, e.g. rounded, by110/17 ═ 0.6; weight value w assigned to terminal B25/17 ═ 0.3; weight value w assigned to terminal C32/17 ═ 0.1. And an integer larger than the ratio value can be distributed to the terminal with the larger value of the ratio, and the sum of the weight values distributed to all the terminals is 1. For example, weight value w assigned to terminal A10.7; weight value w assigned to terminal B20.2; weight value w assigned to terminal C30.1. In summary, it is necessary to comply with the requirement that the larger the duty ratio in the embodiment of the present application, the larger the weight value assigned to the terminal, and the weights assigned to all terminalsThe sum of the values is 1. As can be appreciated. The principle is equivalent to that, in all terminals that need the WIFI6 router to send messages to the terminals in the current statistical period, the weight value allocated to the terminal that needs to send a large number of messages needs to be large, and the weight value allocated to the terminal that needs to send a small number of messages needs to be small. In other words, in these terminals, the MTU length is calculated mainly in consideration of the number of messages that the terminal that needs to send a large number of messages needs to receive, so that the MTU length in these terminals tends to meet the requirement of the terminal that needs to send a large number of messages preferentially.
S07: calculating the length of the MTU according to the weight value distributed to each terminal and the average message length calculated for each terminal;
in this step, the weighted values assigned to the terminals are multiplied by the average lengths of the messages pre-sent to the terminals, and then summed, so as to obtain the length of the MTU.
Weight value w assigned to terminal A10.7; weight value w assigned to terminal B20.2; weight value w assigned to terminal C3For example, MTU is 0.7 × 300+0.2 × 500+0.1 × 1000 and 410 bytes.
S08: calculating MSS according to the length of MTU;
in the ethernet, the length of MTU is reduced by 20 bytes of IP header and then reduced by 20 bytes of TCP header, i.e. the MSS is 410-20-20 is 370 bytes.
S09: selecting a target terminal and a target message from all terminals which need to send the message to the WIFI6 router and are monitored in the current statistical period;
in this step, for each terminal that is to send a message to the terminal in the current statistical period, the message that is to be sent to each terminal is not necessarily fragmented. Nor does all messages sent to one of the terminals need to be fragmented. Taking the terminal a as an example, in 10 messages which are pre-sent to the terminal a, comparing each message with the partition length calculated in the current statistical period, and regarding the message which is greater than the partition length as a target message. And regarding the terminal which needs to send the messages with the length larger than the division length as a target terminal, namely determining that the terminal which has at least one message in the pre-received message and has the length larger than the division length is the target terminal. If the length of 1 st to 5 th messages in 10 messages of the terminal A is larger than the division length, the 1 st to 5 th messages which are sent to the terminal A in advance are target messages, and the terminal A is a target terminal.
Therefore, the message fragmentation division and the concurrent transmission can be carried out on the terminal which needs to adopt the fragmentation mode to carry out the parallel transmission of the message data, and the message fragmentation division and the concurrent transmission can be carried out on the message which needs to adopt the fragmentation mode to carry out the parallel transmission, so that the targeted fragmentation division and the concurrent transmission can be realized, and the problem of resource waste caused by the fragmentation division and the concurrent transmission of all the messages of all the terminals can be avoided.
S10: the target messages of the target terminals are fragmented according to the division length, the fragmented data of each target terminal is loaded on RUs (remote units) distributed for each corresponding target terminal (a terminal requiring the WIFI6 router to send downlink message data in the current statistical period), and the WIFI6 router sends (transmits) the target (downlink) message data required by the target terminal to each target terminal in parallel at least by using the RUs distributed for the corresponding target terminal;
assuming that the length of the 1 st message of the 10 messages sent to terminal a is 500 and the MTU length is 410, the 1 st message data is divided into two pieces of fragmentation data (fragmentation data 1 of 410 bytes and fragmentation data 2 of 90 bytes), and fragmentation data 1 of 410 bytes is carried on an RU (such as RU1) allocated to terminal a. The length of the 1 st message of the 3 messages sent to terminal B is 510, the 1 st message data is divided into two pieces of fragmentation data (fragmentation data 1 of 410 bytes and fragmentation data 2 of 100 bytes), and fragmentation data 1 of 410 bytes is carried on an RU (such as RU2) allocated to terminal B. RU1 and RU2 are concurrently transmitted to the respective terminals (one concurrent transmission of RUs). Terminal a receives the sliced data carried by RU 1. Terminal B receives the sliced data carried by RU 2. RU1 carries 90 bytes of slice data and RU2 carries 100 bytes of slice data. RU1 and RU2 are again transmitted concurrently to the respective terminals. Terminal a receives the sliced data carried again by RU 1. Terminal B receives the sliced data carried again by RU 2. If the length of the 1 st message of the 3 messages sent to the terminal B is 310 and is smaller than the partition length calculated in the current statistical period, the entire message of 310 bytes is carried on the RU2 allocated to the terminal B. In one concurrent transmission of RU, terminal a receives RU1 carrying 410 bytes of fragment data 1 and terminal B receives RU2 carrying 310 bytes of entire message data.
The WIFI6 router in this application scenario includes an ethernet four-layer model as shown in fig. 1 inside. Because the downlink data sent to the terminal by the WIFI6 router should be sequentially transmitted from the four-layer model of the ethernet inside the WIFI6 router from top to bottom (application layer → transport layer → IP layer → data link layer), the MTU data is finally sent to the terminal. And fragmenting the message needing to be fragmented by MSS (370) at the IP layer, and fragmenting the message needing to be fragmented by MTU (410) at the data link layer. It can be understood that, because the message to be fragmented has been fragmented by MSS 370 at the IP layer, and a TCP header of 20 bytes is added in front of each fragmented data, after the IP layer data is transmitted to the data link layer, only 20 bytes of IP header are added in front of each fragmented data transmitted by the IP layer to obtain 410 bytes of MTU data that can be sent to the terminal.
For the concurrent transmission process, if the number of terminals which need the WIFI6 router to send downlink message data in the current statistical period is greater than or equal to the number of the maximum concurrent transmission terminals supported by the WIFI6 router, the number of the maximum concurrent transmission terminals is taken as the number of the concurrent terminals (this time) transmitted in the current statistical period. Otherwise, the actual number of the terminals to be transmitted is taken as the number of the concurrent terminals of the current transmission. That is, assuming that the number of the maximum concurrent transmission terminals supported by the WIFI6 router is 10, and the number of the terminals that need the WIFI6 router to send downlink packet data in the current statistical period is 11, in this case, taking 10 as one concurrent transmission unit, only the downlink packet data of 10 terminals of 11 terminals that need the WIFI6 router to send downlink packet data can be sent first, and the downlink packet data of the remaining terminal needs the WIFI6 router to transmit next time. If the number of the terminals which need the WIFI6 router to send downlink message data in the current statistical period is 7, the downlink data needed by the 7 terminals can be concurrently transmitted to the corresponding terminals from the WIFI6 router once.
In the foregoing scheme, since the WIFI6 router adopts the OFDMA technology, downlink message data sent to each terminal by the WIFI6 router needs to be carried on the RU for concurrent transmission. In the case that the bandwidth supported by the WIFI6 router is fixed, the number of divided RUs is also generally fixed. Such as an 80MHz bandwidth divided into 37 RUs. The WIFI6 router preferentially adopts a fair allocation principle, and allocates RU resources such as one or two RUs in advance for each terminal of the maximum number of concurrent transmission terminals which can be supported by the routing equipment, so as to transmit one message data. It can be understood that, in the case that the number of terminals that need to send downlink packet data in the current statistical period does not reach the number of maximum concurrent transmission terminals supported by the WIFI6 router, there are idle (remaining) RUs, and at this time, the idle RUs may be allocated to the terminals that need packet data for use according to the terminals that need packet data and the priority of the packet data that needs them. For example, assuming that the maximum number of concurrent transmission terminals supportable by the routing device is 10, each of the 10 terminals is allocated 3 RUs. According to the scheme, only 7 terminals (assumed to be 1 st to 7 th terminals) which need the WIFI6 router to concurrently transmit downlink data in the current statistical period are smaller than the number 10 of the maximum concurrent transmission terminals which can be supported by the routing device, and then the RU originally allocated to the 8 th to 10 th terminals is in an idle state and is an idle RU in the current statistical period, and the idle RU can be used as an RU for carrying data packets for at least one of the 1 st to 7 th terminals. The idle RUs are used as RUs of which terminal in the 1 st to 7 th terminals to the end, and can be determined according to the priority of message data transmitted by the WIFI6 router required by the 1 st to 7 th terminals. In practical applications, the transmission delay of the voice data is less than that of the video data than that of other data such as downloaded data, because the end user prefers to receive the voice data at the first time, but allows the received video data to have a certain loading delay, compared with the video data; some delay is allowed for the download process. It can be seen that the transmission priority of the voice data is higher than that of the video data than that of the download data. The remaining RU resources are preferentially allocated to terminals requiring voice data among the 1 st to 7 th terminals, secondly allocated to terminals requiring video data, and finally allocated to terminals requiring data download.
For a terminal which needs to send a plurality of messages, no matter which messages need to be fragmented and which messages do not need to be distributed, the messages are sent in sequence according to the monitoring sequence of each message of the terminal. If the message 1 required by the terminal 1 is monitored firstly, and then the message 2 required by the terminal 2 is monitored, the RU allocated to the terminal 1 is utilized, the message 1 is firstly loaded on the RU and the message data required by other terminals are subjected to one-time concurrent transmission, and then the message 2 is loaded on the RU and the message data required by other terminals are subjected to one-time concurrent transmission again. It can be understood that, since terminals that need to send multiple messages and all messages that need to send multiple messages do not need to be fragmented, for all terminals that need to send downlink messages to them by the WIFI6 router in the current statistical period, some RUs in one concurrent transmission of RUs may carry fragmented data of messages (needed by one terminal), and some RUs may carry entire (not needed to be fragmented) message data (needed by another terminal). In addition, it can also be preset that RU concurrent transmission is performed on the message data to be fragmented in each corresponding terminal, and RU concurrent transmission is performed on the message data not to be fragmented. This is not particularly limited.
The WIFI6 router carries the message data of the corresponding terminal, such as the fragment data, on the RU by using the RU resources allocated to the terminal which needs to send the downlink message data in the current statistical period of the WIFI6 router, carries out concurrent transmission of the RU, and concurrently transmits the message data needed by each corresponding terminal to each corresponding terminal.
The scheme is equivalent to that RU resources are distributed in the downlink transmission direction, and the downlink transmission efficiency is improved.
In the foregoing solution, a parallel sending function in the parallel transmission function of the routing device is described, which can send message data required by each terminal to multiple terminals in parallel. Furthermore, the routing device also has a receiving function: for uplink message data monitored by the WIFI6 router in the S01 in real time or at regular time, the WIFI6 router informs each terminal of the allowable message receiving length of the WIFI6 router for a single time through a protocol before receiving the uplink message data generated by each terminal in a unit or a company, and after knowing the message receiving length, each terminal in the unit or the company divides the uplink message generated by the WIFI6 router into pieces according to the message receiving length under the condition that the message length generated by the WIFI6 router is larger than the message receiving length, and directly sends the piece data to the WIFI6 router. The scheme is equivalent to that the terminal is a terminal which can not support the WIFI6 technology, the message length which can be received by the WIFI6 router each time is obtained in advance, and the (uplink) message is sent to the WIFI6 router according to the message length which can be received by the WIFI6 router each time. Certainly, the terminal may also be a terminal supporting the WIFI6 technology, and on the basis of knowing the length of the message that can be received by the WIFI6 router each time, and under the condition that the length of the message generated by the terminal is greater than the receiving length of the message, the uplink message generated by the terminal is divided into pieces according to the receiving length of the message, and the piece data is carried on the RU allocated to the terminal and sent to the WIFI6 router by using the RU. If the message length generated by the terminal is smaller than or equal to the message receiving length, the terminal does not need to divide the uplink message data, and the RU allocated to the terminal is used for sending the message data to the WIFI6 router. Taking the example that the terminal requests the server to download data, if the download request (uplink message data) of the terminal is greater than the message receiving length which can be received by the WIFI6 router at a single time, the download request is divided into fragments, the fragment data is loaded on the RU allocated to the terminal, and the RU is used for sending the fragment data to the WIFI6 router. And the WIFI6 router integrates the fragment data to obtain request data, and the request data is sent to the server to request for downloading data required by the terminal. The scheme is equivalent to that the RU resources are also allocated in the uplink transmission direction, so that the uplink transmission efficiency is improved.
According to the technical scheme, for the downlink message data monitored by the WIFI6 router, whether the MTU and the MSS are adjusted (in other words, whether the downlink message data are fragmented) can be determined by judging whether the number of the user terminals in a unit or a company which needs the WIFI6 router to send the downlink message data in the current statistical period is larger than or equal to half of the maximum number of the concurrent transmission terminals supported by the WIFI6 router. The scheme of whether the message is fragmented or not according to the number of the terminals is simple and easy to implement and popularize. Under the condition of deciding to adjust, the division length calculated in the current statistical period is utilized to carry out fragment division on the message, fragment data is borne on the corresponding RU, the RU is transmitted to the corresponding terminal in a concurrent mode, the concurrent transmission is realized by utilizing the fragment data mode, the transmission effect can be equivalent to the transmission of small packet data or the concurrent transmission of a small number of terminals, the condition that the data which is applicable to the routing equipment and is transmitted to the terminal in parallel not only comprises the large packet data but also comprises the small packet data is utilized to carry out the concurrent transmission, at least, the large packet data can be split into the fragment data and the small packet data to carry out the parallel transmission together, the transmission delay can be greatly reduced, and the transmission efficiency is improved. The problem of high transmission delay of the WIFI6 router when the number of concurrent transmission terminals is large in the related technology can be greatly solved. In other words, if the number of the concurrent transmission terminals is large in a statistical period, the downlink message data to be fragmented is concurrently transmitted by adopting the fragmented data, so that the transmission delay can be reduced, and the terminal user can check the required data in time. For the terminal user, the user experience can be greatly improved.
In addition, the embodiment of the application also has the following advantages:
1) by adjusting the size of the MTU and the MSS, the downlink message data which needs to be subjected to fragment transmission can be subjected to fragment transmission, and the transmission efficiency of the routing equipment adopting the OFDMA technology can be greatly improved;
2) dynamically deciding the size of the message fragments according to the number of the terminals which need to send the downlink message data to the routing equipment and the number of the messages sent to the terminals, which are monitored in each statistical period, namely correspondingly determining the division length in each statistical period according to the actual conditions monitored in each statistical period, thereby realizing the dynamic fragment division of the downlink message data according to the actual conditions;
3) the RU resources can be optimally distributed in the uplink and downlink transmission directions of the routing equipment adopting the OFDMA technology, and the uplink and downlink transmission efficiency of the OFDMA is improved.
In the foregoing application scenario, the routing device is exemplified as a WIFI6 router, and it can be understood that, besides the WIF 6 router, other devices such as a switch using OFDMA and MU-MIMO technologies may also implement the foregoing technical solution.
The present application provides an embodiment of a data transmission apparatus, as shown in fig. 8, including: a first obtaining unit 801, a first determining unit 802, a slicing unit 803, and a transmitting unit 804; wherein the content of the first and second substances,
a first obtaining unit 801, configured to obtain the number of messages to be pre-sent to each terminal in a current statistics period;
a first determining unit 802, configured to determine, according to the number of the packets, a division length for fragmenting the packets;
a fragmentation unit 803, configured to fragment, according to the division length, at least part of the messages that are pre-sent to at least part of the terminals;
a sending unit 804, configured to send, to the at least part of terminals, data obtained by fragmenting the at least part of messages in parallel.
In an optional aspect, the apparatus further comprises:
the second obtaining unit is used for obtaining the number of terminals which are pre-sent to the message in the current statistical period;
a second determining unit, configured to determine whether to fragment the packet according to the number of the terminals;
correspondingly, the first determining unit 802 is configured to determine, when the second determining unit determines that the packet is to be fragmented, a division length for fragmenting the packet according to the number of packets that are pre-sent to each terminal.
In an optional scheme, the division length is a division length for performing data link layer fragmentation on the packet and/or a division length for performing network layer fragmentation;
a first determining unit 802, configured to obtain the total number of messages to be pre-sent to all terminals according to the number of messages to be pre-sent to each terminal;
obtaining the ratio of the messages to be pre-sent to each terminal according to the number of the messages to be pre-sent to each terminal and the total number;
and determining the division length of the data link layer fragments and/or the network layer fragments of the message according to the ratio.
In an optional scheme, the first determining unit 802 is configured to assign a weight value to each terminal according to the ratio; obtaining the average length of the messages which are pre-sent to each terminal; and determining the division length of the data link layer fragments and/or the network layer fragments of the message according to the average length of the message which is pre-sent to each terminal and the weight value distributed to each terminal.
In an optional scheme, the fragmenting unit 803 is configured to fragment at least part of the messages that are pre-sent by at least part of the terminals in the terminals, at least according to the division length of data link layer fragmentation of the messages; correspondingly, the sending unit 804 is configured to send, to the at least part of the terminals, data obtained by performing data link layer fragmentation on the at least part of the packets in parallel.
In an optional scheme, the sending unit 804 is configured to carry the fragmented data of the at least part of the packet on resource units RU allocated to the at least part of the terminals; and carrying out parallel transmission by utilizing each RU.
In an optional aspect, the first determining unit 802 is configured to:
comparing the division length with the length of each message pre-received by each terminal;
determining that a terminal with at least one message in the pre-received message and the length of the message being greater than the division length is the at least part of terminals;
and determining the message with the message length larger than the division length in each terminal of the at least part of terminals as the at least part of message.
In an optional scheme, the second determining unit is configured to determine whether the number of the terminals is greater than or equal to a preset first threshold; and determining to fragment the message when the first threshold is greater than or equal to the first threshold.
It can be understood that the first obtaining Unit 801, the first determining Unit 802, and the slicing Unit 803 in the device can be implemented by a Central Processing Unit (CPU), a Digital Signal Processor (DSP), a Micro Control Unit (MCU), or a Programmable Gate Array (FPGA) in the terminal in practical applications; the sending unit 804 can be implemented by a communication module (including a basic communication suite, an operating system, a communication module, a standardized interface, a protocol, etc.) and a transceiving antenna in practical application.
It should be noted that, in the data transmission device according to the embodiment of the present application, because a principle of solving the problem of the data transmission device is similar to that of the data transmission method, both the implementation process and the implementation principle of the data transmission device can be described by referring to the implementation process and the implementation principle of the data transmission method, and repeated details are not repeated.
An embodiment of the present application further provides a computer-readable storage medium, on which a computer program is stored, where the computer program is configured to, when executed by a processor, perform at least the steps of the method shown in any one of fig. 1 to 7. The computer readable storage medium may be specifically a memory. The memory may be memory 62 as shown in fig. 9.
Fig. 9 is a schematic diagram of a hardware structure of a data transmission device according to an embodiment of the present application, and as shown in fig. 9, the data transmission device includes: a communication component 63 for data transmission, at least one processor 61 and a memory 62 for storing computer programs capable of running on the processor 61. The various components in the terminal are coupled together by a bus system 64. It will be appreciated that the bus system 64 is used to enable communications among the components. The bus system 64 includes a power bus, a control bus, and a status signal bus in addition to the data bus. For clarity of illustration, however, the various buses are labeled as bus system 64 in fig. 9.
Wherein the processor 61 executes the computer program to perform at least the steps of the method of any of fig. 1 to 7.
It will be appreciated that the memory 62 can be either volatile memory or nonvolatile memory, and can include both volatile and nonvolatile memory. Among them, the nonvolatile Memory may be a Read Only Memory (ROM), a Programmable Read Only Memory (PROM), an Erasable Programmable Read-Only Memory (EPROM), an Electrically Erasable Programmable Read-Only Memory (EEPROM), a magnetic random access Memory (FRAM), a Flash Memory (Flash Memory), a magnetic surface Memory, an optical disk, or a Compact Disc Read-Only Memory (CD-ROM); the magnetic surface storage may be disk storage or tape storage. Volatile memory can be Random Access Memory (RAM), which acts as external cache memory. By way of illustration and not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Synchronous Static Random Access Memory (SSRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), Double Data Rate Synchronous Dynamic Random Access Memory (DDRSDRAM), Enhanced Synchronous Dynamic Random Access Memory (ESDRAM), Enhanced Synchronous Dynamic Random Access Memory (Enhanced DRAM), Synchronous Dynamic Random Access Memory (SLDRAM), Direct Memory (DRmb Access), and Random Access Memory (DRAM). The memory 62 described in embodiments herein is intended to comprise, without being limited to, these and any other suitable types of memory.
The method disclosed in the above embodiments of the present application may be applied to the processor 61, or implemented by the processor 61. The processor 61 may be an integrated circuit chip having signal processing capabilities. In implementation, the steps of the above method may be performed by integrated logic circuits of hardware or instructions in the form of software in the processor 61. The processor 61 described above may be a general purpose processor, a DSP, or other programmable logic device, discrete gate or transistor logic device, discrete hardware components, or the like. The processor 61 may implement or perform the methods, steps and logic blocks disclosed in the embodiments of the present application. A general purpose processor may be a microprocessor or any conventional processor or the like. The steps of the method disclosed in the embodiments of the present application may be directly implemented by a hardware decoding processor, or implemented by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium located in the memory 62, and the processor 61 reads the information in the memory 62 and performs the steps of the aforementioned method in conjunction with its hardware.
In an exemplary embodiment, the data transmission Device may be implemented by one or more Application Specific Integrated Circuits (ASICs), DSPs, Programmable Logic Devices (PLDs), Complex Programmable Logic Devices (CPLDs), FPGAs, general purpose processors, controllers, MCUs, microprocessors (microprocessors), or other electronic components for performing the aforementioned data transmission method.
In the several embodiments provided in the present application, it should be understood that the disclosed apparatus and method may be implemented in other ways. The above-described device embodiments are merely illustrative, for example, the division of the unit is only a logical functional division, and there may be other division ways in actual implementation, such as: multiple units or components may be combined, or may be integrated into another system, or some features may be omitted, or not implemented. In addition, the coupling, direct coupling or communication connection between the components shown or discussed may be through some interfaces, and the indirect coupling or communication connection between the devices or units may be electrical, mechanical or other forms.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed on a plurality of network units; some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, all functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may be separately regarded as one unit, or two or more units may be integrated into one unit; the integrated unit can be realized in a form of hardware, or in a form of hardware plus a software functional unit.
Those of ordinary skill in the art will understand that: all or part of the steps for implementing the method embodiments may be implemented by hardware related to program instructions, and the program may be stored in a computer readable storage medium, and when executed, the program performs the steps including the method embodiments; and the aforementioned storage medium includes: a mobile storage device, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.
Alternatively, the integrated units described above in the present application may be stored in a computer-readable storage medium if they are implemented in the form of software functional modules and sold or used as independent products. Based on such understanding, the technical solutions of the embodiments of the present application may be essentially implemented or portions thereof contributing to the prior art may be embodied in the form of a software product stored in a storage medium, and including several instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the methods described in the embodiments of the present application. And the aforementioned storage medium includes: a removable storage device, a ROM, a RAM, a magnetic or optical disk, or various other media that can store program code.
The methods disclosed in the several method embodiments provided in the present application may be combined arbitrarily without conflict to obtain new method embodiments.
Features disclosed in several of the product embodiments provided in the present application may be combined in any combination to yield new product embodiments without conflict.
The features disclosed in the several method or apparatus embodiments provided in the present application may be combined arbitrarily, without conflict, to arrive at new method embodiments or apparatus embodiments.
The above description is only for the specific embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present application, and shall be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (12)

1.A method of data transmission, the method comprising:
obtaining the number of messages which are pre-sent to each terminal in the current statistical period;
determining the division length of the message in the fragmentation mode according to the number of the messages;
according to the division length, at least part of messages which are pre-sent to at least part of terminals in each terminal are fragmented;
and transmitting the data after the fragmentation of the at least part of messages to the at least part of terminals in parallel.
2. The method of claim 1, further comprising:
acquiring the number of terminals which are pre-sent to the message in the current statistical period;
determining whether to fragment the message according to the number of the terminals;
and under the condition of determining to fragment the message, determining the division length of the message according to the number of messages pre-sent to each terminal.
3. The method according to claim 1 or 2, wherein the partition length is a partition length for performing data link layer fragmentation and/or a partition length for performing network layer fragmentation on the packet;
correspondingly, the determining the division length of the message for fragmentation according to the number of the messages includes:
acquiring the total number of messages to be sent to all terminals according to the number of messages to be sent to each terminal;
obtaining the ratio of the messages to be pre-sent to each terminal according to the number of the messages to be pre-sent to each terminal and the total number;
and determining the division length of the data link layer fragments and/or the network layer fragments of the message according to the ratio.
4. The method according to claim 3, wherein said determining the length of data link layer fragmentation and/or the length of network layer fragmentation of the packet according to the fraction value comprises:
distributing a weighted value for each terminal according to the ratio;
obtaining the average length of the messages which are pre-sent to each terminal;
and determining the division length of the data link layer fragments and/or the network layer fragments of the message according to the average length of the message which is pre-sent to each terminal and the weight value distributed to each terminal.
5. The method according to claim 3, wherein the fragmenting, according to the partition length, at least part of the packets that are pre-sent by at least part of the terminals includes:
fragmenting at least part of messages pre-sent by at least part of terminals in each terminal at least according to the division length of data link layer fragmentation of the messages;
correspondingly, the sending, to the at least part of the terminals, the data obtained by fragmenting the at least part of the packets in parallel includes:
and transmitting the data subjected to data link layer fragmentation on the at least part of messages to the at least part of terminals in parallel.
6. The method according to claim 1 or 2,
loading the data after the fragmentation of the at least part of the messages on resource units RU allocated to each at least part of the terminals;
and carrying out parallel transmission by utilizing each RU.
7. The method according to claim 1 or 2, characterized in that the method further comprises:
comparing the division length with the length of each message pre-received by each terminal;
determining that a terminal with at least one message in the pre-received message and the length of the message being greater than the division length is the at least part of terminals;
and determining the message with the message length larger than the division length in each terminal of the at least part of terminals as the at least part of message.
8. The method of claim 2, wherein determining whether to fragment the packet according to the number of the terminals comprises:
judging whether the number of the terminals is greater than or equal to a preset first threshold value or not;
and determining to fragment the message when the first threshold is greater than or equal to the first threshold.
9. A data transmission device, comprising:
the first obtaining unit is used for obtaining the number of messages which are pre-sent to each terminal in the current statistical period;
the first determining unit is used for determining the division length of the message in the fragmentation mode according to the number of the messages;
the fragmentation unit is used for fragmenting at least part of messages which are pre-sent to at least part of the terminals in the terminals according to the division length;
and the sending unit is used for sending the data after the fragmentation of at least part of messages to at least part of terminals in parallel.
10. The apparatus of claim 9, further comprising:
the second obtaining unit is used for obtaining the number of terminals which are pre-sent to the message in the current statistical period;
a second determining unit, configured to determine whether to fragment the packet according to the number of the terminals;
correspondingly, the first determining unit is configured to determine the division length for fragmenting the packet according to the number of packets that are pre-sent to each terminal when the second determining unit determines that the packet is fragmented.
11.A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the steps of the method of any one of claims 1 to 8.
12. A data transmission device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the steps of the method of any one of claims 1 to 8 are carried out when the program is executed by the processor.
CN202010544994.9A 2020-06-15 2020-06-15 Data transmission method, device and storage medium Active CN111800827B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010544994.9A CN111800827B (en) 2020-06-15 2020-06-15 Data transmission method, device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010544994.9A CN111800827B (en) 2020-06-15 2020-06-15 Data transmission method, device and storage medium

Publications (2)

Publication Number Publication Date
CN111800827A true CN111800827A (en) 2020-10-20
CN111800827B CN111800827B (en) 2023-07-14

Family

ID=72804422

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010544994.9A Active CN111800827B (en) 2020-06-15 2020-06-15 Data transmission method, device and storage medium

Country Status (1)

Country Link
CN (1) CN111800827B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112688879A (en) * 2020-12-29 2021-04-20 联想未来通信科技(重庆)有限公司 Data limit value determining method and device
CN115051957A (en) * 2022-08-17 2022-09-13 北京左江科技股份有限公司 FPGA-based network message rapid fragmentation method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101488912A (en) * 2008-12-19 2009-07-22 华为技术有限公司 Method and apparatus for IP fragmentation
CN102014067A (en) * 2010-12-14 2011-04-13 北京星网锐捷网络技术有限公司 Message fragment sending method, device and network equipment
CN103188165A (en) * 2013-03-12 2013-07-03 神州数码网络(北京)有限公司 Intelligent router multipath output load balancing method and router
CN106161276A (en) * 2015-04-03 2016-11-23 华为技术有限公司 A kind of method and apparatus adjusting network traffics
CN110417650A (en) * 2019-08-02 2019-11-05 广东中兴新支点技术有限公司 Multilink data distribution method, device and electronic equipment

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101488912A (en) * 2008-12-19 2009-07-22 华为技术有限公司 Method and apparatus for IP fragmentation
CN102014067A (en) * 2010-12-14 2011-04-13 北京星网锐捷网络技术有限公司 Message fragment sending method, device and network equipment
CN103188165A (en) * 2013-03-12 2013-07-03 神州数码网络(北京)有限公司 Intelligent router multipath output load balancing method and router
CN106161276A (en) * 2015-04-03 2016-11-23 华为技术有限公司 A kind of method and apparatus adjusting network traffics
CN110417650A (en) * 2019-08-02 2019-11-05 广东中兴新支点技术有限公司 Multilink data distribution method, device and electronic equipment

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112688879A (en) * 2020-12-29 2021-04-20 联想未来通信科技(重庆)有限公司 Data limit value determining method and device
CN112688879B (en) * 2020-12-29 2023-08-22 联想未来通信科技(重庆)有限公司 Data limit value determining method and device
CN115051957A (en) * 2022-08-17 2022-09-13 北京左江科技股份有限公司 FPGA-based network message rapid fragmentation method

Also Published As

Publication number Publication date
CN111800827B (en) 2023-07-14

Similar Documents

Publication Publication Date Title
TWI363541B (en) Uplink contention based access with quick access channel
JP5568143B2 (en) Radio resource scheduling method, access network element and terminal
US11272392B2 (en) Buffer status report processing method and apparatus
CN110999385A (en) Method and apparatus relating to splitting bearers with an uplink in a new radio
EP1244229A2 (en) Variable bandwidth allocation in a satellite communication system
US20180241460A1 (en) Apparatus and method for accessing star network/mesh network of time division multiple access (tdma)/single channel per carrier (scpc) integrated satellite communication
CN108347782B (en) Method for sending and receiving uplink control information, terminal and base station
CN111800827A (en) Data transmission method, device and storage medium
RU2763775C1 (en) Method and wireless communication device
JP2020511891A (en) Buffer status reporting method, UE, buffer status reporting processing method, and network-side device
RU2734116C1 (en) Method and device for multiplexing resource of uplink enabling signal
CN108781375A (en) The method and apparatus of transmitting uplink data
CN108307426A (en) A kind of resource regulating method and device based on wireless tcp
US8503472B2 (en) Partial bandwidth request techniques in wireless networks
EP3589043A1 (en) Data transmission method, terminal device and network device
WO2017193675A1 (en) Uplink resource scheduling method and device
Qiao et al. Fair and efficient scheduling for telemedicine traffic transmission over wireless cellular networks
CN112333107A (en) Method, device and storage medium for determining strategy for sending downlink data
CN112566259B (en) Data transmission method, device, base station and storage medium
CN106664610B (en) Network controller, system and resource allocation method
CN111224761A (en) Uplink scheduling method and device
WO2023116403A1 (en) Buffer state report sending method and communication apparatus
CN111083734B (en) Data packet compression method and device
Bacco et al. A new RA-DA hybrid MAC approach for DVB-RCS2
WO2022155924A1 (en) Wireless communication method, terminal device, and network device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant