千鋒教育JavaScript全套視頻教程(10天學(xué)會(huì)Js,前端javascrip

?第一次握手:
????建立連接時(shí),客戶端發(fā)送 syn 報(bào)文(包)(同步序列號(hào))到服務(wù)器,
????并進(jìn)入SYN_SEND狀態(tài),等待服務(wù)器確認(rèn);
??第二次握手:
????服務(wù)器收到 syn 報(bào)文,必須確認(rèn)客戶端的 syn 報(bào)文,
????同時(shí)自己也發(fā)送一個(gè) SYN 報(bào)文,即 SYN+ACK(確認(rèn)序列),
????此時(shí)服務(wù)器進(jìn)入 SYN_RECV(等待) 狀態(tài);
??第三次握手:
????客戶端收到服務(wù)器的 SYN+ACK 報(bào)文,向服務(wù)器發(fā)送確認(rèn)報(bào)文 ACK,
????此包發(fā)送完畢,客戶端和服務(wù)器進(jìn)入 ESTABLISHED(確定) 狀態(tài),完成三次握手。
http 四次揮手
??第一次揮手:
????客戶端發(fā)送一個(gè)`FIN`,用來(lái)關(guān)閉客戶端到服務(wù)端的數(shù)據(jù)傳送,
????客戶端進(jìn)入`FIN_WAIT_1`(等待)狀態(tài)。
??第二次揮手:
????服務(wù)端收到`FIN`后,返回一個(gè)`ACK(acknowledgment)`(確認(rèn)號(hào))給客戶端,
????服務(wù)端進(jìn)入`CLOSE_WAIT`(等待關(guān)閉)狀態(tài)。
??第三次揮手:
????服務(wù)端發(fā)送一個(gè)`FIN`,用來(lái)關(guān)閉服務(wù)端到客戶端的數(shù)據(jù)傳送,
????服務(wù)端進(jìn)入`LAST_ACK`狀態(tài)。
??第四次揮手:
????客戶端收到`FIN`后,客戶端進(jìn)入`TIME_WAIT`狀態(tài),
????接著發(fā)送一個(gè)`ACK`給服務(wù)端,服務(wù)端進(jìn)入`CLOSED`(關(guān)閉)狀態(tài),完成四次揮手