




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
《網絡協議分析》課程大作業學姓班指導教師評語:邊界網關協議(BGP)是運行于TCP上的一種自治系統的路由協議。BGP是唯一多路連接的協議。BGP構建在EGP的經驗之上。BGP系統的主要功能是和其他的BGP系統交換網絡可達信息。網絡可達信息包括列出的自治系統(AS)的信息。這些信息有效地構造了AS互聯的拓撲圖并由此清除了路由環路,同時在AS級別上可實施策略決策。1、背景知識BGP是自治系統間的路由協議。BGP交換的網絡可達性信息提供了足夠的信息來檢測路由回路并根據性能優先和策略約束對路由進行決策。特別地,BGP交換包含全部ASpath和增長,它也不得不面對一些嚴重的規模問題,包括:(1)B類網絡地址空間的耗盡。該問題的主要原因之一,是缺少適于中型組織的中等大小的網絡;C類網絡,最多擁有254個主機地址,實在太少,而B類網絡允許最多65534個地址,卻又太大無法充分使用。(2)互聯網路由器中路由表的增長使目前的軟件(和人們)無法有效管理。(3)32位IP地址空間的耗竭。很明顯,前兩個問題和最后一個問題可能分別在今后一兩年內和三年內變得急迫。無類別域間路由(CIDR)試圖解決這些問題,設計相應機制來降低路由表和對新IP網推遲使得互聯網仍能有效運作,同時著手遠期的解決方案。4對3做了擴展,支持路由信息的聚合及基于無類別域間路由體系()的路由減少。本備忘錄論述了BGP4在互聯網中的應用。本文檔的所有討論成一張一般的網絡圖,圖上節點是AS,邊是每對AS間的連接。AS內使用內部網關協議和統一度量來路由數據包,而通過外部網關協議將數據包路由到其他AS。該經典定義尚在發展,一些AS在其內部使用多種內部網關協議和度量。在此,強調一下自治系統在本文檔中的含義,即使它采用多種IGP和度量,它的管理區別于其他AS,其內部路AS由一個管理機構管理,至少在外部看來它代表著該系統的路由信息。2、BGP特點BGP屬于外部或域間路由協議。BGP的主要目標是為處于不同AS中的路由器之間進行路由信息通信提供保障。BGP既不是純粹的矢量距離協議,也不是純粹的鏈路狀態協議,通常被稱為通路向量路由協議。這是因為BGP在發布到一個目的網絡的可達性的同時,包含了在IP分組到達目的網絡過程中所必須經過的AS的列表。通路向量信息時十分有用的,因為只要簡單地查找一下BGP路由更新的AS編號就能有效地避免環路的出現。BGP對網絡拓撲結構沒有限制,其特點包括:(1)實現自治系統間通信,傳播網絡的可達信息。BGP是一個外部網關協議,允許一個AS與另一個AS進行通信。BGP允許一個AS向其他AS通告其內部的網絡的可達性信息,或者是通過該AS可達的其他網絡的路由信息。同時,AS也能夠從另一個AS中了解這些信息。與距離向量選路協議類似,BGP為每個目的網絡提供的是下一跳(nexthop)結點的信息。(2)多個BGP路由器之間的協調。如果在一個自治系統內部有多個路由器分別使用BGP與其他自治系統中對等路由器進行通信,BGP可以協調者一系列路由器,使這些路由器保持路由信息的一致性。(3)BGP支持基于策略的選路(baserouting)。一般的距離向量選路協議確切通告本地選路中的路由。而BGPBGP路由器可以為域內和域間的網絡可達性配置不同的策略。(4)可靠的傳輸。BGP路由信息的傳輸采用了可靠地TCP協議。(5BGP息之外,通告中還包括了通路向量(path),即去往該目的網絡時需要經過的AS的列表,使接受者能夠了解去往目的網絡的通路信息。(6)增量更新。BGP不需要再所有路由更新報文中傳送完整的路由數據庫信息,只需變化的信息稱為增量(delta)。(7)BGP支持無類型編制()及VLSM方式。通告的所有網絡都以網絡前綴加子網掩碼的方式表示。(8)路由聚集。BGP允許發送方把路由信息聚集在一起,用一個條目來表示多個相關的目的網絡,以節約網絡帶寬。(9)BGP還允許接收方對報文進行鑒別和認證,以驗證發送方的身份。1BGP的結構和功能BGP用于在不同的自治系統(AS)之間交換路由信息。當兩個AS需要交換路由AS都必須指定一個運行BGPAS與其他的AS交換路由信息。這個節點可以是一個主機。但通常是路由器來執行。兩個AS中利用BGPBorderGatewayBorderRouter由于可能與不同的AS相連,在一個AS內部可能存在多個運行BGP的邊界路由器。同一個自治系統(AS)中的兩個或多個對等實體之間運行的BGP被稱為IBGP(Internal/InteriorBGP)。歸屬不同的AS的對等實體之間運行的BGP稱為EBGP(External/ExteriorBGP)。在AS邊界上與其他AS交換信息的路由器被稱作邊界路由器(border/edgerouter)。在互聯網操作系統(Cisco)中,IBGP通告的路由的距離為200,優先級比EBGP和任何內部網關協議()通告的路由都低。其他的路由器實現中,優先級順序也是EBGP高于,而IGP又高于。BGP屬于外部網關路由協議,可以實現自治系統間無環路的域間路由。BGP是溝通Internet廣域網的主用路由協議,例如不同省份、不同國家之間的路由大多要依靠BGPBGP可分為IBGP(InternalBGP)和(ExternalBGP)。BGP的鄰居關系(或稱通信對端/對等實體)是通過人工配置實現的,對等實體之間通過TCP(端口179)會話交互數據。BGP路由器會周期地發送19字節的保持存活keepalive消息來維護連接(默認周期為30秒)。在路由協議中,只有BGP使用TCP作為傳輸層協議。IETF先后為BGP制定了多個建議,分別為:RFC4271:當前正使用的BGP協議版本,稱之為BGP4。RFC1654:BGP4協議的第一個規范。RFC、RFC、RFC1267、RFC1771:BGP4之前的BGP版本。2BGP消息類型及狀態轉換BGP使用如下四種消息類型:(1)Open消息:Open消息是TCP連接建立后發送的第一個消息,用于建立BGP對等體之間的連接關系。(2KeepaliveBGP會周期性地向對等體發出Keepalive消息,用來保持連接的有效性。(3Update消息:Update消息用于在對等體之間交換路由信息。它既可以發布可達路由信息,也可以撤銷不可達路由信息。(4NotificationBGP檢測到錯誤狀態時,就向對等體發出Notification消息,之后BGP連接會立即中斷。BGP鄰居建立中的狀態和過程如下:(1)空閑(Idle):為初始狀態,當協議激活后開始初始化,復位計時器,并發起第一個TCP連接,并開始傾聽遠程對等體所發起的連接,同時轉向Connect狀態。。(2)連接(Connect):開始TCP連接并等待TCP連接成功的消息。如果TCP連接成功,則進入OpenSent狀態;如果TCP連接失敗,進入Active狀態。(3)行動(Active):BGP總是試圖建立TCP連接,若連接計時器超時,則退回到Connect狀態,TCP連接成功就轉為Opensent狀態。(4OPENOpensentTCP連接已建立,自己已發送第一個OPEN報文,等待接收對方的OpenNotification消息報文并退回到IdleKeepalive消息報文,Keepalive計時器開始計時,并轉為Openconfirm狀態。(5)OPEN證實(Openconfirm):BGP等待Keepalive報文,同時復位保持計時器。如果收到了Keepalive報文,就轉為Established狀態,鄰居關系協商完成。如果系統收到一條更新或Keepalive消息,它將重新啟動保持計時器;如果收到Notification消息,BGP就退回到空閑狀態。(6EstablishedUpdate報文,同時復位保持計時器。3BGP路由通告原則BGP在進行路由通告的時候,需要遵循以下原則:(1)多條路徑時,BGPSpeaker只選最優的給自己使用(負載均衡和FRR除外)。(2)BGPSpeaker只把自己使用的路由(最優路由)通告給相鄰體。(3BGPSpeaker從EBGP獲得的路由會向自己所有BGP相鄰體通告(包括EBGP和)。(4)BGPSpeaker從IBGP獲得的路由不向自己的IBGP相鄰體通告(反射器除外)。(5)BGPSpeaker從IBGP獲得的路由是否通告給自己的EBGP相鄰體要根據IGP和BGP同步的情況來決定。(6)當收到對端的refresh報文并且本端鄰居支持refresh能力,BGPSpeaker將把自己所有BGP路由通告給對等體。(7)GR過程中,主備倒換方在GR結束時BGPSpeaker會把自己所有BGP路由通告給對等體。四、實驗結果與分析:BGP是建立在TCP之上的端口號為179AS國人只能和中國人說,外國人和外國人說)BGP是運用在AS之間的BGP的前身是EGP,EGP只能在AS之間簡單的傳遞路由信息,不會對路由進行任何AS之間避免路由環路等問題,BGP一般運營在運營商的核心網先啟動BGP的一端先發起TCP連接,如圖所示,RTB先啟動BGP協議,RTB使用隨機端口號向RTA的179端口發起TCP連接。路由器是通過物理口去建立鄰居的;Loopback也能建立,前提是必須要有路由,需要建立一個動態路由或者靜態路由。源是12.1.1.1目的2.2.2.2源是2.2.2.2目的10.1.1.1沒有匹配,即三次握手沒有成功。AS號的分類:164511由IANA統一分配。6451265535私有企業或者自行分配。特點:BGP可以跨越多跳路由器建立鄰居關系鄰居關系:EBGP(外部網關邊界協議):運行在不同AS之間的BGP路由器建立的鄰居關系,默認的優先級是225,默認的TTL是1。IBGP(內部BGP協議):運行在相同AS之間BGP路由器建立的鄰居關系,默認的優先級是225,默認的TTL是255。[R1]routerid1.1.1.1(標識路由器)[R1]bgp100(配置鄰居關系)[R1bgp]peer2.2.2.2-number100(peer后面是對端鄰居的接口地址,number后面是鄰居路由器所在的AS號,ASIBGP鄰居關系,ASEBGP鄰居關系)PS:建立IBGP鄰居關系是時,一般使用loopback接口的IP地址,因為loopback接口開啟后一直處于UP狀態,只要保證路由可達,鄰居關系就會處于穩定狀態。而建立EBGP鄰居關系時,一般使用直接接口的IP地址,因為EBGP是跨AS建立鄰居關系,鄰居關系建立之前非直連接口之間的路由不可達。BGP鄰居關系配置的優化[R1]routerid1.1.1.1(標識路由器)[R1]bgp100(配置鄰居關系)[R1bgp]peer2.2.2.2-number100[R1bgp]peer2.2.2.2connectinterfaceLoopBack0(修改更新源,路由器默認是物理口建立可連接)報文:Openkeepliveupdaterouterefreshnotificationopen:鄰居建立發送的第一個報文協商參數keeplive:周期性發送,去看鏈路是否正常update:去更新路由信息①更新路由屬性相同的多個路由條目①更新路由不可達的路由條目(刪除)routerefresh:當路由策略改變的時候會發送該報文去請求新的路由條目notification:當鄰居失效就會發送這個報文一::BGP的初始狀態,不會去接受任何鄰居發來的任何請求二:connectOPENSENT發起鏈接,同時切換到Active狀態。也就是說,只要在Connect狀態,就證明BGP正在試圖建立連接,而不是等候。①連接成功①連接不成功①請求超時三:active:請求連接,向鄰居去請求連接的,在OPENSENT的時候,如果BGP鏈接忽然丟失,也會進入這個狀態。第一種:請求成功connect第二種:請求不成功第三種:請求超時四:opensent對收來的open報文進行檢查,如果有錯誤,系統就會發送一條出錯通知消息并退回到IdleBGP就開始發送KeepaliveKeepalive計時器,開始計時。協商成功進入下一個狀態五:opencomfirm:如果收到了一個Keepalive報文,就轉入Established階段,BGP鄰居關系就建立起來了。如果TCP連接中斷,就退回到Idle狀態。六:establishBGP鄰居關系已經建立,這時,BGP將和它的鄰居們交換Update報文:經過一臺路由器,并且經過解封裝和重新封裝以后的源地址和目標地址不變,這時候,TTL減1。BGP通告原則之一:僅將自己最優的路由發給鄰居將個路由發布給鄰居下一跳自我:下一跳是他就會把器也就接受到了這個達下一跳,把下一跳設置為從傳到他的那個路由。路由器通過這個直連的下一跳,也就能通信了。4.4.4.4ocalBGP通告原則之二:通過EBGP獲得的最優路由發布給所有BGP鄰居BGPIBGP學到的最優路由不會發給其他的IBGPIBGP的水平分割)R3從R1通過EBGP學來的路由發送給R2,但是R2不會通過IBGP把來的路由發送給R4,所以,R4是不會接收到條路由的BGP通告原則之四:BGP與IGP的同步也就是把BGP的路由表和IGP的路由表同步華為默認關閉IBGP水平分割:從IBGP學到的最優路由不會發給其他的IBGP鄰居、路由黑洞解決:1.全互聯(TCP會話過多,資源占用就大了)2.路由的引入,把BGP的路由引入到IGP中前兩個不是太靠譜,因為BGP有上萬個路由條目,IGP只有幾千個3.MPLSBGP路由信息處理當從BGP鄰居接收到Update確定最佳路徑。得出的最佳路徑被存儲到本地BGPlocal_RIBIP路由表BGP的屬性公認:在Update報文當中,可以支持和識別的屬性①公認必遵:在Update報文當中,必須攜帶的屬性①公認任意:可以不攜帶在update報文當中可選:在update報文當中,可以不識別的屬性可選過渡:本BGP路由器不識別的屬性,但是可以把該屬性傳遞給鄰居可選非過渡:本BGP路由器忽略的屬性,并且不傳遞給鄰居五、小結與心得體會我收獲了BGP最實用的方法:1、建立基本的BGP鄰居關系在兩個路由器之間的BGP對等通過二個步驟來完成:(1)用routerbgp命令建立BGP進程并明確本地AS號。(2)用neighborremoteas命令確定鄰居以及鄰居的AS號。通過對端物理接口的IPBGP配置不能提供冗余。2、通過環回接口來建立鄰居這種配置能提供冗余,唯一的要求是在環回接口間保證連通性。來建立鄰居關系就能提供更好地性能。壞掉,那么這并不會影響BGP路由協議對鄰居關系的建立。3、路由通告進BGP要通過BGPBGP(1)通過把從IGP學習到的路由條目重分發進BGP中;(2)通過network命令把網絡宣告進BGP中;(3)通過添加靜態路由條目,然后再使用network命令把網絡宣告進BGP中。4、如何向BGP鄰居通告默認路由要給BGP對端通告一條默認路由,總共有三種方法可以實現。(1)如果只給特定的對端通告默認路由,那么可以通過neighbordefaultoriginate命令完成,使用這條命令時,不管本地的路由表中有沒有默認路由都可以實現。(2BGP個步驟去完成。首先,建立一條指向NULL0的默認路由,然后,重分發進BGP進程,最后,在BGP進程中使用defaultinformation
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 影視器材損壞賠償及保險理賠協議
- 離婚協議財產分割變更執行合同
- 新能源汽車充電站安全運營管理與應急預案合同
- 激光打標機租賃合同(含設備調試與安裝服務)
- 民宿短租平臺民宿房東入住協議
- 跨界合作虛擬現實體育賽事直播推廣合同
- 模具版權歸屬變更及補充協議
- 高端商務會議安全保衛協議
- 虛擬貨幣交易平臺實名認證協議
- 社會企業社區養老投資協議
- 浙江省溫州市樂清市2023-2024學年六年級下學期期末小升初科學試卷
- lesson13nosignpostinthesea解讀(部編)課件
- 2024屆上海復旦附中高一下3月英語試題及答案
- 有趣的漢字《甲骨文》課件
- DB11-T 1123-2023 公共職業介紹和職業指導服務規范
- 實習報告總結10000字
- 第8課《良師相伴 亦師亦友》第1框《良師相伴助力成長》-【中職專用】《心理健康與職業生涯》同步課堂課件
- MOOC 跨文化交際-蘇州大學 中國大學慕課答案
- 科幻小說賞析與創意寫作智慧樹知到期末考試答案2024年
- 注塑硫化什么工藝
- 小學道德與法治課堂情境創設策略研究開題報告
評論
0/150
提交評論