tcp/ip詳解之糊塗窗口綜合症(silly window syndrome)

基於窗口的tcp流量控制會致使一種稱爲糊塗窗口綜合症的現象發生,此時,發送端會發送不滿一個mss的小報文,接收端也會通告一個小窗口,這種現象會下降網絡的利用率。如何避免這種現象發生呢。
算法

首先,對於接收方來講:緩存

不能通告一個比當前窗口大的窗口,除非窗口增長了一個報文段(mss)大小,或者增長了接收方緩存空間的一半。這條規則應用的前提條件是接收方的接收緩存由0變爲非0,或者接收方要回復一個窗口探查報文。也就是說,當接收方緩存變爲非零,能夠接收數據時,或者它要回復窗口探查報文時,要考慮上述規則,不能通告小窗口。網絡

對於發送方來講,如下三點至少有一點知足時才能發送報文:tcp

一、能夠發送一個滿長的報文ide

二、能夠發送接收方曾經通告過的最大窗口的一半的報文it

三、若是鏈接上未開啓Nagle算法或者沒有未被確認的數據時就能夠發送任意大小的必須發送的數據class

相關文章
相關標籤/搜索