第 10 章 IP 路由.

Slides:



Advertisements
Similar presentations
第 10-1 章 IP路由(選徑協定簡介) IP 路由、Network Layer Addressing
Advertisements

计算机网络教程(第 2 版) 第 7 章 网络互连 课件制作人:谢希仁.
路由器繞送協定- 第三章 路由器動態繞送服務
路由 CCNA Discovery 4.0 Working at a Small-to-Medium Business or ISP – Chapter 6.
實驗六 路由器操作設定實驗 教師: 助教:.
網路定址與路由原理.
第 10 章 IP 路由.
校園網路管理實電務 電子計算機中心 謝進利.
第5章 OSI網路層.
無線寬頻分享器設定範例 銜接硬體線路 推斷無線基地台的IP 設定無線基地台 相關觀念解釋.
第四章 數列與級數 4-1 等差數列與級數 4-2 等比數列與級數 4-3 無窮等比級數 下一頁 總目錄.
Mobile IP Mar.14,’03 B 黃品甄 B 范哲瑋.
第 6 章 IP 遶送.
Hadoop 單機設定與啟動 step 1. 設定登入免密碼 step 2. 安裝java step 3. 下載安裝Hadoop
Supplement Data Mining 工具介紹 楊立偉教授 台灣大學工管系 2014 Fall 1.
TCP協定 (傳輸層).
連結資料庫 ACCESS MSSQL.
第 6 章 通訊協定 UDP.
第一篇 Unix/Linux 操作介面 第 1 章 Unix/Linux 系統概論 第 2 章 開始使用 Unix/Linux
JDK 安裝教學 (for Win7) Soochow University
Chapter 09 ARP 與 ICMP.
第 10 章 ARP 與 ICMP.
HiNet 光世代非固定制 用戶端IPv6設定方式說明
家用網路所遇到的問題 與解決方案 演講者:徐子浩 指導老師:梁明章 老師.
第四章 網路層 4-1 網路層簡介 4-2 電路交換技術 4-3 信息交換技術 4-4 分封交換技術 4-5 各種交換技術之比較
CHT IPv6測試 D-Link Taiwan 友訊科技台灣分公司 TTSS 電信技術支援課 Name:
(Circular Linked Lists)
安裝JDK 安裝Eclipse Eclipse 中文化
TCP/IP介紹 講師:陳育良 2018/12/28.
無線路由器(AP)管理.
App Inventor2呼叫PHP存取MySQL
Unit 04 虛擬機器建構實驗 M. S. Jian Department of Computer Science and Information Engineering National Formosa University Yunlin, Taiwan, ROC.
雲端運算的基石(2) 虛擬化技術實作(XP篇─上)
系統設定 IE8相容性檢視
FTP檔案上傳下載 實務與運用.
課程:IP Telephony 指導老師:吳坤熹 學生:林易瑋
IP, Port, Router and Port forward
Chap3 Linked List 鏈結串列.
DHCP for W2K.
網路安全技術 OSI七層 學生:A 郭瀝婷 指導教授:梁明章.
Topic Introduction—RMI
Ch20. 計算器 (Mac 版本).
常見網路設備簡介 A 周緯龍.
Firewall-pfsense Mars Su
第 19 章 XML記憶體執行模式.
台灣首府大學 休閒資訊管理學系 何日新老師 講授
網頁資料知多少? 事 實 ? 謠言?.
實驗目的: 子網路切割(Netmask)方式 IP靜態繞送(Static Route)
Google協作平台+檔案分享(FileZilla+網路芳鄰)
指導老師:溫翔安 組員:溫允中4970E011 李雅俐4970E025 蕭積遠4970E026 陳欣暉4970E086
如何使用Gene Ontology 網址:
DRC with Calibre 課程名稱:VLSI 報告人:黃家洋 日期: 改版(蔡秉均) 1.
MicroSim pspice.
Chapter 6 IP 封包的傳送、轉送與 路徑選擇
流程控制:Switch-Case 94學年度第一學期‧資訊教育 東海大學物理系.
取得與安裝TIDE 從TIBBO網站取得TIDE
第4章 网络层.
MiRanda Java Interface v1.0的使用方法
基本指令.
Chapter 15 檔案存取 LabVIEW中的檔案存取函數也可將程式中的資料儲存成Excel或Word檔。只要將欲存取的檔案路徑位址透過LabVIEW中的路徑元件告訴檔案存取函數後,LabVIEW便可將資料存成Excel或Word檔;當然也可以將Excel或Word檔的資料讀入LabVIEW的程式中。
國立屏東大學宿舍網路連線 設定說明 104/08/12.
Cloud Operating System - Unit 03: 雲端平台建構實驗
第四章 通訊與網路管理 授課老師:褚麗絹.
Parasitics Extraction (PEX) 與 postsimulation(posim)
安裝JDK 配置windows win7 環境變數
ARP攻擊 A 吳峻誠.
指導老師:黃日鉦 組員名單:王友倫.李糧旭.王浩綱.黃種慶.郭宗維
Develop and Build Drives by Visual C++ IDE
Department of Computer Information Science, NCTU
CHT IPv6測試 D-Link Taiwan 友訊科技台灣分公司 TTSS 電信技術支援課 Name:
Presentation transcript:

第 10 章 IP 路由

本章重點 10-1 什麼是 IP 路由? 10-2 路由表簡介 10-3 靜態與動態路由

IP 路由 我們在先前的章節中, 多次說明 IP 最主要的功能便是負責在網際網路上傳遞IP 封包。為了達成傳遞封包的目的, IP 必須涵蓋以下兩類規格: 靜態規格:包含 IP 封包的格式、IP 位址的規劃等等。我們在第 8 章已經詳細介紹了這些主題。 動態規格:包含 IP 封包在網路之間傳送的方式。這部份統稱為 IP 路由 (IP Routing)。 本章首先說明 IP 路由的基本觀念, 接著介紹路由器的原理, 以及路由器的運作核心―路由表, 最後介紹路由表建立的方式。

10-1 什麼是 IP 路由? 簡單地說, 在網路之間將 IP 封包傳送到目的節點的過程, 即稱為 IP 路由。換言之, 除非是在同一個網路內的兩個節點互傳 IP 封包, 否則在傳送 IP 封包時, 必然會歷經 IP 路由的過程。

什麼是 IP 路由?

什麼是 IP 路由? 在 IP 路由的過程中, 網路之間的連結扮演了重要的角色。因此, 要了解 IP 路由, 首先必須了解連結網路的裝置―路由器。我們在第 3 章網路裝置中曾介紹過路由器, 以下則是將重點放在 IP 路由中路由器運作的方式。

節點、主機與路由器 為了方便說明, 本章所用節點、主機、路由器等名詞定義如下: 節點 (Node):使用 TCP/IP 協定組合的網路裝置, 包含主機和路由器。 主機 (Host):無路由功能的節點, 一般配備網路卡的個人電腦, 皆可視為主機。 路由器 (Router):具有路由功能的節點。

10-1-1 路由器的特性 路由器為連結網路的重要裝置, 不僅在實體上可連結多個網路, 還必須具有轉送 IP 封包的能力。在整個 IP 封包的傳送過程中, 通常必須經由多部路由器的合作, 才能將 IP 封包送達目的節點。 路由器作為 IP 封包的轉送裝置, 具有以下特性: 具有兩個 (含) 以上的網路介面, 可連接多個網路, 或是直接連接到其他路由器。所謂網路介面, 泛指所有可連接網路的裝置, 例如:個人電腦上的網路卡。

路由器的特性 至少能解讀封包在 OSI 模型第 3 層 (網路層) 的資訊。這是因為路由器必須知道封包的目的網路位址, 才能進一步地執行路由工作。 具有路由表 (Routing Table)。路由表記載了有關路由的重要資訊, 路由器必須根據路由表, 才能判斷要將 IP 封包轉送到哪一個網路, 為 IP 封包選擇最佳的路徑。

路由器的特性 目前在網路層最常用的協定是 IP 和 IPX, 因此我們通常將路由器區分為 IP 路由器和IPX 路由器(較高級的路由器則可以同時支援兩種協定)。由於本書係討論 TCP/IP 網路環境的 IP 路由, 所以後文所指的路由器都假設是 IP 路由器。 除了廠商製造、販售的路由器外, 一般個人電腦只要符合上述特性, 亦可視為路由器。因此, 只要您的電腦插了兩張網路卡並安裝合適的軟體, 也可扮演一部路由器。

10-1-2 路由器的功能 路由器最主要的功能就是轉送 IP 封包。為了能正確地轉送 IP 封包, 路由器必須根據封包的目的 IP 位址, 為它選擇一條最佳路徑。所謂的路徑, 主要是指下列兩種資訊: 要經過路由器的哪個網路介面。 要再送到另一部路由器或是直接送到目的節點。如果目的節點位於與路由器直接連接的網路上, 則不必再轉送給其他路由器, 直接將 IP 封包送至目的節點即可。

路由器的功能 以下圖為例, 假設現在 A1 主機要傳送 IP 封包給 F1 主機:

路由器的功能 當 R1 路由器收到 A1 送來的 IP 封包時, 必須根據封包的目的 IP 位址(也就是 F1 主機的 IP 位址), 對照 R1 本身的路由表來決定其路徑。 從上圖的網路組態來看, 要將 IP 封包送至 F1 主機, R1 只有一條路徑可選擇, 便是將封包轉送給R2 路由器。決定路徑後, R1 便可將封包從連接 B 網路的介面送出, 轉交給 R2 路由器繼續下一步動作。

路由器的功能 本例中 R1 有「連接 A 網路」、「連接 B 網路」和「連接 C 網路」 3 個網路介面;R2 有「連接 B 網路」、「連接 D 網路」和「連接 E 網路」 3 個網路介面;R3 有「連接 E 網路」和「連接 F 網路」兩個網路介面。

路由器的功能 在上圖中 R1 與 R2 之間是透過 B 網路相連, 理論上是沒有問題的, 但萬一 B 網路發生問題時, 可能會影響 R1 與 R2 之間的連通。 因此在實務上, 會考慮直接讓路由器與路由器相連, 中間不要再經過一個區域網路。同理, R2 與 R3 路由器也會直接相連, 不會透過 E 網路。

10-1-3 IP 路由的過程 承上例, 假設 A 網路的 A1 主機, 要傳送 IP 封包給 F 網路的 F1 主機。我們將逐一檢視傳送過程中, 每部主機與路由器的動作, 藉此說明 IP 封包在路由器之間轉送的過程。

A1 主機 A1 主機在送出 IP 封包前, 必須先執行以下動作: 若 F1 位於 A1 主機所在的區域網路 (亦即 A 網路), A1 首先利用 ARP 取得 F1 的 MAC 位址, 然後以該 MAC 位址作為鏈結(Data Link)層的目的位址, 將封包直接送給 F1。

A1 主機 若 F1 不在 A1 主機所在的區域網路, 則 A1 根據路由表, 判斷出應將 IP 封包送至哪一部路由器。區域網路通常只有一部路由器, 亦即預設閘道, 在本例中, 即是 R1 路由器。A1 決定將 IP 封包送至 R1 後, 先利用 ARP 取得 R1 連接 A 網路的網路介面 MAC 位址, 然後直接將 IP 封包傳送給 R1。

R1 路由器 R1 路由器收到 IP 封包時, 會執行以下的動作: 解讀 IP 封包表頭的資訊。若存活時間等於 1 , 即停止轉送此 IP 封包, 並發出ICMP 的錯誤訊息給 A1 (請參考 9-5-5 節);若存活時間大於 1, 則將存活時間減 1 後, 繼續以下步驟。

R1 路由器 讀取 IP 封包的目的位址。以此例而言, 即是 F1 主機的 IP 位址。根據 IP 封包的目的位址, 以及 R1 路由器本身所擁有的路由表, 為 IP 封包選擇一條路徑。 若 F1 主機位於 R1 所連接的網路中 (例如:A、B、C 網路), 則直接以 ARP 取得 F1 的 MAC 位址, 然後將 IP 封包傳送給 F1。

R1 路由器 若 F1 主機位於遠端的網路 (未與 R1 連接的網路, 例如:D 、E 、F 網路), 則必須從路由表判斷應該將 IP 封包轉送給哪一部路由器處理。以此例而言, 便是將 IP 封包轉送至 R2 路由器。決定將封包轉送給 R2 路由器後, R1 便利用 ARP 取得 R2 路由器連接 B 網路的網路介面 MAC 位址, 然後直接將 IP 封包傳送給 R2。

R2 路由器 R2 路由器收到R1 送來的 IP 封包時, 所執行的動作與 R1 路由器相似, 以下僅扼要敘述: 讀取 IP 封包的目的位址, 根據路由表得知應將封包送給 R3 路由器, 再利用 ARP 取得 R3 的 MAC 位址。 將 IP 封包轉送至 R3 路由器。

R3 路由器 R3 路由器收到 IP 封包時, 所執行的動作如下: 判斷 IP 封包表頭的存活時間。 因為 F1 位於 R3 所連接的網路中 (F 網路), 因此 R3 直接以 ARP 取得 F1 的 MAC 位址, 然後將 IP 封包傳送給 F1。

R3 路由器 從上述過程中我們可以得知, 在 IP 封包傳送的過程中, 沿途所經每部路由器必須能替 IP 封包選擇正確的路徑, 才能讓 IP 封包順利到達目的地。 在網際網路上的 IP 路由, 當然複雜了許多, 但是基本的原理卻是相同。如果網際網路上每部路由器都能克盡其職, 任兩部主機便可透過 IP 路由的機制, 互相傳送 IP 封包。

10-1-4 直接與間接傳遞 在整個 IP 路由的過程中, IP 封包的傳遞大致可分為『直接』與『間接』兩種形式。 直接傳遞

直接與間接傳遞 前述的 A1 主機傳送 IP 封包至 F1 主機的過程中, 屬於間接傳遞的部份為: 屬於直接傳遞的部份則為: A1 → R1 R1 → R2 R2 → R3 屬於直接傳遞的部份則為: R3 → F1 如果 A1 主機傳送封包給同樣位於 A 網路的 A2 主機, 則只須用到直接傳遞, 不會產生間接傳遞。

10-2 路由表簡介 路由表其實是一個小型的資料庫, 其中的每一筆路由紀錄, 記載了通往每個節點或網路的路徑。 當路由器收到 IP 封包時, 必須根據 IP 封包的目的位址, 更精確地說, 是 IP 位址中的網路位址(Network ID), 選擇一筆合適的路由紀錄, 然後將封包透過此紀錄所指定的網路介面轉送出去。 本節首先介紹路由表的各個欄位, 然後再說明路由器如何為 IP 封包選擇最佳路徑。

10-2-1 路由表的欄位 路由表的欄位會因製造廠商及規格而有差異, 不過基本上會有以下欄位: 網路位址 (Network Destination) 網路遮罩 (Netmask) 介面 (Interface) 閘道 (Gateway) 成本 (Metric) 為了方便說明, 首先我們模擬一個簡化的網路環境。

路由表的欄位

路由表的欄位 在上圖的環境中, 總共有 A、B、C、D等 4 個網路, 以及 R1 、R2 等兩部路由器。

網路位址與網路遮罩 由於這兩個欄位的資訊必須合起來解讀才有意義, 因此將之合併說明。 路由紀錄利用網路位址與網路遮罩兩個欄位來代表的目的地 IP 位址的範圍, 也就是用來定義目的網路。 有關網路位址與網路遮罩的說明請參閱第 8 章。

網路位址與網路遮罩 以 R1 路由器而言, 通往 A、B、C、D 等網路的路由記錄, 其網路位址與網路遮罩兩個欄位值如下 (其它欄位暫時省略):

網路位址與網路遮罩 請注意, 路由紀錄也可用來代表通往某個主機的路徑。當路由紀錄代表單一主機時, 網路位址欄位必須填入主機的 IP 位址, 網路遮罩欄位則是 255.255.255.255 。 假設 R1 路由器中有一筆 A1 主機的路由記錄, 則網路位址與網路遮罩兩個欄位值如下。

網路位址與網路遮罩 為了節省空間, 路由表中的紀錄一般代表一個網路;代表單一主機的紀錄則較為罕見。

介面 此欄位記錄路由器本身網路介面的 IP 位址。由於路由器具有多個網路介面, 而每個網路介面都會對應一個 IP 位址, 當路由器決定以某筆路由紀錄來轉送 IP 封包時, 便會將 IP 封包從該紀錄指定的介面轉送出去。

介面

閘道 記錄要將 IP 封包轉送至哪一部路由器。若目的網路已直接連接在此一路由器, 代表毋須再將 IP 封包轉送給其他路由器, 因此閘道欄位填入網路介面的 IP 位址即可。 以 R1 路由器為例, 通往 A、B、C 網路的路由紀錄, 由於這 3 個網路直接與 R1 連接, 不必再轉送給其他路由器, 因此閘道欄位填入網路介面的 IP 位址。 至於 D 網路, 因為必須將封包轉送給 R2 路由器, 因此閘道欄位填入 R2 路由器連接B 網路的網路介面位址。

閘道

成本 用來表示路徑的成本。如果有兩筆路由紀錄的網路位址與網路遮罩相同, 則路由器會挑選成本最小的路徑來使用。成本通常設為到達目的網路所須經過的躍程(Hop) 數目。 什麼是躍程數目呢?IP 封包從來源端傳送到目的端, 途中所經過的路由器數目即是躍程數目。

成本 請參考圖 10-03, 以 R1 路由器為例, 到 A、B、C 網路的路徑為 1 個躍程;到 D 網路為 2 個躍程:

成本 但是, 成本欄位並不必然就是代表躍程數目, 在不同的路由協定, 可能會有不同的意義。例如, OSPF (一種動態路由協定) 會根據頻寬、延遲等等因素來計算成本欄位值。 因此成本欄位可說是對於每條路徑的『加權』 (Weighting) 值 , 而路由器會優先選擇成本最小的路徑!

10-2-2 決定路徑的步驟 當路由器收到 IP 封包時, 會為它選擇一條最佳路徑, 其實就是選擇一筆最合適的路由紀錄。以下為路由器選擇路徑的步驟: 將 IP 封包的目的 IP 位址與路由紀錄的網路遮罩做位元 AND 運算。例如:目的 IP 位址若為 203.74.205.33, 路由紀錄的網路遮罩為 255.255.255.224, 則運算結果為 203.74.205.32 。

決定路徑的步驟

決定路徑的步驟 將上述結果與路由紀錄的網路位址比較。若二者相同, 代表適合用這筆路由紀錄來轉送此 IP 封包。 對每一筆路由紀錄重複第 1 、2 步驟。若找不到任何適用的紀錄, 則使用預設路由, 亦即將封包轉送給預設的路由器來處理。

決定路徑的步驟 若有多筆符合的紀錄, 則從中找出網路遮罩欄位中最多 1 的紀錄。這是因為網路遮罩欄位的 1 愈多, 代表目的網路的規模愈小, 因此路徑較為精確。假設符合步驟 1 、2 有以下兩筆紀錄。 則路由器會優先使用第 1 筆紀錄。

決定路徑的步驟 找出成本最小的紀錄。成本欄位代表路徑的成本, 因此路由器會優先選擇成本較低的路徑。

10-3 靜態與動態路由 前幾節介紹了 IP 路由的原理, 接下來我們將說明如何建立路由表。路由表的建立方式有以下兩種: 靜態方式 (Static):由網管人員手動將路由紀錄逐一加入路由表。 動態方式 (Dynamic):由路由協定自動建立與維護路由表, 毋須人為輸入。

10-3-1 靜態路由 由於靜態路由的路由表, 必須以人工的方式來建立, 因此適用於小型且穩定的網路環境。本節將示範如何在小型網路環境中使用靜態路由。

範例 1:1 部路由器的環境 首先假設一個最簡單的路由環境 ― 1部連接兩個網路的路由器。

範例 1:1 部路由器的環境 LAN 1 與 LAN 2 的網路位址與網路遮罩如下表所示:

範例 1:1 部路由器的環境 R1 路由器的介面如下所示:

範例 1:1 部路由器的環境 若要讓 LAN 1 與 LAN 2 能夠互傳封包, 必須在 R1 加入以下兩筆路由紀錄: 第 1 筆紀錄可轉送目的地為 LAN 1 的 IP 封包;第 2 筆紀錄可轉送目的地為LAN 2 的 IP 封包。

如何在路由表中新增路由紀錄? 如果您用的是硬體路由器, 例如:思科 (Cisco) 的路由器, 通常可用 telnet 命令連上路由器, 然後以 ip route 命令來新增路由紀錄。 如果是以個人電腦作為路由器, 則作業系統或軟體會提供相關的工具程式。以 Windows 2000 Server 為例, 可在路由及遠端存取中設定路由紀錄, 也可從命令提示字元執行 route 命令, 新增、修改或刪除路由表中的路由紀錄。

範例 2:2 部路由器的環境 接著我們以 2 部路由器連接 3 個網路為例。

範例 2:2 部路由器的環境 LAN 1、LAN 2 與 LAN 3 的網路位址與網路遮罩如下表所示:

範例 2:2 部路由器的環境 R1 路由器的介面如下所示: R2 路由器的介面如下所示:

範例 2:2 部路由器的環境 假使要讓 3 個網路能正常運作, 則必須分別在 R1 與 R2 加入適當的路由紀錄。

範例 2:2 部路由器的環境 前兩筆紀錄與範例 1 相同, 用來轉送 LAN 1 與 LAN 2 的封包。第 3 筆紀錄可將目的地為 LAN 3 的 IP 封包轉送給 R2, 因此, 閘道欄位必須填入 R2 連接 LAN 2 的介面 IP 位址。 R2 必須加入以下 3 筆路由紀錄。

範例 2:2 部路由器的環境

範例 2:2 部路由器的環境 第 1 筆紀錄可將目的地為 LAN 1 的 IP 封包轉送給 R1, 因此, 閘道欄位必須填入 R1 連接 LAN 2 的介面 IP 位址。後兩筆紀錄用來轉送 LAN 2 與 LAN 3 的封包。

範例 3:2 部路由器 + 預設路由 延續先前的網路架構, 我們再加上一部 R3 路由器, 對外連接至網際網路。

範例 3:2 部路由器 + 預設路由 LAN 1、LAN 2、LAN 3 以及 R1 、R2 的設定與範例 2 相同。R3 路由器的介面如下所示:

範例 3:2 部路由器 + 預設路由 R1 與 R2 路由器除了必須加入範例 2 的路由紀錄外, 還要再建立『預設路由』。當 R1 與 R2 收到的 IP 封包與所有的路由紀錄都不相符時, 便會使用預設路由將之傳送給 R3 。 例如:R1 若收到目的位址為 168.95.192.1 的 IP 封包, 因為與3 個 LAN 的路由紀錄都不相符, 因此便轉送給 R3, 再送到網際網路上。

範例 3:2 部路由器 + 預設路由 R1 必須建立以下的路由紀錄作為預設路由: 路由紀錄的網路位址為 0.0.0.0, 且網路遮罩為 0.0.0.0 時, 代表此為預設路由。

範例 3:2 部路由器 + 預設路由 R2 必須建立以下的路由紀錄作為預設路由: R3 可說是 LAN 1、LAN 2、LAN 3 等網路聯外的閘道, 因此必須有這 3 個網路的路由紀錄。

範例 3:2 部路由器 + 預設路由

範例 3:2 部路由器 + 預設路由 這 3 筆紀錄分別負責轉送目的地為 LAN 1、LAN 2 與 LAN 3 的封包。 此外, R3 也必須設定預設路由, 將封包轉送到網際網路。R3 的預設路由通常是指向與 ISP 連接的路由器。

10-3-2 動態路由 當網路規模不大時, 採用靜態方式建立路由表的確是個可行的方式。但是當網路不斷擴大時, 路由表的資料將會以等比級數暴增。此時若再使用靜態方式, 則在設定和維護路由表時, 會變得複雜且困難重重。 為了解決這個問題, 有人提出了利用動態方式建立路由表的觀念, 讓路由器能透過某些機制, 自動地建立與維護路由表。並在有多重路徑可供選擇時, 自動計算出最佳的路徑來傳送封包。

動態路由 採用動態方式建立路由表的網路就是動態路由網路 (Dynamic Routing Network);而負責建立、維護動態路由表, 並計算最佳路徑的機制就是動態路由協定 (Dynamic Routing Protocol)。 目前在企業網路中, 使用最普遍的動態路由協定當屬 RIP (Routing Information Protocol , 路由資訊協定)。RIP 所使用的路由演算法是距離向量演算法(Distance Vector Algorithm)。 由於路由協定是較為深入的主題, 限於篇幅將不逐一介紹, 以下僅簡介距離向量演算法的原理。

動態路由 動態路由協定種類繁多, 但大體上可區分為適用於中、大型網路 (例如:網際網路) 和適用於小型網路 (例如:企業網路) 等兩大類。OSPF、BGP、IGMP 等路由協定屬於前者, RIP 則是屬於後者。

距離向量演算法 簡言之, 距離向量演算法 (Distance Vector Algorithm) 就是讓每部路由器都和鄰接的路由器交換路由表, 藉以得知網路狀態, 判斷封包傳送的最佳路徑。 更精確地說, 應該是每一部路由器都會將自己的路由表廣播到網路上, 藉以建立動態路由表。

距離向量演算法

距離向量演算法 當每一部路由器收到此廣播封包時, 便會核對自己的路由表, 進行以下步驟: 收到的路由紀錄中, 是否有我沒有記錄到的資料?若然, 則新增此筆紀錄, 反之則繼續下一個步驟。 此筆紀錄是不是由同一部路由器所發出?若然, 則更新路由紀錄, 反之則進入下一個步驟。 比對路徑成本。若該筆路由紀錄的成本較小, 則更新路由紀錄, 反之, 則不予理會。

距離向量演算法 最後每部路由器都會擁有一份完整的動態路由表, 裡面則記錄了所有網路的路由資訊。 除此之外, 距離向量演算法還能計算出最小成本的路徑, 當做封包傳遞的最佳路徑, 例如:

距離向量演算法 在上圖的網路架構中, 若 LAN1 要送封包到 LAN2, 實際可走的路徑有 2 條: LAN1 → A 路由器 → B 路由器 → LAN2 LAN1 → A 路由器 → C 路由器 → D 路由器 → LAN2

距離向量演算法 由於在交換路由表時, 每部路由器都會把自己路由表中每筆紀錄的成本加 1, 然後廣播到網路上。 因此, A 路由器透過距離向量演算法便可得知第 1 條路徑的成本為 1 (經過一部路由器), 而第 2 條路徑成本為 2 (經過兩部路由器), 從而選擇第 1 條路徑, 將封包傳送出去。