輸入網頁到網頁顯示
HTTP
首先瀏覽器做的第一步工作就是要對 URL 進行解析,從而生成發送給 Web 服務器的請求頭,行,體。
DNS工作流程:
1.客戶端發出DNS請求給本地DNS服務器,詢問IP
2.本地域名解析服務器在緩存表中未能找到,本地DNS詢問根DNS
3.根DNS返回頂級域名服務器地址(如.com)
4.本地DNS請求頂級域名服務器,頂級DNS返回負責URL區域的權威DNS服務器地址
5.本地DNS請求權威DNS,權威DNS返回IP地址
6.本地DNS請求該IP,與目標建立連接。
協議棧
傳輸工作交給操作系統中的協議棧。
3.1TCP
SYN 是發起一個連接(請求同步)
ACK 回復
RST 重新連接
FIN 結束連接
窗口大?。河糜诹髁靠刂?,聲明緩存大小
擁塞控制:控制自己發送的速度
TCP三次握手:客戶端 服務器
---->SYN
ACK+SYN<----
----->ACK
SYN seq=x y
ACK ack=x+1 y+1
保證雙方都有發送和接收的能力
netstat -napt #查看TCP連接狀態
TCP分割數據
MTU: Maximum Transmission Unit 一個網絡包的最大長度 (IP頭+TCP頭+數據)
MSS: Maximum Segment Size 除去IP和TCP頭部后的最大長度(數據)
數據以MSS的長度為單位分割,分割后加上TCP頭信息再交給IP模塊
生成TCP報文
3.2 遠程定位 IP
TCP在執行連接、收發、斷開等操作時,都需要委托IP模塊將數據封裝成網絡包
由DNS解析得到的IP放入目標IP
查詢路由表,確定源地址IP(從哪個網卡出發)
若路由表中找不到目標IP,則從0.0.0.0默認網關出發
兩點傳輸MAC
在發包時,先查ARP緩存,若沒有對方MAC地址,發送ARP查詢
以太網使用的頭部(接收方MAC地址 + 發送方MAC + 協議類型)
用于兩點間傳輸。
0800:IP協議
0806:ARP協議
發送方MAC地址:MAC地址在網卡的ROM中獲得
接收方MAC地址:先查路由表,獲得IP地址,再用ARP找到路由器MAC地址
網卡
數字信號轉換為電信號
網卡驅動從IP模塊獲得包后,將其復制到網卡內的緩沖區,加上報頭和起始幀分節符,末尾加上幀校驗序列。
交換機
將電信號轉換為數字信號
FCS校驗,成功后放到緩沖區 (交換機本身無MAC地址)
交換機根據 MAC 地址表查找 MAC 地址,然后將信號發送到相應的端口**。
路由器
路由器的端口具有 MAC 地址,因此它就能夠成為以太網的發送方和接收方;同時還具有 IP 地址路由器端口會接收發給自己的以太網包,然后路由表查詢轉發目標,再由相應的端口作為發送方將以太網包發送出去

浙公網安備 33010602011771號