日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

为什么TCP是三次握手

發布時間:2024/8/23 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 为什么TCP是三次握手 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

TCP 三次握手

首先簡單介紹一下TCP三次握手?
在TCP/IP協議中,TCP協議提供可靠的連接服務,采用三次握手建立一個連接。?
第一次握手:建立連接時,客戶端發送syn包(syn=j)到服務器,并進入SYN_SEND狀態,等待服務器確認;?
第二次握手:服務器收到syn包,必須確認客戶的SYN(ack=j+1),同時自己也發送一個SYN包(syn=k),即SYN+ACK包,此時服務器 進入SYN_RECV狀態;?
第三次握手:客戶端收到服務器的SYN+ACK包,向服務器發送確認包ACK(ack=k+1),此包發送完畢,客戶端和服務器進入 ESTABLISHED狀態,完成三次握手。?
通過這樣的三次握手,客戶端與服務端建立起可靠的雙工的連接,開始傳送數據。?
三次握手的最主要目的是保證連接是雙工的,可靠更多的是通過重傳機制來保證的。?


TCP 連接是通過三次握手進行初始化的。三次握手的目的是同步連接雙方的序列號和確認號并交換 TCP 窗口大小信息。以下步驟概述了通常情況下客戶端計算機聯系服務器計算機的過程:
1. 客戶端向服務器發送一個SYN置位的TCP報文,其中包含連接的初始序列號x和一個窗口大小(表示客戶端上用來存儲從服務器發送來的傳入段的緩沖區的大小)。
2. 服務器收到客戶端發送過來的SYN報文后,向客戶端發送一個SYN和ACK都置位的TCP報文,其中包含它選擇的初始序列號y、對客戶端的序列號的確認x+1和一個窗口大小(表示服務器上用來存儲從客戶端發送來的傳入段的緩沖區的大小)。
3. .客戶端接收到服務器端返回的SYN+ACK報文后,向服務器端返回一個確認號y+1和序號x+1的ACK報文,一個標準的TCP連接完成。
TCP 使用類似的握手過程來結束連接。這可確保兩個主機均能完成傳輸并確保所有的數據均得以接收
TCP Client
Flags
TCP Server
1 Send SYN (seq=x)
----SYN--->
SYN Received
2 SYN/ACK Received?
<---SYN/ACK----
Send SYN (seq=y), ACK (x+1)?
3 Send ACK (y+1)
----ACK--->
ACK Received,?Connection?Established?
w: ISN (Initial Sequence Number) of?the?Client
x: ISN of the Server

1. TCP的三次握手最主要是防止已過期的連接再次傳到被連接的主機。

如果采用兩次的話,會出現下面這種情況。
比如是A機要連到B機,結果發送的連接信息由于某種原因沒有到達B機;
于是,A機又發了一次,結果這次B收到了,于是就發信息回來,兩機就連接。
傳完東西后,斷開。

結果這時候,原先沒有到達的連接信息突然又傳到了B機,于是B機發信息給A,然后B機就以為和A連上

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的为什么TCP是三次握手的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。