TCP/IP——TCP協議中提高網路利用率的機制
TCP協議中提高網路利用率的機制主要有:Nagle演算法,延遲確認應答,捎帶應答。
- Nagle演算法
TCP中為了提高網路利用率,經常使用一個叫Nagle的演算法。
該演算法是指傳送端即使還有應該傳送的資料,但如果這部分資料很少的話,則進行延遲傳送的一種處理機制。
具體來講就是,只有在滿足下面兩個條件其中一個的時候,才可以傳送資料。否則,暫停等待一段時間之後再傳送。
1、已經傳送的資料都已經收到確認應答。
2、可以傳送最大段長度(MSS)的資料時。
根據這個演算法雖然網路利用率可以提高,但是可能會發生某種程度的延遲。為此,在視窗系統(X Window System)和機械控制等領域中使用TCP時,往往會關閉對該演算法的啟用。
- 延遲確認應答
接收資料的主機如果每次都立刻回覆確認應答的話,可能會返回一個較小的視窗。那是因為剛接收完資料,緩衝區已滿。
當某個傳送端收到這個小視窗的通知的以後,會以它為上限傳送資料,從而降低了網路的利用率。為此,引入了一個方法,那就是收到資料以後並不立即返回確認應答,而是延遲一段時間的機制。
1、在收到2*MSS大小的資料之前不做確認應答。(根據作業系統的不同,有時候不論資料的大小,只要收到兩個包就立即返回確認應答)
2、其它情況下,最大延遲0.5秒傳送確認應答。(很多作業系統設定為0.2秒左右)
事實上,沒有必要為每一個資料段都進行一次確認應答。TCP採用滑動視窗的控制機制,因此通常確認應答少一些也無妨。TCP檔案傳輸中,絕大多數是每兩個資料段返回一次確認應答。
- 捎帶應答
根據應用層協議,傳送出去的訊息到達對端,對端進行處理以後,會返回一個回執。
例如,電子郵件協議的SMTP或POP、檔案傳輸協議FTP中的連線控制部分等。
在此類通訊中,TCP的確認資料和回執資料可以通過一個包傳送。這種方式叫做捎帶應答。通過這種機制,可以使收發的資料量減少。
此外,接收資料之後,如果立刻返回確認應答,就無法實現捎帶應答。也就是說,如果沒有啟用延遲確認應答就無法實現捎帶應答。延遲確認應答是能夠提高網路利用率從而降低計算機處理負荷的一種較優的處理機制。
正是因為延遲確認和捎帶應答機制,讓TCP斷開連線的時候四次揮手有時候變成三次揮手。
因為,如果在TCP斷開連線的時候,有時候只能夠抓取3個資料包。這三個資料包為客戶端的FIN,伺服器的FIN和ACK,客戶端的ACK。
相關文章
- TCP/IP網路協議TCP協議
- TCP/IP協議 - 網路層TCP協議
- [面試∙網路] TCP/IP(五):TCP 協議詳解面試TCP協議
- [面試∙網路] TCP/IP(二):IP協議面試TCP協議
- 【網路協議】TCP的流量控制機制協議TCP
- 【網路協議】TCP的擁塞控制機制協議TCP
- TCP/IP網路協議基礎TCP協議
- 【網路協議】TCP分段與IP分片協議TCP
- [面試∙網路] TCP/IP(四):TCP 與 UDP 協議簡介面試TCPUDP協議
- 計算機網路之TCP/IP協議簡介計算機網路TCP協議
- tcp/ip協議TCP協議
- TCP/IP 協議及網路分層模型TCP協議模型
- 論TCP協議中的擁塞控制機制與網路穩定性TCP協議
- TCP/IP、UDP/IP協議TCPUDP協議
- Java中的TCP/IP協議和IP地址JavaTCP協議
- TCP/IP協議族TCP協議
- TCP/IP 協議族TCP協議
- 系列TCP/IP協議-TCP協議概述(011)TCP協議
- 網路協議之TCP協議TCP
- 詳談OSI七層網路協議和TCP/IP協議協議TCP
- 使用wireshark分析TCP/IP協議中TCP包頭的格式TCP協議
- 【網路協議】TCP協議簡介協議TCP
- 網路基礎和 TCP、IP 協議TCP協議
- [面試∙網路] TCP/IP(三):IP協議相關技術面試TCP協議
- TCP/IP五層協議TCP協議
- TCP/IP協議詳解TCP協議
- TCP IP之ICMP協議TCP協議
- tcp /ip 協議簡介TCP協議
- 如何理解TCP/IP協議?TCP協議
- TCP/IP協議之網路連結的背後故事TCP協議
- 對 TCP/IP 網路協議的深入淺出總結TCP協議
- 網路協議 - TCP/IP、HTTP、HTTPS、HTTP2.0協議TCPHTTP
- 傳輸控制協議/網際網路協議(TCP / IP)是什麼意思?-VeCloud協議TCPCloud
- 計算機網路學習筆記(10) TCP/IP協議棧 之TELNET協議計算機網路筆記TCP協議
- 網路通訊協議-TCP協議詳解!協議TCP
- TCP/IP協議的SYN攻擊TCP協議
- TI的TCP/IP協議棧--NDK .TCP協議
- 網路系統組成、OSI模型、TCP/IP協議簇模型TCP協議