win7系統(tǒng)下載
當(dāng)前位置: 首頁(yè) > 網(wǎng)絡(luò)技術(shù)教程 > 詳細(xì)頁(yè)面

網(wǎng)絡(luò)支架BGP剖析

發(fā)布時(shí)間:2022-06-05 文章來源:深度系統(tǒng)下載 瀏覽:

網(wǎng)絡(luò)技術(shù)是從1990年代中期發(fā)展起來的新技術(shù),它把互聯(lián)網(wǎng)上分散的資源融為有機(jī)整體,實(shí)現(xiàn)資源的全面共享和有機(jī)協(xié)作,使人們能夠透明地使用資源的整體能力并按需獲取信息。資源包括高性能計(jì)算機(jī)、存儲(chǔ)資源、數(shù)據(jù)資源、信息資源、知識(shí)資源、專家資源、大型數(shù)據(jù)庫(kù)、網(wǎng)絡(luò)、傳感器等。 當(dāng)前的互聯(lián)網(wǎng)只限于信息共享,網(wǎng)絡(luò)則被認(rèn)為是互聯(lián)網(wǎng)發(fā)展的第三階段。

1. 概述

因特網(wǎng),在20世紀(jì)60年代末,作為一個(gè)實(shí)驗(yàn),開始于DARPA(美國(guó)國(guó)防部的高級(jí)研究項(xiàng)目管理局)。隨著研究機(jī)構(gòu)、學(xué)院和政府加入,形成了最早的ARPANET。后來,美國(guó)國(guó)家科學(xué)基金會(huì)又開發(fā)了NSFNET(1995年4月停用)。發(fā)展到現(xiàn)在,因特網(wǎng)成為了由商業(yè)提供者運(yùn)營(yíng)的的更分散的體系。而下一代因特網(wǎng)(NGI)的計(jì)劃已于1997年10月啟動(dòng),目前已推出的主要方案有Internet2,Abilene等。

出于管理和擴(kuò)展的目的,因特網(wǎng)可以被分割成許多不同的自治系統(tǒng)(Autonomous System)。換句話說,因特網(wǎng)是由自治系統(tǒng)匯集而成的。

BGPv4(Border gateway protocol Version 4)——邊緣網(wǎng)關(guān)協(xié)議(定義于RFC1771),是現(xiàn)行因特網(wǎng)的實(shí)施標(biāo)準(zhǔn),就是用來連接自治系統(tǒng),實(shí)現(xiàn)自治系統(tǒng)間的路由選擇功能的。

2. IGP與EGP

所有的路由選擇協(xié)議可以被分成IGP和EGP兩種。要了解IGP和EGP的概念,應(yīng)該首先了解自治系統(tǒng)(AS)的概念。傳統(tǒng)的AS定義(RFC1771):AS是同一個(gè)技術(shù)管理下的一組路由器,它們使用一種內(nèi)部網(wǎng)關(guān)協(xié)議和一致的度量尺度來對(duì)數(shù)據(jù)包進(jìn)行AS內(nèi)部的路由,而使用外部網(wǎng)關(guān)協(xié)議來對(duì)發(fā)向其它AS的數(shù)據(jù)包進(jìn)行路由選擇。發(fā)展到現(xiàn)在,已經(jīng)允許并且時(shí)常采用在一個(gè)自治系統(tǒng)AS中使用多個(gè)內(nèi)部網(wǎng)關(guān)協(xié)議,甚至多個(gè)路由選擇的度量標(biāo)準(zhǔn)。所以,現(xiàn)在的自治系統(tǒng)被擴(kuò)展的定義為:共享同一路由選擇策略的一組路由器。

IGP(Interior gateway protocols)——內(nèi)部網(wǎng)關(guān)協(xié)議,定義為在一個(gè)自治系統(tǒng)內(nèi)部使用的路由協(xié)議(包括動(dòng)態(tài)路由協(xié)議和靜態(tài)路由)。IGP的功能是完成數(shù)據(jù)包在AS內(nèi)部的路由選擇,或者說,是講述數(shù)據(jù)包如何穿過本地AS的。RIPv1&v2,IGRP,EIGRP,OSPF,ISIS都是典型的IGP。

EGP(Exterior gateway protocols)——外部網(wǎng)關(guān)協(xié)議,定義為在多個(gè)自治系統(tǒng)之間使用的路由協(xié)議。它主要完成數(shù)據(jù)包在AS間的路由選擇,或者說,講述數(shù)據(jù)包為了到達(dá)目的IP,需要通過哪些AS。BGP4就是一種EGP。

IGP只作用于本地AS內(nèi)部,而對(duì)其他AS一無所知。它負(fù)責(zé)將數(shù)據(jù)包發(fā)到主機(jī)所在的網(wǎng)段(segment)。EGP作用于各AS之間,它只了解AS的整體結(jié)構(gòu),而不了解各個(gè)AS內(nèi)部的拓?fù)浣Y(jié)構(gòu)。它只負(fù)責(zé)將數(shù)據(jù)包發(fā)到相應(yīng)的AS中,余下的工作便交給IGP來做。

每個(gè)自治系統(tǒng)AS都有唯一的標(biāo)識(shí),稱為AS號(hào)(AS number),由IANA(Internet Assigned Numbers Authority)來授權(quán)分配。這是一個(gè)16位的二進(jìn)制數(shù),范圍為1~65535,其中65412~65535為AS專用組(RFC2270)。

3.BGP-4的基本概念

BGP-4是典型的外部網(wǎng)關(guān)協(xié)議,是現(xiàn)行的因特網(wǎng)實(shí)施標(biāo)準(zhǔn)。它完成了在自治系統(tǒng)AS間的路由選擇?梢哉f,BGP協(xié)議是現(xiàn)代整個(gè)網(wǎng)絡(luò)的支架。

BGP-4在RFC1771中作出了規(guī)定,并且還涉及其他很多的RFC文檔。在這一新版本中,BGP開始支持CIDR(Classless interdomains routing)和AS路徑聚合(Aggregation),這種新屬性的加入,可以減緩BGP表中條目的增長(zhǎng)速度。

網(wǎng)絡(luò)支架BGP剖析_網(wǎng)絡(luò)技術(shù)

圖一

BGP協(xié)議是一種距離矢量(Distance vector)的路由協(xié)議,但是比起RIP等典型的距離矢量協(xié)議,又有很多增強(qiáng)的性能。BGP使用TCP作為傳輸協(xié)議,使用端口號(hào)179。在通信時(shí),要先建立TCP會(huì)話,這樣數(shù)據(jù)傳輸?shù)目煽啃跃陀蒚CP協(xié)議來保證,而在BGP的協(xié)議中就不用再使用差錯(cuò)控制和重傳的機(jī)制,從而簡(jiǎn)化了復(fù)雜的程度。另外,BGP使用增量的、觸發(fā)性的路由更新,而不是一般的距離矢量協(xié)議的整個(gè)路由表的、周期性的更新,這樣節(jié)省了更新所占用的帶寬。BGP還使用“保留”信號(hào)(Keepalive)來監(jiān)視TCP會(huì)話的連接。而且,BGP還有多種衡量路由路徑的度量標(biāo)準(zhǔn)(稱為路由屬性),可以更加準(zhǔn)確的判斷出最優(yōu)的路徑。

與傳統(tǒng)的內(nèi)部路由協(xié)議相比,BGP還有一個(gè)有趣的特性,就是使用BGP的路由器之間,可以被未使用BGP的路由器隔開。這是因?yàn)锽GP在獨(dú)立的內(nèi)部路由協(xié)議之上工作,所以通過BGP會(huì)話連接的路由器能被多個(gè)運(yùn)行內(nèi)部路由協(xié)議的路由器分開。

建立了BGP會(huì)話連接的路由器被稱作對(duì)等體(peers or neighbors),對(duì)等體的連接有兩種模式:IBGP(Internal BGP)和EBGP(External BGP)。IBGP是指單個(gè)AS內(nèi)部的路由器之間的BGP連接,而EBGP則是指AS之間的路由器建立BGP會(huì)話。

網(wǎng)絡(luò)支架BGP剖析_網(wǎng)絡(luò)技術(shù)

圖二

前面已經(jīng)提到,BGP是用來完成AS之間的路由選擇的,所以對(duì)于BGP來說,每一個(gè)AS都是一個(gè)原子的跳度。那么,IBGP又起什么樣的作用呢?IBGP是用來在AS內(nèi)部完成BGP更新信息的交換。雖然這種功能也可以由“再分布” (Redistribution)技術(shù)來完成——將EBGP傳送來的其他AS的路由“再分布”到IGP中,然后將其“再分布”到EBGP傳送到其他AS。但是相比之下,IBGP提供了更高的擴(kuò)展性、靈活性和管理的有效性。比如,IBGP提供了選擇本地AS外出點(diǎn)的方式。

IBGP的功能是維護(hù)AS內(nèi)部連通性。BGP規(guī)定,一個(gè)IBGP的路由器不能將來自另一IBGP路由器的路由發(fā)送給第三方IBGP路由器。這也可以理解為通常所說的Split-horizon規(guī)則。當(dāng)路由器通過EBGP接收到更新信息時(shí),它會(huì)對(duì)這個(gè)更新信息進(jìn)行處理,并發(fā)送到所有的IBGP及余下的EBGP對(duì)等體;而當(dāng)路由器從IBGP接收到更新信息時(shí),它會(huì)對(duì)其進(jìn)行處理并僅通過EBGP傳送,而不會(huì)向IBGP傳送。所以,在AS中,BGP路由器必須要通過IBGP會(huì)話建立完全連接的網(wǎng)狀連接,以此來保持BGP的連通性。如果沒有在物理上實(shí)現(xiàn)全網(wǎng)狀(full meshed)的連接,就會(huì)出現(xiàn)連通性上的問題。

AS在BGP看來是一個(gè)整體,AS內(nèi)部的BGP路由器都必須將相同的路由信息發(fā)送給邊界的EBGP路由器。路由信息在通過IBGP鏈路時(shí)不會(huì)發(fā)生改變,只有通過EBGP鏈路時(shí),路由信息才會(huì)發(fā)生變化。在AS內(nèi)部,通過IBGP連接的路由器都有相同的BGP路由表(BGP路由表(BGP Routing Table)用于存放BGP路由信息,不同于IGP路由表,兩個(gè)表之間的信息可以通過“再分布”(Redistribution)技術(shù)進(jìn)行交換)。

網(wǎng)絡(luò)的神奇作用吸引著越來越多的用戶加入其中,正因如此,網(wǎng)絡(luò)的承受能力也面臨著越來越嚴(yán)峻的考驗(yàn)―從硬件上、軟件上、所用標(biāo)準(zhǔn)上......,各項(xiàng)技術(shù)都需要適時(shí)應(yīng)勢(shì),對(duì)應(yīng)發(fā)展,這正是網(wǎng)絡(luò)迅速走向進(jìn)步的催化劑。