我以前剛開始接觸到一些常用的網路裝置(router、switch、hub等)的時候,只是從一些資料中知道router與switch(或hub)最大的分別就是多了個路由功能,對於現在低端的產品從功能上來說,switch和hub基本上是分別不大的(本文只討論低端的產品,因為我沒有怎麼使用較高階的產品,對於router也是),我那時候所看到的資料裡對路由功能的描述大概是這樣的:「router中的路由功能可以使internet中的任意兩個節點通訊時可以選擇一條兩節點間最近的路」,對於這句話,我一直是覺得很納悶的,router怎麼會知道那條路會近一點呢?
一直到現在我才明白「router的路由功能可以使internet中的任意兩個節點通訊時可以選擇一條兩節點間最近的路」這句話的意思,其實最近的路就是指這條路上經過的router(或gateway)的數量是最少的。我們知道整個internet是由很多個區域網組成的,這些區域網之間是通過router(或gateway)來進行連線的(但我們在此只討論router,gateway並不在本文的討論範圍之內),整個internet是成網狀結構的(也就是說兩點間的資料傳輸路線可能不只一條),就是因為router有了這個叫「可路由」的功能,可以使router可以在多條可到達目的位址時選擇一條「距離最短」的,這個「可路由」的功能的工作原理是這樣的(如下圖所示):
在每個router中都有乙個叫「路由表」的**,這個路由表是用來存放在整個網路中該router可到達的「區域網」所經過router的數量,每個router都有這樣的路由表,這個路由表最初存放的是該router所連線的兩個「區域網」的資料,這個路由表有自動更新的功能,即它會每隔一定的時間就會與相鄰的router交換各自的路由表中存放的資料(一般相隔的時間是30秒)。就如圖中的網路是由4個「區域網」組成的,「區域網」之間用3個router連線起來,router1(r1)中的路由表最初存放的資料是:
目的網路號
下一站路由器
距離10-0
20-0這裡的資料表示的意思就是從這個router要到達10.0.0.0和20.0.0.0這兩個網路需要經過0個路由器,即可以直接到達這兩個網路,經過30秒後,r1會主動與r2交換各自的路由表中的資料,因為r2中的路由表最初存放的資料是:
目的網路號
下一站路由器
距離20-0
30-0r1和r2都會把對方的路由表拷貝乙份過來更新自己的路由表中的資料,因為是相鄰的路由器,所以兩個路由器中的路由表中必定會有相同的記錄(這裡所說的相同只是指網路號相同),在這裡r1和r2的路由表都有關於20.0.0.0的記錄:
目的網路號
下一站路由器
距離20-0
路由表對相同的記錄(再次宣告這裡所說的相同只是指網路號相同)的更新是採取「最新和最短距離」的原則更新的,這裡因為r1和r2都是直接與20.0.0.0相連的,所以離網路號20的距離都是0的,所以各自的這條記錄不需要更新,這次更新完後,r1和r2各自的路由表中的資料就會變成:
r1:目的網路號
下一站路由器
距離10-0
20-030
20.0.0.9
1r2:
目的網路號
下一站路由器
距離20-0
30-010
20.0.0.7
1相應的r2與r3也會進行類似這樣的路由表更新,當經過若干次這樣的路由表更新後,網路中的router的路由表就會變成圖中所示的(再詳細的我就不再描述了,我怕有人說我多此一舉啊*^*)。
到此為止我們基本上是知道了由表的生成過程了,但好像還不知道他是怎麼工作的,那讓我們從另乙個情況下看看路由表的生成吧,我們現在把上圖中的網路改造一下:「在10.0.0.0和40.0.0.0這兩個網路中間增加乙個router(r4)把網路號10和40直接連線起來看看(我們假設r4連線兩個網路的ip位址為10.0.0.3和40.0.0.5),在原來已經更新好的路由表的情況下,我們看看r1和r4各自的路由表初始的狀態:
r1:目的網路號
下一站路由器
距離10-0
20-030
20.0.0.9140
20.0.0.9
2r4:
目的網路號
下一站路由器
距離10-0
40-0當r1需要與r4交換路由表的資料時,r1和r4也有一條網路號為40的記錄是相同,但這兩條記錄並不是完全一樣,所以這條記錄是需要更新的,這時對於r1,如果需要到達r4可以選擇一:經過r2、r3,也可以選擇二:直接經過r4,但因為選擇一要經過r2和r3這2個router,而選擇二只需要經過1個router即可,所以r1中關於網路號為40的記錄會被r4的記錄更新為:
r1:目的網路號
下一站路由器
距離10-0
20-030
20.0.0.9140
10.0.0.3
1而對於r4情況則相反,因為自身存在的記錄的距離比r1中原來存放的記錄的距離要短,所以不更新這條記錄,r4更新完後的路由表是:
r4:目的網路號
下一站路由器
距離10-0
40-020
40.0.0.5130
40.0.0.5
2現在我們應該很清楚知道路由表是怎樣幫我們選擇一條最近的路了吧,它不是在傳輸資料的時候再來選擇那條路是最近的,它是在路由表更新的時候就確定那條路更近一些的。從這些例子我們也可以清楚看到最近的路並不就是資料傳輸的最短距離,而是資料傳輸時經過的router的數量最少而已!
路由器功能
要解釋路由器的概念,首先要介紹什麼是路由。所謂 路由 是指把資料從乙個地方傳送到另乙個地方的行為和動作,而路由器,正是執行這種行為動作的機器,它的英文名稱為router。簡單的講,路由器主要有以下幾種功能 第一,網路互連,路由器支援各種區域網和廣域網介面,主要用於互連區域網和廣域網,實現不同網路互相...
路由器wol(wake on lan)功能
工作分三步走 一 設定路由器 二 設定電腦 三 安裝遠端桌面控制軟體 從前面的三步走,我們可以得出要達到網路喚醒的目的所必備的硬體條件 1 支援wol的路由器。現在市面上的路由器一般都會支援。我說一般,是因為我就遇到不一般的了。d link 605l這一款路由器就不支援wol,任憑我想破腦袋也沒有找...
路由器DMZ功能
172.17 校園網 實驗室路由器接入校園網,通過nat分化出網段 192.168.主機a windows 接入路由器 192.168.1.110 主機b ubuntu 接入校園網 172.17.171.178 正常情況下,可以自下向上ping通,即 a ping b,反向不通。1.修改實驗室路由器...