售前電話
135-3656-7657
售前電話 : 135-3656-7657
IP 路由選擇算法
IP 網(wǎng)絡(luò)的路由選擇是由路由器來完成的。路由器每收到一個(gè) IP 數(shù)據(jù)報(bào),就根據(jù)目的 IP 地址查詢路由表,找到匹配網(wǎng)絡(luò)號及下一跳路由器,完成數(shù)據(jù)轉(zhuǎn)發(fā)。如果目的主機(jī)在本網(wǎng)絡(luò),則轉(zhuǎn)換成該主機(jī)的物理地址,重新封裝數(shù)據(jù)報(bào)后將其發(fā)給主機(jī)。如果路巾表指 定至目的主機(jī)的下一跳路由器,則按照此路由轉(zhuǎn)發(fā);如果找不到匹配網(wǎng)絡(luò),則發(fā)往默認(rèn)路 由器。IP 路由選擇的算法如圖
為了判斷目的主機(jī)是否在某個(gè)直接相連的網(wǎng)絡(luò)上,源主機(jī)檢查目的主機(jī)因特網(wǎng)地址 的網(wǎng)絡(luò)標(biāo)識。它將目的主機(jī)的網(wǎng)絡(luò)號與它自己直接連接的網(wǎng)絡(luò)的網(wǎng)絡(luò)號相比較,如果網(wǎng) 絡(luò)號相同,源主機(jī)將數(shù)據(jù)報(bào)封裝在目的地址為目標(biāo)硬件地址的幀中直接發(fā)送給目標(biāo)。如 果網(wǎng)絡(luò)號不同,源主機(jī)必須將數(shù)據(jù)報(bào)發(fā)送給路由器來傳輸,然后源主機(jī)將數(shù)據(jù)報(bào)封裝在目的地址為路由器的硬件地址的幀中。路由器收到幀以后,抽取出數(shù)據(jù)報(bào),然后將數(shù)據(jù)報(bào)傳送給路由器處理。通常,網(wǎng)絡(luò)管理員會為網(wǎng)上的每一臺主機(jī)配置一個(gè)默認(rèn)路由器,即“默認(rèn)網(wǎng)關(guān)"。默認(rèn)路由器提供到遠(yuǎn)端網(wǎng)絡(luò)上所有主機(jī)的訪問。
2.路由表
IP路由器根據(jù)自己路由表中的信息決定是否轉(zhuǎn)發(fā)數(shù)據(jù)報(bào)。路由表包括每個(gè) 目 的 網(wǎng)絡(luò)的 IP 地址,而不是每個(gè)目的主機(jī)的地址。這樣就縮減了路由表的大小,因 為路由表 中的信息數(shù)措直接與構(gòu)成因特網(wǎng)的網(wǎng)絡(luò)數(shù)最(而不是主機(jī)數(shù)暈)成正比。當(dāng)一個(gè)路由器接收到數(shù)據(jù)報(bào)時(shí),它首先檢查該數(shù)據(jù)報(bào)的目的 IP 地址,在其路由表中搜索匹配。如果 目 標(biāo)在遠(yuǎn)端網(wǎng)絡(luò),路由器將該數(shù)據(jù)報(bào)發(fā)送到距最終目標(biāo)更近的另一個(gè)路由器。如果目標(biāo)在與路 由器某個(gè)端口直接相連的網(wǎng)絡(luò)上,則將數(shù)據(jù)報(bào)發(fā)送到這個(gè)端口。
在巨大的因特網(wǎng)上維護(hù)所有路由器上的路由表是很困難的。多數(shù)情況下,路由表
是動態(tài)維護(hù)的,以反映目前因特網(wǎng)系統(tǒng)的拓?fù)浣Y(jié)構(gòu),并且允許繞過失效的連接進(jìn)行路巾 。 路由器一般通過與其他路由器一起分擔(dān)路由協(xié)議實(shí)現(xiàn)這樣的功能。T CP/I P 環(huán) 境下常用 的路由協(xié) 議包括:路由信息協(xié)議( RIP , Routing Information Protocol) 、開放式最短路徑優(yōu)先協(xié)議 C OSPF, Open Shortest Path First ) 和邊界網(wǎng)關(guān)協(xié)議( BGP , Border GatewayProtocol) 。下圖列出了一個(gè)典型的用RIP創(chuàng)建的路由表:
路由表中的每一行是一個(gè)單獨(dú)的條目,包括如下信息:
•Destina tio n( 目的地址)---目 的 網(wǎng)絡(luò)的 IP 地址。路由器搜索數(shù)據(jù)報(bào)報(bào)頭中的目的 IP 地址與這個(gè)域的匹配。
•Next Router( 下一個(gè)路由器)-距離最終目標(biāo)更近的 鄰接路由器的 IP 地址。要達(dá)到目的地址,本地路由器必須把數(shù)據(jù)報(bào)送給這個(gè)路由器。這個(gè)域中的“連接” ( conne ct ) 值表示目的網(wǎng)絡(luò)直接和本地路由器的某個(gè)端口直接相連。
•Hops ( 跳步)路由器和目的網(wǎng)絡(luò)之間的跳步數(shù)。數(shù)據(jù)報(bào)必須經(jīng)過的每一個(gè)中 間路山器算做一個(gè)跳步。
•T ime( 時(shí)間)本條目從上次更新到現(xiàn)在的時(shí)間。路由器每次接收到某個(gè)路由 的更新信息,都拋棄該路由舊的條目,然后重新初始化時(shí)間。
•Source( 源地址)己-一-為本條目提供信息的路由協(xié)議名稱。
3.IP 路由選擇示例:下面這個(gè)例子說明了 IP 數(shù)據(jù)報(bào)如何從一臺主機(jī)在因特網(wǎng)上發(fā)送路由到另一臺主機(jī)。下圖說明其拓?fù)浣Y(jié)構(gòu),包括源主機(jī)(主機(jī) A ) 、目的主機(jī)(主機(jī) B) 、3 個(gè)中間路由器和 4 個(gè)不同的物理網(wǎng)絡(luò)。
假設(shè)在網(wǎng)絡(luò) 128 . 1. 0.0 上的主機(jī) A 想用 T elnet 協(xié)議連接網(wǎng)絡(luò) 128 . 4. 0. 0 上的主機(jī)
B。T elne t 是一個(gè)遠(yuǎn)程終端訪問協(xié)議,允許主機(jī)與另一臺主機(jī)上的程序通信。
(1 )主機(jī) A 將 IP 數(shù)據(jù)報(bào)發(fā)送給路由器 A因?yàn)橹鳈C(jī) A 和主機(jī) B 在不同的網(wǎng)絡(luò)上,網(wǎng)絡(luò) A 必須使用 IP 路由器的服務(wù)把數(shù)據(jù)報(bào)傳輸給主機(jī) B。根據(jù)初始設(shè)置,主機(jī) A 知道它的默認(rèn)網(wǎng)關(guān)是路由器 A , IP 地址為 128 . 1.0. 2。因此,主機(jī) A 知道所有到主機(jī) B 的數(shù)據(jù)報(bào)都必須送到路由器 A。如果主機(jī) A 的 ARP 緩存中沒有路由器 A 的硬件地址,它發(fā)出 ARP 請求并等待路由器 A 響應(yīng)。當(dāng)?shù)刂酚成浯嬖诤?,主機(jī) A 將送給主機(jī) B 的數(shù)據(jù)報(bào)封裝到目的 MAC 地址為080002001231( 路由器 A 的端口 1) ' 源 MAC 地址為080002001111(主 機(jī)A )' 類型域?yàn)镺SOO (IP ) 的 以 太網(wǎng)幀中,如下圖所示。