CN113766570A - Data sending method and device based on rate control and communication device - Google Patents

Data sending method and device based on rate control and communication device Download PDF

Info

Publication number
CN113766570A
CN113766570A CN202111137244.0A CN202111137244A CN113766570A CN 113766570 A CN113766570 A CN 113766570A CN 202111137244 A CN202111137244 A CN 202111137244A CN 113766570 A CN113766570 A CN 113766570A
Authority
CN
China
Prior art keywords
data
sent
time
transmitted
rate control
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.)
Pending
Application number
CN202111137244.0A
Other languages
Chinese (zh)
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.)
Spreadtrum Communications Shanghai Co Ltd
Original Assignee
Spreadtrum Communications Shanghai 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 Spreadtrum Communications Shanghai Co Ltd filed Critical Spreadtrum Communications Shanghai Co Ltd
Priority to CN202111137244.0A priority Critical patent/CN113766570A/en
Publication of CN113766570A publication Critical patent/CN113766570A/en
Pending legal-status Critical Current

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/16Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
    • H04W28/18Negotiating wireless communication parameters
    • H04W28/22Negotiating communication rate

Abstract

A data transmission method and device based on rate control and a communication device are provided, the method comprises the following steps: receiving one or more data to be sent, and determining that the data to be sent which is limited to be sent exists in the one or more data to be sent; if the number of the data supported by the terminal is larger than or equal to the number of the data allowed to be sent, determining a first time difference between the sending time of the first sent data and the receiving time of the data to be sent, and judging whether the first time difference is smaller than a rate control time unit or not; and if the first time difference is smaller than the rate control time unit, determining that the data to be transmitted, which is limited to be transmitted, needs to be discarded, and the data to be transmitted, which is not limited to be transmitted, can be transmitted. The invention can effectively reduce the system overhead and effectively improve the control precision.

Description

Data sending method and device based on rate control and communication device
Technical Field
The present invention relates to the field of communications technologies, and in particular, to a data transmission method and apparatus based on rate control, and a communication apparatus.
Background
Cellular Internet of Things (CIoT) is an Internet of Things that enables a terminal to access a mobile communication network through Narrowband Internet of Things (NB-IoT) technology, and can access a 5th Generation (5G) core network.
For an application scenario in which a large number of terminals access, the amount of data to be processed by the network side is very large, and in order to control the amount of data processed by the network side, improve wireless communication efficiency, and save terminal power, the network side needs to perform rate control on each terminal, that is, to limit the number of packets received and sent by the terminal in a unit time. The characteristics of the current rate control for terminals include: serving Public Land Mobile Network Rate Control (Serving Public Land Mobile Network Rate Control) and Access Point Name Rate Control (APN Rate Control). If the number of data packets sent by the terminal (User Equipment, UE) exceeds the limit number, the data packets whose sending is limited will be discarded.
In the prior art, the rate control is performed by adopting an algorithm of a sliding time window, and the problems of high system overhead, insufficient control precision and the like exist.
Disclosure of Invention
The technical problem to be solved by the invention is to provide a data transmission method and device based on rate control and a communication device, which can effectively reduce the system overhead and effectively improve the control precision.
In order to solve the above technical problem, an embodiment of the present invention provides a data transmission method based on rate control, including: receiving one or more data to be sent, and determining that the data to be sent which is limited to be sent exists in the one or more data to be sent; if the number of the data supported by the terminal is larger than or equal to the number of the data allowed to be sent, determining a first time difference between the sending time of the first sent data and the receiving time of the data to be sent, and judging whether the first time difference is smaller than a rate control time unit or not; and if the first time difference is smaller than the rate control time unit, determining that the data to be transmitted, which is limited to be transmitted, needs to be discarded, and the data to be transmitted, which is not limited to be transmitted, can be transmitted.
Optionally, determining that there is data to be sent that is limited to be sent in the one or more data to be sent includes: comparing the recorded amount of sent data with the allowed amount of sent data within the duration of a single rate control time unit; determining that the data to be sent is limited to be sent at least according to the condition that the number of the allowed sending data is smaller than the number of records of the sent data, or determining that the data to be sent which is limited to be sent exists in the data to be sent at least according to the condition that the number of the allowed sending data is smaller than the number of records of the sent data and the number of the data to be sent; and the quantity of the data to be transmitted which is limited to be transmitted is the difference value between the recorded quantity of the transmitted data and the quantity of the data which is allowed to be transmitted.
Optionally, the data sending method further includes: and if the first time difference is larger than or equal to the rate control time unit, clearing the record of the sending time of at least one part of sent data, and updating the record quantity of the sent data in the rate control time unit.
Optionally, if the first time difference is greater than or equal to the rate control time unit, clearing the record of the sending time of at least a part of the sent data includes: if the first time difference is larger than or equal to the rate control time unit, continuously judging whether the first time difference between the sending time of the next sent data and the receiving time of the data to be sent is smaller than the rate control time unit or not until the sent data with the first time difference smaller than the rate control time unit is obtained, or determining that the first time differences between the sending times of all the sent data and the receiving time of the data to be sent are larger than or equal to the rate control time unit; for the sent data with the first time difference smaller than the rate control time unit, clearing the record of the sending time of all the sent data before the sent data; and clearing the records of the sending time of all the sent data under the condition that the first time difference between the sending time of all the sent data and the receiving time of the data to be sent is greater than or equal to the rate control time unit.
Optionally, the data sending method further includes: determining whether the data to be sent which is limited to be sent secondarily exists in the one or more data to be sent again according to the updated record number of the sent data; and if so, determining that the data to be transmitted which is secondarily limited to be transmitted needs to be discarded, and the data to be transmitted which is not secondarily limited to be transmitted can be transmitted.
Optionally, the data sending method further includes: updating one or more of the following items each time after the data to be sent is sent: a record number of data sent within the rate control time unit; a transmission time instant at which data has been transmitted within the rate control time unit.
Optionally, the data sending method further includes: if the number of the terminal supporting data is less than the number of the data allowed to be sent, determining a second time difference between a preset time of a sending time period of the first sending data and a receiving time of the data to be sent, and judging whether the second time difference is less than a rate control time unit or not, wherein the sending time period is determined according to the rate control time unit and the number of the terminal supporting data; and if the second time difference is smaller than the rate control time unit, determining that the data to be transmitted, which is limited to be transmitted, needs to be discarded, and the data to be transmitted, which is not limited to be transmitted, can be transmitted.
Optionally, the data sending method further includes: and if the second time difference is larger than or equal to the rate control time unit, clearing the record of the sending time period in which at least a part of the sent data is positioned, and updating the record quantity of the sent data in the rate control time unit.
Optionally, if the second time difference is greater than or equal to the rate control time unit, clearing the record of the sending time period in which at least a part of the sent data is located includes: if the second time difference is greater than or equal to the rate control time unit, continuously judging whether a second time difference between a preset time of a sending time period of the next sent data and the receiving time of the data to be sent is smaller than the rate control time unit or not until the sent data of which the second time difference is smaller than the rate control time unit is obtained, or determining that the second time differences between the preset time of the sending time periods of all the sent data and the receiving time of the data to be sent are greater than or equal to the rate control time unit; for the sent data of which the second time difference is smaller than the rate control time unit, clearing the record of the sending time period of all the sent data before the sent data; and clearing records of the sending time periods of all the sent data under the condition that second time differences between preset times of the sending time periods of all the sent data and the receiving time of the data to be sent are larger than or equal to the rate control time unit.
Optionally, the preset time is selected from: start time, center time, end time.
Optionally, the data sending method further includes: determining whether the one or more data to be sent have data to be sent which is limited to be sent again according to the updated record number of the sent data; if so, determining that the data to be transmitted which is not limited to be transmitted again needs to be discarded, and transmitting the data to be transmitted which is not limited to be transmitted again can be transmitted.
Optionally, the data sending method further includes: updating one or more of the following items each time after the data to be sent is sent: a record number of data sent within the time unit; a sending time period in which the data is sent in the time unit; the number of transmissions of the transmission time period within which data has been transmitted within the time unit.
Optionally, the rate control time unit is equally divided to obtain a plurality of sending time periods; wherein, the number of the equally divided parts is the number of the data supported by the terminal.
Optionally, before determining that there is data to be sent that is limited to be sent in the one or more data to be sent, the data sending method further includes: if the number of the data supported by the terminal is more than or equal to the number of the data allowed to be sent, recording the sending time of each sent data; and if the number of the data supported by the terminal is less than the number of the data allowed to be transmitted, recording the number of the data transmitted in each transmission time period.
Optionally, the data to be sent is a PDU sent from the NAS of the terminal to the AS in an uplink manner.
To solve the above technical problem, an embodiment of the present invention provides a data transmission apparatus based on rate control, including: the device comprises a limitation determining module, a data transmission module and a data transmission module, wherein the limitation determining module is used for receiving one or more data to be transmitted and determining that the data to be transmitted which is limited to be transmitted exists in the one or more data to be transmitted; a time difference determining module, configured to determine, when the number of data supported by the terminal is greater than or equal to the number of data allowed to be sent, a first time difference between a sending time of first sent data and a receiving time of the data to be sent, and determine whether the first time difference is smaller than a rate control time unit; and a discard transmission determining module, configured to determine that the to-be-transmitted data whose transmission is limited needs to be discarded and the to-be-transmitted data whose transmission is not limited can be transmitted when the first time difference is smaller than the rate control time unit.
To solve the above technical problem, an embodiment of the present invention provides a computer-readable storage medium, on which a computer program is stored, the computer program being executed by a processor to perform the steps of the above data transmission method based on rate control.
In order to solve the above technical problem, an embodiment of the present invention provides a communication apparatus, including a memory and a processor, where the memory stores a computer program capable of being executed on the processor, and the processor executes the steps of the data transmission method based on rate control when executing the computer program.
Compared with the prior art, the technical scheme of the embodiment of the invention has the following beneficial effects:
in the embodiment of the present invention, when there is to-be-sent data whose sending is limited, according to that the number of data supported by the terminal is greater than or equal to the number of data allowed to be sent, the sending time of the sent data can be recorded, and further, according to a first time difference between the sending time of the first sent data and the receiving time of the to-be-sent data, it can be determined whether to discard or send the to-be-sent data whose sending is limited. Compared with the prior art in which a sliding time window algorithm is adopted for rate control, the scheme of the embodiment of the invention can judge whether to be discarded or to be sent only when data to be sent is received, does not need to maintain a periodic timer, can effectively reduce the system overhead, can refine the sending time of each sent data, and effectively improve the control precision.
Further, in the rate control time unit, it is determined that there is data to be transmitted that is limited to be transmitted in the data to be transmitted at least according to the fact that the number of records of the data to be transmitted is greater than or equal to the number of data to be allowed to be transmitted, and the number of the data to be transmitted that is limited to be transmitted can be determined, so that support is provided for subsequently judging whether the data to be transmitted can be transmitted and the number of the data to be transmitted that can be transmitted.
Further, if the first time difference is greater than or equal to the rate control time unit, clearing the record of the sending time of at least a part of the sent data, and updating the record number of the sent data in the rate control time unit. Because the invention can judge whether to be discarded or can be sent only when receiving the data to be sent, one or more sent data can be sent before the duration of the rate control time unit, and after clearing the data, a part of the data to be sent which is limited to be sent can be sent more.
Further, according to the updated record number of the sent data, whether the one or more data to be sent have data to be sent which is limited to be sent for the second time is determined again, and through the second judgment, a part of data to be sent which is limited to be sent can be sent more, so that the influence of rate control on the data sending requirement is reduced.
Further, according to the fact that the number of the data supported by the terminal is smaller than the number of the data allowed to be sent, the sending time period of the sent data can be recorded, and further, according to a second time difference between the preset time of the sending time period of the first sent data and the receiving time of the data to be sent, whether the data to be sent which is limited to be sent needs to be discarded or can be sent can be judged. Compared with the prior art in which a sliding time window algorithm is adopted for rate control, the scheme of the embodiment of the invention can judge whether to be discarded or to be sent only when data to be sent is received, does not need to maintain a periodic timer, can effectively reduce the system overhead, and adopts a sending time period containing one or more data for judgment when the number of data supported by the terminal is small, thereby effectively saving the memory compared with the sending time of single data.
Drawings
Fig. 1 is a flowchart of a data transmission method based on rate control according to an embodiment of the present invention;
fig. 2 is a flow chart of another data transmission method based on rate control according to an embodiment of the present invention;
fig. 3 is a flowchart of a data transmission method based on rate control according to another embodiment of the present invention;
fig. 4 is a flow chart of a method of determining fine rate control or coarse rate control in an embodiment of the present invention;
fig. 5 is a schematic structural diagram of a data transmission apparatus based on rate control according to an embodiment of the present invention;
fig. 6 is a schematic structural diagram of a communication device according to an embodiment of the present invention.
Detailed Description
In the prior art, in order to control the data amount processed by the network side, improve the wireless communication efficiency and save the power of the terminal, the network side needs to perform rate control on each terminal, i.e. to limit the number of data packets received and transmitted by the terminal in a unit time.
For example, NB-IoT is a technology of a narrowband internet of things based on a cellular, and has the main characteristics of wide coverage, many connections, low speed, low cost, low power consumption, excellent architecture, and the like. As NB-IoT technology continues to mature, more and more UEs are using NB-IoT technology, and Serving PLMN rate control and APN rate control are specified in the 3rd Generation Partnership Project (3 GPP) protocol for controlling the frequency of NB-IoT UE uplink data transmissions. The Serving PLMN rate control is used to limit the amount of user data transmitted by the UE through Non-Access Stratum (NAS) messages in a unit time, and the APN rate control is used to limit the amount of uplink data transmitted by the UE in a unit time.
Specifically, in Serving PLMN rate control, the allowed transmitted Data amount (rate _ value) is configured by a Mobility Management Entity (MME), the Serving PLMN rate control is used to limit the number of uplink and downlink Data units (PDUs) passing through NAS messaging Protocol, and the limitation of the uplink rate control and the downlink rate control on the NAS Data PDUs may be different. The Serving PLMN rate control information is configured by the operator in a management network element or entity in the core network, and is generally set to "X NAS data PDUs every 6 minutes", where X is an integer and should not be less than 10.
The APN rate control is used for limiting the number of uplink user data PDUs sent by the UE to a designated APN by the home operator, where the limited uplink user data PDUs may be user data transmitted through NAS messages of the control plane or user data transmitted through the user plane. The APN rate control information is configured in a user plane network element or entity in a core network by an operator, and is generally set as the maximum number of PDUs sent by a UE in a specified time unit, for example: "X user data messages per day", where X is an integer without a minimum limit; a user data message is also understood herein as a PDU, a time unit also referred to herein as a time unit (time unit), or a rate control time unit. The UE supporting APN rate control may also support the limitation of exception report packets, i.e. the UE may continue to send a certain number of exception report packets after exceeding the limit of sending Y pieces of information at most each day. For an Evolved Packet System (EPS), the APN rate control information is configured in a Packet Data Network Gateway (PGW) or a Service capability-Exposure Function (SCEF).
APN rate control information typically contains three pieces of information: the number of data packets (or data units) that can be sent per time unit; if the number of the data packets reaches the limit value, the UE allows to continue sending the abnormal report; if the UE is allowed to send exception reports in this case, it contains a number of packets that can send exception reports.
In the prior art, rate control is performed by using an algorithm of a sliding time window. The method comprises the following specific steps:
1. adopting a rate control time unit as a single time window W ═ time unit, namely adopting the single time window to represent the single rate control time unit;
2. the single time window is averagely divided into a plurality of small windows, and the time length of each small window is time unit/MAX _ RATE _ NODE. The terminal support data quantity (MAX _ RATE _ NODE) is used for indicating how much data the terminal can support to control, and reflecting the accuracy of RATE control, and the value of MAX _ RATE _ NODE can be set according to the actual condition of the system, wherein the larger the value is, the higher the accuracy of RATE control is, and more system memories can be consumed at the same time;
3. using a single periodic timer (RATE _ timer), wherein the duration of the periodic timer is time unit/MAX _ RATE _ NODE, and recording the number of data sent during each operation of the timer;
4. when NB-IOT UE sends the first uplink data, starting a periodic timer;
5. when NB-IOT UE prepares to send uplink data, checking whether the data sent in the time window W has reached the maximum value, if not, the data can be sent, otherwise, the data can not be sent;
6. and when the periodic timer is over time, deleting the small windows outside the window, and updating the time window.
In a non-limiting embodiment, the RATE control information "30 data may be sent every 6 minutes", MAX _ RATE _ NODE equals 30, and the system is described as sending every 6 s.
The time window W is 360s, the time duration of the RATE _ timer is 6s, the number of data sent in each 6s is recorded by using MAX _ RATE _ NODE information, and the sending time of the data is the default starting time of a timer; and 30 data can be sent in 0-180 s, then the data cannot be sent in 180-359 s, and by 360s, the first small window is found to be expired after the timer is overtime, and 2 data are sent in the small window, at this time, two new data can be sent, and actually, the second new data can not be sent until 366s, so that the method can cause the time precision of rate control to be lost by 6 s.
The inventor of the invention finds out through research that in the algorithm, a periodic timer needs to be maintained, so that the system overhead is high; and the amount of data that can be sent is determined based on the small window, resulting in lower accuracy of rate control.
Specifically, for the NB-IOT UE with low cost and low power consumption, unnecessary system overhead needs to be reduced as much as possible, a certain amount of system resources (mainly system memory, central processing unit, etc.) need to be consumed for maintaining one timer, and the NB-IOT UE can enter a sleep state when there is no data to send or receive, but does not run a periodic timer in the sleep state, which requires that the NB-IOT UE needs to count the timeout times of the timer during the sleep period after waking up from the sleep state, thereby adding additional processing.
In addition, when the algorithm is used, increasing the accuracy of rate control will increase the memory consumption of the system, decreasing the memory consumption of the system will affect the accuracy of rate control, and decreasing the accuracy of rate control will make it difficult to achieve a balance between the accuracy of rate control and the memory consumption of the system.
In a non-limiting embodiment, the RATE control information "30 data may be sent every 6 minutes", MAX _ RATE _ NODE equals 30, and the system is described as sending every 6 s.
The time window W is 360s, the time duration of the RATE _ timer is 6s, the number of data sent in each 6s is recorded by using MAX _ RATE _ NODE information, and the sending time of the data is the default starting time of a timer; and 30 data can be sent in 0-180 s, then the data cannot be sent in 180-359 s, and by 360s, the first small window is found to be expired after the timer is overtime, and 2 data are sent in the small window, at this time, two new data can be sent, and actually, the second new data can not be sent until 366s, so that the method can cause the time precision of rate control to be lost by 6 s.
In the embodiment of the present invention, when there is to-be-sent data whose sending is limited, according to that the number of data supported by the terminal is greater than or equal to the number of data allowed to be sent, the sending time of the sent data can be recorded, and further, according to a first time difference between the sending time of the first sent data and the receiving time of the to-be-sent data, it can be determined whether to discard or send the to-be-sent data whose sending is limited. Compared with the prior art in which a sliding time window algorithm is adopted for rate control, the scheme of the embodiment of the invention can judge whether to be discarded or to be sent only when data to be sent is received, does not need to maintain a periodic timer, can effectively reduce the system overhead, can refine the sending time of each sent data, and effectively improve the control precision.
In order to make the aforementioned objects, features and advantages of the present invention comprehensible, embodiments accompanied with figures are described in detail below.
Referring to fig. 1, fig. 1 is a flowchart of a data transmission method based on rate control according to an embodiment of the present invention. The rate control-based data transmission method may include steps S11 through S13:
step S11: receiving one or more data to be sent, and determining that the data to be sent which is limited to be sent exists in the one or more data to be sent;
step S12: if the number of the data supported by the terminal is larger than or equal to the number of the data allowed to be sent, determining a first time difference between the sending time of the first sent data and the receiving time of the data to be sent, and judging whether the first time difference is smaller than a rate control time unit or not;
step S13: and if the first time difference is smaller than the rate control time unit, determining that the data to be transmitted, which is limited to be transmitted, needs to be discarded, and the data to be transmitted, which is not limited to be transmitted, can be transmitted.
It will be appreciated that in a specific implementation, the method may be implemented in the form of a software program running on a processor integrated within a chip or chip module.
It should be noted that the sequence numbers of the steps in this embodiment do not represent a limitation on the execution sequence of the steps. The step of determining that there is data to be transmitted for which transmission is limited among the one or more data to be transmitted may be performed after step S12, as in step S11.
In the implementation of step S11, it may be determined whether the transmission needs to be limited only when data to be transmitted is received, without maintaining a periodic timer.
Further, the data to be transmitted may be a PDU that is transmitted from the NAS of the terminal to an Access Stratum (AS) in an uplink manner.
It should be noted that the data to be sent may be data received by the NAS of the terminal, or may also be other suitable data, and the terminal may also be an NB-IOT UE, or may also be other suitable terminals.
Further, the step of determining that there is data to be transmitted that is limited to be transmitted in the one or more data to be transmitted may include: comparing the recorded amount of sent data with the allowed amount of sent data within the duration of a single rate control time unit; determining that the data to be sent is limited to be sent at least according to the condition that the number of the allowed sending data is smaller than the number of records of the sent data, or determining that the data to be sent which is limited to be sent exists in the data to be sent at least according to the condition that the number of the allowed sending data is smaller than the number of records of the sent data and the number of the data to be sent; and the quantity of the data to be transmitted which is limited to be transmitted is the difference value between the recorded quantity of the transmitted data and the quantity of the data which is allowed to be transmitted.
The recorded amount of the sent data may be the amount recorded in the duration of a single rate control time unit, the allowed sent data amount is used to represent the amount of data allowed to be sent by the terminal, and the value may be configured by the core network, the gateway, or other suitable devices.
Taking the number of data allowed to be transmitted as 30 as an example, if the number of records of the transmitted data is greater than or equal to 30, the transmission is limited no matter how many data to be transmitted exist; if the number of records of the transmitted data has not reached 30, for example 28, but the number of data to be transmitted is 3 or more than 3 (for example, multiple PDBs to be transmitted), all the data to be transmitted cannot be transmitted, for example, only 2 of the data to be transmitted can be transmitted, and the remaining data to be transmitted is still limited to be transmitted.
It should be noted that, since in the embodiment of the present invention, it may be determined whether to limit transmission only when data to be transmitted is received, there may be one or more expired data, for example, a time difference between a transmission time of the first or previous transmitted data and a reception time of the data to be transmitted exceeds a rate control time unit, but a record continues to be kept because there is no update.
In the first round of judgment, the judgment of the data to be sent, which is limited to be sent, can be performed on the basis of the records, that is, on the basis of the number of records of the sent data.
In the rate control time unit, determining that data to be sent which is limited to be sent exists in the data to be sent at least according to the fact that the number of records of the sent data is larger than or equal to the number of the allowed data to be sent, determining the number of the data to be sent which is limited to be sent, and providing support for subsequently judging whether the data to be sent can be sent or not and the number of the data to be sent which can be sent.
With continued reference to fig. 1, in the specific implementation of step S12, if the number of data supported by the terminal is greater than or equal to the number of data allowed to be sent, it may be understood that the terminal can support recording the sending time of each sent data very finely, at this time, a precise rate control manner may be adopted, that is, a manner of recording the sending time of each sent data, and then performing rate control based on the sending time of each sent data is described, which is helpful to improve the fineness and accuracy of rate control.
Next, a first time difference between a sending time of first sent data and a receiving time of the data to be sent is determined, and whether the first time difference is smaller than a rate control time unit is judged.
The first sent data may be currently recorded sent data, and the record may correspond to a duration of a rate control time unit before a receiving time of the data to be sent. That is, in theory, the first transmitted data should be transmitted within the duration of the rate control time unit before the reception time of the data to be transmitted, however, if the record is not updated in time, there is a case where the record expires as described above.
In the specific implementation of step S13, if the first time difference is smaller than the rate control time unit, it is determined that the data to be transmitted whose transmission is limited needs to be discarded and the data to be transmitted whose transmission is not limited can be transmitted.
Taking the rate control time unit as 6 minutes (i.e. 360s) and the allowed transmission data amount as 30 as an example, the transmitted data transmitted within 360s before the reception time of the data to be transmitted are all valid data which are not expired, and if the amount of the valid data exceeds 30, the current data to be transmitted cannot be transmitted and needs to be discarded.
In the embodiment of the present invention, when there is to-be-sent data whose sending is limited, according to that the number of data supported by the terminal is greater than or equal to the number of data allowed to be sent, the sending time of the sent data can be recorded, and further, according to a first time difference between the sending time of the first sent data and the receiving time of the to-be-sent data, it can be determined whether to discard or send the to-be-sent data whose sending is limited. Compared with the prior art in which a sliding time window algorithm is adopted for rate control, the scheme of the embodiment of the invention can judge whether to be discarded or to be sent only when data to be sent is received, does not need to maintain a periodic timer, can effectively reduce the system overhead, can refine the sending time of each sent data, and effectively improve the control precision.
Further, the data transmission method may further include: and if the first time difference is larger than or equal to the rate control time unit, clearing the record of the sending time of at least one part of sent data, and updating the record quantity of the sent data in the rate control time unit.
Taking the rate control time unit as 6 minutes, i.e. 360s as an example, at 361s before the receiving time of the data to be sent or earlier, the sent data is the expired data, and needs to be cleared.
In the embodiment of the present invention, since the present invention may determine whether to be discarded or to be able to be sent only when data to be sent is received, there may be one or more pieces of sent data that are sent before the duration of the rate control time unit, and after clearing the data, a part of the data to be sent that is limited to be sent can be sent more.
Further, if the first time difference is equal to or greater than the rate control time unit, the step of clearing a record of transmission times of at least a portion of the transmitted data may include: if the first time difference is larger than or equal to the rate control time unit, continuously judging whether the first time difference between the sending time of the next sent data and the receiving time of the data to be sent is smaller than the rate control time unit or not until the sent data with the first time difference smaller than the rate control time unit is obtained, or determining that the first time differences between the sending times of all the sent data and the receiving time of the data to be sent are larger than or equal to the rate control time unit; for the sent data with the first time difference smaller than the rate control time unit, clearing the record of the sending time of all the sent data before the sent data; and clearing the records of the sending time of all the sent data under the condition that the first time difference between the sending time of all the sent data and the receiving time of the data to be sent is greater than or equal to the rate control time unit.
Specifically, there may be a case where only a part of the expired transmitted data is cleared, and at this time, only the record of the expired part of the transmitted data is cleared, and there may be a case where all the transmitted data is expired, and at this time, the record of all the transmitted data may be cleared.
Further, the data transmission method may further include: determining whether the data to be sent which is limited to be sent secondarily exists in the one or more data to be sent again according to the updated record number of the sent data; and if so, determining that the data to be transmitted which is secondarily limited to be transmitted needs to be discarded, and the data to be transmitted which is not secondarily limited to be transmitted can be transmitted.
In this case, it may be determined again whether there is data to be transmitted that is secondarily limited to be transmitted in the one or more data to be transmitted by using the method described above.
Specifically, it is determined that the data to be sent is all limited to be sent at least according to the fact that the number of the allowed sending data is smaller than the updated number of records of the sent data, or it is determined that the data to be sent, which is limited to be sent, exists in the data to be sent at least according to the fact that the number of the allowed sending data is smaller than the sum of the updated number of records of the sent data and the number of the data to be sent.
It will be appreciated that since the number of records of sent data within the rate control time unit has just been updated in the previous step, the number of records of sent data already coincides with the actual number of sent data after the update.
In the embodiment of the present invention, whether data to be sent that is limited to be sent for the second time exists in the one or more data to be sent may be determined again according to the updated recorded number of the sent data, and a part of data to be sent that is limited to be sent may be sent more by the second determination, so as to reduce the influence of rate control on the data sending requirement.
Referring to fig. 2, fig. 2 is a flowchart of another data transmission method based on rate control according to an embodiment of the present invention. The other data transmission method based on rate control may include steps S21 through S28, each of which is described below.
In step S21, data to be transmitted is received.
In step S22, it is determined whether data has not been transmitted within the rate control time unit, and if the determination result is yes, it may jump to perform step S23, and if the determination result is no, it may jump to perform step S24.
Specifically, when receiving data to be transmitted, if there is no data to be transmitted within the rate control time unit, the data to be transmitted may be transmitted.
It can be understood that, when the number of data to be transmitted is multiple and the number of data to be transmitted exceeds the allowed number of data to be transmitted, the transmission is still limited, that is, only the allowed number of data to be transmitted can be transmitted at most.
In one non-limiting embodiment, the total _ num ═ 0 can be used to indicate that the number of records of sent data is 0, and the rate _ value! 0 indicates that the number of data allowed to be transmitted is not 0.
In step S23, data to be transmitted is transmitted, the number of records of the transmitted data is updated, and the transmission timing of the transmitted data is updated.
Specifically, after the data to be transmitted is transmitted, the time at which the data to be transmitted is transmitted may be recorded as the transmission time of the first transmitted data in the rate control time unit.
Further, each time the data to be transmitted is transmitted, one or more of the following may be updated: a record number of data sent within the rate control time unit; a transmission time instant at which data has been transmitted within the rate control time unit.
In a non-limiting embodiment, total _ num of 1 may be used to indicate that the number of records of the sent data is 1, and node _ time _ stamp [ head _ idx ] may be used to indicate the sending time of the first sent data in the rate control time unit and is equal to the sending time of the data to be sent.
In step S24, it is determined whether the first time difference is smaller than the rate control time unit, and if the determination result is yes, it may jump to perform step S26, and if the determination result is no, it may jump to perform step S25.
The first time difference is used for representing the time difference between the sending time of the first sent data and the receiving time of the data to be sent.
In a non-limiting embodiment, the determination condition of step S24 may be represented by new _ time-node _ time _ stamp [ head _ idx ] < rate _ unit. Where new _ time may represent a reception time of data to be transmitted, and rate unit may represent a rate control time unit.
In a specific implementation of step S25, the record of the transmission time of at least a part of the transmitted data is cleared, and the number of records of the transmitted data is updated.
In a specific implementation, the sending time of the first sent data in the rate control time unit may also be updated, so as to improve the validity of the judgment on the first time difference in the subsequent steps.
It should be noted that, in step S25, the sent data may be judged one by one and cleared one by one.
Specifically, in step S24, only the first sent data may be determined first, and the sent data is cleared after the determination, and the information (such as the sending time) of the cleared first sent data is updated, and then the step S24 is skipped to determine the updated first sent data, and the process is repeated until the determination result in step S24 is yes.
For more details regarding step S25, please refer to the foregoing description and the description in fig. 1 for execution, which are not repeated herein.
In step S26, it is determined whether the number of records of the transmitted data is smaller than the number of transmission permitted data, and if the determination result is yes, it may jump to perform step S28, and if the determination result is no, it may jump to perform step S27.
In step S27, the data to be transmitted is discarded.
In step S28, data to be transmitted is transmitted.
Specifically, after determining that the data to be sent with limited sending needs to be discarded and the data to be sent without limited sending can be sent, the actions of discarding and sending can be performed without the influence of other factors.
After step S28, that is, after the data to be sent is sent, one or more of the following items may also be updated: a record number of data sent within the rate control time unit; a transmission time instant at which data has been transmitted within the rate control time unit.
In a non-limiting embodiment, updating total _ num to total _ num +1 and updating node _ time _ stamp [ tail _ idx ] may be used, where node _ time _ stamp [ tail _ idx ] may represent the transmission time of the last transmitted data in a rate control time unit.
In the data transmission method shown in fig. 2, when the number of data supported by the terminal is greater than or equal to the number of data allowed to be transmitted, the transmission time of the transmitted data can be recorded, fine recording can be realized, the accuracy of rate control is improved, and the method can be referred to as "accurate rate control" in practical application.
When the number of data supported by the terminal is less than the number of data allowed to be sent, the number of data sent in each sending time period can be recorded, the sent data can be recorded based on the time period, the requirement on the memory of the terminal is reduced, and the method can be called as 'coarse rate control' in practical application.
Further, the data transmission method may further include: if the number of the terminal supporting data is less than the number of the data allowed to be sent, determining a second time difference between a preset time of a sending time period of the first sending data and a receiving time of the data to be sent, and judging whether the second time difference is less than a rate control time unit or not, wherein the sending time period is determined according to the rate control time unit and the number of the terminal supporting data; and if the second time difference is smaller than the rate control time unit, determining that the data to be transmitted, which is limited to be transmitted, needs to be discarded, and the data to be transmitted, which is not limited to be transmitted, can be transmitted.
Specifically, if the number of data supported by the terminal is less than the number of data allowed to be sent, it may be understood that the terminal cannot support recording the sending time of each sent data very finely, and at this time, a precise rate control method cannot be adopted, but only a coarse rate control method may be adopted, that is, a sending time period in which each sent data is recorded is described, and then a rate control method is performed based on the sending time period in which each sent data is located, which is helpful for reducing the demand on the memory of the terminal.
And then, determining a second time difference between the preset time of the sending time period of the first sent data and the receiving time of the data to be sent, and judging whether the second time difference is smaller than a rate control time unit.
It should be noted that the first sent data may be the currently recorded sent data, and if the record is not updated in time, there is a case that the record is expired as described above.
Further, the preset time may be selected from: start time, center time, end time. In the following, the starting time is taken as an example, that is, the starting time of each transmission time period is taken as a judgment time, and if the judgment result is that the transmission can be performed, the transmission may be performed immediately or after waiting for a certain time period.
Further, equally dividing the rate control time unit to obtain a plurality of sending time periods; wherein, the number of the equally divided parts is the number of the data supported by the terminal.
Specifically, taking the rate control time unit as 6 minutes (i.e. 360s) and the number of data supported by the terminal as 30 as an example, 360s may be equally divided into 30 parts, and each transmission period is 12 s.
It is to be understood that the sending time period may also be determined by using other suitable methods according to the rate control time unit and the number of data supported by the terminal, for example, the sending time period is obtained by multiplying the equally divided value by a preset ratio.
As a non-limiting specific example, taking the rate control time unit as 6 minutes (i.e. 360s), and the number of data supported by the terminal as 30 as an example, each transmission time period is 12s, all the transmitted data transmitted within 30 time periods before the reception time of the data to be transmitted are valid data that has not expired, and if the number of valid data exceeds 30, the current data to be transmitted cannot be transmitted, and needs to be discarded.
In the embodiment of the present invention, according to the fact that the number of data supported by the terminal is smaller than the number of data allowed to be sent, the sending time period in which the sent data is located can be recorded, and further, according to a second time difference between the preset time of the sending time period in which the first sent data is located and the receiving time of the data to be sent, whether the data to be sent which is limited to be sent needs to be discarded or can be sent can be judged. Compared with the prior art in which a sliding time window algorithm is adopted for rate control, the scheme of the embodiment of the invention can judge whether to be discarded or to be sent only when data to be sent is received, does not need to maintain a periodic timer, can effectively reduce the system overhead, and adopts a sending time period containing one or more data for judgment when the number of data supported by the terminal is small, thereby effectively saving the memory compared with the sending time of single data.
Further, if the second time difference is greater than or equal to the rate control time unit, the record of the sending time period in which at least a part of the sent data is located is cleared, and the record number of the sent data in the rate control time unit is updated.
Taking the rate control time unit as 6 minutes (i.e. 360s) and the number of data supported by the terminal as 30 as an example, each transmission time period is 12s, and in the 31 st transmission time period before the receiving time of the data to be transmitted or the transmission time period before the receiving time of the data to be transmitted, the transmitted data is the expired data and needs to be cleared.
In the embodiment of the present invention, since the present invention may determine whether to be discarded or to be able to be sent only when data to be sent is received, there may be one or more pieces of sent data that are sent before the duration of the rate control time unit, and after clearing the data, a part of the data to be sent that is limited to be sent can be sent more.
Further, if the second time difference is equal to or greater than the rate control time unit, the step of clearing a record of transmission time periods during which at least a portion of the transmitted data is transmitted may include: if the second time difference is greater than or equal to the rate control time unit, continuously judging whether a second time difference between a preset time of a sending time period of the next sent data and the receiving time of the data to be sent is smaller than the rate control time unit or not until the sent data of which the second time difference is smaller than the rate control time unit is obtained, or determining that the second time differences between the preset time of the sending time periods of all the sent data and the receiving time of the data to be sent are greater than or equal to the rate control time unit; for the sent data of which the second time difference is smaller than the rate control time unit, clearing the record of the sending time period of all the sent data before the sent data; and clearing records of the sending time periods of all the sent data under the condition that second time differences between preset times of the sending time periods of all the sent data and the receiving time of the data to be sent are larger than or equal to the rate control time unit.
Specifically, there may be a case where only a part of the expired transmitted data exists, and at this time, only the record of the transmission period in which the expired part of the transmitted data exists is cleared, and there may also be a case where all the transmitted data has expired, and at this time, the record of the transmission period in which all the transmitted data exists may be cleared.
Further, the data transmission method may further include: determining whether the one or more data to be sent have data to be sent which is limited to be sent again according to the updated record number of the sent data; if so, determining that the data to be transmitted which is not limited to be transmitted again needs to be discarded, and transmitting the data to be transmitted which is not limited to be transmitted again can be transmitted.
In this case, it may be determined again whether there is data to be transmitted that is secondarily limited to be transmitted in the one or more data to be transmitted by using the method described above.
Specifically, it is determined that the data to be sent is all limited to be sent at least according to the fact that the number of the allowed sending data is smaller than the updated number of records of the sent data, or it is determined that the data to be sent, which is limited to be sent, exists in the data to be sent at least according to the fact that the number of the allowed sending data is smaller than the sum of the updated number of records of the sent data and the number of the data to be sent.
In the embodiment of the present invention, according to the updated recorded number of the sent data, it is determined again whether there is data to be sent, which is limited to be sent again, in the one or more data to be sent.
Referring to fig. 3, fig. 3 is a flowchart of a data transmission method based on rate control according to another embodiment of the present invention. The still another data transmission method based on rate control may include steps S301 to S310, and the respective steps are explained below.
In step S301, data to be transmitted is received.
In step S302, it is determined whether data has not been transmitted within the rate control time unit, and if the determination result is yes, it may jump to perform step S303, and if the determination result is no, it may jump to perform step S304.
In one non-limiting embodiment, the total _ num ═ 0 can be used to indicate that the number of records of sent data is 0, and the rate _ value! 0 indicates that the number of data allowed to be transmitted is not 0.
In step S303, data to be transmitted is transmitted, the number of records of the transmitted data is updated, and the transmission period in which the transmitted data is located is updated.
Specifically, after the data to be transmitted is transmitted, the time of the transmission time period in which the data to be transmitted is transmitted may be recorded as the preset time of the transmission time period in which the first data to be transmitted is transmitted in the rate control time unit.
Further, each time the data to be transmitted is transmitted, one or more of the following may be updated: a record number of data sent within the time unit; a sending time period in which the data is sent in the time unit; the number of transmissions of the transmission time period within which data has been transmitted within the time unit.
In a non-limiting embodiment, total _ num of 1 may be used to indicate that the number of records of the sent data is 1, and node _ time _ stamp [ head _ idx ] may be used to indicate a preset time of the sending time period in which the first sent data is located in the rate control time unit, for example, may be equal to the starting time of the time period in which the data to be sent is located.
In step S304, it is determined whether the second time difference is smaller than the rate control time unit, and if the determination result is yes, it may jump to perform step S306, and if the determination result is no, it may jump to perform step S305.
The second time difference is used for representing the time difference between the preset time of the sending time period of the first sent data and the receiving time of the data to be sent.
In a non-limiting embodiment, the determination condition of step S304 may be represented by new _ time-node _ time _ stamp [ head _ idx ] < rate _ unit. Where new _ time may represent a reception time of data to be transmitted, and rate unit may represent a rate control time unit.
In the implementation of step S305, the record of the transmission time of at least a part of the transmitted data is cleared, and the number of records of the transmitted data is updated.
In specific implementation, the preset time of the sending time period in which the first sent data is located in the rate control time unit may also be updated, so as to improve the validity of the judgment on the second time difference in the subsequent steps.
It is to be noted that, in step S305, the transmitted data may be judged one by one and cleared one by one.
Specifically, in step S304, only the sending time period in which the first sent data is located may be determined, and after the determination, the record of the sending time period in which the first sent data is located may be cleared, and the information (such as the sending time period) of the cleared first sent data is updated, and then the step S304 is skipped to determine the updated first sent data, and the process is repeated until the determination result in step S304 is yes.
For more details about step S305, please refer to the foregoing description for execution, and further description is omitted here.
In step S306, it is determined whether the number of records of the transmitted data is smaller than the number of data allowed to be transmitted, and if the determination result is yes, it may jump to step S308, and if the determination result is no, it may jump to step S307.
In step S307, it is determined whether the APN Aper is 1 and the data to be sent is exceptional data, if the determination result is yes, the process may jump to step S308, and if the determination result is no, the process may jump to step S309.
Specifically, in some special application scenarios of the internet of things, such as a plant equipment monitoring system, a distributed temperature sensing system, an earthquake monitoring network system, etc., when emergency situations such as equipment failure, fire, earthquake, etc. are detected, the emergency situations are sent to the network side in the form of abnormal data (exception data). In an emergency such as a disaster, it is necessary to ensure that the abnormal data has a high priority, and even if the maximum amount of uplink data set for rate control has been reached, the abnormal data is not rate-controlled and is continuously transmitted to the network side.
The APN ape Aper is used to indicate an Access Point with an Access Point Name (APN) of Aper, and when the assignment of the Access Point is 1, it indicates that the support exception mode has been turned on, and at this time, for the exception data, no rate control may be implemented.
In step S308, data to be transmitted is transmitted.
In step S309, the data to be transmitted is discarded.
Specifically, after determining that the data to be sent with limited sending needs to be discarded and the data to be sent without limited sending can be sent, the actions of discarding and sending can be performed without the influence of other factors.
After step S308, that is, after the data to be sent is sent, one or more of the following items may also be updated: a record number of data sent within the time unit; a sending time period in which the data is sent in the time unit; the number of transmissions of the transmission time period within which data has been transmitted within the time unit.
In a non-limiting embodiment, node _ num [ n ] may be updated by updating total _ num to total _ num +1, node _ time _ stamp [ tail _ idx ], or vice versa. Here, node _ time _ stamp [ tail _ idx ] may represent a preset time of a transmission period of the last transmitted data in the rate control time unit, and node _ num [ n ] may represent a transmission period of the last transmitted data in the rate control time unit.
In the data sending method shown in fig. 3, when the number of data supported by the terminal is smaller than the number of data allowed to be sent, the number of data sent in each sending time period may also be recorded, the sent data may be recorded based on the time period, the requirement on the memory of the terminal is reduced, and this may be referred to as "coarse rate control" in practical applications.
Referring to fig. 4, fig. 4 is a flow chart of a method of determining fine rate control or coarse rate control in an embodiment of the present invention. The method of determining fine rate control or coarse rate control may include steps S41 through S47, each of which is described below.
In step S41, data to be transmitted is received.
In step S42, it is determined whether the number of records of the sent data is less than the number of data allowed to be sent, and if yes, the process jumps to step S43 to continue execution; if the judgment result is negative, the step S44 is jumped to continue the execution.
In step S43, it is determined whether the number of data allowed to be transmitted is greater than the number of data supported by the terminal, and if so, it jumps to step S45; if the judgment result is no, it goes to step S46.
Specifically, the number of data supported by the terminal may be used to indicate how much data the terminal can support to control, which represents the accuracy of rate control, and a value of the number of data supported by the terminal may be set according to the actual situation of the system, where the larger the value is, the higher the accuracy of rate control is, and at the same time, the more system memory may be consumed.
In step S44, it is determined whether APN Aper is 1 and the data to be sent is abnormal data, and if the determination result is yes, the process goes to step S47; if the judgment result is no, it goes to step S48.
In step S45, coarse rate control is performed.
In step S46, rate control is refined.
Further, before determining that there is data to be transmitted that is limited to be transmitted in the one or more data to be transmitted, the data transmission method may further include: if the number of the data supported by the terminal is more than or equal to the number of the data allowed to be sent, then the terminal sends the data to the terminal; and if the number of the data supported by the terminal is less than the number of the data allowed to be transmitted, recording the number of the data transmitted in each transmission time period.
The precise rate control may be used to describe a method for recording sending time of each sent data, and then performing rate control based on the sending time of each sent data, specifically, refer to another data sending method based on rate control as described above and shown in fig. 2, and the coarse rate control may be used to describe a method for recording the number of data sent in each sending time period, and then performing rate control based on the number of data sent in each sending time period, and specifically refer to still another data sending method based on rate control as described above and shown in fig. 3.
It can be understood that if the number of the allowed transmission data is greater than the number of the data supported by the terminal, it indicates that it is difficult for the terminal to record the transmission time of each transmission data very finely, and a coarse rate control mode may be adopted at this time; on the contrary, if the number of the allowed transmission data is less than or equal to the number of the data supported by the terminal, it means that the terminal can support recording the transmission time of each transmission data very finely, and at this time, a precise rate control mode can be adopted.
In step S47, coarse rate control is performed.
It is understood that, in the case where the number of records of the transmitted data is equal to or greater than the number of allowed transmitted data, it is inevitably difficult for the terminal to record the transmission timing of each transmitted data very finely in order not to perform rate control on the abnormal data, and a coarse rate control method may be employed at this time.
It should be noted that more contents related to the steps in fig. 4 can be executed by referring to the description in fig. 1 to fig. 3, and are not described herein again.
Referring to fig. 5, fig. 5 is a schematic structural diagram of a data transmission apparatus based on rate control according to an embodiment of the present invention. The rate control-based data transmission apparatus may include:
a limitation determining module 51, configured to receive one or more pieces of data to be sent, and determine that there is data to be sent that is limited to be sent in the one or more pieces of data to be sent;
a time difference determining module 52, configured to determine, when the number of data supported by the terminal is greater than or equal to the number of data allowed to be sent, a first time difference between a sending time of first sent data and a receiving time of the data to be sent, and determine whether the first time difference is smaller than a rate control time unit;
a discard transmission determining module 53, configured to determine that the to-be-transmitted data whose transmission is limited needs to be discarded and the to-be-transmitted data whose transmission is not limited can be transmitted when the first time difference is smaller than the rate control time unit.
In a specific implementation, the apparatus may correspond to a chip having a data processing function in a user equipment; or to a chip module comprising a chip with data processing function in the user equipment, or to the user equipment.
For more details of the data transmission apparatus based on rate control shown in fig. 5, please refer to the foregoing description and the implementation of fig. 1 to fig. 4, which are not repeated herein.
Embodiments of the present invention further provide a computer-readable storage medium, on which a computer program is stored, where the computer program is executed by a processor to perform the steps of the above method. The computer-readable storage medium may include, for example, a non-volatile (non-volatile) or non-transitory (non-transitory) memory, and may also include an optical disc, a mechanical hard disk, a solid state hard disk, and the like.
The embodiment of the present invention further provides a communication device, which includes a memory and a processor, where the memory stores a computer program capable of running on the processor, and the processor executes the steps of the method when running the computer program.
Referring to fig. 6, fig. 6 is a schematic structural diagram of a communication device according to an embodiment of the present invention.
The apparatus 600 comprises at least one processor 601 and at least one memory 602 for storing computer programs and/or data. The memory 602 is coupled to the processor 601. The processor 601 is used to run the computer program and/or data stored in the memory 602 to implement the communication method described above and shown in fig. 1. The coupling in the embodiments of the present application is a spaced coupling or communication connection between devices, units or modules, and may be in an electrical, mechanical or other form, and is used for information interaction between the devices, units or modules. As another implementation, the memory 602 may also be located external to the apparatus 600. The processor 601 may operate in conjunction with the memory 602. The processor 601 may execute computer programs stored in the memory 602. At least one of the at least one memory may be included in the processor.
In some embodiments, apparatus 600 may also include a communication interface 603, where communication interface 603 is used to communicate with other devices over a transmission medium, so that modules used in apparatus 600 may communicate with other devices. Illustratively, the communication interface 603 may be a transceiver, circuit, bus, module, or other type of communication interface.
The connection medium among the communication interface 603, the processor 601, and the memory 602 is not limited in the embodiment of the present application. For example, in fig. 6, the memory 602 and the communication interface 603 are connected to the processor 601 according to the embodiment of the present application. Of course, in the embodiment of the present application, the memory 602, the communication interface 603, and the processor 601 may also be connected through a bus, and the bus may be divided into an address bus, a data bus, a control bus, and the like.
In the embodiments of the present application, the processor may be a general-purpose processor, a digital signal processor, an application specific integrated circuit, a field programmable gate array or other programmable logic device, a discrete gate or transistor logic device, or a discrete hardware component, and may implement or execute 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 a method disclosed in connection with the embodiments of the present application may be directly implemented by a hardware processor, or may be implemented by a combination of hardware and software modules in a processor.
In the embodiment of the present application, the memory may be a non-volatile memory, such as a hard disk drive (H DD) or a solid-state drive (SSD), and may also be a volatile memory (RAM), for example, a random-access memory (RAM). The memory is any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer, but is not limited to such. The memory in the embodiments of the present application may also be a circuit or any other device capable of implementing a storage function for storing a computer program and/or data.
The method provided by the embodiment of the present application may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. The procedures or functions according to the embodiments of the present invention are wholly or partially generated when the computer program is loaded and executed on a computer. The computer may be a general purpose computer, a special purpose computer, a computer network, a network appliance, a user device, or other programmable apparatus. The computer program may be stored in a computer readable storage medium or transmitted from one computer readable storage medium to another computer readable storage medium, for example, the computer instructions may be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wire (e.g., coaxial cable, fiber optic, Digital Subscriber Line (DSL)), or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device, such as a server, a data center, etc., that incorporates one or more of the available media. The usable medium may be a magnetic medium (e.g., a floppy disk, a hard disk, a magnetic tape), an optical medium (e.g., a Digital Video Disk (DVD)), or a semiconductor medium (e.g., an SSD), among others.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present application without departing from the scope of the application. Thus, if such modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is intended to include such modifications and variations as well.
Each module/unit included in each apparatus and product described in the above embodiments may be a software module/unit, or may also be a hardware module/unit, or may also be a part of a software module/unit and a part of a hardware module/unit. For example, for each device or product applied to or integrated into a chip, each module/unit included in the device or product may be implemented by hardware such as a circuit, or at least a part of the module/unit may be implemented by a software program running on a processor integrated within the chip, and the rest (if any) part of the module/unit may be implemented by hardware such as a circuit; for each device or product applied to or integrated with the chip module, each module/unit included in the device or product may be implemented by using hardware such as a circuit, and different modules/units may be located in the same component (e.g., a chip, a circuit module, etc.) or different components of the chip module, or at least some of the modules/units may be implemented by using a software program running on a processor integrated within the chip module, and the rest (if any) of the modules/units may be implemented by using hardware such as a circuit; for each device and product applied to or integrated in the terminal, each module/unit included in the device and product may be implemented by using hardware such as a circuit, and different modules/units may be located in the same component (e.g., a chip, a circuit module, etc.) or different components in the terminal, or at least part of the modules/units may be implemented by using a software program running on a processor integrated in the terminal, and the rest (if any) part of the modules/units may be implemented by using hardware such as a circuit.
Although the present invention is disclosed above, the present invention is not limited thereto. Various changes and modifications may be effected therein by one skilled in the art without departing from the spirit and scope of the invention as defined in the appended claims.

Claims (18)

1. A data transmission method based on rate control, comprising:
receiving one or more data to be sent, and determining that the data to be sent which is limited to be sent exists in the one or more data to be sent;
if the number of the data supported by the terminal is larger than or equal to the number of the data allowed to be sent, determining a first time difference between the sending time of the first sent data and the receiving time of the data to be sent, and judging whether the first time difference is smaller than a rate control time unit or not;
and if the first time difference is smaller than the rate control time unit, determining that the data to be transmitted, which is limited to be transmitted, needs to be discarded, and the data to be transmitted, which is not limited to be transmitted, can be transmitted.
2. The data transmission method of claim 1, wherein determining that there is data to be transmitted that is restricted from being transmitted in the one or more data to be transmitted comprises:
comparing the recorded amount of sent data with the allowed amount of sent data within the duration of a single rate control time unit;
determining that the data to be sent is limited to be sent at least according to the condition that the number of the allowed sending data is smaller than the number of records of the sent data, or determining that the data to be sent which is limited to be sent exists in the data to be sent at least according to the condition that the number of the allowed sending data is smaller than the number of records of the sent data and the number of the data to be sent;
and the quantity of the data to be transmitted which is limited to be transmitted is the difference value between the recorded quantity of the transmitted data and the quantity of the data which is allowed to be transmitted.
3. The data transmission method according to claim 1, further comprising:
and if the first time difference is larger than or equal to the rate control time unit, clearing the record of the sending time of at least one part of sent data, and updating the record quantity of the sent data in the rate control time unit.
4. The data transmission method according to claim 3, wherein if the first time difference is equal to or greater than the rate control time unit, clearing the record of the transmission time of at least a part of the transmitted data comprises:
if the first time difference is larger than or equal to the rate control time unit, continuously judging whether the first time difference between the sending time of the next sent data and the receiving time of the data to be sent is smaller than the rate control time unit or not until the sent data with the first time difference smaller than the rate control time unit is obtained, or determining that the first time differences between the sending times of all the sent data and the receiving time of the data to be sent are larger than or equal to the rate control time unit;
for the sent data with the first time difference smaller than the rate control time unit, clearing the record of the sending time of all the sent data before the sent data;
and clearing the records of the sending time of all the sent data under the condition that the first time difference between the sending time of all the sent data and the receiving time of the data to be sent is greater than or equal to the rate control time unit.
5. The data transmission method according to claim 3, further comprising:
determining whether the data to be sent which is limited to be sent secondarily exists in the one or more data to be sent again according to the updated record number of the sent data;
and if so, determining that the data to be transmitted which is secondarily limited to be transmitted needs to be discarded, and the data to be transmitted which is not secondarily limited to be transmitted can be transmitted.
6. The data transmission method according to claim 1, further comprising:
updating one or more of the following items each time after the data to be sent is sent:
a record number of data sent within the rate control time unit;
a transmission time instant at which data has been transmitted within the rate control time unit.
7. The data transmission method according to claim 1, further comprising:
if the number of the terminal supporting data is less than the number of the data allowed to be sent, determining a second time difference between a preset time of a sending time period of the first sending data and a receiving time of the data to be sent, and judging whether the second time difference is less than a rate control time unit or not, wherein the sending time period is determined according to the rate control time unit and the number of the terminal supporting data;
and if the second time difference is smaller than the rate control time unit, determining that the data to be transmitted, which is limited to be transmitted, needs to be discarded, and the data to be transmitted, which is not limited to be transmitted, can be transmitted.
8. The data transmission method according to claim 7, further comprising:
and if the second time difference is larger than or equal to the rate control time unit, clearing the record of the sending time period in which at least a part of the sent data is positioned, and updating the record quantity of the sent data in the rate control time unit.
9. The data transmission method according to claim 8, wherein if the second time difference is greater than or equal to the rate control time unit, clearing the record of the transmission time period in which at least a part of the transmitted data is located comprises:
if the second time difference is greater than or equal to the rate control time unit, continuously judging whether a second time difference between a preset time of a sending time period of the next sent data and the receiving time of the data to be sent is smaller than the rate control time unit or not until the sent data of which the second time difference is smaller than the rate control time unit is obtained, or determining that the second time differences between the preset time of the sending time periods of all the sent data and the receiving time of the data to be sent are greater than or equal to the rate control time unit;
for the sent data of which the second time difference is smaller than the rate control time unit, clearing the record of the sending time period of all the sent data before the sent data;
and clearing records of the sending time periods of all the sent data under the condition that second time differences between preset times of the sending time periods of all the sent data and the receiving time of the data to be sent are larger than or equal to the rate control time unit.
10. The data transmission method according to claim 7 or 9, wherein the preset time is selected from the group consisting of: start time, center time, end time.
11. The data transmission method according to claim 7, further comprising:
determining whether the one or more data to be sent have data to be sent which is limited to be sent again according to the updated record number of the sent data;
if so, determining that the data to be transmitted which is not limited to be transmitted again needs to be discarded, and transmitting the data to be transmitted which is not limited to be transmitted again can be transmitted.
12. The data transmission method according to claim 7, further comprising:
updating one or more of the following items each time after the data to be sent is sent:
a record number of data sent within the time unit;
a sending time period in which the data is sent in the time unit;
the number of transmissions of the transmission time period within which data has been transmitted within the time unit.
13. The data transmission method according to claim 7, wherein the rate control time unit is equally divided to obtain a plurality of the transmission time periods;
wherein, the number of the equally divided parts is the number of the data supported by the terminal.
14. The data transmission method according to claim 1, before determining that there is data to be transmitted that is limited from being transmitted in the one or more data to be transmitted, further comprising:
if the number of the data supported by the terminal is more than or equal to the number of the data allowed to be sent, recording the sending time of each sent data;
and if the number of the data supported by the terminal is less than the number of the data allowed to be transmitted, recording the number of the data transmitted in each transmission time period.
15. The data transmission method according to claim 1, wherein the data to be transmitted is a PDU that is transmitted from a NAS of the terminal to the AS in an uplink manner.
16. A data transmission apparatus based on rate control, comprising:
the device comprises a limitation determining module, a data transmission module and a data transmission module, wherein the limitation determining module is used for receiving one or more data to be transmitted and determining that the data to be transmitted which is limited to be transmitted exists in the one or more data to be transmitted;
a time difference determining module, configured to determine, when the number of data supported by the terminal is greater than or equal to the number of data allowed to be sent, a first time difference between a sending time of first sent data and a receiving time of the data to be sent, and determine whether the first time difference is smaller than a rate control time unit;
and a discard transmission determining module, configured to determine that the to-be-transmitted data whose transmission is limited needs to be discarded and the to-be-transmitted data whose transmission is not limited can be transmitted when the first time difference is smaller than the rate control time unit.
17. A computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, performs the steps of the rate control-based data transmission method according to any one of claims 1 to 15.
18. A communication apparatus comprising a memory and a processor, the memory having stored thereon a computer program operable on the processor, wherein the processor executes the computer program to perform the steps of the rate control-based data transmission method according to any one of claims 1 to 15.
CN202111137244.0A 2021-09-27 2021-09-27 Data sending method and device based on rate control and communication device Pending CN113766570A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111137244.0A CN113766570A (en) 2021-09-27 2021-09-27 Data sending method and device based on rate control and communication device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111137244.0A CN113766570A (en) 2021-09-27 2021-09-27 Data sending method and device based on rate control and communication device

Publications (1)

Publication Number Publication Date
CN113766570A true CN113766570A (en) 2021-12-07

Family

ID=78797778

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111137244.0A Pending CN113766570A (en) 2021-09-27 2021-09-27 Data sending method and device based on rate control and communication device

Country Status (1)

Country Link
CN (1) CN113766570A (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019109298A1 (en) * 2017-12-07 2019-06-13 Telefonaktiebolaget Lm Ericsson (Publ) Network capability configuration for rate control
CN110859012A (en) * 2018-08-25 2020-03-03 华为技术有限公司 Method, device and system for rate control

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019109298A1 (en) * 2017-12-07 2019-06-13 Telefonaktiebolaget Lm Ericsson (Publ) Network capability configuration for rate control
CN110859012A (en) * 2018-08-25 2020-03-03 华为技术有限公司 Method, device and system for rate control

Similar Documents

Publication Publication Date Title
US9568989B2 (en) Method for acting as service agent, modem, and terminal by establishing a heartbeat connection with an application server
JP5716090B2 (en) Method and apparatus for reducing data transmission overhead
KR101256293B1 (en) System and method for heartbeat signal generation
EP3245825B1 (en) Extended discontinuous receive, edrx, cycles
CN106922039B (en) Heartbeat message sending method and device
US11032723B2 (en) System and method for increasing network efficiency using dynamic repeat requests adjustment
US8750213B2 (en) Providing a deny response that specifies a delay time
KR20120016985A (en) Communication method of terminal and access point in an active mode for txop power saving of multiuser
CN108632309B (en) Method and device for upgrading narrow-band Internet of things terminal
CN103975630A (en) Using wireless wide area network protocol information for managing a performance level of a processor
CN106792905B (en) Message processing method and base station
CN109756464B (en) Communication method, server and client
WO2008019478A1 (en) Method and system for coordinating necessary radio transmission events with unrelated opportunistic events to optimize battery life and network resources
CN113766570A (en) Data sending method and device based on rate control and communication device
CN110708661A (en) Data transmission method, system, device and medium based on 5G communication
JP2012231238A (en) Base station and communication control method
CN111436119A (en) DRX (discontinuous reception) transmission method and related equipment
Pathak et al. Efficient Protocol for Performance Enhancement of B4G and 5G Networks for MultiSIM Deployment
US20130028159A1 (en) Silent power-save mode for a wireless communication device
US9900838B2 (en) Method and system for selecting an optimal DRX configuration
CN114040483A (en) Terminal wake-up signal monitoring method and device, storage medium and electronic equipment
EP3496468B1 (en) Network entity for creating a transmission session via a network system, roaming firewall, network system, method and computer program product
CN107786310B (en) Data packet transmission method and node
CN108023686B (en) TCP (Transmission control protocol) delay processing method, device and system
KR101275831B1 (en) Battery saving mode system and method for driving the same

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