Jump to content

HSTCP: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
No edit summary
copyedit, destub
Line 1: Line 1:
{{one source|date=June 2011}}
{{one source|date=June 2011}}
'''HighSpeed TCP''' ('''HSTCP''') is a new congestion control algorithm protocol defined in RFC 3649 for [[Transport Control Protocol|TCP]]. Standard TCP performs poorly in networks with a large [[Bandwidth-delay_product|bandwidth delay product]]. It is unable to fully utilize available bandwidth. HSTCP makes minor modifications to standard TCP's congestion control mechanism to overcome this limitation.
'''HighSpeed TCP''' ('''HSTCP''') is a [[congestion control algorithm]] protocol defined in RFC 3649 for [[Transport Control Protocol]] (TCP). Standard TCP performs poorly in networks with a large [[bandwidth-delay product]]. It is unable to fully utilize available bandwidth. HSTCP makes minor modifications to standard TCP's congestion control mechanism to overcome this limitation.


==Algorithm==
When an ACK is received (in [[TCP_congestion_avoidance_algorithm|congestion avoidance]]), the window is increased by <math>a(w)/w</math> and when a loss is detected through triple duplicate acknowledgments, the window is decreased by <math>(1-b(w))w</math>, where w is the current window size. When the congestion window is small, HSTCP behaves exactly like standard TCP so a(w) is 1 and b(w) is 0.5. When TCP's congestion window is beyond a certain threshold, a(w) and b(w) become functions of the current window size. In this region, as the congestion window increases, the value of a(w) increases and the value of b(w) decreases. This means that HSTCP's window will grow faster than standard TCP and also recover from losses more quickly. This behavior allows HSTCP to be friendly to standard TCP flows in normal networks and also to quickly utilize available bandwidth in networks with large [[Bandwidth-delay_product|bandwidth delay products]].
When an [[ACK (TCP)|ACK]] is received (in [[TCP congestion avoidance algorithm|congestion avoidance]]), the window is increased by <math>a(w)/w</math> and when a loss is detected through triple duplicate acknowledgments, the window is decreased by <math>(1-b(w))w</math>, where w is the current window size. When the congestion window is small, HSTCP behaves exactly like standard TCP so a(w) is 1 and b(w) is 0.5. When TCP's congestion window is beyond a certain threshold, a(w) and b(w) become functions of the current window size. In this region, as the congestion window increases, the value of a(w) increases and the value of b(w) decreases. This means that HSTCP's window will grow faster than standard TCP and also recover from losses more quickly. This behavior allows HSTCP to be friendly to standard TCP flows in normal networks and also to quickly utilize available bandwidth in networks with large [[bandwidth-delay product|bandwidth delay products]].


HSTCP has the same [[Slow-start|slow start]]/timeout behavior as standard TCP.
HSTCP has the same [[slow start]]/timeout behavior as standard TCP.


Since only the congestion control mechanism is modified, HSTCP can be used with other TCP options like [[Retransmission_(data_networks)#SACK|SACK]]. In real implementations, determining the increase and decrease parameters given a current window size is implemented as a lookup table.
Since only the congestion control mechanism is modified, HSTCP can be used with other TCP options like [[retransmission (data networks)#SACK|SACK]]. In real implementations, determining the increase and decrease parameters given a current window size is implemented as a lookup table.


==See also==
==See also==
* [[TCP congestion avoidance algorithm]]
* [[TCP congestion avoidance algorithm]]
* [[Transmission Control Protocol#Development of TCP]]
* [[Transmission Control Protocol#Development of TCP]]

==References==
{{Reflist}}


==External links==
==External links==
Line 16: Line 20:


[[Category:TCP congestion control]]
[[Category:TCP congestion control]]

{{compu-network-stub}}

Revision as of 22:26, 14 September 2018

HighSpeed TCP (HSTCP) is a congestion control algorithm protocol defined in RFC 3649 for Transport Control Protocol (TCP). Standard TCP performs poorly in networks with a large bandwidth-delay product. It is unable to fully utilize available bandwidth. HSTCP makes minor modifications to standard TCP's congestion control mechanism to overcome this limitation.

Algorithm

When an ACK is received (in congestion avoidance), the window is increased by and when a loss is detected through triple duplicate acknowledgments, the window is decreased by , where w is the current window size. When the congestion window is small, HSTCP behaves exactly like standard TCP so a(w) is 1 and b(w) is 0.5. When TCP's congestion window is beyond a certain threshold, a(w) and b(w) become functions of the current window size. In this region, as the congestion window increases, the value of a(w) increases and the value of b(w) decreases. This means that HSTCP's window will grow faster than standard TCP and also recover from losses more quickly. This behavior allows HSTCP to be friendly to standard TCP flows in normal networks and also to quickly utilize available bandwidth in networks with large bandwidth delay products.

HSTCP has the same slow start/timeout behavior as standard TCP.

Since only the congestion control mechanism is modified, HSTCP can be used with other TCP options like SACK. In real implementations, determining the increase and decrease parameters given a current window size is implemented as a lookup table.

See also

References