【http與tcp/ip】
我們知道網路由下往上分為7層:物理層、資料鏈路層、網路層、傳輸層、會話層、表示層和應用層。
tpc/ip協議是傳輸層協議,主要解決資料如何在網路中傳輸。
http是應用層協議,主要解決如何包裝資料。
所以說http是基於tpc/ip的,與http類似也是基於tpc/ip的還有ftp啊這類的應用層協議。
【tcp/ip三次握手建立連線】
如上圖,客戶端首先發起第一次握手,向服務端示好(我要傳一些資料給你);
服務端聽到後如果表示可以接受資料,則向客戶端發起第二次握手(這次握手表示,我能接受你的資料哦,同時由於tcp/ip是全雙工的【全開工指可以同時進行訊號的雙向傳輸】,服務端的這次握手也是在詢問,你能接受我返回給你的資料嗎?);
接著客戶端發起第三次握手(告訴服務端,是的,我也能接受你返回給我的資料,ok,這下兩個人都放心了,連線建立成功)。
【tcp/ip四次揮手釋放連線】
tcp/ip是全雙工的,每個方向都必須單獨進行關閉。有一方完成它的資料傳送任務後就能傳送乙個fin來終止這個方向的連線。
比如客戶端給服務端傳送乙個fin,告訴服務端,我再也沒有資料要傳給你啦,這是第一次揮手;
服務端收到後返回乙個ack告訴客戶端,好的,知道啦,這是第二次揮手。客戶端收到確認後就可以關閉往服務端那邊的資料傳輸通道了,這個時候服務端仍然可以往客戶端繼續傳送資料。
待服務端也再沒有資料要往客戶端傳送時,就也發乙個fin到客戶端,告訴它,我也沒啥要傳給你了,這是第三次揮手。
客戶端得知後在返回乙個ack告訴服務端,好的,收完了,服務端也就可以安心關閉往客戶端的資料傳輸通道了,這是第四次揮手。自此雙向的傳輸通道都已關閉,連線成功釋放。
http三次握手 HTTP三次握手,四次揮手。
三次握手 首先解析伺服器dns,找到ip,然後開始建立連線 1.第一次握手 建立連線,客戶端a傳送syn 1 隨機產生seq client isn的資料報到伺服器b,等待伺服器確認。2.第二次握手 伺服器b收到請求後確認聯機 可以接受資料 發起第二次握手請求,ack a的seq 1 syn 1,隨機...
http三次握手,四次揮手
本文經過借鑑書籍資料 他人部落格總結出的知識點,歡迎提問 序列號seq 佔4個位元組,用來標記資料段的順序,tcp把連線中傳送的所有資料位元組都編上乙個序號,第乙個位元組的編號由本地隨機產生 給位元組編上序號後,就給每乙個報文段指派乙個序號 序列號seq就是這個報文段中的第乙個位元組的資料編號。確認...
HTTP三次握手四次揮手
一 瀏覽器渲染流程 tcp 建立連線 tcp三次握手 傳送http請求 伺服器處理並響應報文 瀏覽器解析並渲染頁面 斷開連線 tcp 結束連線 二 http之tcp三次握手與四次揮手詳解 三次握手 three way handshake 是指建立乙個 tcp 連線時,需要客戶端和伺服器總共傳送3個包...