BGP路由協(xié)議分析課件_第1頁(yè)
BGP路由協(xié)議分析課件_第2頁(yè)
BGP路由協(xié)議分析課件_第3頁(yè)
BGP路由協(xié)議分析課件_第4頁(yè)
BGP路由協(xié)議分析課件_第5頁(yè)
已閱讀5頁(yè),還剩57頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

2023/8/16DP500005BGP路由協(xié)議ISSUE1.02023/8/4DP500005BGP路由協(xié)議ISSUEPage2學(xué)習(xí)完此課程,您將會(huì):掌握BGP協(xié)議的基本原理掌握BGP協(xié)議的路由屬性及其應(yīng)用目標(biāo)Page2學(xué)習(xí)完此課程,您將會(huì):目標(biāo)Page3第1章BGP路由協(xié)議的原理第2章BGP路由屬性內(nèi)容介紹Page3第1章BGP路由協(xié)議的原理內(nèi)容介紹Page4BGP協(xié)議基本概念(一)什么是自治系統(tǒng)(AS)?自治系統(tǒng)指由同一個(gè)技術(shù)管理機(jī)構(gòu)管理、使用內(nèi)部路由策略的一些路由器的集合。每個(gè)自治系統(tǒng)都有唯一的自治系統(tǒng)編號(hào)。自治系統(tǒng)的編號(hào)范圍是1到65535,其中1到64511是注冊(cè)的因特網(wǎng)編號(hào),64512到65535是專用網(wǎng)絡(luò)編號(hào)。Page4BGP協(xié)議基本概念(一)什么是自治系統(tǒng)(AS)?Page5沒(méi)有BGP的日子里OSPFRIPISISEIGRPPage5沒(méi)有BGP的日子里OSPFRIPISISEIGRPage6有了BGP之后鏈路層協(xié)議生成路由,IGP發(fā)現(xiàn)和計(jì)算路由,BGP控制路由傳播和選擇OSPFRIPISISEIGRPBGPBGPBGPPage6有了BGP之后鏈路層協(xié)議生成路由,IGP發(fā)現(xiàn)和計(jì)Page7BGP協(xié)議概述BGP是一種外部網(wǎng)關(guān)協(xié)議(EGP),與OSPF、RIP等內(nèi)部網(wǎng)關(guān)協(xié)議(IGP)不同,其著眼點(diǎn)不在于發(fā)現(xiàn)和計(jì)算路由,而在于控制路由的傳播和選擇最佳路由。BGP使用TCP作為其傳輸層協(xié)議(端口號(hào)179),提高了協(xié)議的可靠性。BGP支持無(wú)類別域間路由CIDR(ClasslessInter-DomainRouting)。路由更新時(shí),BGP只發(fā)送更新的路由,大大減少了BGP傳播路由所占用的帶寬,適用于在Internet上傳播大量的路由信息。BGP路由通過(guò)攜帶AS路徑信息徹底解決路由環(huán)路問(wèn)題。BGP提供了豐富的路由策略,能夠?qū)β酚蓪?shí)現(xiàn)靈活的過(guò)濾和選擇。BGP易于擴(kuò)展,能夠適應(yīng)網(wǎng)絡(luò)新的發(fā)展。Page7BGP協(xié)議概述BGP是一種外部網(wǎng)關(guān)協(xié)議(EGP)BGP的主要目標(biāo)是提供一種能夠保證自治系統(tǒng)間無(wú)環(huán)路的路由選擇信息交換的域間路由系統(tǒng).BGP在路由器上以下列兩種方式運(yùn)行:IBGP(InternalBGP)EBGP(ExternalBGP)當(dāng)BGP運(yùn)行于同一自治系統(tǒng)內(nèi)部時(shí),被稱為IBGP;當(dāng)BGP運(yùn)行于不同自治系統(tǒng)之間時(shí),稱為EBGP。Page8BGP的主要目標(biāo)是提供一種能夠保證自治系統(tǒng)間無(wú)環(huán)路的路由選擇Page9BGP協(xié)議基本概念(三)何時(shí)選擇BGP?何時(shí)不選擇BGP?下列條件至少存在一個(gè)的時(shí)候,才應(yīng)該使用BGP。自治系統(tǒng)系統(tǒng)允許數(shù)據(jù)包穿過(guò)它到達(dá)其他自治系統(tǒng)。自治系統(tǒng)多條外部連接,多個(gè)運(yùn)營(yíng)商之間;擁有多條到互聯(lián)網(wǎng)的連接時(shí)。自治系統(tǒng)必須對(duì)進(jìn)入和離開AS的數(shù)據(jù)流進(jìn)行控制。下列情況,不需要使用BGP自制系統(tǒng)和自治系統(tǒng)或Internet間僅有單一連接時(shí)。設(shè)備內(nèi)存和CPU性能不佳,無(wú)法運(yùn)行BGP時(shí)。沒(méi)有能力實(shí)施路由過(guò)濾或BGP路徑選擇時(shí)。自治系統(tǒng)間帶寬較低時(shí)。Page9BGP協(xié)議基本概念(三)何時(shí)選擇BGP?何時(shí)不選Page10AS的分類單口AS(stubAS)多歸路過(guò)渡AS(multihomedAS)過(guò)渡AS(transitAS)Page10AS的分類單口AS(stubAS)過(guò)度AS一般情況下一條路由是從自治系統(tǒng)內(nèi)部產(chǎn)生的,它由某種內(nèi)部路由協(xié)議發(fā)現(xiàn)和計(jì)算,傳遞到自治系統(tǒng)的邊界,由自治系統(tǒng)邊界路由器(ASBR)通過(guò)EBGP連接傳播到其它自治系統(tǒng)中。路由在傳播過(guò)程中可能會(huì)經(jīng)過(guò)若干個(gè)自治系統(tǒng),這些自治系統(tǒng)稱為過(guò)渡自治系統(tǒng)。如:AS5。若這個(gè)自治系統(tǒng)有多個(gè)邊界路由器,這些路由器之間運(yùn)行IBGP來(lái)交換路由信息。這時(shí)內(nèi)部的路由器并不需要知道這些外部路由,它們只需要在邊界路由器之間維護(hù)IP連通性。如:AS2、AS3、AS4。路由到達(dá)自治系統(tǒng)邊界后,若內(nèi)部路由器需要知道這些外部路由,ASBR可以將路由引入內(nèi)部路由協(xié)議。外部路由的數(shù)量是很大的,通常會(huì)超出內(nèi)部路由器的處理能力,因此引入外部路由時(shí)一般需要過(guò)濾或聚合,以減少路由的數(shù)量,極端的情況是使用默認(rèn)路由。Page11過(guò)度AS一般情況下一條路由是從自治系統(tǒng)內(nèi)部產(chǎn)生的,它由某種內(nèi)StubAS還有一種自治系統(tǒng)稱為StubAS,如:AS1、AS6、AS7。其內(nèi)部只有一個(gè)ASBR通過(guò)EBGP連接外部,同外部其他AS的通信要靠過(guò)渡自治系統(tǒng)來(lái)轉(zhuǎn)接。對(duì)一個(gè)具體的ASBR來(lái)說(shuō),其路由的來(lái)源有兩種:從對(duì)等體接收的從IGP引入的。對(duì)于接收的路由,根據(jù)其屬性(如AS路徑、團(tuán)體屬性等)進(jìn)行過(guò)濾,并設(shè)置某些屬性(如本地優(yōu)先、MED值等),之后若需要的話,將具體的路由聚合為超網(wǎng)路由。BGP可能從多個(gè)對(duì)等體收到目的地相同的路由,根據(jù)規(guī)則選擇最好的路由并加入IP路由表。對(duì)于IGP路由,則要經(jīng)過(guò)引入策略的過(guò)濾和設(shè)置。BGP發(fā)送優(yōu)選的BGP路由和引入的IGP路由給對(duì)等體。Page12StubAS還有一種自治系統(tǒng)稱為StubAS,如:AS1Page13BGP工作機(jī)制在BGP對(duì)等體建立之前,對(duì)等體之間首先進(jìn)行TCP連接。BGP鄰居間會(huì)通過(guò)Open消息協(xié)商相關(guān)參數(shù),建立起B(yǎng)GP對(duì)等體關(guān)系。BGP鄰居剛建立時(shí),發(fā)送整個(gè)BGP路由表交換路由信息,之后為了更新路由表只交換更新消息(updatemessage)。系統(tǒng)在運(yùn)行過(guò)程中,通過(guò)接收和發(fā)送keep-alive消息來(lái)檢測(cè)相互之間的連接是否正常的。Page13BGP工作機(jī)制在BGP對(duì)等體建立之前,對(duì)等體之BGP發(fā)言人BGPspeaker發(fā)送BGP消息的路由器稱為BGP發(fā)言人(speaker),它不斷的接收或產(chǎn)生新路由信息,并將它廣告(advertise)給其它的BGP發(fā)言人。當(dāng)BGP發(fā)言人收到來(lái)自其他自治系統(tǒng)的新路由廣告時(shí),如果該路由比當(dāng)前已知路由好、或者當(dāng)前還沒(méi)有可接受路由,它就把這個(gè)路由廣告給自治系統(tǒng)內(nèi)所有其它的BGP發(fā)言人BGPpeer一個(gè)BGP發(fā)言人也將同它交換消息的其它的BGP發(fā)言人稱為同伴(peer)BGPgroup若干相關(guān)的同伴可以構(gòu)成同伴組(group)Page14BGP發(fā)言人BGPspeakerPage14Page15BGP兩種鄰居-IBGP和EBGPEBGPEBGPRTBRTCIBGPRTARTDRTEPage15BGP兩種鄰居-IBGP和EBGPEBGPEB對(duì)等體BGP在路由器上以下列兩種方式運(yùn)行:IBGP(InternalBGP)EBGP(ExternalBGP)如果兩個(gè)交換BGP報(bào)文的對(duì)等體屬于同一個(gè)自治系統(tǒng),那么這兩個(gè)對(duì)等體就是IBGP對(duì)等體(InternalBGP),如RTB和RTD。如果兩個(gè)交換BGP報(bào)文的對(duì)等體屬于不同的自治系統(tǒng),那么這兩個(gè)對(duì)等體就是EBGP對(duì)等體(ExternalBGP),如RTA和RTB。IBGP對(duì)等體之間不一定是物理上直連的,但必須保證邏輯上全連接。(TCP連接能夠建立即可)。為了IBGP對(duì)等體路由通告的可靠性,我們一般都是采用loopback接口建立IBGP鄰居關(guān)系,同時(shí)必須指定路由更新報(bào)文的源接口。peer{group-name|peer-address}connect-interfaceinterface-name一般的路由器(包括Quidway系列路由器)都默認(rèn)要求EBGP對(duì)等體之間是有物理上的直連鏈路,同時(shí)他們一般也提供改變這個(gè)缺省設(shè)置的配置命令。允許同非直連相連網(wǎng)絡(luò)上的鄰居建立EBGP連接Page16對(duì)等體BGP在路由器上以下列兩種方式運(yùn)行:Page16Page17BGP路由通告原則(重要)存在多條路徑時(shí),BGPSpeaker只選取最優(yōu)的使用(非負(fù)載分擔(dān))BGPSpeaker只把自己優(yōu)選的路由通告給相鄰體BGPSpeaker從EBGP獲得的路由會(huì)向它所有BGP相鄰體通告(包括EBGP和IBGP)BGP

Speaker從IBGP獲得的路由不向它的IBGP相鄰體通告BGPSpeaker

從IBGP獲得的路由是否通告給它的EBGP相鄰體要依IGP和BGP同步的情況來(lái)決定連接一建立,BGPSpeaker按照以上原則,把自己所有BGP路由通告給新相鄰體Page17BGP路由通告原則(重要)存在多條路徑時(shí),BGPage18BGP路由表與系統(tǒng)路由表的關(guān)系存在多條路徑時(shí),BGPSpeaker只選取最優(yōu)的使用(非負(fù)載分擔(dān)時(shí))BGPSpeaker只把自己使用的最優(yōu)路由通告給相鄰體BGPSpeaker只把自己使用的最優(yōu)的路由加入到路由表中Page18BGP路由表與系統(tǒng)路由表的關(guān)系存在多條路徑時(shí),Page19BGP路由通告原則BGP

Speaker從IBGP獲得的路由不向它的IBGP相鄰體通告(如果存在RR呢)AS42AS12AS14R-14R-12RTARTBRTDRT-CX12…EBGPIBGPX12…X12…Page19BGP路由通告原則BGPSpeaker從IBPage20BGP同步BGPSpeaker

從IBGP獲得的路由是否通告給它的EBGP相鄰體要依IGP和BGP同步的情況來(lái)決定EBGPEBGPRTBRTCIBGPRTARTDRTERTFS0:1.1.1.2/24E0:10.1.1.1/24S0:1.1.1.1/24S1:2.1.1.2/24AS100AS200AS300S0:2.1.1.1/24Page20BGP同步BGPSpeaker從IBGP獲Page21同步規(guī)則的基本需求BGP同步規(guī)則的目的:為防止一個(gè)AS(不是所有的路由器都運(yùn)行bgp)內(nèi)部出現(xiàn)路由黑洞,即向外部通告了一個(gè)本AS不可達(dá)的虛假的路由.BGP同步規(guī)則的基本需求如果一個(gè)AS內(nèi)部存在非bgp路由器,那么就出現(xiàn)了bgp和igp的邊界,需要在邊界路由器將bgp路由發(fā)布到igp中,才能保證AS所通告到外部的bgp路由,在AS內(nèi)部是連通的。實(shí)際上是要求bgp路由和igp路由的同步(不建議)。以下情況可以安全關(guān)閉同步(華為設(shè)備缺省情況下非同步):本AS不是過(guò)渡AS本AS內(nèi)所有路由器建立IBGP全連接Page21同步規(guī)則的基本需求BGP同步規(guī)則的目的:Page22IBGP全互聯(lián)IBGP全互聯(lián)

AS內(nèi)部的所有路由器都運(yùn)行BGP,就可以關(guān)閉所有路由器的同步,而不影響路由的通告和連通性.隨之產(chǎn)生的問(wèn)題:當(dāng)as內(nèi)部路由器數(shù)量很多時(shí),需要建立N*(N-1)/2個(gè)ibgp會(huì)話,帶來(lái)過(guò)度的系統(tǒng)開銷,擴(kuò)展性不好。即15個(gè)路由器的AS,需要建立15(15-1)/2=105個(gè)ibgp會(huì)話Page22IBGP全互聯(lián)IBGP全互聯(lián)Page23IBGP全互聯(lián)的解決方案(一)路由反射器

AS內(nèi)部的所有路由器都運(yùn)行bgp,在AS內(nèi)部部署路由反射器,構(gòu)建hubandspoke(中心說(shuō)話)的ibgp(會(huì)話數(shù)為N-1),然后關(guān)閉所有bgp路由器的同步.問(wèn)題:此方案可以使bgp路由器傳遞ibgp路由到ebgp,并保證bgp路由的連通性,但是對(duì)物理拓?fù)溆泻艽蟮南拗?。Page23IBGP全互聯(lián)的解決方案(一)路由反射器Page24BGP路由反射路由反射器(RouteReflector)AS101AS100AS102IBGPEBGPRRClientClientClientPage24BGP路由反射路由反射器(RouteRefBGP路由反射在AS100內(nèi),在沒(méi)有配置路由反射器的時(shí)候,為了實(shí)現(xiàn)路由信息的互通,4臺(tái)路由器都必須全I(xiàn)BGP互連維護(hù)6個(gè)IBGP會(huì)話。但與配置了反射器的情況相比,由于Client只需維護(hù)要與該本身的RR的IBGP的會(huì)話,所以在AS100內(nèi)IBGP數(shù)量由原來(lái)的6個(gè)變?yōu)橹皇O?個(gè)。而這種新的結(jié)構(gòu)下,IBGP宣告者被分成3組:路由反射器(RR);路由反射器客戶(Client);常規(guī)的IBGP宣告者(Non-Client)Page25BGP路由反射在AS100內(nèi),在沒(méi)有配置路由反射器的時(shí)候,為Page26IBGP全互聯(lián)的解決方案(二)2.bgp聯(lián)盟AS內(nèi)部的所有路由器都運(yùn)行bgp,把一個(gè)原始的AS基于網(wǎng)絡(luò)拓?fù)鋭澐譃槿舾蓚€(gè)sub-AS(又稱聯(lián)盟AS),聯(lián)盟AS之間的bgp鄰居叫做聯(lián)盟ebgp,不需要fullmesh(全連接)bgp會(huì)話;在每個(gè)聯(lián)盟AS內(nèi)部運(yùn)fullmeshibgp或者h(yuǎn)ubandspoke反射器,然后就可以關(guān)閉所有路由器的bgp同步功能.結(jié)論:bgp聯(lián)盟結(jié)合路由反射器的方式,較好的解決了bgp的同步規(guī)則帶來(lái)的需求,是最為有效的解決方案.Page26IBGP全互聯(lián)的解決方案(二)2.bgp聯(lián)盟Page27BGP聯(lián)盟聯(lián)盟(Confederation)AS100IBGPEBGPAS1001AS1003AS1002AS101EBGP_Confed聯(lián)盟通過(guò)把大的AS分成多個(gè)更小的自治系統(tǒng)來(lái)解決IBGP全互連的問(wèn)題,這些自治系統(tǒng)叫做成員自治系統(tǒng)或子自治系統(tǒng)。因?yàn)槌蓡T自治系統(tǒng)之間使用EBGP會(huì)話,因此它們不需要全互連。然而,在每一個(gè)成員AS中,IBGP全互連的要求仍然適用。Page27BGP聯(lián)盟聯(lián)盟(Confederation)成為BGP路由的途徑純動(dòng)態(tài)注入路由器將通過(guò)IGP路由協(xié)議動(dòng)態(tài)獲得的路由信息直接注入到BGP中去。半動(dòng)態(tài)注入路由器有選擇性的(通過(guò)配置命令)將IGP發(fā)現(xiàn)的動(dòng)態(tài)路由信息注入到BGP系統(tǒng)中去靜態(tài)注入路由器將靜態(tài)配置的某條路由注入到BGP系統(tǒng)中

Page28成為BGP路由的途徑純動(dòng)態(tài)注入Page28Page29成為BGP路由的途徑之一:純動(dòng)態(tài)注入OSPF發(fā)現(xiàn)路由18.0.0.1/8把IGP(OSPF)發(fā)現(xiàn)的路由純動(dòng)態(tài)地注入到RTB的BGP路由表中18.0.0.1/8RTBAS200OSPFPage29成為BGP路由的途徑之一:純動(dòng)態(tài)注入OSPF發(fā)Page30成為BGP路由的途徑之二:半動(dòng)態(tài)注入OSPF發(fā)現(xiàn)路由18.0.0.1/8把IGP(OSPF)發(fā)現(xiàn)的路由半動(dòng)態(tài)地注入到RTB的BGP路由表中它和純動(dòng)態(tài)注入的區(qū)別在于不是將IGP發(fā)現(xiàn)的所有路由信息注入到BGP中去18.0.0.1/8OSPFRTBAS200Page30成為BGP路由的途徑之二:半動(dòng)態(tài)注入OSPF發(fā)Page31成為BGP路由的途徑之三:靜態(tài)注入人為配置靜態(tài)路由18.0.0.1/8把人為配置的靜態(tài)路由注入到RTB的BGP路由表中18.0.0.1/8AS200RTBPage31成為BGP路由的途徑之三:靜態(tài)注入人為配置靜態(tài)Page32BGP報(bào)文種類BGP報(bào)文有四種類型:Open:打招呼“你好,跟我交個(gè)朋友吧!”KeepAlive:我還活著呢,別不理我Update:有新聞Notification:我不跟你玩了!Page32BGP報(bào)文種類BGP報(bào)文有四種類型:Page33BGP報(bào)文頭BGP報(bào)文的格式是一樣的,都是”報(bào)文頭+報(bào)文體“的格式,下面給出的是BGP報(bào)文頭:Marker(16byte)Length(2byte)Type(1byte)Marker鑒權(quán)信息Length消息的長(zhǎng)度Type消息的類型Page33BGP報(bào)文頭BGP報(bào)文的格式是一樣的,都是”報(bào)BGP報(bào)文頭的格式如圖所示,每行的寬度為4個(gè)字節(jié)。Marker鑒權(quán)信息: 本16字節(jié)的字段包含消息接收者可以預(yù)測(cè)的值。如果消息類型是OPEN,或者OPEN消息沒(méi)有承載認(rèn)證信息(作為可選參數(shù)),標(biāo)記必須是全1。否者,標(biāo)記的值要使用認(rèn)證機(jī)制來(lái)計(jì)算(認(rèn)證機(jī)制是通過(guò)認(rèn)證信息的一部分來(lái)指定的)。標(biāo)記可以用來(lái)探測(cè)BGP對(duì)端的同步丟失,認(rèn)證進(jìn)入的BGP消息。Length消息的長(zhǎng)度:2字節(jié),指示整個(gè)消息的長(zhǎng)度,包括頭標(biāo)長(zhǎng)度,最小的BGP消息長(zhǎng)度是19字節(jié)(Keepalive報(bào)文),最大的長(zhǎng)度是4096字節(jié)。Type消息的類型:1字節(jié),指示報(bào)文類型,如OPEN、UPDATE報(bào)文等。1:OPEN2:UPDATE3:NOTIFICATION4:KEEPALIVEPage34BGP報(bào)文頭的格式如圖所示,每行的寬度為4個(gè)字節(jié)。PagePage35Open報(bào)文Open報(bào)文是由報(bào)文頭加如下結(jié)構(gòu)構(gòu)成的。來(lái)交換各自的版本、自治系統(tǒng)號(hào)、保持時(shí)間、BGP標(biāo)識(shí)符等信息,進(jìn)行協(xié)商OptionalParamentersLengthHoldTimeVersionMyAutonomousSystemBGPIdentifierOptionalParamentersPage35Open報(bào)文Open報(bào)文是由報(bào)文頭加如下結(jié)構(gòu)構(gòu)Version:(1字節(jié))發(fā)端BGP版本號(hào)如果BGP對(duì)等體之前的OPEN報(bào)文中Version不一致,選擇較大的Version。MyAutonomousSystem:(2字節(jié)無(wú)符號(hào)整數(shù))本地AS號(hào)HoldTime:(2字節(jié)無(wú)符號(hào)整數(shù))發(fā)端建議的保持時(shí)間BGPIdentifier:(4字節(jié))發(fā)端的路由器標(biāo)識(shí)符如果BGP對(duì)等體之前的OPEN報(bào)文中HoldTime時(shí)間不一致,選擇較小的HoldTime。OptionalparmetersLen:(1字節(jié))可選的參數(shù)的長(zhǎng)度OptionalParameters:(變長(zhǎng))可選的參數(shù)Page36Open報(bào)文Version:(1字節(jié))發(fā)端BGP版本號(hào)Page36Page37KeepAlive報(bào)文KeepAlive報(bào)文只有報(bào)文頭。主要用于對(duì)等體路由器間的運(yùn)行狀態(tài)以及鏈路的可用性確認(rèn)Marker(16byte)Length(2byte)Type(1byte)缺省情況下,發(fā)送Keepalive的時(shí)間間隔為60秒,Holdtime是180秒。每次從鄰居處接收到Keepalive報(bào)文將重置holdtime定時(shí)器,如果holdtime定時(shí)器超時(shí),peer就認(rèn)為對(duì)等體down掉。Page37KeepAlive報(bào)文KeepAlive報(bào)文只Page38Update報(bào)文Update報(bào)文由報(bào)文頭加如下結(jié)構(gòu)構(gòu)成。攜帶的是路由更新信息WithdrawnRoutesUnfeasibleRoutesLengthPathAttributeLengthNetworkLayerReachabilityInformationPathAttributePage38Update報(bào)文Update報(bào)文由報(bào)文頭加如下Page39Notification報(bào)文Notification報(bào)文由報(bào)文頭加如下結(jié)構(gòu)構(gòu)成。當(dāng)BGP檢測(cè)到差錯(cuò)(連接中斷、協(xié)商出錯(cuò)、報(bào)文差錯(cuò)等)時(shí),發(fā)送NOTIFICATION報(bào)文,關(guān)閉同對(duì)等體的連接。錯(cuò)誤代碼123456錯(cuò)誤類型消息頭錯(cuò)OPEN消息錯(cuò)UPDATE消息錯(cuò)保持時(shí)間超時(shí)狀態(tài)機(jī)錯(cuò)退出DataErrorCodeErrorSubcodePage39Notification報(bào)文NotificatNotification報(bào)文主要在發(fā)生錯(cuò)誤或?qū)Φ润w連接被關(guān)閉的情況下使用,該消息攜帶各種錯(cuò)誤代碼(如定時(shí)器超時(shí)等),包括錯(cuò)誤代碼、輔助錯(cuò)誤代碼及錯(cuò)誤信息。Errorcode:(1字節(jié))錯(cuò)誤代碼:錯(cuò)誤代碼錯(cuò)誤類型

1消息頭錯(cuò)

2OPEN消息錯(cuò)

3UPDATE消息錯(cuò)

4保持時(shí)間超時(shí)

5狀態(tài)機(jī)錯(cuò)

6退出Errsubcode:(1字節(jié))輔助錯(cuò)誤代碼,略。Data:(變長(zhǎng))依賴于不同的錯(cuò)誤代碼和輔助錯(cuò)誤代碼。用于診斷錯(cuò)誤原因。Page40Notification報(bào)文主要在發(fā)生錯(cuò)誤或?qū)Φ润w連接被關(guān)Page41BGP協(xié)議的狀態(tài)機(jī)ActiveOpen-sentOpen-confirmEstablishedIdleConnectTCPconnectionfailsConnect-RetrytimerexpiryStartOthersTCPconnectionfailsErrorErrorErrorKeepAlivetimerexpiryKeepAlivepacketreceived1.KeepAlivetimerexpiry2.Updatereceived3.KeepAlivereceivedCorrectOPENpacketreceivedTCPconnectionsetupTCPconnectionsetupOthersPage41BGP協(xié)議的狀態(tài)機(jī)ActiveOpen-senIdle(空閑):Idle是BGP連接的第一個(gè)狀態(tài),在空閑狀態(tài),BGP在等待一個(gè)啟動(dòng)事件,啟動(dòng)事件出現(xiàn)以后,BGP初始化資源,復(fù)位連接重試計(jì)時(shí)器(Connect-Retry)缺省值為32秒,發(fā)起一條TCP連接,同時(shí)轉(zhuǎn)入Connect(連接)狀態(tài)。Connect(連接):在Connect狀態(tài),BGP發(fā)起第一個(gè)TCP連接,如果連接重試計(jì)時(shí)器(Connect-Retry)超時(shí),就重新發(fā)起TCP連接,并繼續(xù)保持在Connect狀態(tài),如果TCP連接成功,就轉(zhuǎn)入OpenSent狀態(tài),如果TCP連接失敗,就轉(zhuǎn)入Active狀態(tài)。Active(活躍):在Active狀態(tài),BGP總是在試圖建立TCP連接,如果連接重試計(jì)時(shí)器(Connect-Retry)超時(shí),就退回到Connect狀態(tài),如果TCP連接成功,就轉(zhuǎn)入OpenSent狀態(tài),如果TCP連接失敗,就繼續(xù)保持在Active狀態(tài),并繼續(xù)發(fā)起TCP連接。Page42Idle(空閑):Idle是BGP連接的第一個(gè)狀態(tài),在空閑OpenSent(打開消息已發(fā)送):在OpenSent狀態(tài),TCP連接已經(jīng)建立,BGP也已經(jīng)發(fā)送了第一個(gè)Open報(bào)文,剩下的工作,BGP就在等待其對(duì)等體發(fā)送Open報(bào)文。并對(duì)收到的Open報(bào)文進(jìn)行正確性檢查,如果有錯(cuò)誤,系統(tǒng)就會(huì)發(fā)送一條出錯(cuò)通知消息并退回到Idle狀態(tài),如果沒(méi)有錯(cuò)誤,BGP就開始發(fā)送Keepalive報(bào)文,并復(fù)位Keepalive計(jì)時(shí)器,開始計(jì)時(shí)。同時(shí)轉(zhuǎn)入OpenConfirm狀態(tài)。OpenConfirm(打開消息確認(rèn))狀態(tài):在OpenConfirm狀態(tài),BGP等待一個(gè)Keepalive報(bào)文,同時(shí)復(fù)位保持計(jì)時(shí)器,如果收到了一個(gè)Keepalive報(bào)文,就轉(zhuǎn)入Established階段,BGP鄰居關(guān)系就建立起來(lái)了。如果TCP連接中斷,就退回到Idle狀態(tài)。Established(連接已建立):在Established狀態(tài),BGP鄰居關(guān)系已經(jīng)建立,這時(shí),BGP將和它的鄰居們交換Update報(bào)文,同時(shí)復(fù)位保持計(jì)時(shí)器。我們常常在displaybgppeer為active時(shí),看到這樣兩種狀態(tài)active和establish。當(dāng)BGP的鄰居狀態(tài)是active時(shí),BGP鄰居之間還無(wú)法通告路由,主要是因?yàn)門CP連接還沒(méi)有建立起來(lái)Page43OpenSent(打開消息已發(fā)送):在OpenSent狀態(tài)Page44BGP協(xié)議中消息的應(yīng)用通過(guò)TCP建立BGP連接時(shí),發(fā)送open消息連接建立后,如果有路由需要發(fā)送或路由變化時(shí),發(fā)送UPDATE消息通告對(duì)端路由信息穩(wěn)定后此時(shí)要定時(shí)發(fā)送KEEPALIVE消息以保持BGP連接的有效性當(dāng)本地BGP在運(yùn)行中發(fā)現(xiàn)錯(cuò)誤時(shí),要發(fā)送NOTIFICATION消息通告BGP對(duì)端Page44BGP協(xié)議中消息的應(yīng)用通過(guò)TCP建立BGP連接Page45第1章BGP路由協(xié)議的原理第2章BGP路由屬性內(nèi)容介紹Page45第1章BGP路由協(xié)議的原理內(nèi)容介紹Page46BGP的路由屬性表達(dá)了路由的特征便于擴(kuò)展過(guò)渡和非過(guò)渡的,必遵和可選的公認(rèn)必遵(well-knownmandatory)公認(rèn)任意(well-knowndiscretionary)可選過(guò)渡(optionaltransitive)可選非過(guò)渡(optionalnon-transitive)BGP協(xié)議的重點(diǎn)Page46BGP的路由屬性表達(dá)了路由的特征BGP協(xié)議的重必遵屬性:在路由更新數(shù)據(jù)報(bào)文中必須存在的路由屬性,這種屬性域在BGP路由信息中有著不可替代的作用,如果缺少必遵屬性,路由信息就會(huì)出錯(cuò)。如AS-Path就是必遵屬性,BGP用它來(lái)避免路由環(huán)路,沒(méi)有它路由就可能出問(wèn)題??蛇x屬性:它是可選的,不一定存在于路由更新數(shù)據(jù)報(bào)文中,我們?cè)O(shè)置它完全是根據(jù)需要。如MED屬性,我們就用它來(lái)控制選路。過(guò)渡屬性:具有AS間可傳遞性的屬性就是過(guò)渡屬性,過(guò)渡屬性的域值可以被傳遞到其他AS中去并繼續(xù)起作用。如Origin屬性,路由信息的起源一旦確定,域值會(huì)一直存在,無(wú)論此路由信息被傳到哪個(gè)AS中去。非過(guò)渡屬性:只在本地起作用,出了自治系統(tǒng),域值就恢復(fù)成缺省值Page47BGP的路由屬性必遵屬性:在路由更新數(shù)據(jù)報(bào)文中必須存在的路由屬性,這種屬性域Page48BGP的路由屬性1、Origin2、AS-Path3、Nexthop4、MED5、Local-Preference6、Atomic-Aggregate7、Aggregator8、Community9、Originator-ID10、Cluster-List11、DestinationPref(MCI)12、Advertiser(Baynet)13、Rcid-Path(Baynet)14、MP_Reach_NLRI15、MP_Unreach_NLRI16、Extended_CommunitiesPage48BGP的路由屬性1、Origin9、OrigiPage49Origin

屬性(起源)一般的,具體的實(shí)現(xiàn)按如下方式?jīng)Q定一條路由的Origin屬性某條路由是直接而具體的注入到BGP路由表中的,則origin屬性為IGPBGP把聚合路由和用直接注入到BGP路由表的具體路由看成是AS內(nèi)部的,起點(diǎn)類型設(shè)置為IGP。即用“networkXXXXXXXX”命令注入的路由或者是聚合的路由。路由是通過(guò)EGP得到的,則origin屬性為EGP其他情形下,Origin屬性都為IncompleteBGP把通過(guò)其它IGP協(xié)議引入的路由起點(diǎn)類型設(shè)置為Incomplete。即用“import”命令注入的路由。Page49Origin屬性(起源)一般的,具體的實(shí)現(xiàn)按Page50AS-Path

屬性D(18.0.0.0/8)AS200AS300AS400AS100AS500RTARTB30.0.0.130.0.0.2D,dl400300200D,d2500200

D,d1400300200>D,d2500200路由的AS-Path域在記錄AS-number時(shí),總是把新的AS-numbe放在前面Page50AS-Path屬性D(18.0.0.0/8)AS-Path屬性也是一個(gè)必遵屬性,它是路由到達(dá)某個(gè)目的地所經(jīng)過(guò)的所有AS號(hào)碼的序列。BGP使用AS路徑屬性作為路由更新(更新數(shù)據(jù)包)的一部分來(lái)確保在Internet上的一個(gè)無(wú)環(huán)路拓?fù)浣Y(jié)構(gòu)。BGP不會(huì)接受AS路徑屬性中包含的本AS自治系統(tǒng)號(hào)的路由,因?yàn)榇寺酚梢呀?jīng)被本自治系統(tǒng)處理過(guò)了,從而避免了生成路由環(huán)路的可能。為此,BGP在向EBGP對(duì)等體通告一條路由時(shí),要把自己的AS號(hào)加入到AS路徑屬性中,以記錄此路由通過(guò)的AS區(qū)域信息。同時(shí),AS路徑屬性也在影響路由選擇。在其它因素相同的情況下,選擇AS路徑較短的路由。如膠片所示,AS200內(nèi)的網(wǎng)絡(luò)D18.0.0.0/8經(jīng)AS200、AS300、AS400到達(dá)AS100的路徑為d1(400300200),經(jīng)AS200、AS500到達(dá)AS100的路徑為d2(500200),這時(shí)BGP優(yōu)先選擇較短的路徑d2。注:路由的AS-Path域在記錄AS-number時(shí),總是把新的AS-numbe放在前面,如上圖,路由先經(jīng)過(guò)AS200,記錄:d2(200);路由再經(jīng)過(guò)AS500,記錄:d2(500200)。Page51AS-Path

屬性AS-Path屬性也是一個(gè)必遵屬性,它是路由到達(dá)某個(gè)目的地Page52NextHop

屬性(一)AS100AS2001.1.2.1/24D=8.0.0.0Next_Hop=1.1.1.11.1.1.1/24EBGPEBGPD=8.0.0.0Next_Hop=1.1.2.1IBGPD=8.0.0.0Next_Hop=1.1.2.1AS300IBGPD=8.0.0.08.0.0.01.1.3.1/24RTARTBRTCRTERTFNext_Hop=1.1.3.1Page52NextHop屬性(一)AS100AS20BGP的下一跳屬性和IGP的有所不同,不一定就是鄰居路由器的IP地址。通常情況下,Next_Hop屬性遵循下面的規(guī)則:BGPSpeaker在向EBGP對(duì)等體發(fā)布某條路由時(shí),會(huì)把該路由信息的下一跳屬性設(shè)置為本地與對(duì)端連接的接口地址。BGPSpeaker將本地始發(fā)路由發(fā)布給IBGP對(duì)等體時(shí),會(huì)把下一跳屬性設(shè)置為發(fā)起該路由的路由器的接口地址。BGPSpeaker在向IBGP對(duì)等體發(fā)布從EBGP對(duì)等體學(xué)來(lái)的路由時(shí),并不改變?cè)撀酚尚畔⒌南乱惶鴮傩?。AS100內(nèi)部IBGP對(duì)等體間傳遞IBGP內(nèi)部路由。在AS100中,三臺(tái)路由器上運(yùn)行IGP協(xié)議,RTA與RTC之間運(yùn)行IBGP,則RTA接收到Update報(bào)文中目的地址是8.0.0.0的路由的Next_Hop屬性是1.1.3.1,也就是到目的地的始發(fā)路由器RTC的接口地址。Page53NextHop屬性(二)BGP的下一跳屬性和IGP的有所不同,不一定就是鄰居路由器的Page54Local-Preference屬性AS400AS100AS300AS200RTARTBRTCRTDRTERTFD(18.0.0.0/8)30.0.0.130.0.0.220.0.0.120.0.0.2D,local-pref1100D,local-pref2200

D,local-pref1100>D,local-pref2200RTA就會(huì)優(yōu)先選擇本地優(yōu)先級(jí)高的local

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論