a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

新聞中心

EEPW首頁 > 測試測量 > 設計應用 > BGP4+協議及一致性測試

BGP4+協議及一致性測試

——
作者:吳英樺 時間:2006-07-22 來源:中國多媒體通信 收藏
一 概述

  下一代互聯網將以IPv6為核心技術,IPv6網絡的形成是一個漸進的發展過程,這個過程的第一步是穿過IPv4網絡的“海洋”連接各個IPv6實驗網“孤島”,第二步是在IPv6商業網絡逐步建立的情況下,實現不同運營商IPv6網絡的互聯,同時實現運營商網絡內部不同IPv6自治域之間的互聯,通過逐步的互聯使網絡的規模不斷擴大,最終形成統一的IPv6大網。

  支持IPv6的邊界網關協議()是支持上述幾種互聯方式的唯一的IPv6域間路由協議,對于實現IPv6網的互聯互通、完成IPv4到IPv6網絡技術的平穩過渡起著非常關鍵的作用。是對BGP4協議的擴展,沿用了RFC1771中規定的BGP4的基本消息格式,增加了RFC2858規定的用于傳送IPv6路由信息的擴展屬性,并按照RFC1771中的規定對所有IPv6路由進行處理,同時支持RFC1966、RFC1997等協議中規定的BGP路由反射、BGP聯盟等擴展功能。

  建立會話連接的兩個路由器可以位于一個自治域內,也可以位于不同的自治域邊界上,前者構成了兩個IBGP4+對等體,后者構成了兩個EBGP4+對等體。兩個BGP4+對等體之間使用TCP協議建立傳輸層的連接,本地監聽TCP的179端口,在TCP連接之上傳送BGP4+協議消息。

  BGP4+協議的內容包含三方面的規定:一是消息傳送規程的規定,二是路由處理方面的規定,三是消息格式的規定。下文將就這三方面的規定做簡要介紹。此外,由于BGP4+在IPv6網的發展階段有獨特的重要作用,對IP路由器進行BGP4+協議一致性檢驗是非常必要和重要的,因此本文對一致性的內容也將做簡要說明。

二  通信規程

  BGP4+規定了一個簡單而高效的通信規程,主要包括連接的建立、保持和斷開方面的規定。

  BGP4+對等體向對端發送OPEN消息,其中包含協議版本號、連接保持時間、本地的路由器標識符、認證信息等,對端如果接受這些參數,就回復KEEPALIVE消息確認連接的建立。

  BGP4+會話連接成功地建立之后,路由器可以將需要建立或刪除的路由信息通過UPDATE消息傳送到對端。如果沒有路由信息需要傳送,路由器要定期向對端發送KEEPALIVE消息,以便保持連接的激活狀態。

  對端路由器收到UPDATE消息后,如果認為路由信息正確,則在完成本地的路由處理后向其他BGP4+對等體轉發路由信息;如果認為路由信息有錯,則回復一個NOTIFICATION消息報告錯誤狀態。

  BGP4+會話連接的斷開存在兩種情況,一種是在超過了一個規定的時間后,在既沒收到路由也沒收到KEEPALIVE消息的情況下自動斷開連接;還有一種情況是在收到NOTIFICATION消息后斷開連接,終止BGP4+會話關系。 

 
三  路由處理規程

  由于路由信息均通過UPDATE消息傳送,因此路由處理方面的規定主要是針對UPDATE消息進行的處理。從下文UPDATE消息的格式上可以看出,隨路由一同傳來的還有路由的屬性,包括路由的來源、經過的自治域、路由的本地優先級、權值等信息,根據這些信息確定路由的有效性,決定是否向本地路由庫中添加路由或刪除某個路由、是否向其他BGP4+對等體轉發路由以及如何轉發,隨后完成一系列相關動作。路由處理上主要包括下列功能:

  1.路由轉發

  路由器收到UPDATE消息后,如果確認路由有效,則在本地的路由表中增加或刪除相應路由,同時將路由信息向其他BGP4+對等體轉發。如果收到的路由信息來自EBGP4+對等體,則要向其他所有EBGP4+對等體和自治域內的所有的IBGP4+對等體轉發路由;如果路由來自IBGP4+對等體,則向所有EBGP4+對等體轉發路由,不把路由轉發給自治域內的其他任何IBGP4+對等體。

  2.路由選擇

  如果路由器收到了兩個不同的BGP4+對等體發來的同一條路由,就要選擇其中的一條做為本地路由并向其他對等體轉發,路由選擇遵循如下幾條主要原則

  (1)外部對等體發來的路由優于內部對等體發來的路由;

  (2)對于從外部對等體收到的路由,優先選擇MULTI-EXIT-DISC值低的路由(應注意此時兩條路由應來自同一個外部自治域,否則不具備可比較性);

  (3)對于所有從內部對等體收到的路由,優先選擇LOCAL-PREF值高的路由;

  (4)能夠根據預先設置的策略優先選擇某個路由;

  (5)在所有可比較條件均相同的情況下,根據BGP4+標識符打破平局,選擇BGP4+標識符值低的路由。

  3.重疊路由處理

  如果路由器收到了兩個不同的BGP4+對等體發來的兩條重疊路由,通常要選擇更精確(more specific)的路由,即地址前綴更長的路由。

  4.路由聚合

  路由器收到兩個不同的BGP4+對等體發來的兩條路由后,如果發現兩條路由可以聚合,則要將他們聚合起來轉發給第三方,同時要在UPDATE消息中對聚合的路由正確地賦予ORIGIN、AS_PATH等路由屬性字段的值。

  5.路由傳送流量控制

  路由器既要傳送BGP4+等控制信息,又要傳送用戶IP業務流,兩類數據的傳送和處理是共享線路帶寬和節點設備資源的,控制信息的過多傳送會影響用戶IP業務的質量,因此BGP4+中規定了路由傳送的流量控制策略,設置了若干個計時器,保證建立路由的UPDATE消息的傳送會間隔一定時間,同時保證刪除路由的UPDATE消息立即傳送,不受時間間隔約束。

  6.路由反射

  BGP4+協議要求IBGP4+對等體收到來自其他自治域的路由消息后,要轉發給本自治域內的所有IBGP4+對等體,這就意味著IGBP4+對等體之間要建立全網狀的連接,這對網絡的擴展顯然是不利的。因此,RFC1966中規定了一個擴展的功能,即將IBGP4+對等體分成若干組,每組選一個路由器做為反射路由器(RR),其他路由器為客戶(Client)。

  協議規定,RR之間建立網狀連接,組與組之間路由的轉發要通過RR;在組內,以RR為核心建立星型連接,client之間路由的傳遞要通過RR轉發,組內這種路由信息的傳送方式被形象地比喻為“反射“。通過這種方式保證了路由信息送達所有的IBGP4+對等體,同時避免了所有IBGP4+對等體的全網狀連接。RFC1966對主要的處理功能進行了規定。

  7.BGP聯盟

  解決IBGP4+自治域內所有對等體全網狀互連的另一個方式是使用BGP聯盟,即將一個自治域劃分為若干子域,使自治域成為多個子域構成的聯盟。子域內部的對等體可進行網狀互聯,子域之間不需要網狀互聯。聯盟對外使用一個統一的AS號,對內為每個子域分配了內部的AS號。同時,在BGP消息中還規定了一個COMMUNITIES屬性,利用這個屬性的值來控制路由信息傳播的范圍。RFC1997對相關的路由處理功能進行了規定。

四  消息格式

  BGP消息分為四類,即OPEN、UPDATE、KEEPALIVE和NOTIFICATION,消息功能分別如下

  (1)Open:用于請求建立BGP4+會話連接;

  (2)Update:用于傳送建立或刪除路由的信息;

  (3)Notification:在出現路由差錯時向對端發送通知,同時將出錯原因告知對端;

  (4)Keepalive:為保持激活狀態而傳送的消息,此外建立連接時做Open消息的響應。

  四類消息采用通用的BGP4+消息格式,消息由標簽(marker)、消息長度、消息類型、消息體四個部分構成,前三個部分構成了BGP4+消息的通用消息頭。

  BGP4+通用消息頭中,各個字段的功能如下:

  (1)       Marker – 包含信息接收端可預測值,例如認證信息;

  (2)       Length – 以字節為單位的包括消息頭在內的消息總長度;

  (3)       Type – 消息類型代碼。“1”為Open消息,“2”為UPDATE消息,“3”為NOTIFICATION消息,“4”為KEEPALIVE。 

 



  1.Open消息格式

  OPEN消息用于發起建立BGP會話連接 

 



  Open消息中各個字段的功能如下:

  (1)       ersion :指明發端路由器使用的協議版本號;

  (2)       My Autonomous System :指明發端路由器的本地AS號;

  (3)       Hold Time :發端路由器建議的保持激活時間;

  (4)       BGP Identifier :發端路由器的標識符;

  (5)       OptParmLen :指明以字節為單位的可選參數字段的長度;

  (6)       Optional Parameters :其中包含一些可選參數,例如認證信息等。
2.UPDATE消息格式

  BGP4+協議中所有的路由信息都是通過UPDATE消息傳送的。



 

  UPDATE消息中各個字段的功能如下:

  (1)不可達路由長度:指明刪除路由字段的長度,以字節為單位;

  (2)刪除路由:其中包含若干需要刪除的IPv4路由的地址前綴,如果單純傳送IPv6路由,這一字段可以為空;

  (3)路徑屬性總長度:指明路徑屬性字段的長度,以字節為單位;

  (4)路徑屬性:其中包含與路由相關的參數以及IPv6路由信息;

  (5)網絡層可達信息:其中包含若干需要建立的IPv4路由的地址前綴,如果單純傳送IPv6路由,這一字段可以為空。

  BGP4+是對BGP4協議的擴展,不使用BGP4定義的刪除路由和網絡層可達信息字段來傳送路由,IPv6路由及相關的參數均通過路徑屬性中的字段來傳送。路徑屬性字段中的主要子字段及其功能如下:

  (1)ORIGIN:指明路由的來源,來自自治域內、自治域外,或通過其他途徑得到;

  (2)AS_PATH:路由經過的自治域的列表;

  (3)NEXT_HOP:IPv4路由的下一跳地址,如果單純傳送IPv6路由,此字段可以為空;

  (4)MULT_EXIT_DISC(MED):來自自治域外的路由的權值,進行路由選擇時,MED值較低的路由被優先選擇;

  (5)LOCAL_PREF:本自治域內路由的優選等級,進行路由選擇時,此值較高的路由被優先選擇;

  (6)ATOMIC_AGGREGATE:如果路由器選擇了一個較低精確度(less specific)的路由,而不是選擇較高精確度的路由,則傳送路由時用這一屬性通知其他路由器;

  (7)MP_REACH_NLRI:其中包含若干個需要建立的IPv6路由的地址前綴及其下一跳地址;

  (8)MP_UNREACH_NLRI:其中包含若干個需要刪除的IPV6路由的地址前綴。 

 

3.NOTIFICATION消息格式

  Notification消息主要用于發送差錯通知。

  消息中各個字段的功能如下:

  (1)Error Code : 錯誤類型代碼;

  (2)Error Subcode :某種錯誤類型下具體的出錯原因的代碼;

  (3)Data :包含與出錯類型有關的診斷用信息,例如,如果收端路由器發現UPDATE消息中的某個屬性類型錯誤,會將該屬性的類型、長度和值復制到Data字段中傳送給發端路由器。

  BGP4+中規定的錯誤類型有如下六種:

  (1)消息頭錯誤 :消息頭中的差錯包括marker字段出現錯誤值、Type字段出現未定義的消息類型值、Length字段的值有錯等等;

  (2)Open消息錯誤 :指Open消息中出現了不可識別的協議版本號、AS號、路由器標識符、不可接受的計時器值等等;

  (3)Update消息錯誤:指UPDATE消息中出現了屬性格式錯誤、屬性值不可識別或不合理、缺少了某些必備屬性等情況;

  (4)保持激活計時器超時 :指在規定的保持激活時間范圍內沒收到對端路由器發來的Keepalive消息;

  (5)有限狀態機錯誤:指路由器發現的本地的某些故障狀態,此時路由器會主動用Notification消息向對端發送錯誤通知;

  (6)終止(Cease):路由器在沒有任何故障的情況下,主動向對端發送錯誤類型為Cease的Notification消息,用于斷開連接。

  4.KEEPALIVE消息格式

  Keepalive消息用于保持兩個路由器BGP4+會話連接的激活狀態。該消息只有消息頭,沒有消息體。路由器上有兩個計時器的值與保持激活有關,即keepalive計時器和Hold Time計時器。KeepAlive計時器的缺省值為30秒,發端路由器在沒有任何消息需要發送的情況下,必須每隔30秒向對端發送一次keepalive消息,以便保持會話連接的激活狀態;Hold Time計時器的缺省值為90秒,收端路由器如果超過90秒還未收到對端發來的keepalive消息,則發送Notification消息斷開連接。

  將BGP4+協議對消息格式的規定與對通信規程、路由處理規程的規定相結合,我們可以清楚地看出BGP4+協議的概況。

五  協議一致性

  路由器進行BGP4+的協議一致性,是為了檢驗不同廠商開發的IPv6路由器支持BGP4+協議的準確性,判斷路由器完成的各種處理功能是否符合國際標準的規定。主要包括下列測試內容:

  (1)連接建立功能測試:檢驗路由器建立BGP4+會話連接的能力;

  (2)UPDATE消息格式:檢驗傳送路由信息的UPDATE消息的格式是否符合BGP4+協議的規定;

  (3)UPDATE消息處理功能測試:檢驗路由器是否能對UPDATE消息進行正確的處理,完成防止不合理路由的擴散、防止路由循環、正確處理路由權值及選路策略信息等方面的功能;

  (4)路由處理功能測試:檢驗路由器建立、刪除、分發、轉發路由以及路由選擇、路由聚合、路由傳送流量控制等方面的功能是否符合協議的規定;

  (5)差錯處理功能測試:檢驗路由器在發現各種路由信息差錯時,能正確地向對端發送NOTIFICATION消息,以便對端了解出錯原因并斷開連接;

  (6)路由反射功能測試:檢驗路由器是否支持路由反射功能,客戶間的路由是否能夠以反射的方式通過RR轉發,自治域內路由是否能到達每個IBGP4+對等體;

  (7)COMMUNITY屬性處理功能測試:檢驗路由器是否能支持BGP聯盟并有效地控制路由信息的傳播范圍。

六  結束語

  目前國內6Tnet、Cernet2、IPv6-CJ等實驗網絡已經建成,中國移動、中國網通等運營商參與的CNGI工程也已經展開,國內IPv6商用網投入了建設,國際上韓國和日本也推出了自己的IPv6商用網。隨著IPv6技術的逐步推廣,BGP4+協議的應用也會越來越廣泛。

  鑒于BGP4+協議對于IPv6網絡的互聯互通以及IPv4向IPv6技術的平穩過渡具有關鍵作用,信產部電信研究院標準研究所制定了《支持IPv6的路由協議測試方法——邊界網關協議(BGP4+)》行業標準,用于檢驗IPv6路由器支持BGP4+協議的能力。該行標規定的測試方法已經用于國內一些實驗網、商用網的組網設備選型測試以及信產部的IPv6路由器入網檢驗工作中。






評論


相關推薦

技術專區

關閉