三次握手
@startuml
客戶端 --> 服務(wù)器: SYN = 1, seq = x
服務(wù)器 -> 客戶端: SYN = 1, ACK = 1, seq = y, ack = x+1
客戶端 --> 服務(wù)器: ACK = 1, seq = x+1, ack = y+1
@enduml
SYN = 1 表示連接請(qǐng)求睁宰、或者連接接收?qǐng)?bào)文
ACK = 1 時(shí)达传,確認(rèn)號(hào)ack才有效
三次握手
四次揮手
@startuml
客戶端 --> 服務(wù)器: FIN = 1, seq = u
服務(wù)器 -> 客戶端: ACK = 1, seq = v, ack = u+1
服務(wù)器 -> 客戶端: FIN = 1, ACK = 1, seq = w, ack = u+1
客戶端 --> 服務(wù)器: ACK = 1, seq = u+1, ack = w+1
@enduml
服務(wù)器發(fā)送ACK后谣辞,沒有發(fā)送FIN之前,連接處于半關(guān)閉狀態(tài)狈茉,此時(shí):客戶端不會(huì)向服務(wù)器發(fā)送數(shù)據(jù),但是服務(wù)器仍可繼續(xù)向客戶端發(fā)送數(shù)據(jù)
四次揮手.png