激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

電腦之家 - 專業計算機基礎知識與電腦技術學習網站
分類導航

路由器|交換機|網絡協議|網絡知識|

服務器之家 - 電腦之家 - 網絡技術 - 網絡協議 - TCP為什么需要三次握手?用最通俗的話解釋給你聽

TCP為什么需要三次握手?用最通俗的話解釋給你聽

2021-09-10 00:47IT技術管理那些事兒 網絡協議

TCP實現原理和為什么需要三次握手?兩次握手不可以?四次握手不可以?讀者可以帶著疑問,看一遍本篇博客的詳細講解。

TCP為什么需要三次握手?用最通俗的話解釋給你聽

TCP實現原理和為什么需要三次握手?兩次握手不可以?四次握手不可以?讀者可以帶著疑問,看一遍本篇博客的詳細講解

TCP為什么需要三次握手?用最通俗的話解釋給你聽

ok,首先解釋原因之前還是要先復習一下TCP的基本知識和三次握手協議:

1、什么是TCP協議?

TCP:Transmission Control Protocol翻譯過來就是傳輸控制協議,TCP協議是一個面向連接的、可靠的、基于字節流的傳輸層協議

RFC 793對TCP連接的定義:

Connections:

  • The reliability and flow control mechanisms described above require that TCPs initialize and maintain certain status information for each data stream.
  • The combination of this information, including sockets, sequence numbers, and window sizes, is called a connection.

其大致意思是TCP連接是為了用于保證可靠性和流控制機制的,包括 Socket、序列號及窗口大小。

其中Socket是由IP加端口組成的,序列號是用來解決亂序問題的,而窗口大小則是用來做流量控制的。

2、TCP協議的特性

  • 面向連接:是指TCP是通過服務端和客戶端進行連接的協議
  • 面向字節流:TCP服務端和客戶端之間的數據通訊是通過字節流數據傳輸的
  • 可靠的:是指TCP服務端客戶端之間的數據傳輸是很穩定的,即使網絡很差的情況,TCP都能保證將數據傳輸到接收方。

TCP為什么需要三次握手?用最通俗的話解釋給你聽

ps:TCP傳輸的可靠性得益于TCP會記錄信息的發送狀態,哪些數據收到了,哪些數據沒收到,TCP都是會記錄的,然后哪些丟包的情況,就是發送不成功的情況,TCP會重新發包,所以TCP的可靠性就是這么保證的

3、TCP三次握手執行流程

TCP的三次握手執行過程是面試中的一個很常見的問題,因為這個問題也是計算機的一個很重要的基礎,所以需要認真學習

TCP為什么需要三次握手?用最通俗的話解釋給你聽

關鍵字說明:

  • SYN:Synchronize Sequence Numbers,同步序列編號
  • ACK:Acknowledge Character,確認字符
  • SEQ:Sequence Number,序列號

TCP三次握手執行過程:

  • 首先,服務端和客戶端都是處于CLOSED狀態的,然后服務端啟動,監聽端口,狀態變為LISTEN(監聽)狀態
  • 客戶端為了請求資源,發送連接,發送同步序列號SYN,此時客戶端就變成了SYN-SEND狀態
  • 服務端接收到客戶端請求之后,發送SYN和ACK,然后服務端狀態就變成SYN-RCVD狀態
  • 客戶端接收到信息之后,再次發送ACK,然后變成ESTABLISHED(已確認)狀態,服務端接收到返回信息后,狀態也變成ESTABLISHED(已確認)狀態

4、TCP協議為什么需要三次握手?

ok,知道了TCP的三次握手的基本工作原理之后,就可以解釋為什么TCP需要三次握手?為什么不設計成兩次握手就可以?

原因:避免重復連接

其實在RFC 793 Transmission Control Protocol里就有指出為什么要三次握手的原因

The principle reason for the three-way handshake is to prevent old duplicate connection initiations from causing confusion.

翻譯為中文大致意思是主要原因是為了防止舊的重復連接引起連接混亂問題

比如在網絡環境比較復雜的情況,客戶端可能會連續發送多次請求。如果只設計成兩次握手的情況,服務端只能一直接收請求,然后返回請求信息,也不知道客戶端是否請求成功。這些過期請求的話就會造成網絡連接的混亂。

所以設計成三次握手的情況,客戶端在接收到服務端SEQ+1的返回消息之后,就會知道這個連接是歷史連接,所以會發送報文給服務端,告訴服務端。

所以TCP設計成三次握手的目的就是為了避免重復連接。

然后可以設計成四次握手?五次握手?不可以?

答案是也是可以的,不過為了節省資源,三次握手就可以符合實際情況,所以就沒必要設計成四次握手、五次握手等等情況

TCP為什么需要三次握手?用最通俗的話解釋給你聽

原文地址:https://www.toutiao.com/a7002147111685161509/

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 一二区电影 | 亚洲成人中文字幕在线 | 成人三级电影网址 | 在线视频a| 精品无吗乱吗av国产爱色 | 爱高潮www亚洲精品 欧美黄色一级片视频 | 福利免费在线观看 | 91在线播放国产 | 青青青在线免费 | 久久精品一区二区三 | 国产1区2 | 多男操一女视频 | 国产一级毛片在线看 | 久久新网址 | 日韩精品免费一区二区三区 | 久久久久国产成人免费精品免费 | av懂色 | 在线观看一区二区三区四区 | www.99av| 欧美视屏一区二区 | 国产一级毛片高清视频完整版 | 黄色一级毛片免费看 | www中文在线 | 国产免费最爽的乱淫视频a 午夜精品久久久久久久99热浪潮 | 日本高清一级片 | 亚洲精品无码不卡在线播放he | 亚洲一区二区三区精品在线观看 | 久色精品| 精品久久久久久久久久中文字幕 | 成人精品视频在线 | 成人偷拍片视频在线观看 | 91短视频版高清在线观看www | 黑人一区| 国产高潮国产高潮久久久91 | 欧美福利视频一区二区 | 欧美a在线观看 | 午夜精品福利视频 | 黑人一区二区 | 久久国产精品免费视频 | 欧美视频一二区 | 久草在线手机视频 |