TCP 連接的握手時延

《HTTP 權威指南》閱讀隨筆

TCP 連接握手的基本步驟:

  1. 在請求新的 TCP 連接時,客戶端向服務端發送一個小的 IP 分組,這個分組設置一個特殊的 SYN 標記,說明這是一個連接請求。
  2. 如果服務器接受了請求,就會對連接參數進行計算,並向客戶端送回一個 TCP 分組,這個分組中的 SYN 和 ACK 標記都會被置位,說明連接已經被接受。
  3. 最後,客戶端向服務端回送一條確認信息,通知它連接已建立,並在這個確認分組中發送數據。

通常 HTTP 事務不會交換太多數據,此時 SYN 和 ACK 握手會產生一個可測量的時延。TCP 連接的 ACK 分組一般都足夠大,可以承載整個 HTTP 請求報文,而 HTTP 響應報文一般都可以放入一個 IP 分組中去。

結論是:小的 HTTP 事務可能會在 TCP 建立上花費大概 50% 的時間或者更多。因此,需要通過一些手段或者策略,來減小 TCP 建立時延所造成的影響。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章