-
外部網關協議
鎖定
外部網關協議(Exterior Gateway Protocol)是AS之間使用的路由協議,最初於1982年由BBN技術公司的EricC.Rosen及DavidL.Mills提出。其最早在RFC827中描述,並於1984年在RFC904中被正式規範。EGP是一種簡單的(網絡)可達性協議,其與現代的距離-矢量協議和路徑-矢量協議不同,它僅限適用於樹狀拓撲的網絡。
由於EGP存在很多的侷限性,IETF邊界網關協議工作組制定了標準的邊界網關協議(BGP),當前被廣泛使用。
- 中文名
- 外部網關協議
- 時 間
- 1982年
- 提出者
- EricC.Rosen及DavidL.Mills提出
- 作 用
- 用於在非核心的相鄰網關傳輸信息
外部網關協議簡介
外部網關協議(Exterior Gateway Protocol,EGP)是一個在自治系統網絡中兩個鄰近的網關主機(每個都有它們自己的路由)間交換路由信息的協議。EGP常常被用來在英特網的兩個主機間交換路由表信息。路由表包括已知的路由器清單、它們能到達的地址以及與每個路由的路徑相關的成本度量,以便選出最好的可用路徑。每個路由器按照一定的時間間隔,通常在120秒到480秒之間,就給它的鄰近路由發送信息,然後鄰近路由就會將自己的完整路由表發回給它。EGP-2是EGP的最新版本。
[1]
大部分的公司和機構將它們擁有的路由器組合成一個自治系統,自治系統的本地路由選擇信息使用RIP或者OSPF等內部網關協議進行收集。而在這些自治系統中,通過為位於各自自治區域邊界的兩台相鄰路由器提供交換路由選擇信息的方法,選擇一台或者多台路由器使用EGP(外部網關協議,Exterior Gateway Protocol)與其他自治區域通信。EGP路由器只向其自治區域邊界上的路由器轉發路由選擇表信息來獲得對方自治系統的路由信息,從而為IP數據報選擇最佳路由。因此,
[2]
EGP協議應具有以下三個基本功能:
[3]
1. 支持鄰站獲取機制,即允許一個路由器請求另一個路由器同意交換可達路由信息。
2. 路由器持續測試其EGP鄰站是否有響應。
3. EGP鄰站週期性地傳送路由更新報文來交換網絡可達路由信息。
EGP協議為了實現以上三個基本功能,定義了在該協議實現過程中使用的10種報文類型,如表1所示。
表1 EGP協議報文類型
報文類型 | 報文描述 |
獲取請求(Acquisition Request) | 請求路由器建立外部鄰站關係 |
獲取確認(Acquisition Confirm) | 對獲取請求報文的肯定響應 |
獲取拒絕(Acquisition Refuse) | 對獲取請求報文的否定響應 |
中止請求(Cease Request) | 請求路由器中止外部鄰站關係 |
中止確認(Cease Confirm) | 對中止請求報文的肯定響應 |
你好(Hello) | 請求外部鄰站回答是否活躍 |
已聽到(I Heard You) | 對Hello報文的回答 |
輪詢請求(Poll Request) | 請求更新網絡路由信息 |
路由更新(Routing Update) | 更新網絡可達信息 |
差錯報文(Error) | 對不正確報文的響應 |
在EGP協議中,所有的EGP報文都有其固定的報頭用於説明報文類型。EGP報文的報頭格式如圖1所示。
圖1 EGP報文頭格式
從圖1可以看出,版本字段取整數值,指出該報文使用的EGP協議版本號。以便接收方通過檢測來確認雙方是否使用相同版本的EGP協議。類型字段指出EGP報文的類型,代碼字段給出了報文的子類型。狀態字段包含了與該報文有關的狀態信息。校驗和字段用來確認報文的正確到達,自治系統編號字段表示發送該報文路由器所在的自治系統編號。序號字段用於收發雙方進行聯繫,路由器請求鄰站時賦值一個初始序號,以後每發送一個報文,序號將增加1。鄰站回送最近收到的序號值,發送方將回送值與發送時的值做比較,以確保報文傳輸的正確性。
EGP建立外部路由器間通信的第一步是執行鄰居探測。在鄰居探測過程中,一個外部路由器向另一個外部路由器發出請求,要求同意它們共享路由選擇表信息。在通信建立之後,路由器繼續測試EGP鄰居是否正在響應。路由選擇表信息使用路由更新信息,按照120~480秒的間隔在EGP鄰居之間進行交換。鄰居通過發送其完全路由選擇表做出響應。
EGP允許外部網關只通告在網關自治系統內完全可到達的目的網絡,從而對外部網關加以限制。因此,外部網關使用EGP將信息傳遞到它的EGP鄰居,而不是在自治系統外部將其自己通告給路由器。
由於所有的路由選擇協議域必須連接到相同的中心網絡,所以EGP不支持循環的拓撲結構。EGP只能向給定網絡通告一條路由。對於給定的任何兩台機器之間的通信量,不能分擔有效負載,並且當某種通信量狀況導致選擇路由中出現擁塞時,數據包可能選擇非最佳路由。因此,如果主路由失效,EGP很難切換到另一條備用路由。
外部網關協議當前形勢
當前國際互聯網絡含有大量智能網關和很多無智能的網關。智能網關使用網間連接協議(GGP)[3]動態地交換它們自身間的路由選擇信息。無智能的網關不能動態地交換路由選擇信息。無智能的網關必須登記在智能網關路由表上,而且智能網關列表中的無智能的網關狀態(例如,增加新無智能的網關)改變時需要人工干預。
在智能網關間路由通信量的量取決於智能網關的數目和網絡的總數。因為無智能的網關典型情況下連接位於國際互聯網絡邊緣的單個網絡,典型地在路由表中為每個無智能的網關存在一個或者多個網絡。連接國際互聯網絡邊緣的單個網絡的網關多半稱作"支線"網關。當前用於智能網關的GGP程序有容量的限制。急切地需要對這個程序進行重大改進。這很難完成,因為智能網關由若干不同的團體維護,而且很難分離出這些網關的一個子集用於測試新程序。
外部網關協議將來形勢
在將來,根據情況看將有大量的平等的網關獨立系統。為了維護路由選擇信息每個將擁有專用內部程序,也許通過一個內部網關協議(IGP)。網關的智能化將導致被用於網關參予的自治系統的IGP的智能化。每個自治系統的有些網關將通過一個外部網關協議(EGP)[2]與其他的自治系統的一些網關交換路由選擇信息。
受原有智能網關進入大量自治系統之內的影響答應更靈活的為了改善路由選擇過程進行開發和測試。不同的自治系統內部可以採用不同的路由選擇過程,只要他們通過EGP和其他的自治系統通訊。
外部網關協議過渡狀況
從當前形勢過渡到將來形勢的第一步是用至少實現了EGP的一個子集的網關淘汰全部無智能的網關。
這些子集被稱作“支線外部網關協議”,並且在RFC0[1]中被描述。
第二步是將現存智能網關納入到自治系統之中去。由不同的團體維護和編制程序的網關將變成不同的自治系統。照目前情況來看,這將導致一個十分龐大的自治系統和三個或四個小的自治系統。在這個階段大規模地自治系統可能稱為"核心"自治系統。全部其他的自治系統將要成為通過EGP附着於這個核心的支線。
第三步將規定完整的EGP協議,而且在平等的自治系統間提供
外部網關協議作用
外部網關協議用於在非核心的相鄰網關之間傳輸信息。非核心網關包含互聯網絡上所有與其直接相鄰的網關的路由信息及其所連機器信息,但是它們不包含Internet上其他網關的信息。對絕大多數EGP而言,只限制維護其服務的局域網或廣域網信息。這樣可以防止過多的路由信息在局域網或廣域網之間傳輸。EGP強制在非核心網關之間交流路由信息。
由於核心網關使用GGP,非核心網關使用EGP,而二者都應用在Internet上,所以必須有某些方法使二者彼此之間能夠通信。Internet使任何自治(非核心)網關給其他系統發送“可達”信息,這些信息至少要送到一個核心網關。如果有一個更大的自治網絡,常常認為有一個網關來處理這些可達信息。
和GGP一樣,EGP使用一個查詢過程來讓網關清楚它的相鄰網關並不斷地與其相鄰者交換路由和狀態信息。EGP是狀態驅動的協議,意思是説它依賴於一個反映網關情況的狀態表和一組當狀態表項變化時必須執行的一組操作。
- 參考資料
-
- 1. 外部網關協議 .TechTarget信息化[引用日期2015-08-20]
- 2. BGP協議分析---報文和狀態機 .net130.2005-7-18[引用日期2014-12-16]
- 3. 謝希仁.計算機網絡.北京:電子工業出版社,2008年1月:156-160