TCP首部和TCP的特性—Vecloud微云
TCP的特性
TCP提供面向連接的、可靠的字節流服務
上層應用數據被TCP分割為TCP認為合適的報文段
TCP使用超時重傳機制,而接收到一個TCP數據后需要發送一個確認
TCP使用包含了首部和數據的校驗和來檢查數據是否在傳輸過程中發生了差錯
TCP可以將失序的報文重新排序
TCP連接的每一端都有固定大小的緩沖區,只允許另一端發送發送接收緩沖區所能接納的數據
TCP提供面向字節流的服務,不在字節流中插入記錄標識符,也不對字節流的內容作任何解釋(由上層應用解釋)
TCP首部
TCP數據也是封裝在IP數據報中,TCP首部格式如下圖所示:
其中,
序列號:用于對報文進行計數(注SYN和FIN都會消耗一個序列號),TCP為應用層提供全雙工服務,連接的每一端都要保持每個方向上的傳輸序列號;
SYN:用來發起一個連接,當新建一個鏈接時,SYN變為1;
ACK:確認序號有效,其序列號為上次接收的序號加1;
首部長度:首部中32bit的長度(最多60字節),如果沒有任選字段,長度為20字節;
URG:標志緊急指針有效;
PSH:接收方應該盡快將這個報文交給應用層;
RST:重建連接;
FIN:發端完成發送任務;
窗口大小:用于TCP的流量控制,最大65535字節;
檢驗和:覆蓋首部和數據,由發端計算和存儲,接收端驗證;
緊急指針:只有當URG為1時才有效,用于發送緊急數據;
數據部分是可選的,在連接建立和終止時,雙方交換的報文中只有TCP首部。
TCP可以表述為一個沒有選擇確認或否認的滑動窗口協議(滑動窗口協議用于數據傳輸)。
我們說TCP缺少選擇確認是因為TCP首部中的確認序號表示發方已成功收到字節,但還不包含確認序號所指的字節。當前還無法對數據流中選定的部分進行確認。
例如,如果1~1024字節已經成功收到,下一報文段中包含序號從2049~3072的字節,收端并不能確認這個新的報文段。它所能做的就是發回一個確認序號為1025的ACK。它也無法對一個報文段進行否認。
例如,如果收到包含1025~2048字節的報文段,但它的檢驗和錯,TCP接收端所能做的就是發回一個確認序號為1025的ACK。
Vecloud是一家面向企業提供云交換網絡服務為核心業務的技術創新企業,公司有24*7專業運維團隊支撐,可以快速定位客戶使用中遇到的問題,最快解決問題。
總結
以上是生活随笔為你收集整理的TCP首部和TCP的特性—Vecloud微云的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VLAN是什么?VLAN交换机端口类型有
- 下一篇: 怎么制作系统镜像文件 系统镜像文件的制作