快速重傳機制
于是惫恼,TCP引入了一種叫Fast Retransmit 的算法,不以時間驅(qū)動澳盐,而以數(shù)據(jù)驅(qū)動重傳祈纯。也就是說,如果叼耙,包沒有連續(xù)到達盆繁,就ack最后那個可能被丟了的包,如果發(fā)送方連續(xù)收到3次相同的ack旬蟋,就重傳。Fast Retransmit的好處是不用等timeout了再重傳革娄。
比如:如果發(fā)送方發(fā)出了1倾贰,2,3拦惋,4匆浙,5份數(shù)據(jù),第一份先到送了厕妖,于是就ack回2首尼,結(jié)果2因為某些原因沒收到,3到達了言秸,于是還是ack回2软能,后面的4和5都到了,但是還是ack回2举畸,因為2還是沒有收到查排,于是發(fā)送端收到了三個ack=2的確認,知道了2還沒有到抄沮,于是就馬上重轉(zhuǎn)2跋核。然后岖瑰,接收端收到了2,此時因為3砂代,4蹋订,5都收到了,于是ack回6刻伊。
https://coolshell.cn/articles/11564.html
https://coolshell.cn/articles/11609.html
Head-of-Line Blocking