JavaWeb_Tcp三次握手和四次揮手

1、TCP傳輸的過程

1.創建鏈接並確認鏈接(三次握手)

JavaWeb_Tcp三次握手和四次揮手
過程:
(1)客戶端向服務端發出鏈接請求SYN,等待服務端響應
(2)服務端作出響應ACK和鏈接信號SYN
(3)爲防止數據丟失,客戶端也要作出響應ACK,確認是否有效服務器

2 .進行數據傳輸,發送數據包

JavaWeb_Tcp三次握手和四次揮手
數據傳輸老是從 客戶端---》服務端,所以客戶端和服務端不是固定的。ide

3.關閉鏈接(四次揮手):

JavaWeb_Tcp三次握手和四次揮手

1.(客戶端:終止等待1)客戶端向服務端發起關閉鏈接的請求,再也不發送數據了,但若是服務器發送數據,客戶端還要接收
2.(服務端:關閉等待)服務端可能還有數據爲傳輸完畢,因此還沒法完成關閉。因此先響應客戶端ACK,,表示收到關閉請求。客戶端向服務器的方向釋放,整個處於半關閉狀態
3.(客戶端:終止等待2)客戶端收到服務器的確認請求後,客戶端進入終止等待2,等待服務端發送鏈接釋放報文
4.(服務端:最後確認)等服務器的數據傳輸工做完成,就把FIN信號(鏈接釋放報文)發送給客戶端,可能還會發送一些數據
5.(客戶端:時間等待)客戶端收到服務器的鏈接釋放報文。發出確認ACK
6.(服務端:CLOSED)服務端收到客戶端的確認,當即進入CLOSED狀態
7.服務器結束TCP鏈接的時間比客戶端早blog

相關文章
相關標籤/搜索