CN104980365A - TCP transmission acceleration method based on continuous packet losing congestion judgment - Google Patents
TCP transmission acceleration method based on continuous packet losing congestion judgment Download PDFInfo
- Publication number
- CN104980365A CN104980365A CN201410127574.5A CN201410127574A CN104980365A CN 104980365 A CN104980365 A CN 104980365A CN 201410127574 A CN201410127574 A CN 201410127574A CN 104980365 A CN104980365 A CN 104980365A
- Authority
- CN
- China
- Prior art keywords
- congested
- tcp
- congestion
- data package
- congestion window
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The invention provides design of a TCP transmission acceleration mechanism based on continuous packet losing congestion judgment. By means of analysis of characteristics of congestion packet losing and channel losing, a conclusion is deduced that congestion packet losing is usually provided with continuity. The number of lost packets is detected by a TCP SACK mechanism, a network congestion degree is determined by the number and a congestion window is correspondingly adjusted. In virtue of test verification under a simulating environment and a real network environment, it is found that the method improves data transmission rate and increases network throughput.
Description
Technical field
The present invention relates to computer network field, particularly the analysis of causes of high packet loss wan environment lower network packet loss, the congested criterion of Transmission Control Protocol and congestion window adjustment algorithm.
Background technology
Transmission Control Protocol is the host-host protocol generally adopted at present, can keep high efficient and reliable transmission under traditional network environment.But TCP, as a kind of pervasive host-host protocol, does not make optimization for the wan networking environment of high packet loss, its efficiency of transmission has greatly improved space.
The congestion control mechanism of conventional TCP is when there is packet loss, is just reduced by half by the congestion window of its transmit leg, thus reduces transmission rate.But that to be packet loss be the hypotheses of this congestion control behavior is congested by bottleneck link and cause.Therefore, can link congestion be avoided by reducing transmission rate, reaching the object of congestion control.But in wide area network data transmitting procedure, often there is wireless link, transoceanic link, even the specific link such as satellite link.These specific link have the feature of the high channel error rate, and can cause a large amount of packet lost by corruptions due to channel error code.In this case, owing to lacking effective packet loss reason differentiating method, conventional TCP also can be judged as congested causing packet lost by corruption, thus unnecessarily reduces transmission rate when network does not occur congested, result in efficiency of transmission low.
Based in the Transmission Control Protocol of packet loss, TCP Reno and TCP Cubic is the Congestion control protocol the most extensively adopted.
TCP Reno adopts slow turn-on and two stages of Congestion Avoidance to increase congestion window.At slow start stage, congestion window exponentially increases.When window rise to be greater than ssthresh time, can enter congestion avoidance phase, now congestion window linearly increases.When receiving 3 repeat ACKs, then think and packet loss detected, immediately retransmission of lost bag and congestion window is reduced by half.
The window Growth Function of TCP Cubic agreement only depends on the time interval value of continuous print twice congestion events, thus window increases the time delay RTT being totally independent of network.And the RTT stand-alone nature of TCP Cubic makes TCP Cubic can keep good RTT fairness between the TCP of many shared bottleneck links connects.Congestion window can be set to 0.8 times (in Linux2.6.38 kernel) of current window by TCP Cubic after packet loss being detected.This window mode that subtracts often causes congestion window too small in the scene of wireless link high packet loss, the problem that efficiency of transmission is low.
In addition, in order to ensure the reliability of transfer of data, TCP provides affirmation mechanism, when sending certain data-bag lost in sequence, TCP then can retransmit from the last subsequent packet unwrapping the beginning confirmed, but this also may retransmit the packet originally received, thus causes the performance of TCP sharply to reduce.In order to improve this situation, develop SACK (SelectiveAcknowledgment, selective acknowledgement) technology, TCP is made only to resend the bag of loss, follow-up all bags need not be sent, and provide corresponding mechanism to make reception can tell transmit leg which loss of data, which data re-transmitting, which data receives in advance.
SACK is produced by TCP recipient usually, if receive the other side SACK to allow option when TCP shakes hands, and local terminal also supports SACK, just can send SACK option notice transmit leg when receiving abnormal.When TCP recipient receives the data block of non-expectation sequence number, if the sequence number of this block is less than the sequence number of expectation, explanation is the bag of network copy or repeating transmission, can abandon; If the data block sequence number received is greater than the sequence number of expectation, there is bag to be dropped or postpone in the middle of illustrating, at this moment can send SACK and notify that Network Packet Loss has appearred in transmit leg.
Because SACK information is provided by the option portion of TCP head, by the restriction of TCP head length, the most multipotency of SACK marks 4 groups and receives discontinuous data block.
Summary of the invention
By the analysis that window under the congestion control state to packet loss reason and correspondence regulates, the window that the invention provides a kind of improvement regulates algorithm to carry out TCP optimization, and then improves the throughput of network.
Conventional TCP, when meeting with packet loss, does not distinguish the reason of packet loss, but directly reduces window and threshold value, huge on throughput impact.In fact, when by the congested Network Packet Loss caused, packet loss often presents successional feature, namely because cache overflow causes continuous print data packet discarding.And because of channel error there is packet loss time, the randomness of packet loss is stronger.Therefore, judge the reason of packet loss from the continuity of packet loss, the erroneous judgement to high packet loss network environment congestion condition can be avoided.
The mentality of designing of this patent utilizes continual data package dropout information to distinguish packet loss reason, judges congested according to packet drop, avoids reduction of speed blindly.Simultaneously when congestion window adjusts, adjust window size according to current congestion state.
Accompanying drawing explanation
Below in conjunction with figure and embodiment the invention will be described in further detail.
Fig. 1 is that buffer queue overflows schematic diagram.
Fig. 2 is SACK affirmation mechanism schematic diagram.
Fig. 3 is the congestion window adjustment flow chart improved.
Fig. 4 is congestion window correlation curve figure before and after improving.
Fig. 5 is the test topology figure under simulated environment.
Embodiment
As shown in Figure 1, through wan communication between end host and server, packet can through the buffer queue of intermediate node (router or switch).When the number of data packets to be sent such as in buffer queue exceedes the capacity of buffer memory, then there will be the problem of overflowing packet loss, also namely network occurs congested.Under normal circumstances, the packet mailing to same destination host can arrive successively, and therefore packet loss in this case can present successional feature.
As shown in Figure 2, in order to add up continual data package dropout number, present invention utilizes SACK (Selective Acknowledgment, selective acknowledgement) machine-processed feedack, making transmit leg know which loss of data.Particularly, when transmit leg receives the confirmation message containing SACK information, read SLE and the SRE information of SACK.Between SLE and SRE, unacknowledged data section just can reflect the byte number lost continuously.
As shown in Figure 3, the maximum packet MSS of message can obtain in TCP message g. slice header, and therefore, can calculate the number losing message segment between every two discontinuous data blocks of receiving, its computing formula is as follows: n
i=(SLE
i-SRE
i-1)/MSS, wherein n
irepresent the loss message number between i-th and the i-th-1 discrete date block received, SLE
irepresent the sequence number of first data byte of i-th discontinuous piece received, SRE
i-1represent the sequence number after the sequence number of last data byte of the i-th-1 discontinuous piece received.Yi Zhi, n
iminimum value be 1, maximum is the size of current congestion window.
In addition, can add up at most 4 groups receive discontinuous data block due to SACK information, at the end of each RTT, transmit leg can get n
imaximum as continual data package dropout number N in current RTT, for weighing the Congestion Level SPCC of current network, also i.e. N=max{n
i, wherein 0 < i≤4.
When N >=2, when also namely occurring losing 2 and above packet continuously, network really occurs congested, by ssthresh for adjusting current congestion window value and being reduced by half by congestion window; Namely at most only as N=1, also lose 1 packet, be now probably channel error and the packet loss that causes, there is higher contingency, in order to avoid reducing transmission rate blindly, therefore can temporarily keep congestion window constant, wait for new feedback information; If not there is packet loss, also would not receive SACK information, therefore not need to do extra adjustment to congestion window.The concrete method of adjustment of congestion window is as follows:
When N >=2, Slow start threshold is updated to: ssthreshold=cwnd.Wherein, cwnd represents congestion window value, and ssthreshold represents Slow start threshold.
As shown in Figure 4, relative to conventional TCP, this algorithm, when there is packet loss, does not blindly fall window, improves the efficiency of transmission of data.Meanwhile, by means of emulation tool, by carrying out the performance test under simulated environment to this algorithm, its topology as shown in Figure 5, finds compared to traditional congestion avoidance algorithm, the data volume of transmission formed objects, the propagation delay time of this algorithm is lower, and bandwidth availability ratio is higher.
Be more than embodiments of the present invention, according to content disclosed by the invention, those of ordinary skill in the art can identical, the replacement scheme of some expecting apparent, all should fall into the scope of protection of the invention.
Claims (5)
1. the TCP based on the congested judgement of continual data package dropout accelerates a transmission method, it is characterized by:
(1) network occurs that congested criterion is that packet loss presents continuity features;
(2) statistical method of continual data package dropout number;
(3) congestion window adjustment algorithm.
2. accelerate transmission method based on the TCP of the congested judgement of continual data package dropout as claimed in claim 1, it is characterized in that: network occurs that congested criterion is that packet loss presents continuity features; The link congestion caused because buffer queue overflows often causes continuity packet loss, and the packet loss occurred because of channel error has contingency, link congestion situation can be judged more exactly accordingly, thus avoid unnecessarily reducing transmission rate when network does not occur congested, cause efficiency of transmission low.
3. accelerate transmission method based on the TCP of the congested judgement of continual data package dropout as claimed in claim 1, it is characterized in that: the statistical method of continual data package dropout number, by means of SACK mechanism, obtain the serial number information of the discrete date block received, because message size MSS is known, calculate continual data package dropout number.
4. accelerate transmission method based on the TCP of the congested judgement of continual data package dropout as claimed in claim 1, it is characterized in that: congestion window adjustment algorithm.When continual data package dropout number is more than or equal to 2, think that link occurs congested, Slow start threshold value is adjusted to current congestion window size, then congestion window is reduced by half; When continual data package dropout number is 1, think that link does not occur congested, keep current congestion window constant.
5. the TCP based on the congested dish of continual data package dropout as described in Claims 1-4 accelerates transmission method, it is characterized in that:
(1), in current RTT, the number losing message is N=max{n
i, wherein 0 < i≤4, n
i=(SLE
i-SRE
i-1)/MSS, n
irepresent the loss message number between i-th and the i-th-1 discrete date block received, SLE
irepresent the sequence number of first data byte of i-th discontinuous piece received, SRE
i-1represent the sequence number after the sequence number of last data byte of the i-th-1 discontinuous piece received.
(2) congestion window adjustment algorithm is:
When N >=2, Slow start threshold is updated to: ssthreshold=cwnd.Wherein, cwnd represents congestion window value, and ssthreshold represents Slow start threshold.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410127574.5A CN104980365A (en) | 2014-04-01 | 2014-04-01 | TCP transmission acceleration method based on continuous packet losing congestion judgment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410127574.5A CN104980365A (en) | 2014-04-01 | 2014-04-01 | TCP transmission acceleration method based on continuous packet losing congestion judgment |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104980365A true CN104980365A (en) | 2015-10-14 |
Family
ID=54276487
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410127574.5A Pending CN104980365A (en) | 2014-04-01 | 2014-04-01 | TCP transmission acceleration method based on continuous packet losing congestion judgment |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104980365A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107426108A (en) * | 2017-10-09 | 2017-12-01 | 武汉斗鱼网络科技有限公司 | TCP jamming control methods, device and service end |
CN108574644A (en) * | 2017-09-15 | 2018-09-25 | 北京金山云网络技术有限公司 | A kind of TCP connection restoration methods, device, electronic equipment and storage medium |
CN110113293A (en) * | 2018-02-01 | 2019-08-09 | 腾讯科技(深圳)有限公司 | TCP data transfer control method and device, storage medium and electronic device |
CN112165355A (en) * | 2020-10-23 | 2021-01-01 | 中国电子科技集团公司第三十研究所 | Satellite network-oriented UDP-based reliable data transmission method |
CN113141314A (en) * | 2021-04-20 | 2021-07-20 | 上海卓易科技股份有限公司 | Congestion control method and equipment |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1487698A (en) * | 2003-09-01 | 2004-04-07 | 中国科学院计算技术研究所 | Adaptive jamming control method suitable of mixed wired/radio network |
CN101686100A (en) * | 2008-09-25 | 2010-03-31 | 华为技术有限公司 | Method for disposing lost packet, method for controlling transmission quality, device and system thereof |
CN101938400A (en) * | 2009-06-30 | 2011-01-05 | 华为技术有限公司 | Network congestion control method and device |
CN103051554A (en) * | 2013-01-05 | 2013-04-17 | 北京航空航天大学 | TCP (transmission control protocol) congestion control method based on throughout change rate and ECN (Explicit Congestion Notification) mechanism |
-
2014
- 2014-04-01 CN CN201410127574.5A patent/CN104980365A/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1487698A (en) * | 2003-09-01 | 2004-04-07 | 中国科学院计算技术研究所 | Adaptive jamming control method suitable of mixed wired/radio network |
CN101686100A (en) * | 2008-09-25 | 2010-03-31 | 华为技术有限公司 | Method for disposing lost packet, method for controlling transmission quality, device and system thereof |
CN101938400A (en) * | 2009-06-30 | 2011-01-05 | 华为技术有限公司 | Network congestion control method and device |
CN103051554A (en) * | 2013-01-05 | 2013-04-17 | 北京航空航天大学 | TCP (transmission control protocol) congestion control method based on throughout change rate and ECN (Explicit Congestion Notification) mechanism |
Non-Patent Citations (1)
Title |
---|
朱庆华: "有线-无线网络中基于丢包区分TCP改进研究", 《中南大学硕士学位论文》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108574644A (en) * | 2017-09-15 | 2018-09-25 | 北京金山云网络技术有限公司 | A kind of TCP connection restoration methods, device, electronic equipment and storage medium |
CN108574644B (en) * | 2017-09-15 | 2021-05-14 | 北京金山云网络技术有限公司 | TCP connection recovery method and device, electronic equipment and storage medium |
CN107426108A (en) * | 2017-10-09 | 2017-12-01 | 武汉斗鱼网络科技有限公司 | TCP jamming control methods, device and service end |
CN110113293A (en) * | 2018-02-01 | 2019-08-09 | 腾讯科技(深圳)有限公司 | TCP data transfer control method and device, storage medium and electronic device |
CN110113293B (en) * | 2018-02-01 | 2021-08-13 | 腾讯科技(深圳)有限公司 | TCP data transmission control method and device, storage medium and electronic device |
CN112165355A (en) * | 2020-10-23 | 2021-01-01 | 中国电子科技集团公司第三十研究所 | Satellite network-oriented UDP-based reliable data transmission method |
CN112165355B (en) * | 2020-10-23 | 2022-03-22 | 中国电子科技集团公司第三十研究所 | Satellite network-oriented UDP-based reliable data transmission method |
CN113141314A (en) * | 2021-04-20 | 2021-07-20 | 上海卓易科技股份有限公司 | Congestion control method and equipment |
CN113141314B (en) * | 2021-04-20 | 2023-04-14 | 上海卓易科技股份有限公司 | Congestion control method and equipment |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10263904B2 (en) | Kind of self-adaptive network congestion control method based on SCPS-TP | |
EP1940089B1 (en) | Data transmission method and device using controlled transmission profile | |
Brakmo et al. | TCP Vegas: End to end congestion avoidance on a global Internet | |
US8462624B2 (en) | Congestion management over lossy network connections | |
CN102006230B (en) | Method for controlling congestion control by fusing three kinds of information in wired/wireless hybrid network | |
CN100382478C (en) | Method for transmitting data in mobile ad hoc network and network apparatus using the same | |
EP1303970B1 (en) | Tcp flow control | |
CN102413503B (en) | Method for adaptively determining packet delayed sending for Semi-TCP (transmission control protocol) | |
CN102468941A (en) | Network packet loss processing method and device | |
CN102594434B (en) | Method for improving satellite network-oriented transmission control mechanism | |
US20110090795A1 (en) | Differentiation among occurrences of packet reordering, congestive packet loss, or random packet loss in communication networks | |
CN104980365A (en) | TCP transmission acceleration method based on continuous packet losing congestion judgment | |
CN107800638B (en) | Congestion control method and device | |
CN107634823B (en) | Data transmission method of transmission control protocol based on network coding | |
CN102790913A (en) | Audio/video transmission method on basis of 3G network | |
GB2437349A (en) | Optimised packet data transmission protocol in a communication system employing a transmission window | |
CN104796235B (en) | Satellite communication adaptive congestion control method based on packet loss | |
CN101969432A (en) | Random backoff based control method of TCP (Transmission Control Protocol) congestion window | |
Abdullah | Enhancing the TCP Newreno Fast RecoveryAlgorithm on 5G Networks | |
CN113541885B (en) | Transmission performance protection method and system | |
CN104821843A (en) | Satellite communication segmental congestion control method based on packet loss ratio | |
Moltchanov et al. | Modeling TCP SACK performance over wireless channels with semi-reliable ARQ/FEC | |
KR20030034556A (en) | Indirect acknowledgement method in snoop protocol in accordance with the status of a wireless link and packet transmission apparatus in an integrated network using the same method | |
Heuschkel et al. | Udp++: Cross-layer optimizable transport protocol for managed wireless networks | |
Yang et al. | Research on TCP transmission performance optimization based on satellite communication conditions |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20151014 |
|
WD01 | Invention patent application deemed withdrawn after publication |