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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

为什么TCP是三次握手

發(fā)布時(shí)間:2024/8/23 编程问答 58 豆豆
生活随笔 收集整理的這篇文章主要介紹了 为什么TCP是三次握手 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

TCP 三次握手

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


TCP 連接是通過(guò)三次握手進(jìn)行初始化的。三次握手的目的是同步連接雙方的序列號(hào)和確認(rèn)號(hào)并交換 TCP 窗口大小信息。以下步驟概述了通常情況下客戶端計(jì)算機(jī)聯(lián)系服務(wù)器計(jì)算機(jī)的過(guò)程:
1. 客戶端向服務(wù)器發(fā)送一個(gè)SYN置位的TCP報(bào)文,其中包含連接的初始序列號(hào)x和一個(gè)窗口大小(表示客戶端上用來(lái)存儲(chǔ)從服務(wù)器發(fā)送來(lái)的傳入段的緩沖區(qū)的大小)。
2. 服務(wù)器收到客戶端發(fā)送過(guò)來(lái)的SYN報(bào)文后,向客戶端發(fā)送一個(gè)SYN和ACK都置位的TCP報(bào)文,其中包含它選擇的初始序列號(hào)y、對(duì)客戶端的序列號(hào)的確認(rèn)x+1和一個(gè)窗口大小(表示服務(wù)器上用來(lái)存儲(chǔ)從客戶端發(fā)送來(lái)的傳入段的緩沖區(qū)的大小)。
3. .客戶端接收到服務(wù)器端返回的SYN+ACK報(bào)文后,向服務(wù)器端返回一個(gè)確認(rèn)號(hào)y+1和序號(hào)x+1的ACK報(bào)文,一個(gè)標(biāo)準(zhǔn)的TCP連接完成。
TCP 使用類(lèi)似的握手過(guò)程來(lái)結(jié)束連接。這可確保兩個(gè)主機(jī)均能完成傳輸并確保所有的數(shù)據(jù)均得以接收
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的三次握手最主要是防止已過(guò)期的連接再次傳到被連接的主機(jī)。

如果采用兩次的話,會(huì)出現(xiàn)下面這種情況。
比如是A機(jī)要連到B機(jī),結(jié)果發(fā)送的連接信息由于某種原因沒(méi)有到達(dá)B機(jī);
于是,A機(jī)又發(fā)了一次,結(jié)果這次B收到了,于是就發(fā)信息回來(lái),兩機(jī)就連接。
傳完?yáng)|西后,斷開(kāi)。

結(jié)果這時(shí)候,原先沒(méi)有到達(dá)的連接信息突然又傳到了B機(jī),于是B機(jī)發(fā)信息給A,然后B機(jī)就以為和A連上

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

總結(jié)

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

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。