CN111404823A - Method and system for tcp dynamic selection of congestion algorithm - Google Patents
Method and system for tcp dynamic selection of congestion algorithm Download PDFInfo
- Publication number
- CN111404823A CN111404823A CN202010148481.6A CN202010148481A CN111404823A CN 111404823 A CN111404823 A CN 111404823A CN 202010148481 A CN202010148481 A CN 202010148481A CN 111404823 A CN111404823 A CN 111404823A
- Authority
- CN
- China
- Prior art keywords
- tcp
- transmission quality
- tcp message
- message
- congestion
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
Abstract
The invention discloses a method and a system for tcp to dynamically select a congestion algorithm, wherein the method comprises the following steps: the transmission quality calculation module calculates the transmission quality requirement of a tcp message receiving party on the tcp message; according to the transmission quality requirement, the transmission quality calculation module controls the congestion algorithm selection module to select the corresponding congestion algorithm to transmit the tcp message; a tcp message sender sends a tcp message, a congestion algorithm selection module selects a congestion algorithm to calculate the tcp message and then sends the tcp message to a transmission quality calculation module, and the transmission quality calculation module selects a corresponding tcp link according to the transmission quality requirement; the transmission quality calculation module controls the congestion algorithm selection module to execute a plurality of congestion algorithms simultaneously, and controls any congestion algorithm to be connected with a plurality of tcp links simultaneously and sends tcp messages with various transmission quality requirements to a tcp message receiver. The invention enables a plurality of congestion algorithms to operate and process the tcp message at the same time, thereby greatly improving the transmission efficiency of the tcp message.
Description
Technical Field
The invention relates to the technical field of tcp network congestion, in particular to a method and a system for tcp dynamic selection of a congestion algorithm.
Background
In recent years, the explosive growth of the internet has enabled various network applications to appear in large quantities, the data volume on the network is increasing, and the load of the network is increasing, thereby causing congestion to occur. TCP is currently the most widely used transport protocol in the Internet, and the congestion control algorithm used in TCP is an important factor for ensuring Internet stability. TCP operates over an end-to-end virtual connection and provides reliable datagram delivery in unreliable networks based primarily on congestion control.
The congestion algorithm is an algorithm used by a tcp protocol for adjusting data transmission or data reception, different congestion algorithms have advantages and disadvantages, some algorithms aim at low-delay high-packet loss, some algorithms aim at high-delay low-packet loss, and at present, no congestion algorithm can perfectly solve various complex network scenes, so that various congestion algorithms are derived and selected by a system administrator according to self conditions.
At present, for example, a linux operating system is used, only one congestion algorithm can be selected in the operating system at the same time, that is, only one congestion algorithm can be used for all tcp connections in the system. The server is used as one end for providing service, and the network environments facing the user are different, so that the transmission rate is high although some tcp connections have packet loss; some tcp connections have no packet loss, but have a large delay, and if only one congestion algorithm can be used in the same time, the requirements of all scenes cannot be met.
Disclosure of Invention
The technical problem to be solved by the invention is to provide a method and a system for tcp to dynamically select a congestion algorithm, wherein a proper congestion algorithm is selected in a targeted manner by analyzing and processing the transmission quality of each tcp connection instead of one congestion algorithm being fixed to operate the transmission of a tcp message, so that a plurality of congestion algorithms can operate and process the tcp message at the same time, and the transmission efficiency of the tcp message is greatly improved.
In order to solve the technical problems, the invention provides the following technical scheme: a method for tcp to dynamically select a congestion algorithm, comprising the steps of:
s1, initiating a tcp message transmission requirement by a tcp message sending direction and a tcp message receiving party;
s2, the transmission quality calculation module calculates the transmission quality requirement of the tcp message receiver for the tcp message; according to the transmission quality requirement, the transmission quality calculation module selects a corresponding congestion algorithm to transmit a tcp message, and feeds back a selection instruction to the congestion algorithm selection module;
s2, the congestion algorithm selection module receives the selection instruction of the transmission quality calculation module and selects the congestion algorithm according to the selection instruction;
s4, the tcp message sender sends a tcp message, the congestion algorithm selection module selects a congestion algorithm to calculate the tcp message and then sends the tcp message to the transmission quality calculation module, and the transmission quality calculation module selects a corresponding tcp link according to the transmission quality requirement and sends the tcp message corresponding to the transmission quality requirement to the tcp message receiver respectively;
the transmission quality calculation module controls the congestion algorithm selection module to execute a plurality of congestion algorithms simultaneously, and controls any congestion algorithm to be connected with a plurality of tcp links simultaneously and sends tcp messages with various transmission quality requirements to a tcp message receiver.
Further, the transmission quality requirement of the tcp packet includes:
low delay and high packet loss requirements of the message;
high delay and low packet loss requirements of the message;
low delay and low packet loss requirements of the message;
and high latency, high packet loss requirements for the message.
The invention also aims to provide a system for dynamically selecting a congestion algorithm by tcp, which comprises a tcp message sender, a congestion algorithm selection module, a transmission quality calculation module and a tcp message receiver which are sequentially connected;
the tcp message sender is used for sending a tcp message to the congestion algorithm selection module;
the congestion algorithm selection module is internally provided with a plurality of congestion algorithms and is used for receiving the tcp message of the tcp message sender and sending the tcp message to the transmission quality calculation module;
the transmission quality calculation module is used for sending the tcp message of the congestion algorithm selection module to a tcp message receiver;
the tcp message receiving party is used for receiving a tcp message;
the transmission quality calculation module is also used for calculating a plurality of transmission quality requirements of the tcp message receiver for the tcp message, selecting a corresponding congestion algorithm for tcp message transmission according to the transmission quality requirements, and feeding back a selection instruction to the congestion algorithm selection module;
the congestion algorithm selection module is further used for receiving a selection instruction of the transmission quality calculation module, selecting a congestion algorithm according to the selection instruction, operating the congestion algorithm, and sending the tcp message to the transmission quality calculation module, and the transmission quality calculation module selects a corresponding tcp link according to the congestion algorithm selected by the congestion algorithm selection module and forwards the tcp message to a tcp message receiver; the transmission quality calculation module is used for controlling the congestion algorithm selection module to simultaneously execute a plurality of congestion algorithms to run, and is also used for controlling one congestion algorithm to simultaneously send tcp messages with various transmission quality requirements to a tcp message receiver.
Further, the transmission quality requirement of the tcp packet includes:
low delay and high packet loss requirements of the message;
high delay and low packet loss requirements of the message;
low delay and low packet loss requirements of the message;
and high latency, high packet loss requirements for the message.
After the technical scheme is adopted, the invention at least has the following beneficial effects: according to the invention, by arranging the transmission quality calculation module, various congestion algorithms can be controlled to calculate the tcp message at the same time, and each congestion algorithm can simultaneously send the tcp message with various transmission quality requirements to the tcp message receiver, so that many-to-many application scenes are realized, and the transmission efficiency of the tcp message is greatly improved.
Drawings
FIG. 1 is a diagram of tcp connections versus a congestion algorithm in the prior art;
FIG. 2 is a system framework diagram of a tcp dynamic selection congestion algorithm in accordance with the present invention;
FIG. 3 is a flowchart of a method for tcp to dynamically select a congestion algorithm according to the present invention.
Detailed Description
It should be noted that, in the present application, the embodiments and features of the embodiments may be combined with each other without conflict, and the present application is further described in detail with reference to the drawings and specific embodiments.
Example 1
At present, in the conventional technology for tcp packet transmission, a relationship between tcp connection and a congestion algorithm is shown in fig. 1, and it can be seen that when a sender sends a tcp packet, only one congestion algorithm can be selected from multiple selectable congestion algorithms built in a system to execute at the same time, and the selected congestion algorithms sequentially execute transmission operations for tcp packet transmission quality requirements of a receiver one by one. Thus, the current approach is a 1-to-many relationship, with only one congestion algorithm regardless of how many tcp connections are connected and regardless of the connection's specific transmission quality.
In order to select a proper congestion algorithm according to each tcp connection, a transmission quality calculation module is added to identify the transmission quality of the current tcp connection, and then a proper congestion algorithm is selected to correspond to the connection, so that a many-to-many target is realized.
As shown in fig. 2, the present invention provides a tcp dynamic congestion algorithm selection system, which includes a tcp message sender, a congestion algorithm selection module, a transmission quality calculation module, and a tcp message receiver, which are connected in sequence;
the tcp message sender is used for sending a tcp message to the congestion algorithm selection module;
the congestion algorithm selection module is internally provided with a plurality of congestion algorithms and is used for receiving the tcp message of the tcp message sender and sending the tcp message to the transmission quality calculation module; for example, the built-in congestion algorithms include a congestion algorithm a, a congestion algorithm B, and a congestion algorithm C;
the transmission quality calculation module is used for sending the tcp message of the congestion algorithm selection module to a tcp message receiver; in fig. 2, several transmission quality calculation modules are shown, and all of them are the same transmission quality calculation module, and in this embodiment, several transmission quality calculation modules are drawn in order to better embody the many-to-many object;
the tcp message receiving party is used for receiving a tcp message;
the transmission quality calculation module is also used for calculating a plurality of transmission quality requirements of the tcp message receiver for the tcp message, selecting a corresponding congestion algorithm for tcp message transmission according to the transmission quality requirements, and feeding back a selection instruction to the congestion algorithm selection module;
the transmission quality requirements include: low delay and high packet loss requirements of the message; high delay and low packet loss requirements of the message; low delay and low packet loss requirements of the message; and the requirements of high delay and high packet loss of the message;
the congestion algorithm selection module is further used for receiving a selection instruction of the transmission quality calculation module, selecting a congestion algorithm according to the selection instruction, operating the congestion algorithm, and sending the tcp message to the transmission quality calculation module, and the transmission quality calculation module selects a corresponding tcp link according to the congestion algorithm selected by the congestion algorithm selection module and forwards the tcp message to a tcp message receiver; the transmission quality calculation module is used for controlling the congestion algorithm selection module to simultaneously execute a plurality of congestion algorithms to run, and is also used for controlling one congestion algorithm to simultaneously send tcp messages with various transmission quality requirements to a tcp message receiver.
For example, if the congestion algorithm a can handle the packet loss problem well, we select the congestion algorithm a for tcp connection 02 (high latency, low packet loss requirement of the packet) and tcp connection 04 (high latency, high packet loss requirement of the packet); if the congestion algorithm B can optimize the low-delay connection transmission rate, selecting the congestion algorithm B from tcp connection 01 (the low-delay and high-packet-loss requirements of the message) and tcp connection 03 (the low-delay and low-packet-loss requirements of the message); in this process, congestion algorithm a and congestion algorithm B are executed at the same time.
Example 2
The present embodiment provides a method for tcp to dynamically select a congestion algorithm based on embodiment 1, as shown in fig. 3, including the following steps:
s1, initiating a tcp message transmission requirement by a tcp message sending direction and a tcp message receiving party;
s2, the transmission quality calculation module calculates the transmission quality requirement of the tcp message receiver for the tcp message; according to the transmission quality requirement, the transmission quality calculation module selects a corresponding congestion algorithm to transmit a tcp message, and feeds back a selection instruction to the congestion algorithm selection module;
the transmission quality requirements include: low delay and high packet loss requirements of the message; high delay and low packet loss requirements of the message; low delay and low packet loss requirements of the message; and the requirements of high delay and high packet loss of the message;
s2, the congestion algorithm selection module receives the selection instruction of the transmission quality calculation module and selects the congestion algorithm according to the selection instruction;
s4, the tcp message sender sends a tcp message, the congestion algorithm selection module selects a congestion algorithm to calculate the tcp message and then sends the tcp message to the transmission quality calculation module, and the transmission quality calculation module selects a corresponding tcp link according to the transmission quality requirement and sends the tcp message corresponding to the transmission quality requirement to the tcp message receiver respectively;
the transmission quality calculation module controls the congestion algorithm selection module to execute a plurality of congestion algorithms simultaneously, and controls any congestion algorithm to be connected with a plurality of tcp links simultaneously and sends tcp messages with various transmission quality requirements to a tcp message receiver.
Although embodiments of the present invention have been shown and described, it will be appreciated by those skilled in the art that various equivalent changes, modifications, substitutions and alterations can be made herein without departing from the principles and spirit of the invention, the scope of which is defined by the appended claims and their equivalents.
Claims (4)
1. A method for tcp to dynamically select a congestion algorithm is characterized by comprising the following steps:
s1, initiating a tcp message transmission requirement by a tcp message sending direction and a tcp message receiving party;
s2, the transmission quality calculation module calculates the transmission quality requirement of the tcp message receiver for the tcp message; according to the transmission quality requirement, the transmission quality calculation module selects a corresponding congestion algorithm to transmit a tcp message, and feeds back a selection instruction to the congestion algorithm selection module;
s2, the congestion algorithm selection module receives the selection instruction of the transmission quality calculation module and selects the congestion algorithm according to the selection instruction;
s4, the tcp message sender sends a tcp message, the congestion algorithm selection module selects a congestion algorithm to calculate the tcp message and then sends the tcp message to the transmission quality calculation module, and the transmission quality calculation module selects a corresponding tcp link according to the transmission quality requirement and sends the tcp message corresponding to the transmission quality requirement to the tcp message receiver respectively;
the transmission quality calculation module controls the congestion algorithm selection module to execute a plurality of congestion algorithms simultaneously, and controls any congestion algorithm to be connected with a plurality of tcp links simultaneously and sends tcp messages with various transmission quality requirements to a tcp message receiver.
2. The method for tcp dynamic selection of congestion algorithm according to claim 1, wherein the transmission quality requirement of the tcp packet comprises:
low delay and high packet loss requirements of the message;
high delay and low packet loss requirements of the message;
low delay and low packet loss requirements of the message;
and high latency, high packet loss requirements for the message.
3. The tcp dynamic congestion algorithm selection system according to claim 1, comprising a tcp message sender, a congestion algorithm selection module, a transmission quality calculation module and a tcp message receiver, which are connected in sequence;
the tcp message sender is used for sending a tcp message to the congestion algorithm selection module;
the congestion algorithm selection module is internally provided with a plurality of congestion algorithms and is used for receiving the tcp message of the tcp message sender and sending the tcp message to the transmission quality calculation module;
the transmission quality calculation module is used for sending the tcp message of the congestion algorithm selection module to a tcp message receiver;
the tcp message receiving party is used for receiving a tcp message;
the transmission quality calculation module is also used for calculating a plurality of transmission quality requirements of the tcp message receiver for the tcp message, selecting a corresponding congestion algorithm for tcp message transmission according to the transmission quality requirements, and feeding back a selection instruction to the congestion algorithm selection module;
the congestion algorithm selection module is further used for receiving a selection instruction of the transmission quality calculation module, selecting a congestion algorithm according to the selection instruction, operating the congestion algorithm, and sending the tcp message to the transmission quality calculation module, and the transmission quality calculation module selects a corresponding tcp link according to the congestion algorithm selected by the congestion algorithm selection module and forwards the tcp message to a tcp message receiver; the transmission quality calculation module is used for controlling the congestion algorithm selection module to simultaneously execute a plurality of congestion algorithms to run, and is also used for controlling one congestion algorithm to simultaneously send tcp messages with various transmission quality requirements to a tcp message receiver.
4. The system according to claim 3, wherein the tcp packet transmission quality requirement comprises:
low delay and high packet loss requirements of the message;
high delay and low packet loss requirements of the message;
low delay and low packet loss requirements of the message;
and high latency, high packet loss requirements for the message.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010148481.6A CN111404823A (en) | 2020-03-05 | 2020-03-05 | Method and system for tcp dynamic selection of congestion algorithm |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010148481.6A CN111404823A (en) | 2020-03-05 | 2020-03-05 | Method and system for tcp dynamic selection of congestion algorithm |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111404823A true CN111404823A (en) | 2020-07-10 |
Family
ID=71413212
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010148481.6A Pending CN111404823A (en) | 2020-03-05 | 2020-03-05 | Method and system for tcp dynamic selection of congestion algorithm |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111404823A (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008112774A2 (en) * | 2007-03-12 | 2008-09-18 | Citrix Systems Inc. | Systems and methods for providing quality of service precedence in tcp congestion control |
CN105681265A (en) * | 2014-11-20 | 2016-06-15 | 华为软件技术有限公司 | Unilateral transmission control protocol acceleration method and device |
CN106302230A (en) * | 2015-06-11 | 2017-01-04 | 华为技术有限公司 | A kind of data transmission method and device |
CN108322401A (en) * | 2017-01-17 | 2018-07-24 | 网宿科技股份有限公司 | The control method and device of network transmission congestion |
CN110381036A (en) * | 2019-06-26 | 2019-10-25 | 东南大学 | A kind of TCP jamming control method for DASH Streaming Media |
-
2020
- 2020-03-05 CN CN202010148481.6A patent/CN111404823A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008112774A2 (en) * | 2007-03-12 | 2008-09-18 | Citrix Systems Inc. | Systems and methods for providing quality of service precedence in tcp congestion control |
CN105681265A (en) * | 2014-11-20 | 2016-06-15 | 华为软件技术有限公司 | Unilateral transmission control protocol acceleration method and device |
CN106302230A (en) * | 2015-06-11 | 2017-01-04 | 华为技术有限公司 | A kind of data transmission method and device |
CN108322401A (en) * | 2017-01-17 | 2018-07-24 | 网宿科技股份有限公司 | The control method and device of network transmission congestion |
CN110381036A (en) * | 2019-06-26 | 2019-10-25 | 东南大学 | A kind of TCP jamming control method for DASH Streaming Media |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10367922B2 (en) | Method and apparatus for sending transmission control protocol TCP data packet and system | |
US8392555B2 (en) | Push-back mechanism for pub/sub brokers | |
US8984158B2 (en) | Data communication system and method | |
CN109327513B (en) | Interaction method, interaction device and computer-readable storage medium | |
US9413797B2 (en) | Data communication system and method | |
US10230648B2 (en) | Method and system for rate adaptation for data traffic | |
CN111917562B (en) | Broadcast message forwarding method, device, equipment and storage medium | |
CN106961426B (en) | Communication method and device of intelligent equipment | |
CN103428240B (en) | Data transmission method and data transmission terminal | |
Yeow et al. | Minimizing delay for multicast-streaming in wireless networks with network coding | |
US20170142492A1 (en) | On demand mobile wireless broadcast video delivery mechanism | |
CN104301287B (en) | Many-to-many session implementation method, network node, server and system | |
US9537764B2 (en) | Communication apparatus, control apparatus, communication system, communication method, method for controlling communication apparatus, and program | |
CN111404823A (en) | Method and system for tcp dynamic selection of congestion algorithm | |
CN106534056B (en) | Communication device and communication method | |
US10686941B2 (en) | Link adjustment method, server, and storage medium | |
WO2019112494A1 (en) | A first node and a second node and methods of operating the same | |
WO2017023302A1 (en) | System and method for delivery of unicast content in hybrid networks | |
CN113396597A (en) | Adaptive bit rate data broadcasting | |
WO2022150956A1 (en) | Block acknowledgment method, apparatus, and storage medium | |
JPH1023017A (en) | Communication system, communication terminal equipment and communication method | |
CN113765784B (en) | Method and device for establishing multilink convergence data packet transmission process | |
CN111416746B (en) | CDN-based data distribution method | |
US9356999B2 (en) | System and method for changing channels for guaranteed reliability communications | |
Song et al. | Research on MPTCP Protocol Based on Erasure Codes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |