TCP協議11種狀態集!

TCP協議的11種狀態集

### tcp協議11種狀態集轉換“三次握手5種狀態,四次揮手6種狀態”
服務端:closed—listen—syn_rcvd—established—close_wait—last_ack—close
客戶端:closed—syn_send—established—fin_wait1—fin_wait2—time_wait—close
1. tcp三次握手狀態集轉換:
服務端:
(1)closed—listen(開啓相應服務),只有在listen狀態服務端纔可能建立請求
(注意:closed—listen狀態,實際是建立了一個socket 條目信息)
netstat -an | grep -i es 查看socket 條目信息
(2)服務端listen收到客戶端的syn請求並響應syn和ack,從listen—syn_rcvd狀態(第二次握手)

客戶端:
(1)客戶端發送syn信息到服務端,closed—syn_send(第一次握手)
(2)客戶端在syn_send狀態收到syn和ack字段,並回復ack確認(第三次握手)

如圖:
TCP協議11種狀態集!

2. tcp四次揮手狀態集轉換:
客戶端:
(1)客戶端在established狀態發送fin字段給服務端,established—fin_wait1(四次揮手第一次)
(2)客戶端在fin_wait1接受來自服務端的ack信息
(3)客戶端在fin_wait2狀態接收服務端fin,相應ack,fin_wait2—time_wait狀態
(4)客戶端在time_wait等待90秒後,最終迴歸close狀態

服務端:
(1)服務端在established狀態收到來自客戶端的fin字段,established—close_wait,
(2)服務端在close_wait發送ack確認字段(四次揮手第二次揮手)
(3)服務端在close_wait發送fin斷開字段給客戶端,close_wait—last_ack(四次揮手第三次)
(4)服務端在last_ack狀態收到客戶端ack信息,最終迴歸close原始狀態

如此,三次握手和四次揮手的狀態集就形成啦!最後給大家安利張圖!
TCP協議11種狀態集!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章