路由器的工作的主要目的
連接 多個網絡 並轉發 目的地 爲其 自己的網絡 或 其他網絡的數據包 。
路由器被認爲是第三層設備,因爲它 基於第三層IP數據包
中的信息 進行 轉發決策,特別是目的IP地址
。
當路由器收到一個數據包時
1. 它會搜索其路由表
以找到數據包的目標IP地址
與路由表中的一個地址
之間的最佳匹配(不同協議不一樣)。
2. 一旦找到匹配項,數據包 將 被 封裝在 表項中指示的 輸出接口 的 第二層數據鏈路幀 中
本質上就是 轉換爲 加封二層 信封 ,根據 路由表中 指定的 輸出接口(或者
nex hop ip
) 發到 下一個設備上
- 注:
- 路由器通常不會查看數據包有效負載 ,僅在 第3層 地址進行轉發決策功能
還可以選擇其他信息(例如:服務質量(QoS
)提示)
對於純粹的IP
轉發,路由器被設計爲 最小化 與 單個分組 相關的狀態信息。
一旦數據包被轉發,路由器不會保留有關數據包的任何歷史信息。
路由表:
- 路由表本身 可以包含 源 自各種 不同源的信息
- 一般分爲三類:
- 手動配置:
- 靜態路由
默認路由 - 自動學習:
- 動態路由 (從其他路由器學習路由)
- 默認路由使用範圍:
-
用於路由 所有目的地 不會出現 在 路由表 中的 流量 的路由;
在小型網絡中這是常見的 - 甚至是必要的 - 在家庭或小型企業中,默認路由只是將所有非本地流量發送到
Internet
服務提供商。
默認路由可以手動配置
(作爲靜態路由
),也可以通過動態路由協議學習
,或通過DHCP
獲取。
路由協議
路由器一次可以運行多個路由協議
- 特別是 在邊界路由器上
- 作用
- 可處理 內部不同路由器之間 ,內部與外部之間 (運行不同路由協議的網絡各部分)的 信息共享(有選擇的共享)
路由器堵塞
除了決定數據包轉發到哪個接口(主要通過路由表
處理)之外
路由器還需處理 數據包數目較多時造成的堵塞
處理策略
- 互聯網上常用的三種策略是
尾部丟棄
,隨機早期檢測(RED)
和加權隨機早期檢測(WRED)
。 - 拖尾:
- 最簡單和最容易實現的;
一旦隊列長度超過路由器中緩衝區的大小,路由器就會簡單地丟棄新的傳入數據包。
- 隨機早期檢測:
- 當隊列超過 預先配置 的緩衝區部分時,
RED
提前丟棄數據報,直到達到預定的最大值(變爲尾部丟棄) - 加權隨機早期檢測
- 當流量將超過預先配置的大小時,
WRED
需要對平均隊列大小 加權 ,以便短脈衝串
不會觸發隨機丟棄。
在此期間路由器執行的另一項功能是
確定在存在多個隊列時應首先處理哪個數據包。
這是通過QoS
進行管理的,這對於部署IP語音
時非常重要,以免引入過多的延遲。
基於策略的路由
因其中構造了特殊的規則,在進行 分組轉發決策 時 覆蓋從 路由表派生的規則。