1 / 134

第四章 : 網路層和路由法

第四章 : 網路層和路由法. 章節目標 : 了解網路層服務背後的原則 : 網路層服務模型 轉送 v.s. 路由 路由器如何運作 路由 ( 路徑選擇 ) 有關擴充 進階課題 : IPv6, 行動 網際網路上的例證、實作. 4. 1 簡介 4.2 虛擬線路和資料段網路 4.3 路由器的內部為何 4.4 IP: 網際網路協定 資料段格式 IPv4 的定址法 網際網路控制訊息協定 (ICMP) IPv6. 4.5 路由演算法 連結狀態 距離向量 階層式路由 4.6 網際網路的路由 RIP OSPF BGP

kolya
Download Presentation

第四章 : 網路層和路由法

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第四章:網路層和路由法 章節目標: • 了解網路層服務背後的原則: • 網路層服務模型 • 轉送 v.s. 路由 • 路由器如何運作 • 路由 (路徑選擇) • 有關擴充 • 進階課題: IPv6, 行動 • 網際網路上的例證、實作 Network Layer

  2. 4. 1 簡介 4.2 虛擬線路和資料段網路 4.3 路由器的內部為何 4.4 IP: 網際網路協定 資料段格式 IPv4 的定址法 網際網路控制訊息協定(ICMP) IPv6 4.5 路由演算法 連結狀態 距離向量 階層式路由 4.6 網際網路的路由 RIP OSPF BGP 4.7 廣播與群播路由 第四章:網路層和路由法 Network Layer

  3. 從傳送主機到接收主機傳輸的資料分段 在傳送端將資料分段封裝在資料段中 在接收端,將資料分段傳送到傳輸層 每一台主機、路由器中都有網路層協定 路由器會檢查經過它的所有IP資料段中的標頭欄位 網路層 資料連結層 實體層 網路層 資料連結層 實體層 網路層 資料連結層 實體層 網路層 資料連結層 實體層 網路層 資料連結層 實體層 網路層 資料連結層 實體層 網路層 資料連結層 實體層 網路層 資料連結層 實體層 網路層 應用層 傳輸層 網路層 資料連結層 實體層 應用層 傳輸層 網路層 資料連結層 實體層 Network Layer

  4. 主要的網路層功能 • 轉送:將封包從路由器的輸入轉送到適當的路由器輸出 • 路由:決定封包從來源端到目的端的路由 • 路由演算法 比方: • 路由:計畫從來源到目的旅行的過程 • 轉送:經過單一交流道的過程 Network Layer

  5. 路由演算法 本機演算法 標頭值 輸出連結 0100 0101 0111 1001 3 2 2 1 到達封包 的標頭值 1 0111 2 3 路由與轉送之間的交互作用 Network Layer

  6. 建立連線 • 在某些網路架構中的第三個重要功能: • ATM, frame relay, X.25 • 在資料段傳送之前,兩個主機以及介於其間的路由器先建立虛擬連線 • 路由器介入 • 網路層以及傳輸層的連線服務: • 網路層:兩個主機之間 • 傳輸層:兩個行程之間 Network Layer

  7. 個別資料段的服務範例: 傳送保證 小於 40 毫秒的傳送保證 資料段流量的服務範例: 依序封包傳送 流量的最低頻寬保證 限制兩個封包之間間隔的改變 網路服務模型 Q:有哪些服務模型提供給從傳送端到接收端傳輸資料段的通道? Network Layer

  8. 網路層服務模型: 保證 ? 網路 架構 網際網路 ATM ATM ATM ATM 服務 模型 盡全力 服務 CBR VBR ABR UBR 壅塞 指示 無 (藉由遺失 來推論) 不發生壅塞 不發生壅塞 有 無 頻寬 無 常數速率 保證速率 保證最小 速率 無 遺失 無 有 有 無 無 排序 無 有 有 有 有 時序 無 有 有 無 無 Network Layer

  9. 4. 1 簡介 4.2 虛擬線路和資料段網路 4.3 路由器的內部為何 4.4 IP: 網際網路協定 資料段格式 IPv4 的定址法 網際網路控制訊息協定(ICMP) IPv6 4.5 路由演算法 連結狀態 距離向量 階層式路由 4.6 網際網路的路由 RIP OSPF BGP 4.7 廣播與群播路由 第四章:網路層和路由法 Network Layer

  10. 網路層連線以及非預接式服務 • 資料段網路提供網路層的非預接式服務 • VC 網路提供網路層的連線服務 • 可與傳輸層服務類比,但是: • 服務: 主機對主機 • 沒有選擇性: 網路只提供其中一個 • 實作: 在核心 Network Layer

  11. 在資料開始傳送前,必須為每個連結建立連線,拆除在資料開始傳送前,必須為每個連結建立連線,拆除 每個封包會承載一個 VC 識別碼 (並非目的端主機位址) 在來源對目的的路徑上,每個路由器都必須維護每個經過的連線的「狀態」 連結和路由器的資源 (頻寬、緩衝區) 可能會配置給VC “來源端到目的端的路徑,如同電話線路” 效能良好 沿著來源端到目的端路徑的網路行為 虛擬線路 Network Layer

  12. VC 實作 一個 VC 包含了: • 一條來源端至目的端間的路徑 • VC 編號,路徑上的每一個連結都有一個編號 • 路徑上的每一個路由器轉送表中的紀錄 • 一個屬於虛擬線路的封包會載送一個 VC 編號 • 在每一個連結,VC 編號必須改變 • 新的 VC 編號從轉送表中得來 Network Layer

  13. VC 編號 22 32 12 3 1 2 介面號碼 進入介面 進入VC編號 離開介面 離開介面號碼 1 12 3 22 2 63 1 18 3 7 2 17 1 97 3 87 … … … … 轉送表 美國西部路由器的轉送表: 路由器維護連線狀態資訊! Network Layer

  14. 用來設定, 維護及拆除 VC 用在 ATM, frame-relay, X.25 並沒有用在現今的網際網路中 應用層 傳輸層 網路層 資料連結層 實體層 應用層 傳輸層 網路層 資料連結層 實體層 虛擬線路: 訊號協定 6. 接受資料 5. 開始傳送資料 4. 連線建立 3. 接受連線 1. 初始連線 2. 進入連線請求 Network Layer

  15. 在網路層不需要建立連線 路由器: 沒有終端對終端的連線狀態 沒有網路層的「連線」觀念 使用目的端主機位址傳送封包 在同一對來源-目的端之間的封包可能會使用不同的路徑 應用層 傳輸層 網路層 資料連結層 實體層 應用層 傳輸層 網路層 資料連結層 實體層 資料段網路 1. 送出資料 2. 接收資料 Network Layer

  16. 轉送表 40億個可能的紀錄 目的端位址區塊 連結介面 11001000 00010111 00010000 00000000 至 0 11001000 00010111 00010111 11111111 11001000 00010111 00011000 00000000 至 1 11001000 00010111 00011000 11111111 11001000 00010111 00011001 00000000 至 2 11001000 00010111 00011111 11111111 其它 3 Network Layer

  17. 最長前置代碼對應 前置代碼對應連結介面 11001000 00010111 00010 0 11001000 00010111 00011000 1 11001000 00010111 00011 2 其他 3 範例 哪一個介面? DA: 11001000 00010111 00010110 10100001 哪一個介面? DA: 11001000 00010111 00011000 10101010 Network Layer

  18. 網際網路 電腦之間的資料交換 “彈性的” 服務, 沒有嚴格的時限要求 “聰明的” 終端系統 (電腦) 能夠適應、執行控制、錯誤復原 網路內部是簡單的,邊緣是複雜的 許多連結型態 不同的特質 統一的服務困難 ATM 來自電話系統 人類的對話: 嚴格的時限, 可靠性的要求 保證服務的需求 “愚笨的” 終端系統 電話 網路內部是複雜的 資料段或 VC 網路: 為什麼? Network Layer

  19. 4. 1 簡介 4.2 虛擬線路和資料段網路 4.3 路由器的內部為何? 4.4 IP: 網際網路協定 資料段格式 IPv4 的定址法 網際網路控制訊息協定(ICMP) IPv6 4.5 路由演算法 連結狀態 距離向量 階層式路由 4.6 網際網路的路由 RIP OSPF BGP 4.7 廣播與群播路由 第四章:網路層和路由法 Network Layer

  20. 路由器架構綜觀 兩個主要的路由器功能: • 執行路由演算法/協定 (RIP, OSPF, BGP) • 將資料段從輸入轉送到輸出連結 Network Layer

  21. 輸入埠功能 非集中式的交換: • 給定一個資料段目的端,使用輸入埠記憶體中的轉送表來尋找輸出埠 • 目標: 以「連線速度」完成輸入埠的處理過程 • 排隊: 假如資料段的抵達速率快於轉送進入交換結構的速率 實體層: 位元層級的接收 資料連結層: 例如, 乙太網路 見第五章 Network Layer

  22. 三種交換結構 Network Layer

  23. 記憶體 輸入埠 輸出埠 系統匯流排 經由記憶體的交換機制 第一代的路由器: • 傳統的電腦,在CPU的直接控制下完成交換動作 • 封包複製到系統記憶體 • 速度會被記憶體頻寬所限制 (一個資料段會經過兩次匯流排) Network Layer

  24. 經由匯流排的交換機制 • 資料段經由共享的匯流排從輸入埠記憶體送到輸出埠記憶體 • 匯流排的競爭:交換速度受限於匯流排頻寬 • 1 Gbps 匯流排, Cisco 1900: 對存取及企業路由器是足夠的 (非地區的或骨幹的) Network Layer

  25. 經由互連網路的交換機制 • 克服匯流排的頻寬限制 • Banyan網路,其他的互連網路初始的建立,是將處理器連接到多處裡器 • 更進一步的設計: 將資料段分割成固定長度的封包單位,將封包單位送入交換結構中 • Cisco 12000: 經由互連網路可達 Gbps 的交換速率 Network Layer

  26. 輸出埠 • 需要緩衝區,當資料段抵達結構的速率大於傳送速率 • 排程原則選擇佇列中的資料段加以傳送 Network Layer

  27. 輸出埠佇列 • 當經由交換器抵達的速率超過輸出連結的速度 • 佇列排隊 (延遲) 以及因為輸出埠的緩衝區溢出導致的遺失! Network Layer

  28. 輸入埠佇列 • 結構速度慢於輸入埠的加總 -> 可能在輸入佇列發生排隊的情形 • 連線前端 (HOL) 阻塞:在佇列最前端排隊的資料段會阻止佇列中的其他資料往前移動 • 佇列延遲以及導因於輸入緩衝區溢出的遺失! Network Layer

  29. 4. 1 簡介 4.2 虛擬線路和資料段網路 4.3 路由器的內部為何 4.4 IP: 網際網路協定 資料段格式 IPv4 的定址法 網際網路控制訊息協定(ICMP) IPv6 4.5 路由演算法 連結狀態 距離向量 階層式路由 4.6 網際網路的路由 RIP OSPF BGP 4.7 廣播與群播路由 第四章:網路層和路由法 Network Layer

  30. 主機,路由器的網路層功能: • ICMP 協定 • 錯誤回報 • 路由器 “訊號” • IP 協定 • 定址原則 • 資料段格式 • 封包處理原則 • 路由協定 • 路徑選擇 • RIP, OSPF, BGP 轉送表 網際網路的網路層 傳輸層: TCP, UDP 網路層 連結層 實體層 Network Layer

  31. 4. 1 簡介 4.2 虛擬線路和資料段網路 4.3 路由器的內部為何 4.4 IP: 網際網路協定 資料段格式 IPv4 的定址法 網際網路控制訊息協定(ICMP) IPv6 4.5 路由演算法 連結狀態 距離向量 階層式路由 4.6 網際網路的路由 RIP OSPF BGP 4.7 廣播與群播路由 第四章:網路層和路由法 Network Layer

  32. IP 協定版本號碼 32 位元 資料段總長度 (位元組) 標頭長度 (位元組) 服務 類型 標頭 長度 版本 資料段長度 用來分割/重組 分割偏移量 資料的“類型” 旗標 16位元的識別碼 剩餘站數的最大數量 (經過每一個路由器時減1) 上層 協定 生存期 網際網路 檢查和 32 位元來源端IP位址 32 位元目的端IP位址 傳送資料部分時 所使用的上層協定 例如. 時間戳記, 路由紀錄, 拜訪 的路由器特定列表 選項欄位 (如果有的話) 資料 (不固定長度,通常是 TCP 或 UDP 資料分段) IP 資料段格式 TCP有多少資源負擔? • 20 位元組 TCP • 20 位元組 IP • = 40 位元組 + 應用層的訊息負擔 Network Layer

  33. 網路連結層具有 MTU (最大的可傳輸大小) – 最大的連結層訊框 不同的連結層型態,不同的MTU 過大的 IP 資料段在網路內被切分(分割) 一個資料段變成好幾個資料段 只在終點被“重組” IP 標頭位元用來識別,排序相關的分割 IP 分割與重組 分割: in: 1 個大的資料段 out: 3 個小的資料段 重組 Network Layer

  34. length =1500 length =1040 length =1500 length =4000 ID =x ID =x ID =x ID =x fragflag =0 fragflag =0 fragflag =1 fragflag =1 offset =0 offset =185 offset =0 offset =370 一個大的資料段變成數個小的資料段 IP分割與重組 範例 • 4000 位元組的資料段 • MTU = 1500 位元組 資料欄位中有1480 個位元組 偏移量 = 1480/8 Network Layer

  35. 4. 1 簡介 4.2 虛擬線路和資料段網路 4.3 路由器的內部為何 4.4 IP: 網際網路協定 資料段格式 IPv4 的定址法 網際網路控制訊息協定(ICMP) IPv6 4.5 路由演算法 連結狀態 距離向量 階層式路由 4.6 網際網路的路由 RIP OSPF BGP 4.7 廣播與群播路由 第四章:網路層和路由法 Network Layer

  36. IP 位址: 32位元的識別碼,做為主機、路由器的介面 介面:在主機/路由器以及實體連結的交界處 路由器通常擁有多個介面 主機通常擁有一個介面 IP 位址代表每個介面 223.1.1.2 223.1.2.2 223.1.2.1 223.1.3.2 223.1.3.1 223.1.3.27 IP 定址法: 簡介 223.1.1.1 223.1.2.9 223.1.1.4 223.1.1.3 223.1.1.1 = 11011111 00000001 00000001 00000001 223 1 1 1 Network Layer

  37. IP 位址: 子網路部分 (高階位元) 主機部分 (低階位元) 什麼是子網路 ? IP具有相同子網路部分的裝置介面 可以在沒有路由器的狀況下,實體地互相連結 子網路 223.1.1.1 223.1.2.1 223.1.1.2 223.1.2.9 223.1.1.4 223.1.2.2 223.1.1.3 223.1.3.27 子網路 223.1.3.2 223.1.3.1 包含 3 個子網路的網路 Network Layer

  38. 方法 要決定子網路, 將每一個介面和它的主機或路由器分開,建立分離的網路。每一個分離的網路稱為一個子網路。 223.1.1.0/24 223.1.2.0/24 223.1.3.0/24 子網路 子網路遮罩: /24 Network Layer

  39. 有幾個? 子網路 223.1.1.2 223.1.1.1 223.1.1.4 223.1.1.3 223.1.7.0 223.1.9.2 223.1.9.1 223.1.7.1 223.1.8.1 223.1.8.0 223.1.2.6 223.1.3.27 223.1.2.1 223.1.2.2 223.1.3.1 223.1.3.2 Network Layer

  40. 主機部分 子網路部分 11001000 0001011100010000 00000000 200.23.16.0/23 IP 位址: CIDR CIDR:無分級領域間路由法 (Classless InterDomain Routing) • 位址內任意長度的子網路部分 • 位址格式: a.b.c.d/x,其中 x 是位址的子網路部份的位元數量 Network Layer

  41. IP 位址: 如何取得? Q:主機要如何取得 IP 位址? • 手動設定在系統管理的檔案中 • Wintel: 控制台->網路->設定->tcp/ip->屬性 • UNIX: /etc/rc.config • DHCP:動態主機配置協定 (Dynamic Host Configuration Protocol): 動態地由伺服器取得位址 • “隨插即用” (在下一章介紹) Network Layer

  42. IP 位址:如何取得? Q:網路要如何取得IP位址的子網路部分? A:從 ISP 的位址空間中取得分配的部分 ISP區塊 11001000 00010111 00010000 00000000 200.23.16.0/20 組織 0 11001000 00010111 00010000 00000000 200.23.16.0/23 組織 1 11001000 00010111 00010010 00000000 200.23.18.0/23 組織 2 11001000 00010111 00010100 00000000 200.23.20.0/23 ... ….. …. …. 組織 7 11001000 00010111 00011110 00000000 200.23.30.0/23 Network Layer

  43. 200.23.16.0/23 200.23.18.0/23 200.23.30.0/23 200.23.20.0/23 . . . . . . 階層式定址法: 路由集成 階層式定址允許有效率的路由資訊傳播: 組織 0 組織 1 “將任何位址開頭是 200.23.16.0/20的訊息傳給我” 組織 2 Fly-By-Night-ISP 網際網路 組織 7 “將任何位址開頭是 199.31.0.0/16的訊息傳給我” ISPs-R-Us Network Layer

  44. 200.23.16.0/23 200.23.18.0/23 200.23.30.0/23 200.23.20.0/23 . . . . . . 階層式定址法: 更特定的路徑 ISPs-R-Us 擁有更特定的路徑到達組織 1 組織 0 “將任何位址開頭是 200.23.16.0/20的訊息傳給我” 組織 2 Fly-By-Night-ISP Internet 組織 7 “將任何位址開頭是 199.31.0.0/16 或 200.23.18.0/23 的訊息傳給我” ISPs-R-Us 組織 1 Network Layer

  45. IP 位址: 最後... Q: ISP 如何取得一塊位址? A: ICANN: Internet Corporation for Assigned Names and Numbers • 配置位址 • 管理 DNS • 分派領域名稱,解決爭論 Network Layer

  46. NAT: 網路位址轉譯 網路的其他部分 區域網路 (例如,家庭網路) 10.0.0/24 10.0.0.1 10.0.0.4 10.0.0.2 138.76.29.7 10.0.0.3 在這個網路中,來源端或 目的端傳送的資料段, 具有 10.0.0/24 的來源 及主機位址 (一般而言) 所有離開區域網路的資料段都具有相同的單一來源NAT IP 位址:138.76.29.7,不同的來源埠號 Network Layer

  47. NAT:網路位址轉譯 • 動機:區域網路對外界而言,通常只有一個 IP 位址: • 不需要從ISP取得一個範圍的位址:只需要一個位址即可應付所有裝置 • 不需要通知外界,即可改變區域網路中的裝置位址 • 不需要改變區域網路內的裝置位址,即可變更ISP • 區域網路內的裝置不需要明顯地被外面的世界定址、見到 (增加安全性) Network Layer

  48. NAT:網路位址轉譯 實作: NAT 路徑必須: • 送出的資料段: 更換每一個送出的資料段 (來源IP位址, 埠號) 成為 (NAT IP 位址, 新埠號) . . . 遠端用戶端/主機會使用 (NAT IP 位址, 新埠號) 做為目的端位址,來做回應 • 記憶 (在 NAT 轉譯表中) 每一個 (來源端 IP 位址, 埠號) 到 (NAT IP 位址, 新埠號) 的轉譯對應 • 進入的資料段: 更換每個進入資料段目的欄位中的 (NAT IP 位址,新埠號) 為儲存在 NAT表中的對應 (來源端 IP 位址, 埠號) Network Layer

  49. 2 4 1 3 S: 138.76.29.7, 5001 D: 128.119.40.186, 80 S: 10.0.0.1, 3345 D: 128.119.40.186, 80 1: host 10.0.0.1 傳送資料段到 128.119.40.186, 80 2: NAT 路由器將資料 段中的來源位址從 10.0.0.1, 3345轉成 138.76.29.7, 5001, 更新轉譯表 S: 128.119.40.186, 80 D: 10.0.0.1, 3345 S: 128.119.40.186, 80 D: 138.76.29.7, 5001 NAT:網路位址轉譯 NAT 轉譯表 廣域網路端位址區域網路端位址 138.76.29.7, 5001 10.0.0.1, 3345 …… …… 10.0.0.1 10.0.0.4 10.0.0.2 138.76.29.7 10.0.0.3 4: NAT 路由器將資料段目的位址 從138.76.29.7, 5001 轉成 10.0.0.1, 3345 3:回應抵達 目的端位址: 138.76.29.7, 5001 Network Layer

  50. NAT:網路位址轉譯 • 16-位元的埠號欄位: • 利用單一的區域端位址,可提供60,000 個同時連線! • NAT 是具有爭議性的: • 路由器只應處理到第三層 • 違反端點到端點的主張 • NAT 可能會列入應用程式的設計考量,例如 P2P應用程式 • 位址不足的問題應該由IPv6來解決 Network Layer

More Related