WO2020238895A1 - 数据传输方法以及装置 - Google Patents

数据传输方法以及装置 Download PDF

Info

Publication number
WO2020238895A1
WO2020238895A1 PCT/CN2020/092324 CN2020092324W WO2020238895A1 WO 2020238895 A1 WO2020238895 A1 WO 2020238895A1 CN 2020092324 W CN2020092324 W CN 2020092324W WO 2020238895 A1 WO2020238895 A1 WO 2020238895A1
Authority
WO
WIPO (PCT)
Prior art keywords
terminal device
buffer area
download rate
size
communication connection
Prior art date
Application number
PCT/CN2020/092324
Other languages
English (en)
French (fr)
Inventor
金辉
庄宏成
刘云
窦凤辉
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to EP20813368.6A priority Critical patent/EP3952249A4/en
Priority to US17/614,293 priority patent/US20220174547A1/en
Publication of WO2020238895A1 publication Critical patent/WO2020238895A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/02Arrangements for optimising operational condition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/168Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP] specially adapted for link layer protocols, e.g. asynchronous transfer mode [ATM], synchronous optical network [SONET] or point-to-point protocol [PPP]
    • 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/10Flow control between communication endpoints
    • H04W28/14Flow control between communication endpoints using intermediate storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • 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/0273Traffic management, e.g. flow control or congestion control adapting protocols for flow control or congestion control to wireless environment, e.g. adapting transmission control protocol [TCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/15Setup of multiple wireless link connections

Definitions

  • This application relates to communication technology, and in particular to a data transmission method and device.
  • Customer premise equipment is a mobile signal access device that forwards the received cellular signal as a WiFi signal.
  • the CPE can convert a cellular signal of a 4G communication network or a 5G communication network into a WiFi signal to support multiple terminal devices to connect to the WiFi signal for Internet access.
  • the CPE establishes a communication connection with the network through cellular signals, and the terminal equipment establishes a communication connection with the CPE through WiFi signals; then, the application client of the terminal equipment establishes a transmission control protocol (Transmission Control Protocol, TCP) with the application server through the CPE ) Connection; the application server transmits the service data of the application client to the CPE through the TCP connection, and then the CPE forwards the service data to the terminal device.
  • TCP Transmission Control Protocol
  • the CPE forwards the business data sent by the application server to the terminal device, only playing a role of forwarding business data at the Internet Protocol Address (IP) layer, and cannot control the transmission of business data .
  • IP Internet Protocol Address
  • the embodiments of the present application provide a data transmission method and device, which are used to implement a first terminal device to control the transmission of service data of a second terminal device.
  • the first aspect of the embodiments of the present application provides a data transmission method, including:
  • the first terminal device establishes a first communication connection with the network through the first communication technology, and the first terminal device also has a second communication connection with the second terminal device, and the second communication connection is the second terminal device using the second communication technology
  • a communication connection established with the first terminal device then, when the preset condition is met, the first terminal device establishes a first TCP connection with the application server, and establishes a second TCP connection with the application client of the second terminal device.
  • a terminal device then receives the first service data sent by the application server through the first TCP connection, then caches the first service data, and sends the first service data to the second terminal device through the second TCP connection. Therefore, in the technical solution of the present application, the first terminal device may buffer the first service data and then forward it to the second terminal device, so as to realize the transmission control of the first service data.
  • the preset condition includes: the service type of the service carried by the third TCP connection established between the second terminal device and the application server meets the preset service type.
  • the preset condition includes: the service type of the service carried by the third TCP connection established between the second terminal device and the application server meets the preset service type.
  • the preset condition includes: an abnormality in the second communication connection.
  • the TCP proxy is turned on for the third TCP connection first, and then the transmission control of the first service data by the first terminal device is used to realize the reduction due to the second communication.
  • the instability of the connected network leads to the problem of poor overall network transmission quality on the second terminal device side.
  • the preset condition includes: the service type of the service carried by the third TCP connection established between the second terminal device and the application server meets the preset service type and the second communication connection is abnormal.
  • the first terminal device determines whether to open the TCP proxy for the third TCP connection based on the service type of the service carried by the third TCP connection and the network quality of the second communication connection, which is more targeted.
  • the second terminal device with TCP proxy requirement opens the TCP connection.
  • the preset condition includes: the service type of the service carried by the third TCP connection established between the second terminal device and the application server meets the preset service type and the first terminal device is abnormal according to the history The situation determines that the first communication connection or the second communication connection is abnormal within the predicted time period.
  • the first terminal device combines the service type of the service carried by the third TCP connection and the abnormal result predicted by the first terminal device according to the historical abnormal situation to determine whether to open the TCP proxy for the third TCP connection, and further Targetedly open a TCP connection for the second terminal device that really needs a TCP proxy.
  • the abnormality of the second communication connection includes: the second terminal device downloads the first download rate of the second service data carried by the third TCP connection through the second communication connection within the first preset time period Less than the first preset threshold; or, the mean square error of the first download rate at which the second terminal device downloads the second service data through the second communication connection within the first preset time period is greater than the second preset threshold; or, the second terminal The difference between the first download rate at which the device downloads the second service data from the first terminal device through the second communication connection and the second download rate at which the first terminal device downloads the second service data from the application server through the first communication connection is greater than the first download rate Three preset thresholds.
  • the preset condition includes: the number of data packets successfully received by the second terminal device through the third TCP connection established by the second terminal device and the application server within the second preset time period is less than the fourth Preset threshold.
  • the first terminal device may also determine the network status of the second communication connection by determining the number of data packets successfully received by the second terminal device through the third TCP connection within the second preset time period. Provides another way to determine the network status of the second communication connection.
  • the buffering of the first service data by the first terminal device includes: first, the first terminal device determines that the service carried by the third TCP connection is in the first buffer area occupied by the second terminal device; Then, the first terminal device sets a second buffer area in the first terminal device for the service carried by the second TCP connection, where the size of the first buffer area is the same as the size of the second buffer area; the first terminal device passes the second buffer area.
  • the second buffer area buffers the first service data.
  • the method further includes: the first terminal device adjusts the second buffer area according to the third download rate and the fourth download rate, and the third download rate is that the second terminal device is within the third preset duration The download rate of downloading the first service data from the first terminal device through the second communication connection, and the fourth download rate is the download of the first terminal device downloading the first service data from the application server through the first communication connection within the third preset time period rate.
  • the first terminal device can also dynamically adjust the size of the second buffer area according to the download rate, which improves the practicality of the solution in practical applications.
  • the first terminal device adjusting the second buffer area according to the third download rate and the fourth download rate includes: when the third download rate is less than the fourth download rate, the first terminal device adjusts the second buffer The adjusted second buffer area is obtained, and the size of the adjusted second buffer area is the size of the first buffer area multiplied by the rate ratio, and the rate ratio is the ratio of the third download rate to the fourth download rate.
  • a specific manner of how the first terminal device dynamically adjusts the second buffer area according to the download rate is provided.
  • the first terminal device adjusting the second buffer area according to the third download rate and the fourth download rate includes: when the third download rate is less than the fourth download rate and the current remaining space of the second buffer area is less than Or when it is equal to the fifth preset threshold, the first terminal device expands the second buffer area, where the size of the expanded second buffer area is n times the size of the second buffer area before the expansion, and the expanded second buffer area The size of the cache area is less than or equal to m times the size of the first cache area; when the third download rate is less than the fourth download rate and the current remaining space in the second cache area is greater than the fifth preset threshold, the first terminal device shrinks The second buffer area, where the reduced second buffer area is 1/n times the size of the second buffer area before the reduction, and the size of the reduced second buffer area is greater than or equal to the size of the first buffer area and It is less than m times the size of the first buffer area, m is greater than n, and n and m are positive integers not equal to 0. In
  • a second aspect of the embodiments of the present application provides a data transmission device, which has a method executed by a first terminal device in any one of the possible implementation manners of the first aspect described above.
  • This function can be realized by hardware, or by hardware executing corresponding software.
  • the hardware or software includes one or more modules corresponding to the above-mentioned functions.
  • the third aspect of the embodiments of the present application provides a data transmission device.
  • the data transmission device includes: a processor, a memory, an input/output device, and a bus; the processor, the memory, and the input/output device are respectively connected to the bus, and the memory is Computer instructions are stored; when the processor executes the computer instructions in the memory, it is used to implement any one of the first aspect or any one of the possible implementation manners of the first aspect.
  • the fourth aspect of the embodiments of the present application provides a chip system, which includes a processor, and is used to support a network device to implement the functions involved in the first aspect or any one of the possible implementations of the first aspect, for example, For example, sending or processing the data and/or information involved in the above methods.
  • the chip system further includes a memory, and the memory is used to store necessary program instructions and data of the network device.
  • the chip system may be composed of chips, or may include chips and other discrete devices.
  • the fifth aspect of the embodiments of the present application provides a computer program product including instructions, which is characterized in that, when it runs on a computer, the computer executes the first aspect or any one of the possible implementation manners of the first aspect Either way.
  • the sixth aspect of the embodiments of the present application provides a computer-readable storage medium, which is characterized by including instructions, which when run on a computer, cause the computer to execute any possible implementation such as the first aspect or the first aspect Any one of the ways.
  • the first terminal device when the preset conditions are met, the first terminal device establishes a first TCP connection with the application server, and establishes a second TCP connection with the application client of the second terminal device; then, the first terminal device passes through the first The TCP connection receives the first service data sent by the application server, buffers the first service data, and then sends the first service data to the second terminal device through the second TCP connection. Therefore, in the technical solution of the present application, the first terminal device may buffer the first service data and then forward it to the second terminal device, so as to realize the transmission control of the first service data.
  • Figure 1 is a schematic diagram of a system framework provided by an embodiment of the application.
  • FIG. 2 is a schematic diagram of an embodiment of a data transmission method according to an embodiment of the application.
  • FIG. 3 is a schematic diagram of another embodiment of a data transmission method according to an embodiment of the application.
  • FIG. 4 is a schematic diagram of another embodiment of a data transmission method according to an embodiment of this application.
  • FIG. 5 is a schematic structural diagram of a data transmission device according to an embodiment of the application.
  • FIG. 6 is a schematic diagram of another structure of a data transmission device according to an embodiment of the application.
  • the embodiments of the present application provide a data transmission method and device, which are used to implement a first terminal device to control the transmission of service data of a second terminal device.
  • FIG. 1 is a schematic diagram of a system framework provided by an embodiment of the application.
  • Figure 1 is a schematic diagram of the system framework of an embodiment of the application applied to a 4G communication network. It should be noted that the embodiment of the application is also applicable to communication networks such as 3G, 5G, and even 6G, and the specific application is not limited. In the following, the application of Fig. 1 to a 4G communication network is taken as an example for description.
  • the first terminal device can be the CPE shown in Figure 1, or it can be a mobile phone, a WiFi box, a mobile hotspot (mobile WiFi, mifi) and other terminal devices.
  • the first terminal device is a CPE as an example. Description.
  • the CPE accesses the network through the mobile signal of the 4G communication network, that is, establishes a communication connection with the access network equipment.
  • the access network equipment can be gNB, transmission reception point (transmission reception point, TRP), evolved Node B (evolved Node B, eNB), radio network controller (radio network controller, RNC), Node B (Node B) , NB), base station controller (base station controller, BSC), base transceiver station (base transceiver station, BTS), home base station (for example, home evolved NodeB, or home Node B, HNB), BBU, or WiFi access point (access point, AP), etc.
  • TRP transmission reception point
  • eNB evolved Node B
  • RNC radio network controller
  • Node B Node B
  • BSC base station controller
  • base transceiver station base transceiver station
  • BTS home base station
  • home base station for example, home evolved NodeB, or home Node B, HNB
  • BBU WiFi access point
  • the CPE establishes a communication connection with the base station through a 4G mobile signal, and the CPE receives the 4G mobile signal and forwards the 4G mobile signal in the form of a WiFi signal.
  • the second terminal device in the embodiment of this application also called user equipment (UE), mobile station (MS), mobile terminal (MT), etc., is a kind of A device with voice/data connectivity, for example, a handheld device with a wireless connection function, etc.
  • the UE1 shown in FIG. 1 is the second terminal device as an example for description. Then UE1 can establish a communication connection with the CPE through the WiFi signal; then, the application client on UE1 can establish a TCP connection with the application server through the CPE, and receive service data sent by the application server through the TCP connection.
  • the second terminal device establishes a TCP connection with the application server through the first terminal device; then, the first terminal device receives the service data of the second terminal device sent by the application server, and then forwards the service data to The second terminal device.
  • the first terminal device only serves to forward the service data, and cannot control the transmission of the service data.
  • the signal strength of the communication connection established through the WiFi signal between the first terminal device and the second terminal device is relatively unstable, the first terminal device cannot solve the problem of the low TCP layer data transmission rate caused by the unstable WiFi signal. problem.
  • an embodiment of the present application provides a data transmission method, which is used to implement a first terminal device to control the transmission of service data of a second terminal device.
  • FIG. 2 is a schematic diagram of an embodiment of the data transmission method of the embodiment of the present application.
  • the method includes:
  • the first terminal device establishes a first communication connection with the network through a first communication technology.
  • the first communication technology may be a cellular network communication method, and the first terminal device accesses the network through a cellular signal of the cellular network (for example, a mobile signal of a 4G or 5G communication network).
  • the second terminal device may establish a second communication connection with the first terminal device through a second communication technology, where the second communication technology may establish a second communication connection with the first terminal device through a WiFi signal.
  • the first terminal device establishes a first TCP connection with the application server, and establishes a second TCP connection with the application client of the second terminal device.
  • step 201 it can be known that after the second terminal device and the first terminal device establish a second communication connection through the second communication technology, when a certain application client has business requirements, the application client of the second terminal device can use the first The terminal device and the application server create a third TCP connection, and then the application server transmits the second service data to the first terminal device through the third TCP connection.
  • the first terminal device can start the TCP proxy for the third TCP connection.
  • the specific process is: the first terminal device creates the first TCP connection with the application server, and creates the second terminal device with the second terminal device. 2. TCP connection; and at this time, the second terminal device will disconnect the third TCP connection established with the application server, and receive the first service data sent by the first terminal device through the second TCP connection.
  • preset conditions there are many preset conditions, the following examples illustrate:
  • the service type of the service carried by the third TCP connection meets the preset service type.
  • the first terminal device enables TCP proxy for some specific services, where specific services can be understood as services with a large amount of service data and low latency requirements, such as web browsing, audio and video services, and pictures. Download, small video download, etc. Therefore, the first terminal device can determine whether the service carried by the third TCP connection meets the preset service type, and if so, the first terminal device can determine that the preset condition is satisfied. For example, the third TCP connection bears the data of watching a certain video on the second terminal device through the iQiyi client. It can be determined that the service is a video service, and the first terminal device opens TCP for the third TCP connection. proxy.
  • the second communication connection is abnormal.
  • the abnormality of the second communication connection may include one of the following situations:
  • the first download rate at which the second terminal device downloads the second service data carried by the third TCP connection through the second communication connection within the first preset time period is less than the first preset threshold.
  • the first download rate may be a download rate at a certain moment, or may be an average download rate of the second terminal device within a first preset time period, for example, an average download rate within a day.
  • the first preset threshold may be a historical average download rate calculated by the second terminal device according to the historical download rate of the second terminal device downloading the second service data carried by the third TCP connection.
  • the first terminal device may enable TCP proxy for the third TCP connection.
  • the mean square error of the first download rate at which the second terminal device downloads the second service data carried by the third TCP connection through the second communication connection within the first preset time period is greater than the second preset threshold.
  • the first terminal device may enable TCP proxy for the third TCP connection.
  • the first download rate at which the second terminal device downloads the second service data carried by the third TCP connection through the second communication connection and the first terminal device downloads the second service data carried by the third TCP connection through the first communication connection The difference between the second download rate of the two service data is greater than the third preset threshold.
  • the first terminal device may be the third TCP connection opens TCP proxy.
  • the service type of the service carried by the third TCP connection meets the preset service type and the second communication connection is abnormal.
  • the service type of the service carried by the third TCP connection conforms to the preset service type, and the first terminal device determines according to the historical abnormal situation that the first communication connection or the second communication connection is abnormal for the first period of time.
  • the historical abnormal situation includes: the reason for the historical abnormality (for example, the first communication connection or the second communication connection is abnormal) and the characteristics of the abnormality (for example, the time point or time period when the abnormality occurs, and the application type in which the abnormality occurs).
  • the first terminal device may predict the time point or abnormal characteristics of the abnormality again based on the historical abnormal situation. For example, from 6pm to 7pm every night, many members of the family will use the iQiyi client to watch videos, which causes the WiFi signal to become poor. Then the first terminal device can determine the time period from 6pm to 7pm every night.
  • the first communication connection will be abnormal, so the first terminal device can start the TCP proxy for the third TCP connection.
  • the wireless resources of the base station are limited during the time period from 6 pm to 7 pm every night, if multiple first terminal devices request large bandwidth resources at the same time, there will be problems that cannot fully meet the requests of all first terminal devices. Problem, then the first communication connection will be abnormal at this time.
  • the number of data packets successfully received by the second terminal device through the third TCP connection established by the second terminal device and the application server within the second preset time period is less than the fourth preset threshold.
  • the first terminal device may determine the number of data packets successfully received by the second terminal device in a unit time through the ACK message sent by the second terminal device, when the number of data packets is less than the fourth preset
  • the first terminal device may determine that the network of the first communication connection is poor, and then the first terminal device may determine that the preset condition is satisfied.
  • the application server sends 10 data packets to the second terminal device within a unit time through the third TCP connection, and the first terminal device determines that the second terminal device only has 10 data packets in the unit time through the ACK message fed back by the second terminal device. 4 data packets are received and the fourth preset threshold is 5, then the first terminal device determines that the number of data packets is less than 5, so the first terminal device determines that the preset condition is met.
  • the first terminal device receives the first service data sent by the application server through the first TCP connection.
  • the first terminal device may receive the first service data sent by the first terminal device through the first TCP connection established with the application server.
  • the first terminal device buffers the first service data.
  • the specific process of the first terminal device caching the first service data is shown in FIG. 3, and the process includes:
  • the first terminal device determines that the service carried by the third TCP connection is in the first buffer area occupied by the second terminal device.
  • the second terminal device After the second terminal device establishes a third TCP connection with the application server through the first terminal device, the second terminal device will set a first buffer area for the third TCP connection for buffering the second terminal device's third TCP connection Connect the received service data; then, the first terminal device can determine the size of the first buffer area. Specifically, when the second terminal device establishes the third TCP connection with the application server, the first terminal device may determine the receiving window of the third TCP connection according to the TCP message sent by the second terminal device to the application server, which is the The size of the first buffer area.
  • the first terminal device sets a second buffer area in the first terminal device for the service carried by the first TCP connection.
  • the second terminal device After the second terminal device determines the size of the first buffer area, the second terminal device can set a second buffer area in the first terminal device for the service carried by the first TCP connection, and the size of the second buffer area is the same as the size of the second buffer area.
  • the size of a buffer area is the same.
  • the first terminal device buffers the first service data through the second buffer area.
  • the first terminal device may cache the first service data sent to it by the application server through the first TCP connection through the second buffer area. Specifically, after the first terminal device sets the second buffer area, it can request the application proxy module in the first terminal device to execute a quick command, so as to download the first service data more quickly so as to facilitate the passage of the first service data.
  • the second buffer area buffers the first service data.
  • the first terminal device sends the first service data to the second terminal device through the second TCP connection.
  • the first terminal device may send the buffered first service data to the second terminal device through the second TCP connection.
  • the first terminal device sends the first service data to the second terminal device through the second TCP connection
  • the transmission of the first service data can be controlled. For example, when the WiFi signal between the first terminal device and the second terminal device is poor, the first terminal device can adjust the sliding window of the second TCP connection so that the first terminal device follows the second terminal device in this environment.
  • the receiving capability of the device sends the corresponding data packet.
  • the first terminal device can quickly adjust the second TCP connection sliding window, so that the first terminal device can follow the first Second, the current receiving capability of the terminal device sends the corresponding data packet, which can avoid or prevent the overall user-side network transmission quality caused by the fact that the sliding window of the second TCP connection cannot be quickly adjusted to an appropriate size according to the strength state of the WiFi signal. Poor problem.
  • the size of the second cache area may be dynamically adjusted according to the third download rate and the fourth download rate, where the third download rate is The download rate at which the second terminal device downloads the first service data from the first terminal device through the second communication connection within the third preset time period, and the fourth download rate is the first terminal device within the third preset time period The download rate of downloading the first service data through the first communication connection.
  • the specific process of adjusting the second buffer area by the second terminal device is described in detail in FIG. 4. Please refer to FIG. 4. The process includes:
  • the first terminal device determines whether the third download rate is greater than or equal to the fourth download rate, and if so, execute step 402; if not, execute step 403.
  • the first terminal device adjusts the size of the second buffer area to the size of the first buffer area.
  • the second terminal device may set the size of the second buffer area to the size of the first buffer area.
  • the first terminal device adjusts the size of the second buffer area, and the adjusted size of the second buffer area is the size of the first buffer area multiplied by the rate ratio.
  • the first terminal device adjusts the second buffer area to obtain an adjusted second buffer area, and the size of the adjusted second buffer area is the size of the first buffer area.
  • the size is multiplied by the rate ratio, and the rate ratio is the ratio of the third download rate to the fourth download rate.
  • the adjustment of the second buffer area may also be implemented in the following manner, specifically: when the current remaining space of the second buffer area is less than or equal to the fifth preset threshold
  • the expanded second buffer area is n times the size of the second buffer area before the expansion, and the size of the expanded second buffer area is less than or equal to the first buffer area.
  • the size of a buffer area is m times; when the current remaining space of the second buffer area is greater than the fifth preset threshold, the CPE reduces the second buffer area, wherein the size of the reduced second buffer area is the second before the reduction 1/n times the size of the buffer area, and the size of the reduced second buffer area is greater than or equal to the size of the first buffer area and less than m times the size of the first buffer area, m is greater than n, n, and m Is a positive integer not equal to 0.
  • the current buffer size of the second buffer area is the receiving window (RWND) of the UE, and when the current remaining space of the second buffer area is 10% of the current buffer size, the first terminal device expands
  • the second buffer area for example, the first terminal device expands the current buffer size of the second buffer area to twice the current buffer size, that is, the second buffer area is 2*RWND;
  • the first terminal device shrinks the second buffer area; for example, the first terminal The device reduces the second buffer area to 1/2 times the current buffer size, that is, the second buffer area is 4*RWND.
  • the size of the adjusted second buffer area is greater than or equal to the size of the first buffer area and less than or equal to m times the size of the first buffer area. For example, if the size of the first buffer area is the RWND of the UE, and m is 10, the adjusted first buffer area is greater than or equal to RWND and less than or equal to 10*RWND.
  • the first terminal device transmits the first service data to the WiFi layer of the first terminal device in the TCP layer through the second TCP connection, and then the first terminal device transmits the first service data through the WiFi layer. It is transmitted to the second terminal device, and the first terminal device starts the first timer after sending the first service data out at the TCP layer, so as to determine within the first timer whether the ACK message sent by the second terminal device is received If it is not received, the first terminal device resends the first service data at the TCP layer; and after the WiFi layer of the first terminal device receives the first service data sent by the TCP layer, the first terminal device is at the WiFi layer The second timer is started, and if the first terminal device does not send the first service data to the second terminal device within the duration of the second timer, the first terminal device performs packet loss processing on the first service data.
  • the first terminal device may adjust the first timer and the second timer so that The durations of these two timers are the same and synchronized; secondly, the first terminal device can increase the number of ACK packets allowed to be retransmitted by the second terminal device, so that the second terminal device can report the data reception status through the ACK packet. The terminal device then sends the service data that the second terminal device has not successfully received according to the ACK message.
  • the first terminal device when the preset conditions are met, the first terminal device establishes a first TCP connection with the application server, and establishes a second TCP connection with the application client of the second terminal device; then, the first terminal device The TCP connection receives the first service data sent by the application server, buffers the first service data, and then sends the first service data to the second terminal device through the second TCP connection. Therefore, in the technical solution of the present application, the first terminal device may buffer the first service data and then forward it to the second terminal device, so as to realize the transmission control of the first service data.
  • an embodiment of the data transmission device 500 in the embodiment of the present application includes:
  • the processing module 501 is configured to establish a first communication connection with the network through the first communication technology, wherein the data transmission apparatus also has a second communication connection with a second terminal device, and the second communication connection is the second terminal device passing through the second communication connection. 2.
  • the processing module 501 is further configured to establish a first transmission control protocol TCP connection with the application server and establish a second TCP connection with the application client of the second terminal device when the preset condition is met;
  • the transceiver module 502 is configured to receive the first service data sent by the application server through the first TCP connection;
  • the processing module 501 is also used to cache the first service data
  • the transceiver module 502 is further configured to send the first service data to the second terminal device through the second TCP connection.
  • the preset condition includes:
  • the service type of the service carried by the third TCP connection established between the second terminal device and the application server meets the preset service type.
  • the preset condition includes: the second communication connection is abnormal.
  • the preset condition includes: the service type of the service carried by the third TCP connection established between the second terminal device and the application server meets the preset service type and the second communication connection Abnormal.
  • the preset condition includes: the service type of the service carried by the third TCP connection established between the second terminal device and the application server meets the preset service type, and the data transmission device The historical abnormality determines that the first communication connection or the second communication connection is abnormal within the predicted time period.
  • the abnormality in the second communication connection includes: the second terminal device downloads the second service data carried by the third TCP connection through the second communication connection within the first preset time period The first download rate is less than the first preset threshold; or, the mean square error of the first download rate at which the second terminal device downloads the second service data through the second communication connection within the first preset time period is greater than the second preset threshold Or, the second terminal device downloads the first download rate of the second service data from the data transmission device via the second communication connection and the data transmission device downloads the second service from the application server via the first communication connection The difference in the second download rate of the data is greater than the third preset threshold.
  • the preset condition includes: the number of data packets successfully received by the second terminal device through the third TCP connection established by the second terminal device and the application server within the second preset time period The number is less than the fourth preset threshold.
  • processing module 501 is specifically configured to:
  • the first service data is buffered by the second buffer area.
  • processing module 501 is further used for:
  • the second buffer area is adjusted according to the third download rate and the fourth download rate, where the third download rate is that the second terminal device downloads the first buffer from the data transmission device through the second communication connection within a third preset time period.
  • the download rate of the service data, where the fourth download rate is the download rate of the data transmission device to download the first service data from the application server through the first communication connection within the third preset time period.
  • processing module 501 is specifically configured to:
  • the second buffer area is adjusted to obtain an adjusted second buffer area, and the size of the adjusted second buffer area is the size of the first buffer area multiplied by The rate ratio is the ratio of the third download rate to the fourth download rate.
  • processing module 501 is specifically configured to:
  • the second cache area is expanded, wherein the size of the expanded second cache area N times the size of the second buffer area before expansion, and the size of the second buffer area after expansion is less than or equal to m times the size of the first buffer area;
  • the second buffer area is reduced, wherein the reduced second buffer area is before the reduction 1/n times the size of the second buffer area, and the size of the reduced second buffer area is greater than or equal to the size of the first buffer area and less than m times the size of the first buffer area, m is greater than n , N and m are positive integers not equal to 0.
  • the processing module 501 establishes a first communication connection with the network through the first communication technology, wherein the processing module 501 also has a second communication connection with a second terminal device, and the second communication connection is the second terminal device A communication connection established with the data transmission device through the second communication technology; the processing module 501 is configured to establish a first TCP connection with the application server and a second TCP connection with the application client of the second terminal device when the preset condition is met Connection; the transceiver module 502 receives the first service data sent by the application server through the first TCP connection; then, the processing module 501 buffers the first service data, and the transceiver module 502 sends the first service data to the second terminal device through the second TCP connection One business data. Therefore, in the technical solution of the present application, the processing module 501 may buffer the first service data and then forward the first service data to the second terminal device through the transceiver module 502, so as to realize the transmission control of the first service data.
  • This application also provides another data transmission device 600.
  • an embodiment of the data transmission device 600 in the embodiment of this application includes:
  • the processor 601, the memory 602, and the input/output device 603 are respectively connected to the bus 604, and computer instructions are stored in the memory.
  • the processing module 501 in the foregoing embodiment may specifically be the processor 601 in this embodiment, so the specific implementation of the processor 601 will not be described again.
  • the transceiver module 502 in the foregoing embodiment may specifically be the input/output device 603 in this embodiment, so the specific implementation of the input/output device 603 will not be described in detail.
  • the disclosed system, device, and method may be implemented in other ways.
  • the device embodiments described above are only illustrative.
  • the division of the units is only a logical function division, and there may be other divisions in actual implementation, for example, multiple units or components can be combined or It can be integrated into another system, or some features can be ignored or not implemented.
  • the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, devices or units, and may be in electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
  • each unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated unit can be implemented in the form of hardware or software functional unit.
  • the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer readable storage medium.
  • the technical solution of this application essentially or the part that contributes to the existing technology or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium , Including several instructions to make a computer device (which can be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the method described in each embodiment of the present application.
  • the aforementioned storage media include: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disk or optical disk and other media that can store program code .

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请实施例公开了一种数据传输方法以及装置,用于实现第一终端设备对第二终端设备的业务数据的传输控制。本申请实施例方法包括:当满足预设条件时,第一终端设备与应用服务器建立第一传输控制协议TCP连接,与第二终端设备的应用客户端建立第二TCP连接;所述第一终端设备通过所述第一TCP连接接收所述应用服务器发送的第一业务数据;所述第一终端设备缓存所述第一业务数据;所述第一终端设备通过所述第二TCP连接向所述第二终端设备发送所述第一业务数据。

Description

数据传输方法以及装置
本申请要求在2019年5月28日提交中国国家知识产权局、申请号为201910451811.6的中国专利申请的优先权,发明名称为“数据传输方法以及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信技术,尤其涉及一种数据传输方法以及装置。
背景技术
客户前置设备(customer premise equipment,CPE)是一种将接收到的蜂窝信号以WiFi信号转发出去的移动信号接入设备。例如,CPE可以将4G通信网络或者5G通信网络的蜂窝信号转换为WiFi信号,以支持多个终端设备连接该WiFi信号进行上网。
CPE通过蜂窝信号的方式与网络建立通信连接,而终端设备通过WiFi信号的方式与CPE建立通信连接;然后,终端设备的应用客户端通过该CPE与应用服务器建立传输控制协议(Transmission Control Protocol,TCP)连接;应用服务器通过该TCP连接传输该应用客户端的业务数据给CPE,然后CPE再将该业务数据转发给该终端设备。
由上述方案可知,CPE将应用服务器发送的业务数据转发给终端设备,仅起到的是在互联网协议地址(Internet Protocol Address,IP)层对业务数据的转发作用,无法对业务数据的传输进行控制。
发明内容
本申请实施例提供了一种数据传输方法以及装置,用于实现第一终端设备对第二终端设备的业务数据的传输控制。
本申请实施例第一方面提供了一种数据传输方法,包括:
第一终端设备通过第一通信技术与网络建立第一通信连接,且第一终端设备还与第二终端设备存在第二通信连接,该第二通信连接是该第二终端设备通过第二通信技术与该第一终端设备建立的通信连接;然后,当满足预设条件时,该第一终端设备与应用服务器建立第一TCP连接,与第二终端设备的应用客户端建立第二TCP连接,第一终端设备再通过该第一TCP连接接收应用服务器发送的第一业务数据,然后缓存该第一业务数据,并通过第二TCP连接向第二终端设备发送该第一业务数据。因此,本申请的技术方案中,第一终端设备可以将第一业务数据进行缓存再转发给第二终端设备,实现对第一业务数据的传输控制。
一种可能的实现方式中,该预设条件包括:该第二终端设备与应用服务器已建立的第三TCP连接所承载的业务的业务类型符合预设的业务类型。在该可能的实现方式中,通过判断该第三TCP连接所承载的业务的业务类型来确定是否为该第三TCP连接开启TCP代理,可以实现根据实际业务需求来为有TCP代理需求的业务开启TCP代理。
另一种可能的实现方式中,该预设条件包括:第二通信连接出现异常。在该可能的实现方式中,当第二通信连接出现异常时,优先为该第三TCP连接开启TCP代理,再通过第 一终端设备对第一业务数据的传输控制来实现减小由于第二通信连接的网络不稳定性导致第二终端设备侧网络传输质量总体较差的问题。
另一种可能的实现方式中,该预设条件包括:第二终端设备与应用服务器已建立的第三TCP连接所承载的业务的业务类型符合预设的业务类型且第二通信连接出现异常。在该可能的实现方式中,第一终端设备结合第三TCP连接所承载的业务的业务类型和第二通信连接的网络质量确定是否为第三TCP连接开启TCP代理,更具有针对性地为真正有TCP代理需求的第二终端设备开启TCP连接。
另一种可能的实现方式中,该预设条件包括:第二终端设备与应用服务器已建立的第三TCP连接所承载的业务的业务类型符合预设的业务类型且第一终端设备根据历史异常情况确定在预测时长内第一通信连接或者第二通信连接出现异常。在该可能的实现方式中,第一终端设备结合第三TCP连接所承载的业务的业务类型以及第一终端设备根据历史异常情况预测的异常结果确定是否为第三TCP连接开启TCP代理,更具有针对性地为真正有TCP代理需求的第二终端设备开启TCP连接。
另一种可能的实现方式中,第二通信连接出现异常包括:第二终端设备在第一预设时长内通过第二通信连接下载第三TCP连接所承载的第二业务数据的第一下载速率小于第一预设阈值;或者,第二终端设备在第一预设时长内通过第二通信连接下载第二业务数据的第一下载速率的均方差大于第二预设阈值;或者,第二终端设备通过第二通信连接从第一终端设备中下载第二业务数据的第一下载速率与第一终端设备通过第一通信连接从应用服务器下载第二业务数据的第二下载速率的差值大于第三预设阈值。
另一种可能的实现方式中,预设条件包括:第二终端设备在第二预设时长内通过第二终端设备与应用服务器已建立的第三TCP连接成功接收的数据包个数小于第四预设阈值。在该可能的实现方式中,第一终端设备也可以通过判断第二终端设备在第二预设时长内通过第三TCP连接成功接收的数据包的个数来确定第二通信连接的网络状态,提供了另一种判断第二通信连接的网络状态的方式。
另一种可能的实现方式中,该第一终端设备缓存该第一业务数据包括:首先,第一终端设备确定第三TCP连接所承载的业务在第二终端设备所占用的第一缓存区;然后,第一终端设备在第一终端设备中为第二TCP连接所承载的业务设置第二缓存区,其中,第一缓存区的大小与第二缓存区的大小相同;第一终端设备通过第二缓存区缓存第一业务数据。
另一种可能的实现方式中,该方法还包括:第一终端设备根据第三下载速率和第四下载速率调整第二缓存区,第三下载速率为第二终端设备在第三预设时长内通过第二通信连接从第一终端设备下载第一业务数据的下载速率,第四下载速率为第一终端设备在第三预设时长内通过第一通信连接从应用服务器下载第一业务数据的下载速率。在该可能的实现方式中,提供了第一终端设备还可以根据下载速率来动态调整第二缓存区的大小,在实际应用中,提升了方案的实用性。
另一种可能的实现方式中,第一终端设备根据第三下载速率和第四下载速率调整第二缓存区包括:当第三下载速率小于第四下载速率时,第一终端设备调整第二缓存区,得到调整后的第二缓存区,调整后的第二缓存区的大小为第一缓存区的大小乘以速率比值,速率比值为第三下载速率与第四下载速率的比值。在该可能的实现方式中,提供了一种具体 第一终端设备如何根据下载速率动态调整第二缓存区的方式。
另一种可能的实现方式中,第一终端设备根据第三下载速率和第四下载速率调整第二缓存区包括:当第三下载速率小于第四下载速率且第二缓存区的当前剩余空间小于或者等于第五预设阈值时,第一终端设备扩大第二缓存区,其中,扩大后的第二缓存区的大小为扩大前的第二缓存区的大小的n倍,且扩大后的第二缓存区的大小小于或者等于第一缓存区的大小的m倍;当第三下载速率小于第四下载速率且第二缓存区中的当前剩余空间大于第五预设阈值时,第一终端设备缩小第二缓存区,其中,缩小后的第二缓存区为缩小前的第二缓存区的大小的1/n倍,且缩小后的第二缓存区的大小大于或者等于第一缓存区的大小且小于第一缓存区的大小的m倍,m大于n,n和m为不等于0的正整数。在该可能的实现方式中,提供了另一种具体第一终端设备如何根据下载速率动态调整第二缓存区的方式。
本申请实施例第二方面提供了一种数据传输装置,该数据传输装置具有实现上述第一方面任意一种可能的实现方式中的第一终端设备执行的方法。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
本申请实施例第三方面提供了一种数据传输装置,该数据传输装置包括:处理器、存储器、输入输出设备以及总线;该处理器、存储器、输入输出设备分别与该总线相连,该存储器中存储有计算机指令;该处理器在执行该存储器中的计算机指令时,用于实现如第一方面或第一方面任意一种可能的实现方式中的方法任意一种实现方式。
本申请实施例第四方面提供了一种芯片系统,该芯片系统包括处理器,用于支持网络设备实现上述第一方面或第一方面任意一种可能的实现方式中所涉及的功能,例如,例如发送或处理上述方法中所涉及的数据和/或信息。在一种可能的设计中,所述芯片系统还包括存储器,所述存储器,用于保存网络设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包括芯片和其他分立器件。
本申请实施例第五方面提供了一种包括指令的计算机程序产品,其特征在于,当其在计算机上运行时,使得该计算机执行如第一方面或第一方面任意一种可能的实现方式中任一种的实现方式。
本申请实施例第六方面提供了一种计算机可读存储介质,其特征在于,包括指令,当该指令在计算机上运行时,使得计算机执行如第一方面或第一方面任意一种可能的实现方式中任一种实现方式。
从以上技术方案可以看出,本申请实施例具有以下优点:
经由上述技术方案可知,当满足预设条件时,第一终端设备与应用服务器建立第一TCP连接,与第二终端设备的应用客户端建立第二TCP连接;然后,第一终端设备通过第一TCP连接接收该应用服务器发送的第一业务数据,并缓存该第一业务数据,再通过第二TCP连接向第二终端设备发送该第一业务数据。因此,本申请的技术方案中,第一终端设备可以将第一业务数据进行缓存再转发给第二终端设备,实现对第一业务数据的传输控制。
附图说明
图1为本申请实施例提供的一个系统框架示意图;
图2为本申请实施例数据传输方法的一个实施例示意图;
图3为本申请实施例数据传输方法的另一个实施例示意图;
图4为本申请实施例数据传输方法的另一个实施例示意图;
图5为本申请实施例数据传输装置的一个结构示意图;
图6为本申请实施例数据传输装置的另一个结构示意图。
具体实施方式
本申请实施例提供了一种数据传输方法以及装置,用于实现第一终端设备对第二终端设备的业务数据的传输控制。
请参阅图1,图1为本申请实施例提供的一种系统框架示意图。图1为本申请实施例应用于4G通信网络的系统框架示意图,需要说明的是,本申请实施例同样适用于3G、5G甚至6G等通信网络,具体本申请不做限定。下面以图1应用于4G通信网络为例进行说明。
本申请实施例中,第一终端设备可以为图1所示的CPE,还可以是手机、WiFi盒子、移动热点(mobile WiFi,mifi)等终端设备,这里以第一终端设备为CPE为例进行说明。CPE通过4G通信网络的移动信号的方式接入网络,即与接入网设备建立通信连接。其中,接入网设备可以为gNB、传输接收点(transmission reception point,TRP)、演进型节点B(evolved Node B,eNB)、无线网络控制器(radio network controller,RNC)、节点B(Node B,NB)、基站控制器(base station controller,BSC)、基站收发台(base transceiver station,BTS)、家庭基站(例如,home evolved NodeB,或home Node B,HNB)、BBU,或WiFi接入点(access point,AP)等,具体本申请不做限定,这里以图1所示的接入网设备为基站进行说明。CPE通过4G移动信号与基站建立通信连接,CPE接收4G移动信号,并以WiFi信号的形式将该4G移动信号转发出去。其中,本申请实施例中第二终端设备,又称之为用户设备(user equipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal,MT)等,是一种向用户提供语音/数据连通性的设备,例如,具有无线连接功能的手持式设备等,这里以图1所示的UE1为第二终端设备为例进行说明。那么UE1可以通过该WiFi信号与该CPE创建通信连接;然后,UE1上的应用客户端可以通过该CPE建立与应用服务器的TCP连接,并通过该TCP连接接收应用服务器发送的业务数据。
由此可知,第二终端设备通过第一终端设备建立与应用服务器之间的TCP连接;然后,第一终端设备接收应用服务器发送的该第二终端设备的业务数据,再将该业务数据转发给第二终端设备。在这个过程当中,第一终端设备仅仅是起到对业务数据的转发,并无法对业务数据的传输进行控制。进一步地,当第一终端设备与第二终端设备之间通过WiFi信号建立的通信连接的信号强度较为不稳定时,第一终端设备无法解决WiFi信号不稳定带来的TCP层数据传输速率低的问题。有鉴于此,本申请实施例提供了一种数据传输方法,用于实现第一终端设备对第二终端设备的业务数据的传输控制。
下面对本申请实施例的数据传输方法进行介绍,请参阅图2,图2为本申请实施例中数据传输方法的一个实施例示意图,该方法包括:
201、第一终端设备通过第一通信技术与网络创建第一通信连接。
其中,第一通信技术可以是蜂窝网络通信的方式,第一终端设备通过蜂窝网络的蜂窝信号(例如:4G或者5G通信网络的移动信号)的方式接入网络。第二终端设备可以通过第二通信技术与该第一终端设备创建第二通信连接,其中,该第二通信技术可以是通过WiFi信号与第一终端设备建立第二通信连接。
202、当满足预设条件时,第一终端设备与应用服务器建立第一TCP连接,与第二终端设备的应用客户端建立第二TCP连接。
在步骤201可知,第二终端设备与第一终端设备通过第二通信技术创建第二通信连接之后,当某个应用客户端存在业务需求时,该第二终端设备的应用客户端可以通过第一终端设备与应用服务器创建第三TCP连接,然后应用服务器通过该第三TCP连接向第一终端设备传输第二业务数据。而当满足预设条件时,第一终端设备可以为该第三TCP连接开启TCP代理,具体的过程是:第一终端设备与该应用服务器创建第一TCP连接,与该第二终端设备创建第二TCP连接;而此时第二终端设备会断开与应用服务器建立的第三TCP连接,并通过第二TCP连接来接收第一终端设备发送的第一业务数据。其中,预设条件有多种,下面举例说明:
1、第三TCP连接所承载的业务的业务类型符合预设的业务类型。
在本申请实施例中,第一终端设备为一些特定业务开启TCP代理,其中,特定业务可以理解为业务数据量较大且时延要求较低的业务,例如,网页浏览、音视频业务、图片下载、小视频下载等。所以,第一终端设备可以判断第三TCP连接所承载的业务是否符合预设的业务类型,若是,则第一终端设备可以确定满足预设条件。例如,该第三TCP连接所承载的是第二终端设备上通过爱奇艺客户端观看某个视频的数据,可以确定该业务为视频业务,则第一终端设备为该第三TCP连接开启TCP代理。
2、第二通信连接出现异常。
其中,该第二通信连接出现异常可以包括以下情况之一:
a、第二终端设备在第一预设时长内通过该第二通信连接下载第三TCP连接所承载的第二业务数据的第一下载速率小于第一预设阈值。
需要说明的是,该第一下载速率可以为某个时刻的下载速率,也可以是该第二终端设备在第一预设时长内的平均下载速率,例如一天内的下载速率的平均值。而该第一预设阈值可以是第二终端设备根据第二终端设备下载第三TCP连接所承载的第二业务数据的历史下载速率计算得到的一个历史平均下载速率。当第一下载速率小于第一预设阈值时,第一终端设备可以为该第三TCP连接开启TCP代理。
b、第二终端设备在第一预设时长内通过该第二通信连接下载第三TCP连接所承载的第二业务数据的第一下载速率的均方差大于第二预设阈值。
需要说明的是,当该第一下载速率的均方差大于第二预设阈值时,那么可以理解为在这段预设时长内,第二终端设备的第一下载速率的变化幅度较大,网络较为不稳定。当第一下载速率的均方差大于第二预设阈值时,第一终端设备可以为该第三TCP连接开启TCP代理。
c、第二终端设备通过第二通信连接下载该第三TCP连接所承载的第二业务数据的第 一下载速率与该第一终端设备通过第一通信连接下载该第三TCP连接所承载的第二业务数据的第二下载速率的差值大于第三预设阈值。
当第一下载速率小于该第二下载速率时,如果这两者的差值大于第三预设阈值时,可以理解为该第二通信连接出现异常,那么,第一终端设备可以为该第三TCP连接开启TCP代理。
3、第三TCP连接所承载的业务的业务类型符合预设的业务类型且第二通信连接出现异常。
4、第三TCP连接所承载的业务的业务类型符合预设的业务类型且第一终端设备根据历史异常情况确定在第一时长该第一通信连接或者该第二通信连接出现异常。
其中,历史异常情况包括:历史异常发生原因(例如,第一通信连接或者第二通信连接异常)和异常的特征(例如,发生异常的时间点或者时间段、发生异常的应用类型)。第一终端设备可以根据历史异常情况预测再次发生异常的时间点或者异常特征等。例如,每天晚上6点至7点,家庭内部成员很多会使用爱奇艺客户端看视频,导致WiFi信号变差,那么第一终端设备可以确定在每天晚上6点至7点这个时间段内该第一通信连接将出现异常,所以第一终端设备可以为该第三TCP连接开启TCP代理。而如果在每天晚上6点至7点这个时间段内,由于基站的无线资源是有限的,若多个第一终端设备同时请求大带宽资源,则存在无法完全满足所有第一终端设备的请求的问题,则此时第一通信连接将出现异常。
5、该第二终端设备在第二预设时长内通过该第二终端设备与该应用服务器已建立的第三TCP连接成功接收的数据包个数小于第四预设阈值。
可选的,第一终端设备可以通过该第二终端设备发送的ACK报文确定该第二终端设备在单位时间内成功接收的数据包的个数,当数据包的个数小于第四预设阈值时,该第一终端设备可以确定该第一通信连接的网络较差,那么第一终端设备可以确定满足预设条件。例如,应用服务器通过第三TCP连接在单位时间内向第二终端设备发送10个数据包,而第一终端设备通过第二终端设备反馈的ACK报文确定该第二终端设备在该单位时间内仅仅收到4个数据包,而该第四预设阈值为5,那么第一终端设备确定数据包的个数小于5,所以第一终端设备确定满足预设条件。
203、第一终端设备通过第一TCP连接接收应用服务器发送的第一业务数据。
第一终端设备为第三TCP连接开启TCP代理之后,第一终端设备可以通过与应用服务器建立的第一TCP连接接收该第一终端设备发送的第一业务数据。
204、第一终端设备缓存该第一业务数据。
其中,第一终端设备缓存该第一业务数据的具体过程如图3所示,该过程包括:
301、第一终端设备确定第三TCP连接所承载的业务在第二终端设备所占用的第一缓存区。
在第二终端设备通过第一终端设备与该应用服务器建立第三TCP连接之后,该第二终端设备会为该第三TCP连接设置第一缓存区,用于缓存第二终端设备通过第三TCP连接接收到的业务数据;那么,第一终端设备可以确定该第一缓存区的大小。具体的,在第二终端设备在与应用服务器建立该第三TCP连接时,第一终端设备可以根据第二终端设备向应 用服务器发送的TCP消息确定该第三TCP连接的接收窗口,即为该第一缓存区的大小。
302、第一终端设备在该第一终端设备中为该第一TCP连接所承载的业务设置第二缓存区。
第二终端设备确定第一缓存区的大小之后,第二终端设备可以在第一终端设备中为第一TCP连接所承载的业务设置第二缓存区,且该第二缓存区的大小与该第一缓存区的大小相同。
303、第一终端设备通过第二缓存区缓存该第一业务数据。
第一终端设备可以通过该第二缓存区缓存应用服务器通过第一TCP连接向其发送的第一业务数据。具体的,第一终端设备设置该第二缓存区之后,可以向该第一终端设备中的应用代理模块请求执行快发的命令,从而更快地下载该第一业务数据,以便于通过该第二缓存区缓存该第一业务数据。
205、第一终端设备通过第二TCP连接向第二终端设备发送第一业务数据。
第一终端设备可以将缓存的第一业务数据通过第二TCP连接发送给第二终端设备,在第一终端设备通过第二TCP连接向第二终端设备发送第一业务数据时,第一终端设备可以对该第一业务数据的传输进行控制。例如,当该第一终端设备至第二终端设备之间的WiFi信号较差,第一终端设备可以调整该第二TCP连接的滑动窗口,使得第一终端设备在这种环境下按照第二终端设备的接收能力发送对应的数据包。而当第一终端设备至第二终端设备之间的WiFi信号恢复至良好的状态时,第一终端设备可以快速地调整该第二TCP连接滑动窗口,以便于此时第一终端设备能够按照第二终端设备当前的接收能力发送对应的数据包,这样可以避免或者防止由于第二TCP连接的滑动窗口无法根据该WiFi信号的强度状态快速调整至合适的大小带来的用户侧网络传输质量总体较差的问题。
可选的,本申请实施例中,第二终端设备设置该第二缓存区之后,可以根据第三下载速率和第四下载速率动态调整该第二缓存区的大小,其中,第三下载速率为该第二终端设备在第三预设时长内通过第二通信连接从第一终端设备下载该第一业务数据的下载速率,该第四下载速率为第一终端设备子在第三预设时长内通过第一通信连接下载该第一业务数据的下载速率。具体的,第二终端设备调整第二缓存区的具体过程通过图4详细说明,请参阅图4,该过程包括:
401、第一终端设备判断第三下载速率是否大于等于第四下载速率,若是,则执行步骤402;若否,则执行步骤403。
402、第一终端设备将第二缓存区的大小调整为第一缓存区的大小。
当该第三下载速率大于或者等于该第四下载速率时,第二终端设备可以将第二缓存区的大小设置为第一缓存区的大小。
403、第一终端设备调整该第二缓存区的大小,且调整后的第二缓存区的大小为第一缓存区的大小乘以速率比值。
当第三下载速率小于该第四下载速率时,第一终端设备调整该第二缓存区,得到调整后的第二缓存区,该调整后的第二缓存区的大小为该第一缓存区的大小乘以速率比值,速率比值为第三下载速率和第四下载速率的比值。
可选的,当第三下载速率小于第四下载速率时,还可以通过以下方式实现对第二缓存 区的调整,具体为:当第二缓存区的当前剩余空间小于或者等于第五预设阈值时,第一终端设备扩大第二缓存区,其中,扩大后的第二缓存区为扩大前的第二缓存区的大小的n倍,且扩大后的第二缓存区的大小小于或者等于该第一缓存区的的大小m倍;当第二缓存区的当前剩余空间大于第五预设阈值时,CPE缩小第二缓存区,其中,缩小后的第二缓存区的大小为缩小前的第二缓存区的大小的1/n倍,且缩小后的第二缓存区的大小大于或者等于该第一缓存区的大小且小于该第一缓存区的大小的m倍,m大于n,n和m为不等于0的正整数。
例如,该第二缓存区的当前缓存大小为该UE的接收窗口(receiving window,RWND),当该第二缓存区的当前剩余空间为该当前缓存大小的10%时,则第一终端设备扩大该第二缓存区,例如,第一终端设备将该第二缓存区当前缓存大小扩大为当前缓存大小的两倍,即该第二缓存区为2*RWND;
而若第二缓存区的当前缓存大小为8*RWND;当该第二缓存区的当前剩余空间为当前缓存大小的90%时,第一终端设备缩小该第二缓存区;例如,第一终端设备将该第二缓存区缩小为当前缓存大小的1/2倍,即该第二缓存区为4*RWND。
需要说明的是,第一终端设备对第二缓存区进行扩大或者缩小是有限度的。其中,调整后的第二缓存区的大小大于或者等于第一缓存区的大小且小于或者等于第一缓存区的大小的m倍。例如,第一缓存区的大小为该UE的RWND,m为10,则调整后的第一缓存区大于或者等于RWND且小于或者等于10*RWND。
本申请实施例中,第一终端设备通过第二TCP连接在TCP层中传输该第一业务数据至该第一终端设备的WiFi层,然后第一终端设备再通过WiFi层将该第一业务数据传输给第二终端设备,而第一终端设备在TCP层发送该第一业务数据出去之后会启动第一定时器,以便于在第一定时器内确定是否收到第二终端设备发送的ACK报文,如果没有收到,则第一终端设备在TCP层重新发送该第一业务数据;而第一终端设备的WiFi层接收到TCP层发送的第一业务数据之后,第一终端设备在WiFi层启动第二定时器,如果在第二定时器的时长内第一终端设备不向第二终端设备发送该第一业务数据,则第一终端设备将该第一业务数据进行丢包处理。因此,在本申请实施例中,为了第一终端设备能够将缓存的第一业务数据成功传输至第二终端设备侧,第一终端设备可以调整该第一定时器和第二定时器,以使得这两个定时器的时长一致并且同步;其次,第一终端设备可以调大允许第二终端设备重传ACK报文的数量,以便于第二终端设备通过ACK报文上报数据接收情况,第一终端设备再根据ACK报文发送第二终端设备未成功接收的业务数据。
本申请实施例中,当满足预设条件时,第一终端设备与应用服务器建立第一TCP连接,与第二终端设备的应用客户端建立第二TCP连接;然后,第一终端设备通过第一TCP连接接收该应用服务器发送的第一业务数据,并缓存该第一业务数据,再通过第二TCP连接向第二终端设备发送该第一业务数据。因此,本申请的技术方案中,第一终端设备可以将第一业务数据进行缓存再转发给第二终端设备,实现对第一业务数据的传输控制。
下面对本申请实施例提供的数据传输装置500进行描述,请参阅图5,本申请实施例中数据传输装置500的一个实施例包括:
处理模块501,用于通过第一通信技术与网络建立第一通信连接,其中,该数据传输 装置还与第二终端设备存在第二通信连接,该第二通信连接为该第二终端设备通过第二通信技术与该数据传输装置建立的通信连接;
该处理模块501,还用于当满足预设条件时,与应用服务器建立第一传输控制协议TCP连接,与第二终端设备的应用客户端建立第二TCP连接;
收发模块502,用于通过该第一TCP连接接收该应用服务器发送的第一业务数据;
该处理模块501,还用于缓存该第一业务数据;
该收发模块502,还用于通过该第二TCP连接向该第二终端设备发送该第一业务数据。
一种可能的实现方式中,该预设条件包括:
该第二终端设备与该应用服务器已建立的第三TCP连接所承载的业务的业务类型符合预设的业务类型。
另一种可能的实现方式中,该预设条件包括:该第二通信连接出现异常。
另一种可能的实现方式中,该预设条件包括:该第二终端设备与该应用服务器已建立的第三TCP连接所承载的业务的业务类型符合预设的业务类型且该第二通信连接出现异常。
另一种可能的实现方式中,该预设条件包括:该第二终端设备与该应用服务器已建立的第三TCP连接所承载的业务的业务类型符合预设的业务类型且该数据传输装置根据历史异常情况确定在预测时长内该第一通信连接或者该第二通信连接出现异常。
另一种可能的实现方式中,该第二通信连接出现异常包括:该第二终端设备在第一预设时长内通过该第二通信连接下载该第三TCP连接所承载的第二业务数据的第一下载速率小于第一预设阈值;或者,该第二终端设备在第一预设时长内通过第二通信连接下载该第二业务数据的第一下载速率的均方差大于第二预设阈值;或者,该第二终端设备通过第二通信连接从该数据传输装置中下载该第二业务数据的第一下载速率与该数据传输装置通过该第一通信连接从该应用服务器下载该第二业务数据的第二下载速率的差值大于第三预设阈值。
另一种可能的实现方式中,该预设条件包括:该第二终端设备在第二预设时长内通过该第二终端设备与该应用服务器已建立的第三TCP连接成功接收的数据包个数小于第四预设阈值。
另一种可能的实现方式中,该处理模块501具体用于:
确定该第三TCP连接所承载的业务在该第二终端设备所占用的第一缓存区;
在该数据传输装置中为该第二TCP连接所承载的业务设置第二缓存区,其中,该第一缓存区的大小与该第二缓存区的大小相同;
通过该第二缓存区缓存该第一业务数据。
另一种可能的实现方式中,该处理模块501还用于:
根据第三下载速率和第四下载速率调整该第二缓存区,该第三下载速率为该第二终端设备在第三预设时长内通过该第二通信连接从该数据传输装置下载该第一业务数据的下载速率,该第四下载速率为该数据传输装置在该第三预设时长内通过该第一通信连接从该应用服务器下载该第一业务数据的下载速率。
另一种可能的实现方式中,该处理模块501具体用于:
当该第三下载速率小于该第四下载速率时,调整该第二缓存区,得到调整后的第二缓存区,该调整后的第二缓存区的大小为该第一缓存区的大小乘以速率比值,该速率比值为该第三下载速率与该第四下载速率的比值。
另一种可能的实现方式中,该处理模块501具体用于:
当该第三下载速率小于该第四下载速率且该第二缓存区的当前剩余空间小于或者等于第五预设阈值时,扩大该第二缓存区,其中,扩大后的第二缓存区的大小为扩大前的第二缓存区的大小的n倍,且该扩大后的第二缓存区的大小小于或者等于该第一缓存区的大小的m倍;
当该第三下载速率小于该第四下载速率且该第二缓存区中的当前剩余空间大于第五预设阈值时,缩小该第二缓存区,其中,缩小后的第二缓存区为缩小前的第二缓存区的大小的1/n倍,且该缩小后的第二缓存区的大小大于或者等于该第一缓存区的大小且小于该第一缓存区的大小的m倍,m大于n,n和m为不等于0的正整数。
本申请实施例中,处理模块501通过第一通信技术与网络建立第一通信连接,其中,处理模块501还与第二终端设备存在第二通信连接,该第二通信连接为该第二终端设备通过第二通信技术与该数据传输装置建立的通信连接;处理模块501,用于当满足预设条件时,与应用服务器建立第一TCP连接,与第二终端设备的应用客户端建立第二TCP连接;收发模块502通过第一TCP连接接收该应用服务器发送的第一业务数据;然后,处理模块501缓存该第一业务数据,收发模块502再通过第二TCP连接向第二终端设备发送该第一业务数据。因此,本申请的技术方案中,处理模块501可以将第一业务数据进行缓存再通过收发模块502转发给第二终端设备,实现对第一业务数据的传输控制。
本申请还提供另一种数据传输装置600,请参阅图6,本申请实施例中数据传输装置600一个实施例包括:
处理器601、存储器602、输入输出设备603以及总线604;
一种可能的实现方式中,该处理器601、存储器602、输入输出设备603分别与总线604相连,该存储器中存储有计算机指令。
前述实施例中的处理模块501具体可以是本实施例中的处理器601,因此该处理器601的具体实现不再赘述。前述实施例中的收发模块502则具体可以是本实施例中的输入输出设备603,因此该输入输出设备603的具体实现不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络 单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (22)

  1. 一种数据传输的方法,其特征在于,所述方法包括:
    第一终端设备通过第一通信技术与网络建立第一通信连接,其中,所述第一终端设备还与第二终端设备存在第二通信连接,所述第二通信连接为所述第二终端设备通过第二通信技术与所述第一终端设备建立的通信连接;
    当满足预设条件时,第一终端设备与应用服务器建立第一传输控制协议TCP连接,与第二终端设备的应用客户端建立第二TCP连接;
    所述第一终端设备通过所述第一TCP连接接收所述应用服务器发送的第一业务数据;
    所述第一终端设备缓存所述第一业务数据;
    所述第一终端设备通过所述第二TCP连接向所述第二终端设备发送所述第一业务数据。
  2. 根据权利要求1所述的方法,其特征在于,所述预设条件包括:
    所述第二终端设备与所述应用服务器已建立的第三TCP连接所承载的业务的业务类型符合预设的业务类型。
  3. 根据权利要求1所述的方法,其特征在于,所述预设条件包括:所述第二通信连接出现异常。
  4. 根据权利要求1所述的方法,其特征在于,所述预设条件包括:所述第二终端设备与所述应用服务器已建立的第三TCP连接所承载的业务的业务类型符合预设的业务类型且所述第二通信连接出现异常。
  5. 根据权利要求1所述的方法,其特征在于,所述预设条件包括:所述第二终端设备与所述应用服务器已建立的第三TCP连接所承载的业务的业务类型符合预设的业务类型且所述第一终端设备根据历史异常情况确定在预测时长内所述第一通信连接或者所述第二通信连接出现异常。
  6. 根据权利要求3至6中的任一项所述的方法,其特征在于,所述第二通信连接出现异常包括:所述第二终端设备在第一预设时长内通过所述第二通信连接下载所述第三TCP连接所承载的第二业务数据的第一下载速率小于第一预设阈值;或者,所述第二终端设备在第一预设时长内通过第二通信连接下载所述第二业务数据的第一下载速率的均方差大于第二预设阈值;或者,所述第二终端设备通过第二通信连接从所述第一终端设备中下载所述第二业务数据的第一下载速率与所述第一终端设备通过所述第一通信连接从所述应用服务器下载所述第二业务数据的第二下载速率的差值大于第三预设阈值。
  7. 根据权利要求1所述的方法,其特征在于,所述预设条件包括:所述第二终端设备在第二预设时长内通过所述第二终端设备与所述应用服务器已建立的第三TCP连接成功接收的数据包个数小于第四预设阈值。
  8. 根据权利要求1至7中的任一项所述的方法,其特征在于,所述第一终端设备缓存所述第一业务数据包括:
    所述第一终端设备确定所述第三TCP连接所承载的业务在所述第二终端设备所占用的第一缓存区;
    所述第一终端设备在所述第一终端设备中为所述第二TCP连接所承载的业务设置第二缓存区,其中,所述第一缓存区的大小与所述第二缓存区的大小相同;
    所述第一终端设备通过所述第二缓存区缓存所述第一业务数据。
  9. 根据权利要求8所述方法,其特征在于,所述方法还包括:
    所述第一终端设备根据第三下载速率和第四下载速率调整所述第二缓存区,所述第三下载速率为所述第二终端设备在第三预设时长内通过所述第二通信连接从所述第一终端设备下载所述第一业务数据的下载速率,所述第四下载速率为所述第一终端设备在所述第三预设时长内通过所述第一通信连接从所述应用服务器下载所述第一业务数据的下载速率。
  10. 根据权利要求9所述的方法,其特征在于,所述第一终端设备根据所述第三下载速率和所述第四下载速率调整所述第二缓存区包括:
    当所述第三下载速率小于所述第四下载速率时,所述第一终端设备调整所述第二缓存区,得到调整后的第二缓存区,所述调整后的第二缓存区的大小为所述第一缓存区的大小乘以速率比值,所述速率比值为所述第三下载速率与所述第四下载速率的比值。
  11. 根据权利要求9所述的方法,其特征在于,所述第一终端设备根据所述第三下载速率和所述第四下载速率调整所述第二缓存区包括:
    当所述第三下载速率小于所述第四下载速率且所述第二缓存区的当前剩余空间小于或者等于第五预设阈值时,所述第一终端设备扩大所述第二缓存区,其中,扩大后的第二缓存区的大小为扩大前的第二缓存区的大小的n倍,且所述扩大后的第二缓存区的大小小于或者等于所述第一缓存区的大小的m倍;
    当所述第三下载速率小于所述第四下载速率且所述第二缓存区中的当前剩余空间大于第五预设阈值时,所述第一终端设备缩小所述第二缓存区,其中,缩小后的第二缓存区为缩小前的第二缓存区的大小的1/n倍,且所述缩小后的第二缓存区的大小大于或者等于所述第一缓存区的大小且小于所述第一缓存区的大小的m倍,m大于n,n和m为不等于0的正整数。
  12. 一种数据传输装置,其特征在于,所述数据传输装置包括:
    处理模块,用于通过第一通信技术与网络建立第一通信连接,其中,所述数据传输装置还与第二终端设备存在第二通信连接,所述第二通信连接为所述第二终端设备通过第二通信技术与所述数据传输装置建立的通信连接;
    所述处理模块,还用于当满足预设条件时,与应用服务器建立第一传输控制协议TCP连接,与第二终端设备的应用客户端建立第二TCP连接;
    收发模块,用于通过所述第一TCP连接接收所述应用服务器发送的第一业务数据;
    所述处理模块,还用于缓存所述第一业务数据;
    所述收发模块,还用于通过所述第二TCP连接向所述第二终端设备发送所述第一业务数据。
  13. 根据权利要求12所述的数据传输装置,其特征在于,所述预设条件包括:
    所述第二终端设备与所述应用服务器已建立的第三TCP连接所承载的业务的业务类型符合预设的业务类型。
  14. 根据权利要求12所述的数据传输装置,其特征在于,所述预设条件包括:所述第二通信连接出现异常。
  15. 根据权利要求12所述的数据传输装置,其特征在于,所述预设条件包括:所述第二终端设备与所述应用服务器已建立的第三TCP连接所承载的业务的业务类型符合预设的业务类型且所述第二通信连接出现异常。
  16. 根据权利要求12所述的数据传输装置,其特征在于,所述预设条件包括:所述第二终端设备与所述应用服务器已建立的第三TCP连接所承载的业务的业务类型符合预设的业务类型且所述数据传输装置根据历史异常情况确定在预测时长内所述第一通信连接或者所述第二通信连接出现异常。
  17. 根据权利要求14至16中的任一项所述的数据传输装置,其特征在于,所述第二通信连接出现异常包括:所述第二终端设备在第一预设时长内通过所述第二通信连接下载所述第三TCP连接所承载的第二业务数据的第一下载速率小于第一预设阈值;或者,所述第二终端设备在第一预设时长内通过第二通信连接下载所述第二业务数据的第一下载速率的均方差大于第二预设阈值;或者,所述第二终端设备通过第二通信连接从所述数据传输装置中下载所述第二业务数据的第一下载速率与所述数据传输装置通过所述第一通信连接从所述应用服务器下载所述第二业务数据的第二下载速率的差值大于第三预设阈值。
  18. 根据权利要求12所述的数据传输装置,其特征在于,所述预设条件包括:所述第二终端设备在第二预设时长内通过所述第二终端设备与所述应用服务器已建立的第三TCP连接成功接收的数据包个数小于第四预设阈值。
  19. 根据权利要求12至18中的任一项所述的数据传输装置,其特征在于,所述处理模块具体用于:
    确定所述第三TCP连接所承载的业务在所述第二终端设备所占用的第一缓存区;
    在所述数据传输装置中为所述第二TCP连接所承载的业务设置第二缓存区,其中,所述第一缓存区的大小与所述第二缓存区的大小相同;
    通过所述第二缓存区缓存所述第一业务数据。
  20. 根据权利要求19所述的数据传输装置,其特征在于,所述处理模块还用于:
    根据第三下载速率和第四下载速率调整所述第二缓存区,所述第三下载速率为所述第二终端设备在第三预设时长内通过所述第二通信连接从所述数据传输装置下载所述第一业务数据的下载速率,所述第四下载速率为所述数据传输装置在所述第三预设时长内通过所述第一通信连接从所述应用服务器下载所述第一业务数据的下载速率。
  21. 根据权利要求20所述的数据传输装置,其特征在于,所述处理模块具体用于:
    当所述第三下载速率小于所述第四下载速率时,调整所述第二缓存区,得到调整后的第二缓存区,所述调整后的第二缓存区的大小为所述第一缓存区的大小乘以速率比值,所述速率比值为所述第三下载速率与所述第四下载速率的比值。
  22. 根据权利要求20所述的数据传输装置,其特征在于,所述处理模块具体用于:
    当所述第三下载速率小于所述第四下载速率且所述第二缓存区的当前剩余空间小于或者等于第五预设阈值时,扩大所述第二缓存区,其中,扩大后的第二缓存区的大小为扩大前的第二缓存区的大小的n倍,且所述扩大后的第二缓存区的大小小于或者等于所述第一缓存区的大小的m倍;
    当所述第三下载速率小于所述第四下载速率且所述第二缓存区中的当前剩余空间大 于第五预设阈值时,缩小所述第二缓存区,其中,缩小后的第二缓存区为缩小前的第二缓存区的大小的1/n倍,且所述缩小后的第二缓存区的大小大于或者等于所述第一缓存区的大小且小于所述第一缓存区的大小的m倍,m大于n,n和m为不等于0的正整数。
PCT/CN2020/092324 2019-05-28 2020-05-26 数据传输方法以及装置 WO2020238895A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP20813368.6A EP3952249A4 (en) 2019-05-28 2020-05-26 DATA TRANSMISSION METHOD AND APPARATUS
US17/614,293 US20220174547A1 (en) 2019-05-28 2020-05-26 Data Transmission Method and Apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910451811.6A CN112020078B (zh) 2019-05-28 2019-05-28 数据传输方法以及装置
CN201910451811.6 2019-05-28

Publications (1)

Publication Number Publication Date
WO2020238895A1 true WO2020238895A1 (zh) 2020-12-03

Family

ID=73501638

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/092324 WO2020238895A1 (zh) 2019-05-28 2020-05-26 数据传输方法以及装置

Country Status (4)

Country Link
US (1) US20220174547A1 (zh)
EP (1) EP3952249A4 (zh)
CN (1) CN112020078B (zh)
WO (1) WO2020238895A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113992651B (zh) * 2021-09-24 2024-05-14 深圳市有方科技股份有限公司 一种基于文件传输协议ftp的下载方法和相关产品
CN113660509A (zh) * 2021-10-18 2021-11-16 上海飞机制造有限公司 基于云渲染的三维模型处理系统以及方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016146328A1 (en) * 2015-03-19 2016-09-22 British Telecommunications Public Limited Company Communications network
CN106921690A (zh) * 2015-12-25 2017-07-04 华为技术有限公司 一种移动网络中分发数据的方法、装置和系统
WO2018137158A1 (zh) * 2017-01-24 2018-08-02 华为技术有限公司 一种数据传输方法、装置及客户终端设备
CN109165000A (zh) * 2018-10-29 2019-01-08 深圳市元征科技股份有限公司 一种数据传输的方法、系统及相关组件
CN109714425A (zh) * 2018-12-29 2019-05-03 北京小米移动软件有限公司 通信方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103200622A (zh) * 2012-01-09 2013-07-10 株式会社Ntt都科摩 一种通信处理方法、装置及网关设备
CN102710389B (zh) * 2012-04-18 2015-06-17 华为技术有限公司 上行数据发送方法和用户设备
EP3314864B1 (en) * 2015-06-26 2018-10-10 Telefonaktiebolaget LM Ericsson (publ) First network node and methods therein, for determining whether a second multi path transmission control protocol connection is to be initiated
CN106331200A (zh) * 2015-06-30 2017-01-11 华为技术有限公司 一种节点间数据传输的方法、网关节点及节点
US10447619B2 (en) * 2017-03-15 2019-10-15 Verizon Patent And Licensing Inc. Dynamic application buffer adaptation for proxy based communication

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016146328A1 (en) * 2015-03-19 2016-09-22 British Telecommunications Public Limited Company Communications network
CN106921690A (zh) * 2015-12-25 2017-07-04 华为技术有限公司 一种移动网络中分发数据的方法、装置和系统
WO2018137158A1 (zh) * 2017-01-24 2018-08-02 华为技术有限公司 一种数据传输方法、装置及客户终端设备
CN109165000A (zh) * 2018-10-29 2019-01-08 深圳市元征科技股份有限公司 一种数据传输的方法、系统及相关组件
CN109714425A (zh) * 2018-12-29 2019-05-03 北京小米移动软件有限公司 通信方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3952249A4

Also Published As

Publication number Publication date
EP3952249A1 (en) 2022-02-09
US20220174547A1 (en) 2022-06-02
CN112020078B (zh) 2022-07-19
CN112020078A (zh) 2020-12-01
EP3952249A4 (en) 2022-06-08

Similar Documents

Publication Publication Date Title
AU2019248314B2 (en) Data processing method and apparatus
US9942748B2 (en) Service provisioning system and method, and mobile edge application server and support node
US8189532B2 (en) Mobile node, a method or handover and a computer program
US10972400B2 (en) Maintenance of downlink throughput
WO2017117968A1 (zh) 数据接口分流方法、装置、终端设备和计算机存储介质
US11196821B2 (en) Data transmission method and communications device
US20200351714A1 (en) Communication Method for Deterministic Transmission and Related Apparatus
US9167473B2 (en) Communication processing method, apparatus and gateway device
WO2018177014A1 (zh) 一种调整终端发送数据的速率的方法及装置
WO2020238895A1 (zh) 数据传输方法以及装置
US20170099229A1 (en) Relay device and relay method
US8914049B2 (en) Method for managing a status of a mobile station in a wireless network
EP4203558A1 (en) Handover process-based message sending method and apparatus, device, and medium
KR20230062622A (ko) 애플리케이션 프로그램 제어 방법 및 장치, 디바이스 및 저장 매체
WO2011038679A1 (zh) 一种无线资源配置方法、系统和装置
US20220361286A1 (en) Session Processing Method and Communication Apparatus
WO2017177356A1 (zh) 数据传输的方法、基站和用户设备
RU2783508C2 (ru) Способ и устройство обработки данных
WO2022257416A9 (zh) 通信方法及通信装置
WO2024093860A1 (zh) 信息确定方法及通信设备
JP2024064705A (ja) 移動通信システム、サーバ装置、基地局装置、及びコアネットワーク装置

Legal Events

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

Ref document number: 20813368

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020813368

Country of ref document: EP

Effective date: 20211104

NENP Non-entry into the national phase

Ref country code: DE