tcp/ip 建立過程
1. tcp /ip : 在osi網絡參考模型中,它提供著可靠的傳輸服務/
定義:傳輸控制協議
a: tcp/ip 的建立過程,通過三次握手,和四次揮手來完成。
2. 何為三次握手?
首先在這假設,syn="m" ,syn 就是客戶端在向務端發送鏈接請求,服務端會收到這個syn的鏈接請求
包,客戶端的狀態為:syn_sent
第一次握手:當客戶端給服務器發送syn(m)鏈接請求,等待服務器的確認,然後客戶端的狀態為
syn_sent
第二次握手:當服務端收到syn(m)的包的鏈接請求時,服務端需要發送一個確認包 ack (m+1) ,意思就
是我收到了,m+1 表示確認,同樣它也發送syn包 ,假設在第二次,syn=n,然後服務器的狀態為,
syn_recv,也就是說服務器這次發送了兩個包 syn 和ack
第三次握手:當客戶端收到了服務端發送的syn 和ack包後,它就向服務端發送一個確認包 ack
(n+1),這裏的n+1表示確認,然後客戶端和服務端的狀態為establish,即 tcp 建立完成
3.四次揮手:
首相四次揮手結束用這個詞描述:fin = finsh (完成的意思)
第一次揮手:客戶端給服務器發送fin的斷開連接請求,
第二次揮手:服務端收到了客戶端發送的fin請求包,服務端並不會立刻給客戶端發送fin的包,這時候
可能服務器還在傳輸數據,不能斷開,所以先發送了ack確認包,意思說,我收到了你的FIN包,但是我
還有數據沒有發送完成,請稍等一下
第三次揮手:當服務端把數據傳輸完成後,然後給客戶端發送一個fin的包,意思是,我把數據都傳送完
成了,現在我們可以斷開連接了
第四次揮手:當客戶端收到服務器發送的FIN包後,它會向服務端發送一個ack,意思就是可以斷開連接
了,然後經過兩個msl時長後斷開鏈接
如下圖:
tcp/ip 建立過程