簡介
最大分段大小( Maximum Segment Size)是傳輸控制協定的一個參數,以位元組數定義一個計算機或通信設備所能接受的分段的最大數據量。 它並不會計算 TCP 或 IP 協定頭的大小。含有 TCP 分段的 IP資料包可以在一個數據包內自我包含,也可以從多個IP分片中重建。無論如何,MSS 限制都對最終重建的分段起效。
默認的 TCP 最大分段大小是 536。當一個主機想要把 MSS 設定到一個非默認的值時,MSS 大小會以一個 TCP 可選項的方式在握手時的SYN包中定義。由於最大分段大小被一個 TCP 參數控制,主機可以在接下來的任意分段中改變它。
每個數據流的方向都可以使用不同的 MSS。
為了避免IP分片,主機應該將最大分段大小定義為最大 IP資料包大小減去 IP 和 TCP 協定頭的大小。於是IPv4主機被要求能夠承擔 536(=576-20-20) 位元組的分段大小,IPv6主機則須能承擔 1220(= 1280- 40 - 20) 位元組的分段。
較低的最大分段大小能夠減少或消除IP分片,然而會造成協定開銷增大。
對於大部分作業系統來說,最大分段大小的值由作業系統指定。
傳輸控制協定
傳輸控制協定(英語: Transmission Control Protocol,縮寫為 TCP)是一種面向連線的、可靠的、基於位元組流的傳輸層通信協定,由IETF的RFC 793定義。在簡化的計算機網路OSI模型中,它完成第四層傳輸層所指定的功能,用戶數據包協定(UDP)是同一層內另一個重要的傳輸協定。
在網際網路協定族(Internet protocol suite)中,TCP層是位於IP層之上,套用層之下的中間層。不同主機的套用層之間經常需要可靠的、像管道一樣的連線,但是IP層不提供這樣的流機制,而是提供不可靠的包交換。
套用層向TCP層傳送用於網間傳輸的、用8位位元組表示的數據流,然後TCP把數據流分割成適當長度的報文段(通常受該計算機連線的網路的數據鏈路層的最大傳輸單元(MTU)的限制)。之後TCP把結果包傳給IP層,由它來通過網路將包傳送給接收端實體的TCP層。TCP為了保證不發生丟包,就給每個包一個序號,同時序號也保證了傳送到接收端實體的包的按序接收。然後接收端實體對已成功收到的包發回一個相應的確認(ACK);如果傳送端實體在合理的往返時延(RTT)內未收到確認,那么對應的數據包就被假設為已丟失將會被進行重傳。TCP用一個校驗和函式來檢驗數據是否有錯誤;在傳送和接收時都要計算校驗和。
參見
•路徑MTU發現