一、TCP四次揮手的例子
男生女生建立戀愛關系,一段時間后,他們要分手了。
1.男生:請求分手:我想跟你分手了,可以么?
2.女生收到了消息,發(fā)一個確認消息:我收到了你的消息,我同意跟你分手。
3.女生還要繼續(xù)發(fā)一個消息,請求分手:我也想跟你分手。
4.男生確認消息:我也收到分手消息,就分手。
這樣他們兩個之間就沒有什么關系。這樣一個過程同樣像極了TCP要斷開連接的過程。
二、TCP四次揮手的過程
客戶端和服務端正在進行消息的發(fā)送。直到有一方消息發(fā)送完畢,發(fā)一個FIN包,表示我的報文發(fā)送完畢了。我想釋放連接,主動發(fā)了一個釋放連接的請求。
**客戶端向服務器端主動發(fā)了一個釋放連接的請求:標志位FIN=1;seq=n** (這幾個標志位里面哪個位置會被標志為1呢?要發(fā)一個FIN包,F(xiàn)IN位要被標記為1。每個包都有序號,這個包的序號是seq=n,請求發(fā)給了服務器。)
發(fā)給服務器后,服務器回復一個確認包,確認消息:標志位ACK=1;ack(確認號)=n+1;(n指的是上面收到包的序號。)
**我收到了你這個釋放連接的請求,我也同意。我也要發(fā)一個主動請求釋放連接的報文:標志位FIN=1;seq=m**
客戶端要進行一個確認消息:標志位ACK=1;ack(確認號)=m+1 (ACK位要置1。這個確認號是對要求請求釋放連接的一個確認,所以確認號等于上一個包的序號加一。)
TCP四次揮手的過程就完成了。
三、TCP四次揮手的狀態(tài)
1.剛開始是建立連接的狀態(tài)。發(fā)送報文,直到客戶端發(fā)送完畢了想釋放連接。所以發(fā)了個FIN包過去給服務端。
2.客戶端就進入等待對方給我一個確認的狀態(tài),服務端收到FIN之后給它進行了一個回應。發(fā)送了一個ack的確認包。發(fā)完確認包,就進入已經知道這個連接應該會被斷開的狀態(tài),就是等待連接關閉的一個狀態(tài)。
3.客戶端再次進入等待服務端給我發(fā)FIN包。服務端發(fā)完ack和FIN,也要釋放連接。告訴客戶端之后,就進入最后等待的時間。最后等待客戶端給我發(fā)確認包。
4.客戶端收到了服務器發(fā)的FIN之后,就會發(fā)一個ack包回去,之后自己就進入等待一定的時間之后再去關閉。服務器這邊一旦收到客戶端的確認消息,立馬進入關閉狀態(tài)。
5.客戶端這邊發(fā)完ack之后,等待一定的時間,確認服務器這邊已經收到我的消息并且關閉之后,我再去關閉就可以了。
-
TCP通信
+關注
關注
0文章
146瀏覽量
4237
發(fā)布評論請先 登錄
相關推薦
tcp協(xié)議四次揮手過程及原因
![<b class='flag-5'>tcp</b>協(xié)議<b class='flag-5'>四次</b><b class='flag-5'>揮手</b><b class='flag-5'>過程</b>及原因](https://file1.elecfans.com/web2/M00/C0/98/wKgaomW9_7WAGjCdAANWjw5oeBQ644.png)
這樣講TCP的戀愛和分手大家都懂了
TCP/IP協(xié)議工作過程的三次握手和四次揮手
TCP三次握手過程及四次揮手過程說明
TCP三次握手和四次揮手以及11種狀態(tài)資料下載
![<b class='flag-5'>TCP</b>三<b class='flag-5'>次</b>握手和<b class='flag-5'>四次</b><b class='flag-5'>揮手</b>以及11種<b class='flag-5'>狀態(tài)</b>資料下載](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
TCP建立連接概述及三次握手、四次揮手的流程
![<b class='flag-5'>TCP</b>建立連接概述及三<b class='flag-5'>次</b>握手、<b class='flag-5'>四次</b><b class='flag-5'>揮手</b>的流程](https://file1.elecfans.com/web2/M00/81/E5/wKgaomQcBeiAPD6KAABNo09uQGM427.jpg)
關于TCP協(xié)議總結的硬核干貨
![關于<b class='flag-5'>TCP</b>協(xié)議總結的硬核干貨](https://file1.elecfans.com/web2/M00/AE/C2/wKgaomVWwcyAX1XtAAAreguG0Zo224.png)
TCP四次揮手過程分析
![<b class='flag-5'>TCP</b><b class='flag-5'>四次</b><b class='flag-5'>揮手</b><b class='flag-5'>過程</b>分析](https://file1.elecfans.com/web2/M00/B3/CA/wKgaomV1a9OAVnFZAAASOFJRhqs124.jpg)
評論