天天看點

【TCP/IP】IP路由選擇

IP層在記憶體中有一個路由表,當有資料要發送時,它要對該表進行一次搜尋以确認轉發位址。收到的資料到達IP層時。IP層會檢查資料報的目的位址是否為本機IP或廣播IP:

  • 假設是,就依據IP首部協定字段的協定分發到對應的子產品進行處理。
  • 假設不是,那麼:
    • IP層被設為路由器功能,則對此資料報進行轉發。
    • 否則,丢棄該資料被報。

路由表内容例如以下所看到的:

字段 說明
目的IP位址 能夠是網絡位址。也能夠是主機位址。由以下的标志字段區分
下一跳路由器IP位址 與目前網絡接口直接相連的路由器或主機網絡接口的IP位址。詳細是哪一個由以下的标志字段區分
标志 一個标志區分目的IP是網絡位址還是主機位址。還有一個标志區分下一跳路由器是真的路由器還是網絡接口
網絡接口 指明相應的資料報應該從哪個網絡接口發出去

IP路由選擇的大緻步驟例如以下:

  • 搜尋路由表,尋找能與目的IP位址全然比對的表目。

    假設找到,則發送。

    否則,運作下一步。

  • 搜尋路由表,尋找能與目的網絡号相比對的表目。假設找到,則發送。
  • 搜尋路由表,尋找标為“預設”的表目。

    假設找到。則發送。

    否則。運作下一步。

  • 發送失敗,該資料不能被傳送。

為一個網絡指定一個路由器,也就是路由表的标志字段指明目的IP位址是一個網絡位址。這使得路由表的規模不會太大。

例1:

源主機和目的主機處在同一個以太網上。源主機的IP層依據目的主機IP位址搜尋路由表,找到了一個網絡号比對的表項。然後将資料發送出去。

例如以下圖所看到的:

【TCP/IP】IP路由選擇

以太網幀首部的目的位址是主機sun的以太網接口位址;IP資料報首部的目的位址是主機sun的IP位址。

例2:

源主機和目的主機處在不同網絡中。

【TCP/IP】IP路由選擇

主機bsdi要發送資料到外網的server192.48.96.9。首先主機搜尋路由表,選擇預設表目發送到主機sun。

參考:

《TCP/IP具體解釋》 P27-P30.