原理
作用
路由協定作為
TCP/IP協定族中重要成員之一,其選路過程實現的好壞會影響整個Internet網路的效率。按套用範圍的不同,路由協定可分為兩類:在一個AS(Autonomous System,
自治系統,指一個
互連網路,就是把整個Internet劃分為許多較小的網路單位,這些小的網路有權自主地決定在本系統中應採用何種路由協定)內的路由協定稱為
內部網關協定(interior gateway protocol),AS之間的路由協定稱為
外部網關協定(exterior gateway protocol)。這裡網關是
路由器的舊稱。正在使用的
內部網關路由協定有以下幾種:RIP-1,RIP-2,IGRP,EIGRP,IS-IS和OSPF。其中前3種路由協定採用的是
距離向量算法,IS-IS和OSPF採用的是鏈路狀態算法,EIGRP是結合了鏈路狀態和
距離矢量型
路由選擇協定的Cisco私有路由協定。對於小型網路,採用基於
距離向量算法的路由協定易於配置和管理,且套用較為廣泛,但在面對大型網路時,不但其固有的環路問題變得更難解決,所占用的
頻寬也迅速增長,以至於網路無法承受。因此對於大型網路,採用鏈路狀態算法的IS-IS和OSPF較為有效,並且得到了廣泛的套用。IS-IS與OSPF在質量和性能上的差別並不大,但OSPF更適用於IP,較IS-IS更具有活力。IETF始終在致力於OSPF的改進工作,其修改節奏要比IS-IS快得多。這使得OSPF正在成為套用廣泛的一種路由協定。不論是傳統的
路由器設計,還是即將成為標準的
MPLS(多協定標記交換),均將OSPF視為必不可少的路由協定。
外部網關協定最初採用的是EGP。EGP是為一個簡單的樹形
拓撲結構設計的,隨著越來越多的用戶和網路加入Internet,給EGP帶來了很多的局限性。為了擺脫EGP的局限性,IETF
邊界網關協定工作組制定了標準的邊界網關協定--BGP。
常見路由協定
RIP、IGRP、EIGRP、OSPF、IS-IS是內部網關協定(
IGP),適用於單個
ISP的統一路由協定的運行,一般由一個ISP運營的網路位於一個AS(
自治系統)內,有統一的AS number(自治系統號)。BGP是
自治系統間的路由協定,是一種
外部網關協定,多用於不同ISP之間交換路由信息,以及大型企業、政府等具有較大規模的私有網路。
RIP
RIP很早就被用在Internet上,是最簡單的路由協定。它是“路由信息協定(Route Information Protocol)”的簡寫,主要傳遞路由信息,通過每隔30秒廣播一次
路由表,維護相鄰路由器的位置關係,同時根據收到的路由表信息計算自己的路由表信息。RIP是一個
距離矢量路由協定,最大跳數為15跳,超過15跳的網路則認為目標網路不可達。此協定通常用在網路架構較為簡單的小型網路環境。現在分為RIPv1和RIPv2兩個版本,後者支持
VLSM技術以及一系列技術上的改進。RIP的收斂速度較慢。
OSPF
OSPF協定是“開放式最短路徑優先(Open Shortest Path First)”的縮寫,屬於鏈路狀態路由協定。OSPF提出了“區域(area)”的概念,每個區域中所有路由器維護著一個相同的鏈路狀態資料庫(LSDB)。區域又分為骨幹區域(骨幹區域的編號必須為0)和非骨幹區域(非0編號區域),如果一個運行OSPF的網路只存在單一區域,則該區域可以是骨幹區域或者非骨幹區域。如果該網路存在多個區域,那么必須存在骨幹區域,並且所有非骨幹區域必須和骨幹區域直接相連。OSPF利用所維護的鏈路狀態資料庫,通過最短路徑優先算法(
SPF算法)計算得到路由表。OSPF的收斂速度較快。由於其特有的開放性以及良好的擴展性,目前OSPF協定在各種網路中廣泛部署。
IS-IS
主條目:中間系統到中間系統
IS-IS協定是Intermediate system to intermediate system(中間系統到中間系統)的縮寫,屬於鏈路狀態路由協定。標準IS-IS協定是由
國際標準化組織制定的ISO/IEC 10589:2002所定義的,標準IS-IS不適合用於IP網路,因此
IETF制定了適用於IP網路的集成化IS-IS協定(Integrated IS-IS)。和OSPF相同,IS-IS也使用了“區域”的概念,同樣也維護著一份鏈路狀態資料庫,通過最短生成樹算法(SPF)計算出最佳路徑。IS-IS的收斂速度較快。集成化IS-IS協定是ISP骨幹網上最常用的IGP協定。
IGRP
IGRP協定是“內部網關路由協定(Interior Gateway Routing Protocol)”的縮寫,由
Cisco於二十世紀八十年代獨立開發,屬於Cisco私有協定。IGRP和RIP一樣,同屬距離矢量路由協定,因此在諸多方面有著相似點,如IGRP也是周期性的廣播路由表,也存在最大跳數(默認為100跳,達到或超過100跳則認為目標網路不可達)。IGRP最大的特點是使用了混合度量值,同時考慮了鏈路的頻寬、延遲、負載、
MTU、可靠性5個方面來計算路由的度量值,而不像其他IGP協定單純的考慮某一個方面來計算度量值。目前IGRP已經被Cisco獨立開發的EIGRP協定所取代,版本號為12.3及其以上的
Cisco IOS(Internetwork Operating System)已經不支持該協定,現在已經罕有運行IGRP協定的網路。
EIGRP
主條目:增強型內部網關路由協定
由於IGRP協定的種種缺陷以及不足,Cisco開發了EIGRP協定(增強型內部網關路由協定)來取代IGRP協定。EIGRP屬於高級距離矢量路由協定(又稱混合型路由協定),繼承了IGRP的混合度量值,最大特點在於引入了非等價負載均衡技術,並擁有極快的收斂速度。EIGRP協定在Cisco設備網路環境中廣泛部署。
BGP
為了維護各個ISP的獨立利益,標準化組織制定了ISP間的路由協定BGP。BGP是“邊界網關協定(Border Gateway Protocol)”的縮寫,處理各ISP之間的路由傳遞。但是BGP運行在相對核心的地位,需要用戶對網路的結構有相當的了解,否則可能會造成較大損失。