在計算機網絡的五層參考模型中,網絡層(Network Layer)扮演著承上啟下、至關重要的角色。它位于數據鏈路層之上,傳輸層之下,是主機到主機通信的關鍵,也是實現大規模網絡互聯的核心。本章將深入剖析網絡層的核心功能、關鍵技術以及核心協議。
一、網絡層的核心功能與設計思路
網絡層的主要任務是將數據包(Packet)從源主機通過一系列中間節點(路由器)路由(Routing) 和轉發(Forwarding) 到目的主機。這主要解決兩大核心問題:
- 路由選擇:即確定數據包從源到目的所經過的完整路徑(或路徑的一部分)。這依賴于路由算法和路由協議,是一個全局性的、相對慢速的“規劃”過程。
- 分組轉發:即路由器根據其轉發表(Forwarding Table),將接收到的數據包從合適的端口發送出去。這是一個本地性的、快速執行的“動作”過程。
網絡層的設計有兩種基本思路:
- 面向連接的虛電路(Virtual Circuit)服務:通信前先建立一條邏輯連接(虛電路),所有分組沿此固定路徑傳送,類似電話系統。現已較少使用。
- 無連接的數據報(Datagram)服務:每個分組獨立選擇路由傳輸,網絡層不保證可靠性。這是當今互聯網(IP協議)所采用的方式,簡單、靈活、健壯。
二、核心協議:網際協議IP
IP協議是TCP/IP協議棧的核心,也是網絡層的核心協議。當前主要版本是IPv4。
- IPv4數據報格式:理解IP數據報的首部各字段含義至關重要,特別是:
- 版本、首部長度、總長度:標識協議版本和數據包大小。
- 標識、標志、片偏移:用于數據包分片與重組。
- 生存時間(TTL):防止數據包在網絡中無限循環,每經過一個路由器減1,為0時丟棄。
- 協議:指示上層協議(如TCP-6,UDP-17)。
- 首部檢驗和:只校驗首部,不校驗數據部分。
- 源IP地址和目的IP地址:32位的邏輯地址,是路由轉發的依據。
- IP地址與子網劃分:
- 分類IP地址(A、B、C、D、E類):早期方案,浪費嚴重。
- 劃分子網(Subnetting):在單位內部將一個大的網絡號劃分成更小的子網,提高了IP地址利用率。通過子網掩碼(Subnet Mask) 來區分網絡號和主機號。
- 構成超網(CIDR,無分類域間路由):將多個連續的網絡前綴合并為一個更大的地址塊,有效減少了路由表項,是當前主流方案。采用“斜線記法”(如192.168.1.0/24)。
- 地址解析協議(ARP):解決IP地址到數據鏈路層MAC地址的映射問題。主機通過廣播ARP請求,目標主機回復其MAC地址。
三、IP層轉發與路由協議
- 分組轉發流程:路由器收到一個IP數據報后,執行以下步驟:
- 提取目的IP地址。
- 判斷是否直接交付(與接口在同一網絡)。
- 若需間接交付,則查詢轉發表。轉發表通常由目的網絡地址(而非單個主機地址)、下一跳地址和出口接口組成。
- 通過最長前綴匹配原則找到最具體的路由條目,將數據包轉發給下一跳路由器。
- 路由協議:用于路由器之間交換路由信息,動態生成和維護轉發表。
- 內部網關協議(IGP):在自治系統(AS)內部使用。
- RIP(路由信息協議):基于距離向量算法,以跳數作為度量,最大跳數為15。定期與鄰居交換整個路由表。簡單但收斂慢,適用于小型網絡。
- OSPF(開放最短路徑優先):基于鏈路狀態算法。路由器向全網泛洪自己的鏈路狀態信息,每個路由器都能構建出全網的拓撲圖,并獨立使用Dijkstra算法計算最短路徑樹。收斂快,適用于大型網絡。
- 外部網關協議(EGP):在自治系統之間使用。
- BGP(邊界網關協議):基于路徑向量算法。考慮的是策略(如政治、經濟、安全)而不僅僅是距離。用于在不同ISP之間交換路由信息,是互聯網的“骨架”協議。
四、重要輔助與相關技術
- 網際控制報文協議(ICMP):用于傳遞網絡層的控制信息和差錯報告,是IP協議的重要輔助。例如,
ping命令使用ICMP回送請求/應答報文測試連通性;tracert命令利用ICMP超時和終點不可達報文來跟蹤路由。
- IPv6:為解決IPv4地址耗盡問題而設計。主要特點:
- 地址空間巨大(128位)。
- 首部格式簡化,固定40字節,提高處理效率。
- 支持即插即用和更好的安全性(IPSec是內置選項)。
- IP組播:實現一對多的高效數據傳輸。使用D類IP地址作為組播地址。需要網際組管理協議(IGMP) 和組播路由協議(如PIM)的支持。
- 移動IP:允許移動節點在不改變IP地址的前提下,在不同網絡間移動并保持通信連續性。涉及家鄉代理、外地代理和轉交地址等概念。
- 網絡地址轉換(NAT):將私有IP地址轉換為公有IP地址,使大量內網主機可以共享少量公網IP訪問互聯網,緩解了IPv4地址短缺問題。
五、本章學習要點
對于考研復習,網絡層是重中之重,需重點掌握:
- 深刻理解路由器轉發分組的完整過程(包括ARP查詢、轉發表查詢等)。
- 熟練掌握IP地址、子網掩碼、CIDR、網絡前綴的計算與劃分。
- 對比掌握RIP和OSPF協議的工作原理、特點與差異。
- 理解ICMP、NAT、IPv6等技術的原理與作用。
- 能夠分析網絡層的典型問題,如路由環路、地址分配等。
網絡層作為數據轉發的核心樞紐,其協議的復雜性與設計的精巧性,共同構筑了全球互聯網的基石。深入理解這一層,是掌握計算機網絡整體架構的關鍵。