路由器是用來連接不同網(wǎng)段或網(wǎng)絡的,在一個局域網(wǎng)中,如果不需與外界網(wǎng)絡進行通信的話,內(nèi)部網(wǎng)絡的各工作站都能識別其它各節(jié)點,完全可以通過交換機就可以實現(xiàn)目的發(fā)送,根本用不上路由器來記憶局域網(wǎng)的各節(jié)點MAC地址。路由器識別不同網(wǎng)絡的方法是通過識別不同網(wǎng)絡的網(wǎng)絡ID號進行的,所以為了保證路由成功,每個網(wǎng)絡都必須有一個唯一的網(wǎng)絡編號。路由器要識別另一個網(wǎng)絡,首先要識別的就是對方網(wǎng)絡的路由器IP地址的網(wǎng)絡ID,看是不是與目的節(jié)點地址中的網(wǎng)絡ID號相一致。如果是當然就向這個網(wǎng)絡的路由器發(fā)送了,接收網(wǎng)絡的路由器在接收到源網(wǎng)絡發(fā)來的報文后,根據(jù)報文中所包括的目的節(jié)點IP地址中的主機ID號來識別是發(fā)給哪一個節(jié)點的,然后再直接發(fā)送。
為了更清楚地說明路由器的工作原理,現(xiàn)在我們假設有這樣一個簡單的網(wǎng)絡。假設其中一個網(wǎng)段網(wǎng)絡ID號為"A",在同一網(wǎng)段中有4臺終端設備連接在一起,這個網(wǎng)段的每個設備的IP地址分別假設為:A1、A2、A3和A4。連接在這個網(wǎng)段上的一臺路由器是用來連接其它網(wǎng)段的,路由器連接于A網(wǎng)段的那個端口IP地址為A5。同樣路由器連接另一網(wǎng)段為B網(wǎng)段,這個網(wǎng)段的網(wǎng)絡ID號為"B",那連接在B網(wǎng)段的另幾臺工作站設備設的IP地址我們設為:B1、B2、B3、B4,同樣連接與B網(wǎng)段的路由器端口的IP地址我們設為B5,結(jié)構(gòu)如圖1所示。
圖1
在這樣一個簡單的網(wǎng)絡中同時存在著兩個不同的網(wǎng)段,現(xiàn)如果A網(wǎng)段中的A1用戶想發(fā)送一個數(shù)據(jù)給B網(wǎng)段的B2用戶,有了路由器就非常簡單了。
首先A1用戶把所發(fā)送的數(shù)據(jù)及發(fā)送報文準備好,以數(shù)據(jù)幀的形式通過集線器或交換機廣播發(fā)給同一網(wǎng)段的所有節(jié)點(集線器都是采取廣播方式,而交換機因為不能識別這個地址,也采取廣播方式),路由器在偵聽到A1發(fā)送的數(shù)據(jù)幀后,分析目的節(jié)點的IP地址信息(路由器在得到數(shù)據(jù)包后總是要先進行分析)。得知不是本網(wǎng)段的,就把數(shù)據(jù)幀接收下來,進一步根據(jù)其路由表分析得知接收節(jié)點的網(wǎng)絡ID號與B5端口的網(wǎng)絡ID號相同,這時路由器的A5端口就直接把數(shù)據(jù)幀發(fā)給路由器B5端口。B5端口再根據(jù)數(shù)據(jù)幀中的目的節(jié)點IP地址信息中的主機ID號來確定最終目的節(jié)點為B2,然后再發(fā)送數(shù)據(jù)到節(jié)點B2。這樣一個完整的數(shù)據(jù)幀的路由轉(zhuǎn)發(fā)過程就完成了,數(shù)據(jù)也正確、順利地到達目的節(jié)點。
當然實際上像以上這樣的網(wǎng)絡算是非常簡單的,路由器的功能還不能從根本上體現(xiàn)出來,一般一個網(wǎng)絡都會同時連接其它多個網(wǎng)段或網(wǎng)絡,就像圖2所示的一樣,A、B、C、D四個網(wǎng)絡通過路由器連接在一起。
圖2