重傳逾時

重傳逾時是TCP協定保證數據可靠性的另一個重要機制,其原理是在傳送某一個數據以後就開啟一個計時器,在一定時間內如果沒有得到傳送的數據報的ACK報文,那么就重新傳送數據,直到傳送成功為止。

逾時,傳送數據大小,快速重傳和快速恢復算法,

逾時

時間的計算是逾時的核心部分,TCP要求這個算法能大致估計出當前的網路狀況,雖然這確實很困難。要求精確的原因有兩個:(1)定時長久會造成網路利用率不高。(2)定時太短會造成多次重傳,使得網路阻塞。所以,書中給出了一套經驗公式,和其他的保證計時器準確的措施。

傳送數據大小

前面曾經提到過,數據在傳輸的時候不能只使用一個視窗協定,我們還需要有一個擁塞視窗來控制數據的流量,使得數據不會一下子都跑到網路中引起“擁塞”。也曾經提到過,擁塞視窗最初使用指數增長的速度來增加自身的視窗,直到發生逾時重傳,再進行一次微調。但是沒有提到,如何進行微調,擁塞避免算法和慢啟動門限就是為此而生。
所謂的慢啟動門限就是說,當擁塞視窗超過這個門限的時候,就使用擁塞避免算法,而在門限以內就採用慢啟動算法。所以這個標準才叫做門限,通常,擁塞視窗記做cwnd,慢啟動門限記做ssthresh。

快速重傳和快速恢復算法

這是數據丟包的情況下給出的一種修補機制。一般來說,重傳發生在逾時之後,但是如果傳送端接受到3個以上的重複ACK的情況下,就應該意識到,數據丟了,需要重新傳遞。這個機制是不需要等到重傳定時器溢出的,所以叫做快速重傳,而重新傳遞以後,因為走的不是慢啟動而是擁塞避免算法,所以這又叫做快速恢復算法。

相關詞條

熱門詞條

聯絡我們