當前位置: 華文世界 > 科技

路由器的工作原理

2024-08-27科技

01 什麽叫路由?

路由器的英文是 Router,也就是「找路的工具」。找什麽路?尋找各個網路節點之間的路。
換句話說,路由器就像是快遞中轉站,包裹會經過一個個的中轉站,從遙遠的地方寄到你家附近,封包也是一樣。
添加圖片註釋,不超過 140 字(可選)
路由器是連線兩個網路的硬體裝置,承擔尋路功能,是網路的大門,因此,路由器又叫做閘道器裝置(Gateway)。

02 路由表

路由器和交換機一樣,也有自己的小本本,這個路由表上記載了到各個網路節點之間的路,會記錄數據來源、相應的路由條目以及下一跳。
路由表就相當於路由器的導航,路由器只需要按照路由表的指示走就可以了。當然前提是,路由表中存在匹配該封包目的 IP 地址的路由條目。路由表會周期性更新,當網路拓撲發生變化時也會更新,不用擔心走錯路。
路由器收發封包的流程:
路由器在收發封包的時候會先檢視路由表,如果路由表裏有匹配項,就會把封包交給下一跳。如果沒有匹配項,就會直接丟棄封包,然後告訴主機,這個目的地不可達。

03 直連、靜態路由、動態路由

路由條目的獲取來源有很多種,比如說直連、靜態路由和動態路由。
直連,也就是路由器的直接鄰居。路由器會自己去認識鄰居,然後記錄下來。
當然,也可以透過手動添加的方式告訴路由器目的網段的路徑,也就是靜態路由,適合網路規模比較小的場景。但是當網路拓撲發生變化,或是規模擴大的時候,配置和維護的成本就會很高。
這時候就需要結合動態路由,讓路由器透過動態的方式來學習。在大型網路中,往往采用這種動、靜路由相結合的方式進行部署。

04 三層尋址

二層尋址就是交換機根據 MAC 地址,在實體層進行尋址。
三層尋址就是指路由器根據 IP 地址,在網路層進行尋址。
添加圖片註釋,不超過 140 字(可選)
路由器三層尋址流程
當主機想要發送數據的時候,首先會檢視目的地是否和自己在同一個網段,如果在同一個網段就會讓交換機進行二層轉發。
如下圖所示,PC1 要給 PC2 發送數據,就會透過交換機來完成。
添加圖片註釋,不超過 140 字(可選)
如果不在同一個網段,主機會把封包交給自己的路由器,路由器再根據目的 IP 查詢自己的路由表,如果有匹配的條目,則交給下一跳,沒有就丟棄。
如下圖所示,PC1 要給 PC3 發送數據,發現 PC3 和自己不在同一個網段,就會把封包交給路由器 A,再根據路由表的條目轉發給路由器 B -> C,最後透過交換機 C 送達 PC3。
添加圖片註釋,不超過 140 字(可選)

05 尋路原則

預設情況下,路由的查詢遵循最長匹配原則,也就是掩碼越長、越精確,路由器就會優先選擇那條路。
然後考慮路徑開銷,比如說頻寬、管理距離、度量值等。也就是如果從這條路走,要花上多少時間和金錢。絕大部份資料通訊行為是雙向的,考慮流量的時候,還要關註流量的往返,從這條路去,也得從這條路回來,回來的時候沒路了,這也不行。
添加圖片註釋,不超過 140 字(可選)
路由查詢的行為是逐跳的,到目標網路沿途的每個路由器都必須有關於該目標網段的路由資訊。簡單來說,封包每經過一個路由器,路由器就會告訴它下一跳是誰,該往哪個方向走。