網絡層
- IP協(xié)議:跨越網絡傳送數據包,不具有重發(fā)機制,屬于非可靠性傳輸協(xié)議。
- ICMP:當IP數據包在發(fā)送過程中無法到達對端,需要給發(fā)送端發(fā)送通知。ICMP就是為了這個功能而制定的,也可用為診斷網絡的健康狀況。
- ARP 從分組數據包的IP地址中解析出物理地址的協(xié)議
傳輸層
- TCP:保證兩端通信可達,可處理丟包、傳輸順序錯誤
- UDP:面向無連接的傳輸層協(xié)議,常用于多播、廣播通信、視頻通信等。
應用層(這里指應用層及以上)
- HTTP:瀏覽器與服務端之間通信使用
- HTML:傳輸數據的格式是HTML,是表示層的協(xié)議
- SMTP:即Simple Mail Tranfer Protocol,發(fā)送郵件使用的協(xié)議
- FTP:即File Transfer Protocol,傳輸時會建立兩個TCP連接,一個是發(fā)出傳輸請求時所要用到的控制連接,另一個是與實際傳輸數據時所要用到的數據連接
- TELNET與SSH:遠程登錄
- SNMP:即Simple Neteork Management Protocol,使用它管理主機、網橋、路由等稱為SNMP代理。
數據包
每個分層,都會給所發(fā)送數據附加一個首部,這個首部包含了該層所必要的信息。
幀、數據報、段
- 幀:數據鏈路層中包的單位
- 數據報:網絡層以上的分層中包的單位
- 段:TCP數據流中的信息

數據報
- 傳輸層增加TCP首部,TCP首部包括源端口號、目標端口號、序號(用以區(qū)分發(fā)送的包中哪部分是數據)、校驗和(判斷數據是否損壞)
- 網絡層增加IP首部,IP首部包含接收端IP地址、發(fā)送端IP地址
IP包生成后,參考路由控制表決定接受此IP包的路由或主機
-
數據鏈路層增加以太網首部,以太網首部包含收發(fā)MAC地址、以太網數據協(xié)議
數據流動示意圖
數據接收后的處理
這里我們只講TCP模塊
1.先計算校驗和,判斷數據是否出錯
2.檢查是否按照序號接收數據
3.檢查端口號
4.接收完畢后,接收端發(fā)送一個“確認回執(zhí)”給發(fā)送端,如果發(fā)送端沒有收到這個回執(zhí),就會認為接收端沒有接收到數據,會不停重發(fā)
