client: socket connect send encode recv decode close server: socket bind listen 1.主動轉換成被動 2.向系統申請隊列(5) accept 1.阻塞等待客戶端的鏈接 2.創建一個新的socket(主動) recv sen ...
client: socket
connect
send
encode
recv
decode
close
server: socket
bind
listen
1.主動轉換成被動
2.向系統申請隊列(5)
accept
1.阻塞等待客戶端的鏈接
2.創建一個新的socket(主動)
recv
send
new.close
server.close
. 三次握手: 發生時間: 客戶端和服務端建立鏈接的時候
syn j
connect -》 accept
ack j+1
《-
syn k
connect返回
ack k+1
-》 accept返回
. 四次揮手 發生時間: 客戶端和服務端斷開鏈接的時候
client: server:
fin j
close ->
ack j+1
<-
fin k
<- close
ack k+1
->
斷開鏈接
client: server:
fin j
close -> recv
ack j+1 recv解開阻塞並
<- 返回長度為0的數據
fin k
<- close
ack k+1
->
斷開鏈接