WO2016112728A1 - 一种数据传输的方法、网络服务器、用户终端及系统 - Google Patents

一种数据传输的方法、网络服务器、用户终端及系统 Download PDF

Info

Publication number
WO2016112728A1
WO2016112728A1 PCT/CN2015/093380 CN2015093380W WO2016112728A1 WO 2016112728 A1 WO2016112728 A1 WO 2016112728A1 CN 2015093380 W CN2015093380 W CN 2015093380W WO 2016112728 A1 WO2016112728 A1 WO 2016112728A1
Authority
WO
WIPO (PCT)
Prior art keywords
user terminal
control algorithm
congestion control
network
card type
Prior art date
Application number
PCT/CN2015/093380
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 KR1020177022309A priority Critical patent/KR20170103921A/ko
Priority to EP15877641.9A priority patent/EP3236621A4/en
Publication of WO2016112728A1 publication Critical patent/WO2016112728A1/zh
Priority to US15/646,853 priority patent/US20170310593A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/19Flow control; Congestion control at layers above the network layer
    • H04L47/193Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2425Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2475Traffic characterised by specific attributes, e.g. priority or QoS for supporting traffic characterised by the type of applications

Definitions

  • the embodiments of the present invention relate to the field of communications, and in particular, to a data transmission method, a network server, a user terminal, and a system.
  • Transmission Control Protocol is the most widely used transport protocol on the network, providing end-to-end data reliability transmission. With the gradual increase in the amount of information transmitted and the increasing complexity of the network, the possibility of congestion in the network is increasing.
  • TCP congestion control algorithms are generally used to implement congestion avoidance and congestion control.
  • Congestion avoidance is a prevention mechanism. Its purpose is to prevent the network from entering a congested state and to operate the network in a high-throughput, low-latency state.
  • Congestion control is a recovery mechanism, and its purpose is to restore a network in a congested state.
  • the network server randomly selects, so that the congestion control algorithm selected by the network server may not be suitable for the user terminal, resulting in reduced TCP transmission efficiency.
  • the embodiment of the invention provides a data transmission method, a network server, a user terminal and a system, which can select a corresponding congestion control algorithm according to the access type of the user terminal and the access network mode, thereby improving the TCP transmission efficiency.
  • the first aspect of the present invention provides a data transmission method, including:
  • Data transmission is performed with the user terminal using the congestion control algorithm.
  • the determining is used for determining congestion control
  • the information of the algorithm includes at least one of a network card type, an access network mode, a service requirement, and a first network state information of the user terminal, determining, according to the information for determining a congestion control algorithm,
  • the congestion control algorithm used by the user terminal for data transmission includes:
  • the network card type, the access network mode, the service requirement, and the network terminal type of the user terminal are corresponding to the congestion control algorithm in a correspondence between at least one of a network card type, an access network mode, a service requirement, and a first network state information. At least one corresponding congestion control algorithm in the network status information is determined as a congestion control algorithm used when data transmission is performed with the user terminal.
  • the information for determining a congestion control algorithm further includes a congestion control algorithm determined by the user terminal.
  • the type of the network card type and the access network mode of the user terminal in the correspondence between the at least one of the network card type, the access network mode, the service requirement, and the first network state information and the congestion control algorithm
  • the congestion control algorithm corresponding to at least one of the service requirement and the first network state information is determined to be a congestion control algorithm used when performing data transmission with the user terminal, including:
  • the congestion control algorithm determined by the user terminal is supported, the congestion control algorithm determined by the user terminal is determined as a congestion control algorithm used when data transmission is performed with the user terminal;
  • the corresponding relationship between the network card type, the access network mode, the service requirement, and the first network state information and the congestion control algorithm is A congestion control algorithm corresponding to at least one of a network card type, an access network mode, a service requirement, and a first network state information of the terminal is determined as a congestion control algorithm used when data transmission is performed with the user terminal.
  • the first or second possible implementation manner of the first aspect in a third possible implementation manner, when the using the congestion control algorithm to perform data transmission with the user terminal, the method also includes:
  • a second aspect of the present invention provides a data transmission method, including:
  • the network server Transmitting, to the network server, at least one of a network card type, an access network mode, and a service requirement of the user terminal, So that the network server determines the congestion control algorithm according to at least one of a network card type, an access network mode, and a service requirement;
  • Data transmission is performed with the network server using the congestion control algorithm.
  • the acquiring by using an existing API interface or a new API interface, acquiring at least one of a network card type, an access network mode, and a service requirement of the user terminal.
  • the method further includes:
  • a third aspect of the present invention provides a network server, including:
  • a first acquiring module configured to acquire information used to determine a congestion control algorithm
  • a first determining module configured to determine, according to the information used to determine a congestion control algorithm, a congestion control algorithm used when performing data transmission with the user terminal;
  • a first transmission module configured to perform data transmission with the user terminal by using the congestion control algorithm.
  • the determining module is specifically configured to: the information about determining a congestion control algorithm includes a network card type of the user terminal, and an access network.
  • the correspondence between the network card type, the access network mode, the service requirement, and the first network state information and the congestion control algorithm is A congestion control algorithm corresponding to at least one of a network card type, an access network mode, a service requirement, and first network state information of the user terminal is determined as a congestion control algorithm used when data transmission is performed with the user terminal.
  • the first determining module includes:
  • a determining unit configured to determine whether the congestion control algorithm determined by the user terminal is supported
  • a first determining unit configured to determine, according to a congestion control algorithm determined by the user terminal, a congestion control algorithm determined by the user terminal as a congestion control algorithm used when data transmission is performed with the user terminal;
  • a second determining unit configured to: when the congestion control algorithm determined by the user terminal is not supported, the correspondence between the network card type, the access network mode, the service requirement, and the first network state information, and the congestion control algorithm a congestion control algorithm corresponding to at least one of a network card type, an access network mode, a service requirement, and first network state information of the user terminal is determined to be used when data transmission is performed with the user terminal.
  • Congestion control algorithm a congestion control algorithm corresponding to at least one of a network card type, an access network mode, a service requirement, and first network state information of the user terminal is determined to be used when data transmission is performed with the user terminal.
  • the network server further includes:
  • a second acquiring module configured to acquire second network state information on a communication path between the user terminal and the server
  • a calling module configured to invoke, according to the second network state information, an application programming AP I interface, where the API interface is used to modify a transmission control protocol TCP parameter;
  • a correction module configured to modify the TCP parameter by using the API interface.
  • a fourth aspect of the present invention provides a user terminal, including:
  • a third obtaining module configured to acquire at least one of a network card type, an access network mode, and a service requirement of the user terminal by using an existing API interface or a new API interface;
  • a first sending module configured to send at least one of a network card type, an access network mode, and a service requirement of the user terminal to the network server, so that the network server performs at least one of a network card type, an access network mode, and a service requirement. Determining a congestion control algorithm;
  • a second transmission module configured to perform data transmission with the network server by using the congestion control algorithm.
  • the user terminal further includes:
  • a second determining module configured to determine, according to at least one of a network card type, an access network mode, and a service requirement of the user terminal, at least one of a network card type, an access network mode, and a service requirement of the user terminal Congestion control algorithm;
  • the first sending module includes:
  • a sending unit configured to send, to the network server, at least one of a network card type, an access network mode, and a service requirement of the user terminal, and the corresponding congestion control algorithm.
  • a fifth aspect of the present invention provides a system for data transmission, including: a network server and a user terminal;
  • the network server is the network server in the foregoing third aspect, the first, second or third possible implementation manner of the third aspect;
  • the user terminal is the user terminal of the foregoing third aspect or the first possible implementation manner of the third aspect.
  • the network server obtains the information sent by the user terminal, and combines the congestion control algorithm supported by the network server to select the finally adopted congestion control algorithm, and the network server uses the congestion control algorithm to perform TCP transmission.
  • the network server selects different congestion control algorithms according to different received information, performs TCP transmission for the specific terminal type and the access network mode, and improves TCP transmission efficiency.
  • FIG. 1 is a schematic diagram of an embodiment of a method for data transmission according to an embodiment of the present invention
  • FIG. 2 is a schematic diagram of another embodiment of a method for data transmission according to an embodiment of the present invention.
  • FIG. 3 is a schematic diagram of an embodiment of a network server according to an embodiment of the present invention.
  • FIG. 4 is a schematic diagram of another embodiment of a network server according to an embodiment of the present invention.
  • FIG. 5 is a schematic diagram of another embodiment of a network server according to an embodiment of the present invention.
  • FIG. 6 is a schematic diagram of an embodiment of a user terminal according to an embodiment of the present invention.
  • FIG. 7 is a schematic diagram of another embodiment of a user terminal according to an embodiment of the present invention.
  • FIG. 8 is a schematic structural diagram of a network server according to an embodiment of the present invention.
  • FIG. 9 is a schematic structural diagram of a user terminal according to an embodiment of the present invention.
  • FIG. 10 is a schematic diagram of an embodiment of a data transmission system according to an embodiment of the present invention.
  • the embodiment of the invention provides a data transmission method, a network server, a user terminal and a system, which are used for TCP transmission for a specific terminal type and an access network mode, thereby improving TCP transmission efficiency.
  • an embodiment of a method for data transmission in an embodiment of the present invention includes:
  • the network server obtains information for determining a congestion control algorithm.
  • the congestion control algorithm can effectively avoid or alleviate congestion.
  • the network server After the network server receives the information for determining the congestion control algorithm, based on the information used to determine the congestion control algorithm, it is determined which specific congestion control algorithm is used to perform data transmission with the user terminal.
  • the congestion control algorithm can be used to perform data transmission with the user terminal.
  • TCP is used as a protocol for data transmission.
  • IP Internet Protocol
  • IP Internet Protocol
  • the network server obtains the information sent by the user terminal, and combines the congestion control algorithm supported by the network server to select the finally adopted congestion control algorithm, and the network server uses the congestion control algorithm to perform TCP transmission.
  • the network server selects different congestion control algorithms according to different received information, performs TCP transmission for the specific terminal type and the access network mode, and improves TCP transmission efficiency.
  • the congestion control algorithm used for data transmission with the user terminal may be determined in various manners. For ease of understanding, the following descriptions are respectively performed:
  • the network server determines, according to at least one of a network card type, an access network mode, a service requirement, and a first network state information of the user terminal, a congestion control algorithm used when data transmission is performed with the user terminal;
  • the information used to determine the congestion control algorithm includes the network card type of the user terminal, When at least one of the access network mode, the service requirement, and the first network state information is used, determining, according to the information used to determine the congestion control algorithm, a congestion control algorithm used when performing data transmission with the user terminal, including:
  • the network card type, the access network mode, the service requirement, and the first network of the user terminal from the correspondence between the network card type, the access network mode, the service requirement, and the first network state information, and the congestion control algorithm At least one corresponding congestion control algorithm in the status information is determined as a congestion control algorithm used when data transmission is performed with the user terminal.
  • the user terminal acquires the network card type, the access network mode, and the user service requirement of the user terminal through the API interface of the OPEN TCP protocol, and then uses the handshake signal (SYN, Synchronous) message used to establish a connection through TCP or IP.
  • the options option sends the information about the NIC type, the access network, and the user's service requirements to the network server.
  • the network server receives and parses the options option information in the SYN packet to obtain the NIC type and access of the user terminal. Network mode and user business needs.
  • the user terminal can also obtain the second network state information on the communication path between the user terminal and the server.
  • the second network state information may be a packet loss rate on the communication path between the user terminal and the server, or may be other networks.
  • Status information such as bandwidth or delay, is not limited here.
  • the user terminal can send the network feature information to the network server, and the network feature information is not limited to be sent to the network server by using the options option of the SYN message.
  • the network server receives the network card type, the access network mode, the user service requirement, and the user. After at least one of the first network state information on the communication path between the terminal and the server, the congestion control algorithm used for data transmission with the user terminal may be determined from at least one of the information and the corresponding congestion control algorithm.
  • the correspondence between the network server receiving the network card type, the access network mode, the user service requirement, and the first network state information on the communication path between the user terminal and the server and the congestion control algorithm may be One-to-one, or one-to-many.
  • the network card type is a Universal Serial Bus (USB) card
  • the corresponding A congestion control algorithm can be used, or both A and B congestion can be used.
  • the control algorithm is preferentially used according to the specific network state, so the correspondence is not limited here.
  • the network server may determine, according to at least one of the network card type, the access network mode, the service requirement, and the first network state information, a congestion control algorithm used when data transmission is performed with the user terminal, so that the network server may be flexible.
  • the best congestion control algorithm is selected to solve the problem of network congestion, which makes the solution more flexible and more practical.
  • the network server determines, according to at least one of the type of the congestion control algorithm determined by the user terminal, the network card type of the user terminal, the access network mode, the service requirement, and the first network state information, the congestion used when performing data transmission with the user terminal. Control algorithm
  • the information for determining the congestion control algorithm further includes the congestion determined by the user terminal.
  • the network card type and the access network mode of the user terminal are compared with the congestion control algorithm from at least one of the network card type, the access network mode, the service requirement, and the first network state information.
  • the congestion control algorithm corresponding to at least one of the service requirement and the first network state information is determined to be a congestion control algorithm used when performing data transmission with the user terminal, including:
  • the congestion control algorithm determined by the user terminal is supported, the congestion control algorithm determined by the user terminal is determined as a congestion control algorithm used when data transmission is performed with the user terminal;
  • the network card type of the user terminal is selected from the correspondence between the network card type, the access network mode, the service requirement, and the first network state information and the congestion control algorithm.
  • the congestion control algorithm corresponding to at least one of the access network mode, the service requirement, and the first network state information is determined to be a congestion control algorithm used when performing data transmission with the user terminal.
  • the network server receives and parses the options option information in the SYN packet, and obtains the network card type of the user terminal, the access network mode, the service requirement of the user, and the type of the congestion control algorithm determined by the user terminal, and then adopts the OPENTCP protocol.
  • the API query itself supports the congestion control algorithm selected by the user terminal, if the query
  • the congestion control algorithm determined by the user terminal is determined as a congestion control algorithm used when data transmission is performed with the user terminal, but after the query, the network server itself is not known.
  • the network terminal When the congestion control algorithm selected by the user terminal is supported, the network terminal is selected according to at least one of a network card type of the user terminal, an access network mode, a service requirement of the user, and a first network state information on the communication path between the user terminal and the server.
  • the corresponding congestion control algorithm determines a congestion control algorithm used when data transmission is performed with the user terminal.
  • the congestion control algorithm can be divided into four categories: slow start algorithm, congestion avoidance algorithm, fast retransmission algorithm or fast recovery algorithm.
  • the slow start algorithm refers to the data transmitted from small to large increasing to a value when starting transmission.
  • the transmission window increases exponentially from small to large and gradually increases to the value of the congestion window.
  • the congestion avoidance algorithm is that when the value of the congestion window can no longer rise exponentially, the congestion window increases linearly by one each time. In this way, it can avoid the network congestion caused by the excessive growth, and slowly adjust to the optimal value of the network;
  • the fast retransmission algorithm divides the data into several packets during data transmission, and each packet carries a sequence number, if the receiver When an out-of-sequence segment is received, a duplicate acknowledgment is sent immediately.
  • the sender can retransmit the received segment as soon as it receives three repeated acknowledgments.
  • the fast recovery algorithm is matched with fast retransmission.
  • An algorithm that reduces the amount of data transmitted each time by half when the sender repeatedly receives three duplicate acknowledgments, and the congestion window is also modified to the value, and then executes The plug avoidance algorithm causes the congestion window to slowly increase linearly.
  • the above four algorithms are basic congestion control algorithms, and the congestion control algorithm used in this embodiment may be one or more of the four types, and thus is not limited herein.
  • a method for determining a final congestion control algorithm by determining whether the network server supports the congestion control algorithm selected by the user terminal is proposed, so that the operability of the solution is improved, and the flexibility of the solution is increased.
  • the data transmission method provided by the embodiment of the present invention may be the third In an embodiment, when the congestion control algorithm is used to perform data transmission with the user terminal, the method may further include:
  • the network server obtains the information of the intermediate network node on the communication path between the user terminal and the server through a network management system or a Software Defined Network (SDN) controller, where the network management system Also known as the network management system, it is a software and hardware-based distributed network application system. Its purpose is to manage the network and make the network operate efficiently.
  • the network management objects generally include routers, switches and multi-port transponders. .
  • the network server may obtain the packet loss rate of the network node exit through the intermediate network node information on the communication path between the user terminal and the network server, and determine the corresponding congestion control algorithm according to other network states.
  • the information is used to determine a congestion control algorithm, such as bandwidth or delay, which is not limited herein.
  • the network server invokes the API interface to modify the TCP parameters according to the packet loss rate on the communication path with the user terminal, or other network state information, and the modification manner is: the API interface function is not
  • the parameters are specifically implemented, but can be extended according to the existing format. Therefore, the TCP parameters are dynamically adjusted.
  • the TCP parameters generally include a congestion window, a size of the receiving buffer area, and a size of the sending buffer area. The user can modify these parameters through the API interface according to the network status change. .
  • TCP parameter modification is performed through an existing API interface or a newly created API interface, and in actual applications, a general socket programming interface may be used to modify TCP parameters, and other TCP-based parameters may also be used.
  • a general socket programming interface may be used to modify TCP parameters, and other TCP-based parameters may also be used. The way the stream modifies TCP parameters,
  • the network server obtains network state information, and performs TCP parameter modification according to the information through the API interface, and can timely determine the network adjustment policy according to the network state information, and dynamically adjust the TCP parameter through the API interface, thereby improving TCP.
  • the transmission efficiency makes the application of the scheme more extensive and the flexibility is further improved.
  • FIG. 2 another embodiment of the data transmission method of the present invention includes:
  • the user terminal obtains the network card type, the access network mode, and some user requirements of the user through the newly created OPEN TCP API interface, and also obtains some user services that cannot be obtained by the existing API interface through the existing API interface.
  • the network server sends, to the network server, at least one of a network card type, an access network mode, and a service requirement of the user terminal, so that the network server determines the congestion control algorithm according to at least one of a network card type, an access network mode, and a service requirement.
  • the user terminal sends the user terminal to the network server to obtain at least one of a network card type, an access network mode, and a user service requirement, so that the network server determines the congestion control algorithm according to at least one of the information.
  • ADSL Asymmetric Digital Subscriber Line
  • cable modem cable modem
  • OAN optical access network
  • ADSL access network mode has good confidentiality and high security factor
  • cable modem access network mode is Ethernet mode access, high speed and stable
  • OAN access network mode only transforms the home line It can provide high-speed broadband network, which is convenient and fast.
  • the user terminal performs data transmission with the network server according to the congestion control algorithm determined by the network server.
  • the user terminal acquires its own network card type, access network mode, and user service requirements by using a new API interface or an existing API interface, and sends the information to the network server, so that the network server can use the information according to the information. Determining a congestion control algorithm used when data transmission is performed with the user terminal, and the network server selects different congestion control algorithms according to different network feature information of the user terminal, and performs TCP transmission for the specific network card type, the access network mode, and the service requirement of the user. Improve TCP transmission efficiency.
  • the network card type of the user terminal is obtained through an existing API interface or a new API interface.
  • the method may further include:
  • the existing API interface can obtain the congestion control algorithm supported by the system and part of the user service requirements, and the newly created OPENTCP API interface can obtain the network card type of the user terminal, the access network mode, and the existing API interface cannot be obtained.
  • the part of the user needs to send the congestion control algorithm supported by the system to the network server.
  • the network server uses the congestion control algorithm supported by the network server to determine whether to support the congestion control algorithm sent by the user terminal. If supported, the congestion control can be directly used.
  • the algorithm performs data transmission.
  • the network server reselects the most suitable congestion control algorithm according to at least one of the network card type, the access network mode, and the user's service requirements sent by the user terminal, and determines For the ultimate use in data transmission is congestion control law.
  • the user terminal can determine the congestion control algorithm corresponding to the network card type of the user terminal and the access network mode by using the network card type, the access network mode, and the service requirement of the user, if the network server also supports the congestion control.
  • the algorithm is the best choice. Otherwise, the network server will choose the second best congestion control algorithm for data transmission.
  • the implementation of the scheme is improved, and the effect in the actual application will be better, and the efficiency of TCP transmission is provided.
  • the user terminal obtains the network card type of the user terminal through the API of the OPENTCP protocol as an Ethernet card, and the access network mode is a fixed IP, and the user terminal selects a corresponding congestion control algorithm in the compiled program according to the fixed IP access mode of the Ethernet card.
  • the information is sent to the network server through the options option in the SYN packet, and the network server side receives and parses the options option information in the SYN packet to obtain a fixed IP access mode for the user terminal to be an Ethernet card.
  • the network server obtains itself from the OPENTCP protocol API query and does not support the congestion control algorithm A. Therefore, the network server finds the fixed IP access mode of the Ethernet card corresponding to the congestion control algorithm B through the API of the OPENTCP protocol, and the programmer advances through the OPENTCP.
  • the API of the protocol compiles the congestion control algorithm corresponding to different network card types and access network modes. For example, the network server can use the Cubic congestion control algorithm when using the Ethernet terminal. When using the 3G or 4G network, the network server can use the Westwood congestion control algorithm. Specifically, it can be compiled and determined by the programmer.
  • the network server selects the congestion control algorithm B, and performs TCP three-way handshake to perform TCP transmission.
  • the network server can obtain the current network state information.
  • the OPENTCP protocol API can be called to dynamically adjust the TCP parameters.
  • the TCP parameter can be the initial congestion window, the initial congestion window size is 1, and when the congestion control algorithm B is used, the threshold becomes the current congestion window value. Half of it, then the congestion window size is reset to 1, and the network server continues to adopt the congestion control algorithm B, so that the TCP transmission efficiency is guaranteed.
  • the network server in the embodiment of the present invention includes:
  • the first obtaining module 301 is configured to acquire information used to determine a congestion control algorithm.
  • the first determining module 302 is configured to determine, according to the information used to determine the congestion control algorithm, a congestion control algorithm used when performing data transmission with the user terminal;
  • the first transmission module 303 is configured to perform data transmission with the user terminal by using the congestion control algorithm.
  • the first obtaining module 301 acquires information for determining a congestion control algorithm, and the first determining module 302 determines, according to the information used by the first acquiring module 301 to determine the congestion control algorithm, when performing data transmission with the user terminal.
  • the congestion control algorithm used, the first transmission module 303 performs data transmission with the user terminal using the congestion control algorithm determined by the first determining module 302.
  • the network server obtains the information sent by the user terminal, and combines the congestion control algorithm supported by the network server to select the finally adopted congestion control algorithm, and the network server uses the congestion control algorithm to perform TCP transmission.
  • the network server selects different congestion control algorithms according to different received information, performs TCP transmission for the specific terminal type and the access network mode, and improves TCP transmission efficiency.
  • the congestion control algorithm used in data transmission with the user terminal may be determined in various manners in the foregoing embodiments. For ease of understanding, the following descriptions are respectively made:
  • the network server determines, according to at least one of a network card type, an access network mode, a service requirement, and a first network state information of the user terminal, a congestion control algorithm used when data transmission is performed with the user terminal;
  • the determining module is specifically configured to include, in the information for determining a congestion control algorithm, When at least one of a network card type, an access network mode, a service requirement, and a first network state information of the user terminal, at least one of a network card type, an access network mode, a service requirement, and a first network state information a congestion control algorithm corresponding to at least one of a network card type, an access network mode, a service requirement, and a first network state information of the user terminal is determined to be performed with the user terminal, in a correspondence between the congestion control algorithm The congestion control algorithm used in data transmission.
  • the network server may determine, according to at least one of the network card type, the access network mode, the service requirement, and the first network state information, a congestion control algorithm used when data transmission is performed with the user terminal, so that the network server may be flexible.
  • the best congestion control algorithm is selected to solve the problem of network congestion, which makes the solution more flexible and more practical.
  • the network server determines, according to at least one of the type of the congestion control algorithm determined by the user terminal, the network card type of the user terminal, the access network mode, the service requirement, and the first network state information, the congestion used when performing data transmission with the user terminal. Control algorithm
  • another embodiment of the network server of the present invention includes:
  • a first obtaining module 401 configured to acquire information used to determine a congestion control algorithm
  • a first determining module 402 configured to determine, according to the information used to determine a congestion control algorithm, the user a congestion control algorithm used by the terminal for data transmission;
  • the first transmission module 403 is configured to perform data transmission with the user terminal by using the congestion control algorithm.
  • the first determining module 402 can further include:
  • the determining unit 4021 is configured to determine whether the congestion control algorithm determined by the user terminal is supported;
  • the first determining unit 4022 is configured to determine, when the congestion control algorithm determined by the user terminal is used, a congestion control algorithm determined by the user terminal as a congestion control algorithm used when performing data transmission with the user terminal;
  • the second determining unit 4023 is configured to: when the congestion control algorithm determined by the user terminal is not supported, the correspondence between the network card type, the access network mode, the service requirement, and the first network state information, and the congestion control algorithm In the relationship, a congestion control algorithm corresponding to at least one of a network card type, an access network mode, a service requirement, and first network state information of the user terminal is determined to be used when data transmission is performed with the user terminal. Congestion control algorithm.
  • a method for determining a final congestion control algorithm by determining whether the network server supports the congestion control algorithm selected by the user terminal is proposed, so that the operability of the solution is improved, and the flexibility of the solution is increased.
  • another embodiment of the network server of the present invention includes:
  • the first obtaining module 501 is configured to acquire information used to determine a congestion control algorithm.
  • a first determining module 502 configured to determine, according to the information used to determine a congestion control algorithm, a congestion control algorithm used when performing data transmission with the user terminal;
  • a first transmission module 503, configured to perform data transmission with the user terminal by using the congestion control algorithm
  • the second obtaining module 504 is configured to acquire second network state information on the communication path between the user terminal and the server;
  • the calling module 505 is configured to invoke, according to the second network state information, an application programming API interface, where the API interface is used to modify a transmission control protocol TCP parameter;
  • the modification module 506 is configured to modify the TCP parameter by using the API interface.
  • the first determining module 502 can further include:
  • the determining unit 5021 is configured to determine whether the congestion control algorithm determined by the user terminal is supported.
  • the first determining unit 5022 is configured to determine, when the congestion control algorithm determined by the user terminal is supported, the congestion control algorithm determined by the user terminal as a congestion control algorithm used when performing data transmission with the user terminal;
  • the second determining unit 5023 is configured to: when the congestion control algorithm determined by the user terminal is not supported, the correspondence between the network card type, the access network mode, the service requirement, and the first network state information, and the congestion control algorithm In the relationship, a congestion control algorithm corresponding to at least one of a network card type, an access network mode, a service requirement, and first network state information of the user terminal is determined to be used when data transmission is performed with the user terminal. Congestion control algorithm.
  • the network server obtains network state information, and performs TCP parameter modification according to the information through the API interface, and can timely determine the network adjustment policy according to the network state information, and dynamically adjust the TCP parameter through the API interface, thereby improving TCP.
  • the transmission efficiency makes the application of the scheme more extensive and the flexibility is further improved.
  • the user terminal in the present invention includes:
  • the third obtaining module 601 is configured to obtain at least one of a network card type, an access network mode, and a service requirement of the user terminal by using an existing API interface or a new API interface.
  • the first sending module 602 is configured to send, to the network server, at least one of a network card type, an access network mode, and a service requirement of the user terminal, so that the network server performs at least one of a network card type, an access network mode, and a service requirement. Determining a congestion control algorithm;
  • the second transmission module 603 is configured to perform data transmission with the network server by using the congestion control algorithm.
  • the third obtaining module 601 obtains at least one of a network card type, an access network mode, and a service requirement of the user terminal by using an existing API interface or a new API interface, and the first sending module 602 sends the third obtaining to the network server.
  • the module 601 obtains at least one of a network card type, an access network mode, and a service requirement of the user terminal, so that the network server determines the congestion control algorithm according to at least one of a network card type, an access network mode, and a service requirement, and the second transmission module 603 uses a congestion control algorithm to perform data transmission with a network server.
  • the user terminal acquires its own network card type, access network mode, and user service requirements by using a new API interface or an existing API interface, and sends the information to the network server, so that the network server can use the information according to the information. Determining a congestion control algorithm used when data transmission is performed with the user terminal, and the network server selects different congestion control algorithms according to different network feature information of the user terminal, and performs TCP transmission for the specific network card type, the access network mode, and the service requirement of the user. Improve TCP transmission efficiency.
  • another embodiment of the user terminal in the embodiment of the present invention includes:
  • the third obtaining module 701 is configured to obtain at least one of a network card type, an access network mode, and a service requirement of the user terminal by using an existing API interface or a new API interface.
  • the second determining module 702 is configured to determine at least one of a network card type, an access network mode, and a service requirement of the user terminal according to at least one of a network card type, an access network mode, and a service requirement of the user terminal. Corresponding congestion control algorithm;
  • the first sending module 703 is configured to send, to the network server, at least one of a network card type, an access network mode, and a service requirement of the user terminal, so that the network server performs at least one of a network card type, an access network mode, and a service requirement. Determining the congestion control algorithm;
  • the second transmission module 704 is configured to perform data transmission with the network server by using the congestion control algorithm.
  • the first sending module 703 may further include:
  • the sending unit 7031 is configured to send, to the network server, at least one of a network card type, an access network mode, and a service requirement of the user terminal, and the corresponding congestion control algorithm;
  • the user terminal can determine the congestion control algorithm corresponding to the network card type of the user terminal and the access network mode by using the network card type, the access network mode, and the service requirement of the user, if the network server also supports the congestion control.
  • the algorithm is the best choice. Otherwise, the network server will choose the second best congestion control algorithm for data transmission.
  • the implementation of the scheme is improved, and the effect in the actual application will be better, and the efficiency of TCP transmission is provided.
  • FIG. 8 is a schematic structural diagram of a server according to an embodiment of the present invention.
  • the server 800 may have a large difference due to different configurations or performances, and may include one or more central processing units (CPU) 822 (for example, One or more processors) and memory 832, one or more storage media 830 storing application 842 or data 844 (eg, one or one storage device in Shanghai).
  • the memory 832 and the storage medium 830 may be short-term storage or persistent storage.
  • the program stored on storage medium 830 may include one or more modules (not shown), each of which may include a series of instruction operations in the server.
  • central processor 822 can be configured to communicate with storage medium 830, executing a series of instruction operations in storage medium 830 on server 800.
  • Server 800 may also include one or more power supplies 826, one or more wired or wireless network interfaces 850, one or more input and output interfaces 858, and/or one or more operating systems 841, such as Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM and more.
  • operating systems 841 such as Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM and more.
  • the steps performed by the server in the above embodiment may be based on the server structure shown in FIG.
  • the embodiment of the present invention further provides a user terminal device .
  • a user terminal device As shown in FIG. 9 , for the convenience of description, only parts related to the embodiment of the present invention are shown. If the specific technical details are not disclosed, refer to the method of the embodiment of the present invention. section.
  • the terminal can be any terminal device including a mobile phone, a tablet computer, a PDA (Personal Digital Assistant), a POS (Point of Sales), an in-vehicle computer, and the terminal is a mobile phone as an example:
  • FIG. 9 is a block diagram showing a partial structure of a mobile phone related to a terminal provided by an embodiment of the present invention.
  • the mobile phone includes: a radio frequency (RF) circuit 910, a memory 920, an input unit 930, a display unit 940, a sensor 950, an audio circuit 960, a wireless fidelity (WiFi) module 970, and a processor 980. And power supply 990 and other components.
  • RF radio frequency
  • the RF circuit 910 can be used for receiving and transmitting signals during and after receiving or transmitting information, in particular, after receiving the downlink information of the base station, and processing it to the processor 980; in addition, transmitting the designed uplink data to the base station.
  • RF circuit 910 includes, but is not limited to, an antenna, at least one amplifier, a transceiver, a coupler, a Low Noise Amplifier (LNA), a duplexer, and the like.
  • LNA Low Noise Amplifier
  • RF circuitry 910 can also communicate with the network and other devices via wireless communication.
  • the above wireless communication may use any communication standard or protocol, including but not limited to Global System of Mobile communication (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (Code Division). Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Long Term Evolution (LTE), E-mail, Short Messaging Service (SMS), and the like.
  • GSM Global System of Mobile communication
  • GPRS General Packe
  • the memory 920 can be used to store software programs and modules, and the processor 980 executes various functional applications and data processing of the mobile phone by running software programs and modules stored in the memory 920.
  • the memory 920 may mainly include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application required for at least one function (such as a sound playing function, an image playing function, etc.), and the like; the storage data area may be stored according to Data created by the use of the mobile phone (such as audio data, phone book, etc.).
  • memory 920 can include high speed random access memory, and can also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other volatile solid state storage device.
  • the input unit 930 can be configured to receive input numeric or character information and to generate key signal inputs related to user settings and function controls of the handset.
  • the input unit 930 may include a touch panel 931 and other input devices 932.
  • the touch panel 931 also referred to as a touch screen, can collect touch operations on or near the user (such as a user using a finger, a stylus, or the like on the touch panel 931 or near the touch panel 931. Operation), and drive the corresponding connecting device according to a preset program.
  • the touch panel 931 can include Touch detection device and touch controller are two parts.
  • the touch detection device detects the touch orientation of the user, and detects a signal brought by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device, converts the touch information into contact coordinates, and sends the touch information.
  • the processor 980 is provided and can receive commands from the processor 980 and execute them.
  • the touch panel 931 can be implemented in various types such as resistive, capacitive, infrared, and surface acoustic waves.
  • the input unit 930 may also include other input devices 932.
  • other input devices 932 may include, but are not limited to, one or more of a physical keyboard, function keys (such as volume control buttons, switch buttons, etc.), trackballs, mice, joysticks, and the like.
  • the display unit 940 can be used to display information input by the user or information provided to the user as well as various menus of the mobile phone.
  • the display unit 940 can include a display panel 941.
  • the display panel 941 can be configured in the form of a liquid crystal display (LCD), an organic light-emitting diode (OLED), or the like.
  • the touch panel 931 can cover the display panel 941. When the touch panel 931 detects a touch operation on or near the touch panel 931, the touch panel 931 transmits to the processor 980 to determine the type of the touch event, and then the processor 980 according to the touch event. The type provides a corresponding visual output on display panel 941.
  • touch panel 931 and the display panel 941 are used as two independent components to implement the input and input functions of the mobile phone in FIG. 9, in some embodiments, the touch panel 931 and the display panel 941 may be integrated. Realize the input and output functions of the phone.
  • the handset may also include at least one type of sensor 950, such as a light sensor, motion sensor, and other sensors.
  • the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display panel 941 according to the brightness of the ambient light, and the proximity sensor may close the display panel 941 and/or when the mobile phone moves to the ear. Or backlight.
  • the accelerometer sensor can detect the magnitude of acceleration in all directions (usually three axes). When it is stationary, it can detect the magnitude and direction of gravity.
  • the mobile phone can be used to identify the gesture of the mobile phone (such as horizontal and vertical screen switching, related Game, magnetometer attitude calibration), vibration recognition related functions (such as pedometer, tapping), etc.; as for the mobile phone can also be configured with gyroscopes, barometers, hygrometers, thermometers, infrared sensors and other sensors, no longer Narration.
  • the gesture of the mobile phone such as horizontal and vertical screen switching, related Game, magnetometer attitude calibration
  • vibration recognition related functions such as pedometer, tapping
  • the mobile phone can also be configured with gyroscopes, barometers, hygrometers, thermometers, infrared sensors and other sensors, no longer Narration.
  • An audio circuit 960, a speaker 961, and a microphone 962 can provide an audio interface between the user and the handset.
  • the audio circuit 960 can transmit the converted electrical data of the received audio data to the speaker 961, and convert it into a sound signal output by the speaker 961.
  • the microphone 962 converts the collected sound signal into an electrical signal, and the audio circuit 960 After receiving, it is converted into audio data, and then processed by the audio data output processor 980, sent to the other mobile phone via the RF circuit 910, or outputted to the memory 920 for further processing.
  • WiFi is a short-range wireless transmission technology
  • the mobile phone can help users send and receive electronic mail through the WiFi module 970. It provides users with wireless broadband Internet access, such as browsing the web and accessing streaming media.
  • FIG. 9 shows the WiFi module 970, it can be understood that it does not belong to the essential configuration of the mobile phone, and can be omitted as needed within the scope of not changing the essence of the invention.
  • the processor 980 is the control center of the handset, which connects various portions of the entire handset using various interfaces and lines, by executing or executing software programs and/or modules stored in the memory 920, and invoking data stored in the memory 920, executing The phone's various functions and processing data, so that the overall monitoring of the phone.
  • the processor 980 may include one or more processing units; preferably, the processor 980 may integrate an application processor and a modem processor, where the application processor mainly processes an operating system, a user interface, an application, and the like.
  • the modem processor primarily handles wireless communications. It will be appreciated that the above described modem processor may also not be integrated into the processor 980.
  • the handset also includes a power source 990 (such as a battery) that supplies power to the various components.
  • a power source 990 such as a battery
  • the power source can be logically coupled to the processor 980 through a power management system to manage functions such as charging, discharging, and power management through the power management system.
  • the mobile phone may further include a camera, a Bluetooth module, and the like, and details are not described herein again.
  • the data transmission system in the embodiment of the present invention includes:
  • the network server 1001 acquires information for determining a congestion control algorithm, and the network server 1001 determines a congestion control algorithm used when data transmission is performed with the user terminal 1002 according to the information for determining a congestion control algorithm, and the network server 1001 uses The congestion control algorithm performs data transmission with the user terminal 1002.
  • the user terminal 1002 obtains at least one of a network card type, an access network mode, and a service requirement of the user terminal 1002 by using an existing API interface or a new API interface, and the user terminal 1002 sends the network card type of the user terminal 1002 to the network server 1001. At least one of an access network mode and a service requirement, so that the network server 1001 determines the congestion control algorithm according to at least one of a network card type, an access network mode, and a service requirement, and the user terminal 1002 uses the congestion control algorithm and The web server 1001 performs data transmission.
  • the network server obtains the information sent by the user terminal, and combines the congestion control algorithm supported by the network server to select the finally adopted congestion control algorithm, and the network server uses the congestion control algorithm to perform TCP transmission.
  • the network server selects different congestion control algorithms according to different received information, performs TCP transmission for the specific terminal type and the access network mode, and improves TCP transmission efficiency.
  • the disclosed system, apparatus, and method may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the unit is only a logical function division.
  • there may be another division manner for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be in an electrical, mechanical or other form.
  • 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, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
  • the integrated unit if implemented in the form of a software functional unit and sold or used as a standalone product, may be stored in a computer readable storage medium.
  • the technical solution of the present invention which is essential or contributes to the prior art, or all or part of the technical solution, may be embodied in the form of a software product stored in a storage medium.
  • a number of instructions are included to cause a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like. .

Landscapes

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

Abstract

本发明实施例公开了一种数据传输的方法,包括:获取用于确定拥塞控制算法的信息;根据所述用于确定拥塞控制算法的信息,确定与所述用户终端进行数据传输时所使用的拥塞控制算法;使用所述拥塞控制算法与所述用户终端进行数据传输。本发明实施例还提供一种网络服务器、用户终端及系统。本发明实施例能够根据用户终端的接入类型和接入网方式选择相应的拥塞控制算法,提高TCP传输效率。

Description

一种数据传输的方法、网络服务器、用户终端及系统
本申请要求于2015年1月12日提交中国专利局、申请号为201510014307.1、发明名称为“一种数据传输的方法、网络服务器、用户终端及系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明实施例涉及通信领域,尤其涉及一种数据传输的方法、网络服务器、用户终端及系统。
背景技术
传输控制协议(TCP,Transport Control Protocol)是目前网络上使用最多的传输协议,它提供了端到端的数据可靠性传输。随着信息传送量的逐渐增大和网络组成的日益复杂,网络发生拥塞的可能性越来越大。为了防止网络的拥塞,目前已经提出了一系列有关TCP的拥塞控制算法。TCP的拥塞控制算法一般用于实现拥塞避免和拥塞控制。拥塞避免是预防机制,它的目的是避免网络进入拥塞状态,使网络在高吞吐量、低延迟的状态下运行;拥塞控制是恢复机制,它的目的是恢复处于拥塞状态中的网络。
现有技术方案中,网络服务器与用户终端之间在选择拥塞控制算法时,都是由网络服务器随机选择的,这样就可能出现网络服务器选择的拥塞控制算法不适合用户终端,导致TCP传输效率降低。
发明内容
本发明实施例提供了一种数据传输的方法、网络服务器、用户终端及系统,能够根据用户终端的接入类型和接入网方式选择相应的拥塞控制算法,提高TCP传输效率。
有鉴于此,本发明第一方面提供一种数据传输的方法,包括:
获取用于确定拥塞控制算法的信息;
根据所述用于确定拥塞控制算法的信息,确定与所述用户终端进行数据传输时所使用的拥塞控制算法;
使用所述拥塞控制算法与所述用户终端进行数据传输。
结合本发明实施例的第一方面,在第一种可能的实现方式中,所述用于确定拥塞控 制算法的信息包括所述用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中至少一种时,所述根据所述用于确定拥塞控制算法的信息,确定与所述用户终端进行数据传输时所使用的拥塞控制算法,包括:
从网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种与拥塞控制算法的对应关系中,将与所述用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种对应的拥塞控制算法,确定为与所述用户终端进行数据传输时所使用的拥塞控制算法。
结合本发明实施例的第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述用于确定拥塞控制算法的信息还包括所述用户终端确定的拥塞控制算法的类型时,所述从网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种与拥塞控制算法的对应关系中,将与所述用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种对应的拥塞控制算法,确定为与所述用户终端进行数据传输时所使用的拥塞控制算法,包括:
判断是否支持所述用户终端确定的拥塞控制算法;
当支持所述用户终端确定的拥塞控制算法时,将所述用户终端确定的拥塞控制算法确定为与所述用户终端进行数据传输时所使用的拥塞控制算法;
当不支持所述用户终端确定的拥塞控制算法时,从网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种与拥塞控制算法的对应关系中,将与所述用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种对应的拥塞控制算法,确定为与所述用户终端进行数据传输时所使用的拥塞控制算法。
结合第一方面,第一方面第一种或第二种可能的实现方式,在第三种可能的实现方式中,所述使用所述拥塞控制算法与所述用户终端进行数据传输时,所述方法还包括:
获取所述用户终端与服务器通信路径上的第二网络状态信息;
根据所述第二网络状态信息,调用应用程序编程AP I接口,所述API接口用于修改传输控制协议TCP参数;
通过所述API接口修改所述TCP参数。
本发明第二方面提供一种数据传输的方法,包括:
通过已有API接口或新建API接口获取用户终端的网卡类型、接入网方式和业务需求中至少一种;
向网络服务器发送所述用户终端的网卡类型、接入网方式和业务需求中至少一种, 以使得网络服务器根据网卡类型、接入网方式和业务需求中至少一种确定拥塞控制算法;
使用所述拥塞控制算法与所述网络服务器进行数据传输。
结合本发明实施例的第二方面,在第一种可能的实现方式中,所述通过已有API接口或新建API接口获取所述用户终端的网卡类型、接入网方式和业务需求中至少一种之后,所述方法还包括:
根据所述用户终端的网卡类型、接入网方式和业务需求中至少一种,确定与所述用户终端的网卡类型、接入网方式和业务需求中至少一种对应的拥塞控制算法;
所述向网络服务器发送所述用户终端的网卡类型、接入网方式和业务需求中至少一种,包括:
向所述网络服务器发送所述用户终端的网卡类型、接入网方式、业务需求中至少一种,以及所述对应的拥塞控制算法。
本发明第三方面提供一种网络服务器,包括:
第一获取模块,用于获取用于确定拥塞控制算法的信息;
第一确定模块,用于根据所述用于确定拥塞控制算法的信息,确定与所述用户终端进行数据传输时所使用的拥塞控制算法;
第一传输模块,用于使用所述拥塞控制算法与所述用户终端进行数据传输。
结合本发明实施例的第三方面,在第一种可能的实现方式中,所述确定模块具体用于在所述用于确定拥塞控制算法的信息包括所述用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中至少一种时,从网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种与拥塞控制算法的对应关系中,将与所述用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种对应的拥塞控制算法,确定为与所述用户终端进行数据传输时所使用的拥塞控制算法。
结合本发明实施例的第三方面的第一种可能的实现方式,在第二种可能的实现方式中,所述第一确定模块包括:
判断单元,用于判断是否支持所述用户终端确定的拥塞控制算法;
第一确定单元,用于当支持所述用户终端确定的拥塞控制算法时,将所述用户终端确定的拥塞控制算法确定为与所述用户终端进行数据传输时所使用的拥塞控制算法;
第二确定单元,用于当不支持所述用户终端确定的拥塞控制算法时,从网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种与拥塞控制算法的对应关系 中,将与所述用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种对应的拥塞控制算法,确定为与所述用户终端进行数据传输时所使用的拥塞控制算法。
结合第三方面,第三方面第一种或第二种可能的实现方式,在第三种可能的实现方式中,所述网络服务器还包括:
第二获取模块,用于获取所述用户终端与服务器通信路径上的第二网络状态信息;
调用模块,用于根据所述第二网络状态信息,调用应用程序编程AP I接口,所述API接口用于修改传输控制协议TCP参数;
修正模块,用于通过所述API接口修改所述TCP参数。
本发明第四方面提供一种用户终端,包括:
第三获取模块,用于通过已有API接口或新建API接口获取用户终端的网卡类型、接入网方式和业务需求中至少一种;
第一发送模块,用于向网络服务器发送所述用户终端的网卡类型、接入网方式和业务需求中至少一种,以使得网络服务器根据网卡类型、接入网方式和业务需求中至少一种确定拥塞控制算法;
第二传输模块,用于使用所述拥塞控制算法与所述网络服务器进行数据传输。
结合本发明实施例的第四方面,在第一种可能的实现方式中,所述用户终端还包括:
第二确定模块,用于根据所述用户终端的网卡类型、接入网方式和业务需求中至少一种,确定与所述用户终端的网卡类型、接入网方式和业务需求中至少一种对应的拥塞控制算法;
所述第一发送模块包括:
发送单元,用于向所述网络服务器发送所述用户终端的网卡类型、接入网方式、业务需求中至少一种,以及所述对应的拥塞控制算法。
本发明第五方面提供一种数据传输的系统,包括:网络服务器和用户终端;
所述网络服务器为上述第三方面、第三方面第一种、第二种或第三种可能的实现方式中的所述网络服务器;
所述用户终端为上述第三方面或第三方面第一种可能的实现方式的所述用户终端。
从以上技术方案可以看出,本发明实施例具有以下优点:
本发明实施例中,网络服务器获取用户终端发送的信息,并结合自身支持的拥塞控制算法,选择最终采用的拥塞控制算法,网络服务器使用该拥塞控制算法进行TCP传输。 网络服务器根据接收到的不同信息选择不同的拥塞控制算法,针对具体终端类型与接入网方式进行TCP传输,提高TCP传输效率。
附图说明
图1为本发明实施例中数据传输的方法一个实施例示意图;
图2为本发明实施例中数据传输的方法另一个实施例示意图;
图3为本发明实施例中网络服务器一个实施例示意图;
图4为本发明实施例中网络服务器另一个实施例示意图;
图5为本发明实施例中网络服务器另一个实施例示意图;
图6为本发明实施例中用户终端一个实施例示意图;
图7为本发明实施例中用户终端另一个实施例示意图;
图8为本发明实施例中网络服务器一个结构示意图;
图9为本发明实施例中用户终端一个结构示意图;
图10为本发明实施例中数据传输系统一个实施例示意图。
具体实施方式
本发明实施例提供了一种数据传输的方法、网络服务器、用户终端及系统,用于针对具体终端类型与接入网方式进行TCP传输,提高TCP传输效率。
请参阅图1,本发明实施例中数据传输的方法一个实施例包括:
101、获取用于确定拥塞控制算法的信息;
本实施例中,网络服务器获取用于确定拥塞控制算法的信息。
通常情况下,当网络资源的需求大于可用资源时就会出现网络性能下降的问题,即出现拥塞的情况,而拥塞控制算法可以有效的避免或者缓解拥塞的情况。
102、根据网络特征信息,确定与用户终端进行数据传输时所使用的拥塞控制算法;
本实施例中,当网络服务器接收了用于确定拥塞控制算法的信息后,根据这些用于确定拥塞控制算法的信息,确定使用具体哪一种拥塞控制算法与用户终端进行数据传输。
103、使用拥塞控制算法与用户终端进行数据传输。
本实施例中,在确定与用户终端进行数据传输时所使用的拥塞控制算法后,可以使用这种拥塞控制算法与用户终端进行数据传输。
可以理解的是,本实施例中使用TCP作为数据传输的协议,实际应用中,也可以使用网际协议(IP,Internet Protocol)作为数据传输的协议,或者其他数据传输的协议,故此处不做限定。
本发明实施例中,网络服务器获取用户终端发送的信息,并结合自身支持的拥塞控制算法,选择最终采用的拥塞控制算法,网络服务器使用该拥塞控制算法进行TCP传输。网络服务器根据接收到的不同信息选择不同的拥塞控制算法,针对具体终端类型与接入网方式进行TCP传输,提高TCP传输效率。
需要说明的是,上述实施例中可以通过多种方式确定与用户终端进行数据传输时所使用的拥塞控制算法,为便于理解,下面分别进行说明:
一、网络服务器根据用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中至少一种确定与所述用户终端进行数据传输时所使用的拥塞控制算法;
可选地,在上述图1对应的实施例的基础上,本发明实施例提供的数据传输的方法第一个可选实施例中,用于确定拥塞控制算法的信息包括用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中至少一种时,根据用于确定拥塞控制算法的信息,确定与用户终端进行数据传输时所使用的拥塞控制算法,包括:
从网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种与拥塞控制算法的对应关系中,将与用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种对应的拥塞控制算法,确定为与用户终端进行数据传输时所使用的拥塞控制算法。
本实施例中,用户终端通过OPENTCP协议的API接口获取用户终端的网卡类型、接入网方式以及用户业务需求,再通过TCP或IP建立连接时所使用的握手信号(SYN,Synchronous)报文中的options选项,将携带有网卡类型、接入网方式以及用户业务需求的信息发送至网络服务器侧,网络服务器侧接收并解析SYN报文中的options选项信息,得到用户终端的网卡类型、接入网方式以及用户业务需求。
同时,用户终端还可以获取用户终端与服务器通信路径上的第二网络状态信息,需要说明的是,第二网络状态信息可以为用户终端与服务器通信路径上的丢包率,也可以为其它网络状态信息,例如带宽或时延等参数,此处不做限定。
可以理解的是,用户终端发送网络特征信息至网络服务器的方式有多种,不限于通过SYN报文的options选项将携带有网络特征信息发送至网络服务器,故此处不做限定。
本实施例中,网络服务器在接收到网卡类型、接入网方式、用户业务需求以及用户 终端与服务器通信路径上的第一网络状态信息中的至少一种后,可以从其中至少一种信息与对应的拥塞控制算法,确定为与用户终端进行数据传输时所使用的拥塞控制算法。
需要说明的是,网络服务器在接收到网卡类型、接入网方式、用户业务需求以及用户终端与服务器通信路径上的第一网络状态信息中的每一种信息与拥塞控制算法的对应关系可以为一对一,或者一对多,例如,当获取的是网卡类型为通用串行总线(USB,Universal Serial Bus)网卡时,可以采用对应的A拥塞控制算法,也可以对应A与B两种拥塞控制算法,根据具体网络状态择优使用,故此处不对该对应关系做限定。
其次,本实施例中网络服务器可以根据网卡类型、接入网方式、业务需求和第一网络状态信息中至少一种,确定与用户终端进行数据传输时所使用的拥塞控制算法,如此便可以灵活的根据实际应用与动态网络选择最佳的拥塞控制算法来解决网络拥塞的问题,使方案更具有灵活性,同时更具备实用性。
二、网络服务器根据用户终端确定的拥塞控制算法的类型、用户终端的网卡类型、接入网方式、业务需求以及第一网络状态信息中至少一种确定与用户终端进行数据传输时所使用的拥塞控制算法;
可选地,在上述图1对应的实施例的基础上,本发明实施例提供的数据传输的方法第二个可选实施例中,用于确定拥塞控制算法的信息还包括用户终端确定的拥塞控制算法的类型时,从网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种与拥塞控制算法的对应关系中,将与用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种对应的拥塞控制算法,确定为与用户终端进行数据传输时所使用的拥塞控制算法,包括:
判断是否支持用户终端确定的拥塞控制算法;
当支持用户终端确定的拥塞控制算法时,将用户终端确定的拥塞控制算法确定为与用户终端进行数据传输时所使用的拥塞控制算法;
当不支持用户终端确定的拥塞控制算法时,从网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种与拥塞控制算法的对应关系中,将与用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种对应的拥塞控制算法,确定为与用户终端进行数据传输时所使用的拥塞控制算法。
本实施例中,网络服务器接收并解析SYN报文中的options选项信息,得到用户终端的网卡类型、接入网方式、用户的业务需求和用户终端确定的拥塞控制算法的类型后,通过OPENTCP协议的API查询自身是否支持用户终端所选择的拥塞控制算法,若查询后 确定网络服务器自身支持用户终端所选择的拥塞控制算法时,则将用户终端确定的拥塞控制算法确定为与用户终端进行数据传输时所使用的拥塞控制算法,但是当查询后得知网络服务器自身不支持用户终端所选择的拥塞控制算法的时候,则根据用户终端的网卡类型、接入网方式、用户的业务需求和用户终端与服务器通信路径上的第一网络状态信息中的至少一种,选择对应的拥塞控制算法,确定为与用户终端进行数据传输时所使用的拥塞控制算法。
拥塞控制算法可以划分为四类,分别是慢开始算法、拥塞避免算法、快重传算法或快恢复算法,慢开始算法是指开始传输时,传输的数据由小到大递增到一个值,即发送窗口由小至大的呈指数增大,逐渐增大到拥塞窗口的数值;拥塞避免算法是当拥塞窗口的数值不能再以指数级往上升时,拥塞窗口每次加1的线性增大,这样就可以避免增长过快导致网络拥塞,慢慢调整到网络的最佳值;快重传算法是在数据传输时,将数据划分为若干报文,每个报文携带有序号,若接收方收到一个失序的报文段,则立即发出重复确认,发送方只要一连收到三个重复确认信息时,就可及时重传为收到的报文段;快恢复算法是与快重传配合的一种算法,在发送方一连收到三个重复确认信息时,就把每次传输的数据量减小为原来的一半,拥塞窗口也修改为该值,然后执行拥塞避免算法,使拥塞窗口缓慢地线性增大。
需要说明的是,上述四种算法为基本拥塞控制算法,在本实施例中使用的拥塞控制算法可以为这四种中其中一种或多种,故此处不做限定。
其次,本实施例中提出一种通过判断网络服务器自身是否支持用户终端所选择的拥塞控制算法来确定最终拥塞控制算法的方法,使方案的可操作性得以提升,增加方案的灵活性。
可选地,在上述图1对应的实施例、第一个可选实施例以及第二个可选实施例中任一项的基础上,本发明实施例提供的数据传输的方法第三个可选实施例中,使用拥塞控制算法与用户终端进行数据传输时,方法还可以包括:
获取用户终端与服务器通信路径上的第二网络状态信息;
根据第二网络状态信息,调用应用程序编程API接口,API接口用于修改传输控制协议TCP参数;
通过API接口修改TCP参数。
本实施例中,网络服务器通过网管系统或软件定义网络(SDN,Software Defined Network)控制器获取用户终端与服务器通信路径上的中间网络节点信息,其中网管系 统又称为网络管理系统,是一个软硬件结合以软件为主的分布式网络应用系统,其目的是管理网络,使网络高效正常运行,网络管理对象一般包括路由器,交换机与多端口的转发器。
需要说明的是,网络服务器可以通过用户终端与网络服务器通信路径上的中间网络节点信息,获取网络节点出口的丢包率,并以此来确定对应的拥塞控制算法,也可以根据其他的网络状态信息来确定拥塞控制算法,例如带宽或时延,此处不做限定。
本实施例中,网络服务器根据与用户终端在通信路径上的丢包率,或其它的网络状态信息,来调用API接口进行TCP参数的修改,而一种修改的方式为:对API接口函数没有具体实现的参数,但是可根据现有的格式进行扩展,因此动态调整TCP参数,TCP参数一般包括拥塞窗口、接收缓存区大小与发送缓存区大小,用户根据网络状态变化及时通过API接口修改这些参数。
需要说明的是,本实施例中,通过现有的API接口或者新建的API接口进行TCP参数修改,而实际应用中,也可以采用通用的socket编程接口来修改TCP参数,还可以采用其他基于TCP流修改TCP参数的方式,
再次,本实施例中,网络服务器获取网络状态信息,并根据该信息通过API接口进行TCP参数的修改,可以及时根据网络状态信息确定网络的调整策略,通过API接口动态调整TCP参数,从而提高TCP传输效率,使得方案的应用更为广泛,并且使得灵活性更进一步的提高了。
上面的实例中都是从网络服务器的角度对本发明中数据传输进行描述,下面将从用户终端的角度对本发明中数据处理的方法进行描述。请参阅图2,本发明数据传输方法的另一个实施例包括:
201、通过已有API接口或新建API接口获取用户终端的网卡类型、接入网方式和业务需求中至少一种;
本实施例中,用户终端通过新建的OPENTCP API接口来获取用户的网卡类型、接入网方式以及部分的用户需求,也可通过已有的API接口获取已有API接口无法获取到的部分用户业务需求,其中OPENTCP API接口可以作为已有API接口的扩展,用户终端需要获取以上三种信息中的至少一种。
202、向网络服务器发送用户终端的网卡类型、接入网方式和业务需求中至少一种,以使得网络服务器根据网卡类型、接入网方式和业务需求中至少一种确定拥塞控制算法;
本实施例中,用户终端向网络服务器发送用户终端获取网卡类型、接入网方式与用户业务需求中的至少一种,以使得网络服务器根据这些信息中的至少一项来确定拥塞控制算法。
其中,常用的接入网方式有多种,例如非对称数字用户环路(ADSL,Asymmetric Digital Subscriber Line)接入网方式、线缆调制解调器接入网方式和光纤接入网方式(OAN,Optical Access Network),使用ADSL接入网方式保密性好,安全系数高;线缆调制解调器接入网方式是以太网方式的接入,高速且稳定;而OAN接入网方式仅对入户线路进行改造就可以提供高速宽带网络,方便快速。
203、使用拥塞控制算法与网络服务器进行数据传输。
本实施例中,用户终端根据网络服务器确定的拥塞控制算法,与网络服务器进行数据传输。
本发明实施例中,用户终端通过新建API接口或者已有的API接口获取自身的网卡类型、接入网方式以及用户的业务需求,并将这些信息发送至网络服务器,使得网络服务器可以根据这些信息确定与用户终端进行数据传输时所使用的拥塞控制算法,网络服务器根据用户终端不同的网络特征信息选择不同的拥塞控制算法,针对具体网卡类型、接入网方式和用户的业务需求进行TCP传输,提高TCP传输效率。
可选地,在上述图2对应的实施例的基础上,本发明实施例提供的数据传输的方法第一个可选实施例中,通过已有API接口或新建API接口获取用户终端的网卡类型、接入网方式和业务需求中至少一种之后,方法还可以包括:
根据用户终端的网卡类型、接入网方式和业务需求中至少一种,确定与用户终端的网卡类型、接入网方式和业务需求中至少一种对应的拥塞控制算法;
向网络服务器发送用户终端的网卡类型、接入网方式、业务需求中至少一种,以及所述对应的拥塞控制算法。
本实施例中,已有的API接口可以获取系统支持的拥塞控制算法与部分的用户业务需求,而新建的OPENTCP API接口可以获取用户终端的网卡类型、接入网方式以及已有API接口无法获取到的部分用户业务需求,再向网络服务器发送上述系统支持的拥塞控制算法,网络服务器结合自身支持的拥塞控制算法判断是否支持用户终端发送的拥塞控制算法,如果支持,就可以直接使用该拥塞控制算法进行数据传输,但是,当不支持的时候,则网络服务器会根据用户终端发送的网卡类型、接入网方式与用户的业务需求中至少一项,来重新选择最合适的拥塞控制算法,确定为最终用于数据传输是拥塞控制算 法。
其次,本发明实施例中用户终端可以通过网卡类型、接入网方式以及用户的业务需求,确定与用户终端的网卡类型和接入网方式对应的拥塞控制算法,若网络服务器也支持该拥塞控制算法则为最佳选择,否则网络服务器会选择次佳的拥塞控制算法进行数据传输,该方案的可实施性得到提升,同时在实际应用中的效果会更好,提供TCP传输的效率。
为便于理解,下面以一个具体应用场景对本发明中一种网络处理方法进行详细描述,具体为:
用户终端通过OPENTCP协议的API获取用户终端的网卡类型是以太网卡,接入网方式为固定IP,用户终端根据以太网卡的固定IP接入方式在编译好的程序中选择对应的一种拥塞控制算法A,再通过SYN报文中的options选项将这些信息发送至网络服务器,网络服务器侧接收并解析SYN报文中的options选项信息,得到用户终端为以太网卡的固定IP接入方式。
网络服务器通过OPENTCP协议的API查询得到自身并不支持拥塞控制算法A,于是网络服务器通过OPENTCP协议的API查找到以太网卡的固定IP接入方式对应的为拥塞控制算法B,而编程人员提前通过OPENTCP协议的API编译了不同网卡类型和接入网方式对应的拥塞控制算法,例如使用以太网终端时网络服务器可以选用Cubic拥塞控制算法,当使用3G或4G网络时,网络服务器可以选用Westwood拥塞控制算法,具体可以由编程人员自行编译决定。
网络服务器选择拥塞控制算法B,完成TCP三次握手后进行TCP传输,在传输过程中,网络服务器可以获取当前网络的状态信息,当网络的带宽为1兆,延时为100毫秒,网络丢包率是10.00%时,根据这些参数可以调用OPENTCP协议的API来动态调整TCP参数,TCP参数可以为初始拥塞窗口,初始拥塞窗口大小为1,在采用拥塞控制算法B时,阈值变为当前拥塞窗口值的一半,然后拥塞窗口大小重置为1,网络服务器继续采用拥塞控制算法B,使得TCP传输效率得到保证。
下面对本发明中的网络服务器进行详细描述,请参阅图3,本发明实施例中的网络服务器包括:
第一获取模块301,用于获取用于确定拥塞控制算法的信息;
第一确定模块302,用于根据所述用于确定拥塞控制算法的信息,确定与所述用户终端进行数据传输时所使用的拥塞控制算法;
第一传输模块303,用于使用所述拥塞控制算法与所述用户终端进行数据传输。
本实施例中,第一获取模块301获取用于确定拥塞控制算法的信息,第一确定模块302根据第一获取模块301获取的用于确定拥塞控制算法的信息,确定与用户终端进行数据传输时所使用的拥塞控制算法,第一传输模块303使用第一确定模块302确定的拥塞控制算法与所述用户终端进行数据传输。
本发明实施例中,网络服务器获取用户终端发送的信息,并结合自身支持的拥塞控制算法,选择最终采用的拥塞控制算法,网络服务器使用该拥塞控制算法进行TCP传输。网络服务器根据接收到的不同信息选择不同的拥塞控制算法,针对具体终端类型与接入网方式进行TCP传输,提高TCP传输效率。
在实际应用中,上述实施例中可以通过多种方式确定与用户终端进行数据传输时所使用的拥塞控制算法,为便于理解,下面分别进行说明:
一、网络服务器根据用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中至少一种确定与所述用户终端进行数据传输时所使用的拥塞控制算法;
可选地,在上述图3对应的实施例的基础上,本发明实施例提供的网络服务器第一个可选实施例中,确定模块具体用于在所述用于确定拥塞控制算法的信息包括所述用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中至少一种时,从网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种与拥塞控制算法的对应关系中,将与所述用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种对应的拥塞控制算法,确定为与所述用户终端进行数据传输时所使用的拥塞控制算法。
其次,本实施例中网络服务器可以根据网卡类型、接入网方式、业务需求和第一网络状态信息中至少一种,确定与用户终端进行数据传输时所使用的拥塞控制算法,如此便可以灵活的根据实际应用与动态网络选择最佳的拥塞控制算法来解决网络拥塞的问题,使方案更具有灵活性,同时更具备实用性。
二、网络服务器根据用户终端确定的拥塞控制算法的类型、用户终端的网卡类型、接入网方式、业务需求以及第一网络状态信息中至少一种确定与用户终端进行数据传输时所使用的拥塞控制算法;
请参阅图4,本发明网络服务器的另一个实施例包括:
第一获取模块401,用于获取用于确定拥塞控制算法的信息;
第一确定模块402,用于根据所述用于确定拥塞控制算法的信息,确定与所述用户 终端进行数据传输时所使用的拥塞控制算法;
第一传输模块403,用于使用所述拥塞控制算法与所述用户终端进行数据传输。
所述第一确定模块402可以进一步包括:
判断单元4021,用于判断是否支持所述用户终端确定的拥塞控制算法;
第一确定单元4022,用于当支持所述用户终端确定的拥塞控制算法时,将所述用户终端确定的拥塞控制算法确定为与所述用户终端进行数据传输时所使用的拥塞控制算法;
第二确定单元4023,用于当不支持所述用户终端确定的拥塞控制算法时,从网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种与拥塞控制算法的对应关系中,将与所述用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种对应的拥塞控制算法,确定为与所述用户终端进行数据传输时所使用的拥塞控制算法。
其次,本实施例中提出一种通过判断网络服务器自身是否支持用户终端所选择的拥塞控制算法来确定最终拥塞控制算法的方法,使方案的可操作性得以提升,增加方案的灵活性。
请参阅图5,本发明网络服务器的另一个实施例包括:
第一获取模块501,用于获取用于确定拥塞控制算法的信息;
第一确定模块502,用于根据所述用于确定拥塞控制算法的信息,确定与所述用户终端进行数据传输时所使用的拥塞控制算法;
第一传输模块503,用于使用所述拥塞控制算法与所述用户终端进行数据传输;
第二获取模块504,用于获取所述用户终端与服务器通信路径上的第二网络状态信息;
调用模块505,用于根据所述第二网络状态信息,调用应用程序编程API接口,所述API接口用于修改传输控制协议TCP参数;
修正模块506,用于通过所述API接口修改所述TCP参数。
所述第一确定模块502可以进一步包括:
判断单元5021,用于判断是否支持所述用户终端确定的拥塞控制算法;
第一确定单元5022,用于当支持所述用户终端确定的拥塞控制算法时,将所述用户终端确定的拥塞控制算法确定为与所述用户终端进行数据传输时所使用的拥塞控制算法;
第二确定单元5023,用于当不支持所述用户终端确定的拥塞控制算法时,从网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种与拥塞控制算法的对应关系中,将与所述用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种对应的拥塞控制算法,确定为与所述用户终端进行数据传输时所使用的拥塞控制算法。
再次,本实施例中,网络服务器获取网络状态信息,并根据该信息通过API接口进行TCP参数的修改,可以及时根据网络状态信息确定网络的调整策略,通过API接口动态调整TCP参数,从而提高TCP传输效率,使得方案的应用更为广泛,并且使得灵活性更进一步的提高了。
下面对本发明中的用户终端进行详细描述,请参阅图6,本发明实施例中的用户终端包括:
第三获取模块601,用于通过已有API接口或新建API接口获取用户终端的网卡类型、接入网方式和业务需求中至少一种;
第一发送模块602,用于向网络服务器发送所述用户终端的网卡类型、接入网方式和业务需求中至少一种,以使得网络服务器根据网卡类型、接入网方式和业务需求中至少一种确定拥塞控制算法;
第二传输模块603,用于使用所述拥塞控制算法与所述网络服务器进行数据传输。
本实施例中,第三获取模块601通过已有API接口或新建API接口获取用户终端的网卡类型、接入网方式和业务需求中至少一种,第一发送模块602向网络服务器发送第三获取模块601获取的用户终端的网卡类型、接入网方式和业务需求中至少一种,以使得网络服务器根据网卡类型、接入网方式和业务需求中至少一种确定拥塞控制算法,第二传输模块603使用拥塞控制算法与网络服务器进行数据传输。
本发明实施例中,用户终端通过新建API接口或者已有的API接口获取自身的网卡类型、接入网方式以及用户的业务需求,并将这些信息发送至网络服务器,使得网络服务器可以根据这些信息确定与用户终端进行数据传输时所使用的拥塞控制算法,网络服务器根据用户终端不同的网络特征信息选择不同的拥塞控制算法,针对具体网卡类型、接入网方式和用户的业务需求进行TCP传输,提高TCP传输效率。
请参阅图7,本发明实施例中用户终端的另一个实施例包括:
第三获取模块701,用于通过已有API接口或新建API接口获取所述用户终端的网卡类型、接入网方式和业务需求中至少一种;
第二确定模块702,用于根据所述用户终端的网卡类型、接入网方式和业务需求中至少一种,确定与所述用户终端的网卡类型、接入网方式和业务需求中至少一种对应的拥塞控制算法;
第一发送模块703,用于向网络服务器发送所述用户终端的网卡类型、接入网方式和业务需求中至少一种,以使得网络服务器根据网卡类型、接入网方式和业务需求中至少一种确定所述拥塞控制算法;
第二传输模块704,用于使用所述拥塞控制算法与所述网络服务器进行数据传输。
所述第一发送模块703可以进一步包括:
发送单元7031,用于向所述网络服务器发送所述用户终端的网卡类型、接入网方式、业务需求中至少一种,以及所述对应的拥塞控制算法;
其次,本发明实施例中用户终端可以通过网卡类型、接入网方式以及用户的业务需求,确定与用户终端的网卡类型和接入网方式对应的拥塞控制算法,若网络服务器也支持该拥塞控制算法则为最佳选择,否则网络服务器会选择次佳的拥塞控制算法进行数据传输,该方案的可实施性得到提升,同时在实际应用中的效果会更好,提供TCP传输的效率。
图8是本发明实施例提供的一种服务器结构示意图,该服务器800可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(CPU,central processing units)822(例如,一个或一个以上处理器)和存储器832,一个或一个以上存储应用程序842或数据844的存储介质830(例如一个或一个以上海量存储设备)。其中,存储器832和存储介质830可以是短暂存储或持久存储。存储在存储介质830的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器822可以设置为与存储介质830通信,在服务器800上执行存储介质830中的一系列指令操作。
服务器800还可以包括一个或一个以上电源826,一个或一个以上有线或无线网络接口850,一个或一个以上输入输出接口858,和/或,一个或一个以上操作系统841,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述实施例中由服务器所执行的步骤可以基于该图8所示的服务器结构。
本发明实施例还提供了一种用户终端装置,如图9所示,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该终端可以为包括手机、平板电脑、PDA(Personal Digital Assistant,个人数字助 理)、POS(Point of Sales,销售终端)、车载电脑等任意终端设备,以终端为手机为例:
图9示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。参考图9,手机包括:射频(Radio Frequency,RF)电路910、存储器920、输入单元930、显示单元940、传感器950、音频电路960、无线保真(wireless fidelity,WiFi)模块970、处理器980、以及电源990等部件。本领域技术人员可以理解,图9中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图9对手机的各个构成部件进行具体的介绍:
RF电路910可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器980处理;另外,将设计上行的数据发送给基站。通常,RF电路910包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low Noise Amplifier,LNA)、双工器等。此外,RF电路910还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global System of Mobile communication,GSM)、通用分组无线服务(General Packet Radio Service,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。
存储器920可用于存储软件程序以及模块,处理器980通过运行存储在存储器920的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器920可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器920可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元930可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元930可包括触控面板931以及其他输入设备932。触控面板931,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板931上或在触控面板931附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板931可包括 触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器980,并能接收处理器980发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板931。除了触控面板931,输入单元930还可以包括其他输入设备932。具体地,其他输入设备932可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元940可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元940可包括显示面板941,可选的,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板941。进一步的,触控面板931可覆盖显示面板941,当触控面板931检测到在其上或附近的触摸操作后,传送给处理器980以确定触摸事件的类型,随后处理器980根据触摸事件的类型在显示面板941上提供相应的视觉输出。虽然在图9中,触控面板931与显示面板941是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板931与显示面板941集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器950,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板941的亮度,接近传感器可在手机移动到耳边时,关闭显示面板941和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路960、扬声器961,传声器962可提供用户与手机之间的音频接口。音频电路960可将接收到的音频数据转换后的电信号,传输到扬声器961,由扬声器961转换为声音信号输出;另一方面,传声器962将收集的声音信号转换为电信号,由音频电路960接收后转换为音频数据,再将音频数据输出处理器980处理后,经RF电路910以发送给比如另一手机,或者将音频数据输出至存储器920以便进一步处理。
WiFi属于短距离无线传输技术,手机通过WiFi模块970可以帮助用户收发电子邮 件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图9示出了WiFi模块970,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器980是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器920内的软件程序和/或模块,以及调用存储在存储器920内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器980可包括一个或多个处理单元;优选的,处理器980可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器980中。
手机还包括给各个部件供电的电源990(比如电池),优选的,电源可以通过电源管理系统与处理器980逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
下面对本发明实施例中的数据传输系统进行描述,请参阅图10,本发明实施例中的数据传输系统包括:
网络服务器1001以及用户终端1002;
网络服务器1001获取用于确定拥塞控制算法的信息,网络服务器1001根据所述用于确定拥塞控制算法的信息,确定与所述用户终端1002进行数据传输时所使用的拥塞控制算法,网络服务器1001使用所述拥塞控制算法与所述用户终端1002进行数据传输;
用户终端1002通过已有API接口或新建API接口获取所述用户终端1002的网卡类型、接入网方式和业务需求中至少一种,用户终端1002向网络服务器1001发送所述用户终端1002的网卡类型、接入网方式和业务需求中至少一种,以使得网络服务器1001根据网卡类型、接入网方式和业务需求中至少一种确定所述拥塞控制算法,用户终端1002使用所述拥塞控制算法与所述网络服务器1001进行数据传输。
本发明实施例中,网络服务器获取用户终端发送的信息,并结合自身支持的拥塞控制算法,选择最终采用的拥塞控制算法,网络服务器使用该拥塞控制算法进行TCP传输。网络服务器根据接收到的不同信息选择不同的拥塞控制算法,针对具体终端类型与接入网方式进行TCP传输,提高TCP传输效率。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统, 装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (13)

  1. 一种数据传输的方法,其特征在于,包括:
    获取用于确定拥塞控制算法的信息;
    根据所述用于确定拥塞控制算法的信息,确定与所述用户终端进行数据传输时所使用的拥塞控制算法;
    使用所述拥塞控制算法与所述用户终端进行数据传输。
  2. 根据权利要求1所述的方法,其特征在于,所述用于确定拥塞控制算法的信息包括所述用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中至少一种时,所述根据所述用于确定拥塞控制算法的信息,确定与所述用户终端进行数据传输时所使用的拥塞控制算法,包括:
    从网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种与拥塞控制算法的对应关系中,将与所述用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种对应的拥塞控制算法,确定为与所述用户终端进行数据传输时所使用的拥塞控制算法。
  3. 根据权利要求2所述的方法,其特征在于,所述用于确定拥塞控制算法的信息还包括所述用户终端确定的拥塞控制算法的类型时,所述从网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种与拥塞控制算法的对应关系中,将与所述用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种对应的拥塞控制算法,确定为与所述用户终端进行数据传输时所使用的拥塞控制算法,包括:
    判断是否支持所述用户终端确定的拥塞控制算法;
    当支持所述用户终端确定的拥塞控制算法时,将所述用户终端确定的拥塞控制算法确定为与所述用户终端进行数据传输时所使用的拥塞控制算法;
    当不支持所述用户终端确定的拥塞控制算法时,从网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种与拥塞控制算法的对应关系中,将与所述用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种对应的拥塞控制算法,确定为与所述用户终端进行数据传输时所使用的拥塞控制算法。
  4. 根据权利要求1至3任一所述的方法,其特征在于,所述使用所述拥塞控制算法与所述用户终端进行数据传输时,所述方法还包括:
    获取所述用户终端与服务器通信路径上的第二网络状态信息;
    根据所述第二网络状态信息,调用应用程序编程API接口,所述API接口用于修 改传输控制协议TCP参数;
    通过所述API接口修改所述TCP参数。
  5. 一种数据传输的方法,其特征在于,包括:
    通过已有API接口或新建API接口获取用户终端的网卡类型、接入网方式和业务需求中至少一种;
    向网络服务器发送所述用户终端的网卡类型、接入网方式和业务需求中至少一种,以使得网络服务器根据网卡类型、接入网方式和业务需求中至少一种确定拥塞控制算法;
    使用所述拥塞控制算法与所述网络服务器进行数据传输。
  6. 根据权利要求5所述的方法,其特征在于,所述通过已有API接口或新建API接口获取所述用户终端的网卡类型、接入网方式和业务需求中至少一种之后,所述方法还包括:
    根据所述用户终端的网卡类型、接入网方式和业务需求中至少一种,确定与所述用户终端的网卡类型、接入网方式和业务需求中至少一种对应的拥塞控制算法;
    所述向网络服务器发送所述用户终端的网卡类型、接入网方式和业务需求中至少一种,包括:
    向所述网络服务器发送所述用户终端的网卡类型、接入网方式、业务需求中至少一种,以及所述对应的拥塞控制算法。
  7. 一种网络服务器,其特征在于,包括:
    第一获取模块,用于获取用于确定拥塞控制算法的信息;
    第一确定模块,用于根据所述用于确定拥塞控制算法的信息,确定与所述用户终端进行数据传输时所使用的拥塞控制算法;
    第一传输模块,用于使用所述拥塞控制算法与所述用户终端进行数据传输。
  8. 根据权利要求7所述的网络服务器,其特征在于,所述确定模块具体用于在所述用于确定拥塞控制算法的信息包括所述用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中至少一种时,从网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种与拥塞控制算法的对应关系中,将与所述用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种对应的拥塞控制算法,确定为与所述用户终端进行数据传输时所使用的拥塞控制算法。
  9. 根据权利要求8所述的网络服务器,其特征在于,所述第一确定模块包括:
    判断单元,用于判断是否支持所述用户终端确定的拥塞控制算法;
    第一确定单元,用于当支持所述用户终端确定的拥塞控制算法时,将所述用户终端确定的拥塞控制算法确定为与所述用户终端进行数据传输时所使用的拥塞控制算法;
    第二确定单元,用于当不支持所述用户终端确定的拥塞控制算法时,从网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种与拥塞控制算法的对应关系中,将与所述用户终端的网卡类型、接入网方式、业务需求和第一网络状态信息中的至少一种对应的拥塞控制算法,确定为与所述用户终端进行数据传输时所使用的拥塞控制算法。
  10. 根据权利要求7至9任一所述的网络服务器,其特征在于,所述网络服务器还包括:
    第二获取模块,用于获取所述用户终端与服务器通信路径上的第二网络状态信息;
    调用模块,用于根据所述第二网络状态信息,调用应用程序编程API接口,所述API接口用于修改传输控制协议TCP参数;
    修正模块,用于通过所述API接口修改所述TCP参数。
  11. 一种用户终端,其特征在于,包括:
    第三获取模块,用于通过已有API接口或新建API接口获取用户终端的网卡类型、接入网方式和业务需求中至少一种;
    第一发送模块,用于向网络服务器发送所述用户终端的网卡类型、接入网方式和业务需求中至少一种,以使得网络服务器根据网卡类型、接入网方式和业务需求中至少一种确定拥塞控制算法;
    第二传输模块,用于使用所述拥塞控制算法与所述网络服务器进行数据传输。
  12. 根据权利要求11所述的用户终端,其特征在于,所述用户终端还包括:
    第二确定模块,用于根据所述用户终端的网卡类型、接入网方式和业务需求中至少一种,确定与所述用户终端的网卡类型、接入网方式和业务需求中至少一种对应的拥塞控制算法;
    所述第一发送模块包括:
    发送单元,用于向所述网络服务器发送所述用户终端的网卡类型、接入网方式、业务需求中至少一种,以及所述对应的拥塞控制算法。
  13. 一种数据传输的系统,其特征在于,包括:网络服务器和用户终端
    所述网络服务器为上述权利要求7至10中任一项所述的网络服务器;
    所述用户终端为上述权利要求11至12任一项所述的用户终端。
PCT/CN2015/093380 2015-01-12 2015-10-30 一种数据传输的方法、网络服务器、用户终端及系统 WO2016112728A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020177022309A KR20170103921A (ko) 2015-01-12 2015-10-30 데이터 전송 방법 및 시스템, 네트워크 서버 및 사용자 단말
EP15877641.9A EP3236621A4 (en) 2015-01-12 2015-10-30 Data transmission method, network server, user terminal and system
US15/646,853 US20170310593A1 (en) 2015-01-12 2017-07-11 Data Transmission Method and System, Network Server, and User Terminal

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510014307.1 2015-01-12
CN201510014307.1A CN105847168B (zh) 2015-01-12 2015-01-12 一种数据传输的方法、网络服务器、用户终端及系统

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/646,853 Continuation US20170310593A1 (en) 2015-01-12 2017-07-11 Data Transmission Method and System, Network Server, and User Terminal

Publications (1)

Publication Number Publication Date
WO2016112728A1 true WO2016112728A1 (zh) 2016-07-21

Family

ID=56405216

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/093380 WO2016112728A1 (zh) 2015-01-12 2015-10-30 一种数据传输的方法、网络服务器、用户终端及系统

Country Status (5)

Country Link
US (1) US20170310593A1 (zh)
EP (1) EP3236621A4 (zh)
KR (1) KR20170103921A (zh)
CN (1) CN105847168B (zh)
WO (1) WO2016112728A1 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9813299B2 (en) * 2016-02-24 2017-11-07 Ciena Corporation Systems and methods for bandwidth management in software defined networking controlled multi-layer networks
US10848602B2 (en) * 2016-07-08 2020-11-24 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for implementing congestion control negotiation
CN108011734A (zh) * 2016-10-27 2018-05-08 常州市小先信息技术有限公司 基于软件定义的终端管理架构
CN109309934B (zh) * 2017-07-27 2021-01-15 华为技术有限公司 一种拥塞控制方法及相关设备
US10680897B2 (en) * 2017-07-31 2020-06-09 Cisco Technology, Inc. Network modification impact prediction
CN109218944B (zh) * 2018-09-05 2020-06-02 广州市奥威亚电子科技有限公司 一种基于有线麦克风长距离传输方法及系统
CN109587336B (zh) * 2018-12-06 2021-03-12 Oppo广东移动通信有限公司 数据传输方法及相关装置
CN110784414B (zh) * 2019-10-30 2023-06-23 北京达佳互联信息技术有限公司 数据交互方法、装置、电子设备和存储介质
CN112822230B (zh) * 2020-12-28 2022-03-25 南京大学 一种基于概率的发送端初始速率设置方法和系统
CN113300969B (zh) * 2021-05-20 2022-07-12 清华大学深圳国际研究生院 基于场景变化的拥塞控制切换方法、存储介质和电子设备
US20230015697A1 (en) * 2021-07-13 2023-01-19 Citrix Systems, Inc. Application programming interface (api) authorization
CN113726688A (zh) * 2021-09-03 2021-11-30 支付宝(杭州)信息技术有限公司 拥塞控制方法、装置和电子设备
CN113852988B (zh) * 2021-09-10 2023-11-24 武汉联影医疗科技有限公司 拥塞控制方法、装置、计算机设备和存储介质
US20240015581A1 (en) * 2022-07-08 2024-01-11 Qualcomm Incorporated Congestion control algorithms

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030081546A1 (en) * 2001-10-26 2003-05-01 Luminous Networks Inc. Aggregate fair queuing technique in a communications system using a class based queuing architecture
US20040264377A1 (en) * 2001-11-23 2004-12-30 Kalevi Kilkki Method and system for handling network congestion
CN101917342A (zh) * 2010-08-25 2010-12-15 天津理工大学 一种面向普适服务的自适应网络拥塞控制方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7782759B2 (en) * 2006-04-21 2010-08-24 Microsoft Corporation Enabling network devices to run multiple congestion control algorithms
US8467390B2 (en) * 2006-12-14 2013-06-18 Oracle America, Inc. Method and system for network stack tuning
CA2680319A1 (en) * 2007-03-12 2008-09-18 Citrix Systems, Inc. Systems and methods for providing quality of service precedence in tcp congestion control
CN101115002A (zh) * 2007-03-19 2008-01-30 重庆邮电大学 利用TCP Veno提高无线自组织网络性能的方法
CN102421142B (zh) * 2011-12-01 2015-09-09 重庆邮电大学 一种车载通信网中基于跨层设计的tcp拥塞控制方法
CN103548381B (zh) * 2011-12-08 2016-12-28 华为技术有限公司 一种拥塞控制方法及装置
CN104168174A (zh) * 2013-05-16 2014-11-26 阿里巴巴集团控股有限公司 一种传输信息的方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030081546A1 (en) * 2001-10-26 2003-05-01 Luminous Networks Inc. Aggregate fair queuing technique in a communications system using a class based queuing architecture
US20040264377A1 (en) * 2001-11-23 2004-12-30 Kalevi Kilkki Method and system for handling network congestion
CN101917342A (zh) * 2010-08-25 2010-12-15 天津理工大学 一种面向普适服务的自适应网络拥塞控制方法

Non-Patent Citations (1)

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

Also Published As

Publication number Publication date
US20170310593A1 (en) 2017-10-26
CN105847168B (zh) 2020-01-31
KR20170103921A (ko) 2017-09-13
CN105847168A (zh) 2016-08-10
EP3236621A1 (en) 2017-10-25
EP3236621A4 (en) 2018-01-10

Similar Documents

Publication Publication Date Title
WO2016112728A1 (zh) 一种数据传输的方法、网络服务器、用户终端及系统
WO2018121148A1 (zh) 一种通信资源选择方法,手持智能终端及接入设备
EP3720019B1 (en) Internet of things data transmission method, device and system
WO2019184787A1 (zh) 副链路的传输资源选择方法、配置方法、终端和网络设备
WO2015058656A1 (zh) 直播控制方法,及主播设备
CN111277387B (zh) 指示信息的传输方法及通信设备
WO2018036026A1 (zh) 一种数据传输的方法、基站、目标终端、系统及存储介质
WO2015058613A1 (zh) 一种检测数据包的方法、装置及存储介质
CN108574735B (zh) 数据处理方法、终端及计算机可读存储介质
WO2021037148A1 (zh) 数据传输方法及终端
WO2018040988A1 (zh) 多媒体传输方法、接入网设备及终端
CN110784898A (zh) 网络切换方法、移动终端及计算机可读存储介质
KR102495209B1 (ko) 통신 범위 정보의 처리 방법 및 단말
US10237291B2 (en) Session processing method and device, server and storage medium
WO2018049971A1 (zh) 热点网络切换方法及终端
WO2017096909A1 (zh) 建立数据连接的方法及装置
WO2018049970A1 (zh) 热点网络切换方法及终端
WO2018049969A1 (zh) 热点建立方法及相关设备
CN104133728A (zh) 一种进程间通讯的方法、及装置
US10973039B2 (en) Method for data transmission and terminal
WO2018219092A1 (zh) 处理封包的方法和终端设备
WO2018049968A1 (zh) 热点建立方法及终端
JP7250124B2 (ja) データ処理方法及び機器
WO2019154183A1 (zh) 注册网络的方法和移动终端
CN110167146B (zh) 一种sdu的处理方法和通信设备

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: 15877641

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2015877641

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 20177022309

Country of ref document: KR

Kind code of ref document: A