?? rfc1771.txt
字號:
組織:中國互動(dòng)出版網(wǎng)(http://www.china-pub.com/)
RFC文檔中文翻譯計(jì)劃(http://www.china-pub.com/compters/emook/aboutemook.htm)
E-mail:ouyang@china-pub.com
譯者:kevin73(kevin73,panzhenyu_2@263.net)
譯文發(fā)布時(shí)間:2001-4-26
版權(quán):本中文翻譯文檔版權(quán)歸中國互動(dòng)出版網(wǎng)所有。可以用于非商業(yè)用途自由轉(zhuǎn)載,但必須
保留本文檔的翻譯及版權(quán)信息。
Network Working Group Y. Rekhter
Request for Comments: 1771 T.J. Watson Research Center, IBM Corp.
Obsoletes: 1654 T. Li
Category: Standards Track cisco Systems
Editors
March 1995
邊界網(wǎng)關(guān)協(xié)議版本4(BGP-4)
(RFC1771 A Border Gateway Protocol 4 (BGP-4))
本備忘錄的狀態(tài)
本文檔講述了一種Internet社區(qū)的Internet標(biāo)準(zhǔn)跟蹤協(xié)議,它需要進(jìn)一步進(jìn)行討論和
建議以得到改進(jìn)。請參考最新版的“Internet正式協(xié)議標(biāo)準(zhǔn)” (STD1)來獲得本協(xié)議的標(biāo)準(zhǔn)
化程度和狀態(tài)。本備忘錄的發(fā)布不受任何限制。
摘要
本文檔,以及隨同文檔,“邊檢網(wǎng)關(guān)協(xié)議在互聯(lián)網(wǎng)中的應(yīng)用”,定義了互聯(lián)網(wǎng)的自治系
統(tǒng)間路由協(xié)議。
目錄
1. 致謝 3
2. 介紹 3
3. 操作總結(jié) 4
3.1 路由:通告和存儲 5
3.2 路由信息庫 5
4. 消息格式 5
4.1 消息頭格式 6
4.2 OPEN消息格式 6
4.3 UPDATE消息格式 8
4.4 KEEPALIVE消息格式 13
4.5 NOTIFICATION消息格式 13
5. 路徑屬性 15
5.1 路徑屬性使用 16
5.1.1 ORIGIN 16
5.1.2 AS-PATH 16
5.1.3 NEXT-HOP 16
5.1.4 MULTI-EXIT-DISC 17
5.1.5 LOCAL_PREF 17
5.1.6 ATOMIC_AGGREGATE 17
5.1.7 AGGREGATOR 18
6. BGP錯(cuò)誤處理 18
6.1 消息頭錯(cuò)誤處理. 18
6.2 OPEN 消息錯(cuò)誤處理 19
6.3 UPDATE 消息錯(cuò)誤處理 19
6.4 NOTIFICATION 消息錯(cuò)誤處理 20
6.5 HOLD TIMER 溢出錯(cuò)誤處理 20
6.6 有限狀態(tài)及錯(cuò)誤處理. 20
6.7 終止 21
6.8 連接沖突檢測 21
7. BGP版本商議 21
8. BGP 有限狀態(tài)機(jī) 22
9. UPDATE 消息處理 25
9.1 決策過程 26
9.1.1 Phase 1: 優(yōu)先級的計(jì)算 26
9.1.2 Phase 2: 路由選擇 27
9.1.3 Phase 3: 路由分發(fā) 28
9.1.4 路由覆蓋 29
9.2 UPDATE發(fā)送過程 29
9.2.1 內(nèi)部更新 30
9.2.2 外部更新 31
9.2.3 控制路由流量開銷 31
9.2.4 路由信息的有效組織 32
9.3 路由選擇標(biāo)準(zhǔn) 34
9.4 產(chǎn)生BGP路由 34
附錄 1. BGP FSM 狀態(tài)轉(zhuǎn)換和行為 34
附錄 2. 對比RFC1267 37
附錄 3. 對比RFC1663 38
附錄4. 對比 RFC 1105 38
附錄5. BGP可能使用的TCP選項(xiàng) 39
附錄6. 應(yīng)用建議 39
6.1 每個(gè)消息的多網(wǎng)絡(luò)前綴 39
6.2 使用流協(xié)議 40
6.3 減少路由抖動(dòng) 40
6.4 BGP 計(jì)時(shí)器 40
6.5 路徑屬性順序 40
6.6 AS_SET 排序 41
6.7 版本商議控制 41
6.8 復(fù)雜 AS_PATH 聚合 41
參考 41
安全考慮 42
作者地址 42
1. 致謝
本文檔初版是1991年10月的RFC1267,由Kirk Lougheed (cisco 系統(tǒng)) 和 Yakov
Rekhter (IBM)合作。
我們意欲感謝Guy Almes (ANS), Len Bosack(cisco 系統(tǒng)), 和Jeffrey C. Honig
(Cornell 大學(xué)) 對本文檔早期版本的貢獻(xiàn)。
我們特別感謝Bob Braden (ISI) 回顧本文檔的早期版本并作出了建設(shè)性有價(jià)值的評論。
我們同時(shí)感謝Bob Hinden, Internet Engineering Steering Group路由主管, 以及他
組織回顧早期版本(BGP-2)的小組。本小組,包括Deborah Estrin, Milo Medin, John Moy,
Radia Perlman, Martha Steenstrup, Mike St. Johns, 和 Paul Tsuchiya, 工作頑強(qiáng)專
業(yè)謙遜。
本文檔作為更新版本是編者Yakov Rekhter and Tony Li 的IETF IDR 工作組的產(chǎn)品。
本文檔某些部分廣泛參考了IDRP[7],BGP的OSI對等協(xié)議。為此感謝ANSI X3S3.3 組,主席
是Lyman Chapin (BBN), 編輯是Charles Kunzinger(IBM Corp.)。 同時(shí)感謝Mike Craren
(Proteon, Inc.), Dimitry Haskin (Bay Networks, Inc.), John Krawczyk (Bay Networks,
Inc.), 和 Paul Traina (cisco Systems) 的深刻評論。
我們特別感謝 Dennis Ferguson (MCI)的巨大貢獻(xiàn)。
Yakov Rekhter 的工作資金部分來自National Science Foundation ,批號NCR-9219216.
2. 介紹
邊界網(wǎng)關(guān)協(xié)議(BGP)是自治系統(tǒng)間路由協(xié)議。它的建立來源于RFC904[1]中定義的EGP
以及RFC1092[2]和RFC1093[3]中描述的EGP在NSFNET骨干網(wǎng)中的使用。
BGP交互系統(tǒng)的主要功能是和其他的BGP系統(tǒng)交換網(wǎng)絡(luò)可達(dá)信息。網(wǎng)絡(luò)可達(dá)信息包括可達(dá)
信息經(jīng)過的自治系統(tǒng)(AS)清單上的信息。這些信息有效地構(gòu)造了AS互聯(lián)的圖像并由此清除
了路由環(huán)路同時(shí)在AS級別上實(shí)施了策略決策。
BGP-4提供了一套新的機(jī)制支持無類域間路由。這些機(jī)制包括支持網(wǎng)絡(luò)前綴的廣播取消
BGP網(wǎng)絡(luò)中“類”的概念。BGP-4也引入機(jī)制支持路由聚合,包括AS路徑的聚合。這些改變?yōu)?[8, 9]建議的超網(wǎng)方案提供了支持。
為了刻畫BGP執(zhí)行的路由決策,集中講述BGP發(fā)言者通告他自己使用的路由到相鄰AS中對
端(與之通信的別的BGP發(fā)言者)的規(guī)則。這些規(guī)則反映了當(dāng)今互聯(lián)網(wǎng)廣泛使用的“一跳一
跳”路由范例。注意一些策略不被“一跳一跳路由范例支持所以需要比如源路由之類的技術(shù)
來增強(qiáng)。例如,BGP不支持AS發(fā)送流量到相鄰的AS但是路由和源自相鄰AS流量有不同的路由。
另一方面,BGP支持任何與“一跳一跳”一致的策略。由于當(dāng)前互聯(lián)網(wǎng)只使用“一跳一跳”
路由范例同時(shí)BGP支持與范例一致的策略,BGP作為AS間路由協(xié)議非常適用于當(dāng)今互聯(lián)網(wǎng)。
BGP能否執(zhí)行哪些策略超出了本文檔的討論范圍(請參考討論BGP使用的隨同文檔[5])。
BGP運(yùn)行在穩(wěn)定的傳輸協(xié)議上。這樣就不用再更新分段,重傳,應(yīng)答和排序。傳輸協(xié)議
使用的認(rèn)證機(jī)制可以作為BGP自己的認(rèn)證機(jī)制的附加。BGP的錯(cuò)誤通知機(jī)制假定傳輸協(xié)議支持
“體面”關(guān)閉,也就是說,說有沒有傳到的數(shù)據(jù)在聯(lián)接關(guān)閉之前要被送到。
BGP使用TCP[4]作為傳輸協(xié)議。TCP滿足BGP的傳輸需求并在所有的商業(yè)路由器和主機(jī)上
使用。在后面的敘述中,術(shù)語“傳輸協(xié)議連接”可以理解為TCP連接。BGP使用TCP端口179
建立連接。
本文檔使用術(shù)語自治系統(tǒng)(AS)。自治系統(tǒng)的經(jīng)典定義是在統(tǒng)一技術(shù)管理下的一系列路
由器,在AS內(nèi)部使用內(nèi)部網(wǎng)關(guān)協(xié)議和通用的度量路由數(shù)據(jù)包,在AS外部使用外部網(wǎng)關(guān)協(xié)議路
由數(shù)據(jù)包。由于本定義的發(fā)展,通常一個(gè)AS可以使用幾個(gè)內(nèi)部網(wǎng)關(guān)協(xié)議同時(shí)在AS內(nèi)部使用多
種度量。使用自治系統(tǒng)這個(gè)術(shù)語強(qiáng)調(diào)了以下事實(shí),即使使用了多個(gè)IGP和度量,對別的AS而
言,AS的管理表現(xiàn)出一致的路由計(jì)劃和一致的目的地可達(dá)。
在互聯(lián)網(wǎng)中使用BGP的計(jì)劃,包括拓?fù)鋯栴},BGP和IGP的交互,路由策略規(guī)則的實(shí)施,
在隨同文檔[5]中表述。本文當(dāng)是一系列探究BGP應(yīng)用各方面問題計(jì)劃的開始。請發(fā)表評論到
BGP郵件列表(bgp@ans.net).
3. 操作總結(jié)
兩個(gè)系統(tǒng)通過傳輸協(xié)議互聯(lián)。他們交換消息來打開和確認(rèn)連接參數(shù)。初始的數(shù)據(jù)流是整
個(gè)BGP路由表。增加的更新作為路由表改變發(fā)送。因此,BGP發(fā)言者必須保存在連接期間所有
對等體的整個(gè)BGP路由表的當(dāng)前版本。KeepAlive心跳消息周期性發(fā)送來保證連接的存在。發(fā)
送通知消息報(bào)錯(cuò)或者特別情況。如果一個(gè)連接遇到一個(gè)錯(cuò)誤情況,要發(fā)送通知消息并且關(guān)閉
連接。
執(zhí)行邊界網(wǎng)關(guān)協(xié)議的主機(jī)不一定是路由器。一個(gè)非路由主機(jī)可以通過EGP甚至內(nèi)部網(wǎng)關(guān)
協(xié)議和路由器交換路由信息。然后非路由主機(jī)可以通過BGP和別的AS中的邊界路由器交換路
由信息。這種應(yīng)用構(gòu)架可以用于更進(jìn)一步的研究。
如果一個(gè)特定AS有多個(gè)BGP發(fā)言者同時(shí)為別的AS提供中轉(zhuǎn)業(yè)務(wù),應(yīng)該注意保證本AS中對
路由有一致的觀點(diǎn)。AS內(nèi)部路由的一致看法由內(nèi)部路由協(xié)議提供。AS外部對路由的一致看法
由所有AS內(nèi)部的BGP發(fā)言者保持BGP一一互聯(lián)。使用通常的策略,BGP發(fā)言者對哪一個(gè)邊界路
由器服務(wù)為和別的AS的外出/進(jìn)入點(diǎn)達(dá)成一致。這些信息可能通過內(nèi)部網(wǎng)關(guān)協(xié)議通信到AS的
內(nèi)部路由器。注意在BGP發(fā)言者把中轉(zhuǎn)業(yè)務(wù)通告到別的AS之前所有的內(nèi)部路由器需要更新中
轉(zhuǎn)信息。
不同AS之間的BGP發(fā)言者的連接被稱為“外部”鏈路。同一個(gè)AS內(nèi)部的BGP連接被稱為“內(nèi)
部”鏈路。同樣不同AS之間的對端被稱為外部對端,相同AS之間的對端被稱為內(nèi)部對端。
3.1 路由:通告和存儲
從協(xié)議的用途出發(fā)路由被定義為組合了一個(gè)目的地和到這個(gè)目的地的路徑屬性的信息
單位。
-路由在一對BGP發(fā)言者之間通過UPDATE消息廣播。目的地也就是在網(wǎng)絡(luò)層可達(dá)信息
(NLRI)內(nèi)報(bào)告的IP地址,路徑是在UPDATE消息路徑屬性域內(nèi)報(bào)告的信息。
-路由存儲在路由信息庫(RIB)內(nèi):也就是the Adj-RIBs-In, the Loc-RIB, and the
Adj-RIBs-Out. 將被廣播到別的BGP發(fā)言者的路由放在Adj-RIB-Out內(nèi)部;在本地BGP發(fā)言者
使用的路由放在Loc-RIB, 這些路由的下一跳信息保存在BGP發(fā)言者的轉(zhuǎn)發(fā)信息庫內(nèi);別的
BGP發(fā)言者收到的路由信息保存在Adj-RIBs-In內(nèi)部。
如果一個(gè)BGP發(fā)言者選擇路由通告,他可以在通告路由到對端之前加入和修改路由的路
徑屬性。
BGP提供機(jī)制告訴對端先前的路由通告不再能使用。有三種方式供BGP發(fā)言者指示撤銷某
條路由的服務(wù)。
a)在UPDATE消息的WITHDRAWN ROUTES域內(nèi)通告先前廣播的路由目的地IP前綴,這樣相應(yīng)
的路有被標(biāo)志為不再使用,
b)使用了相同網(wǎng)絡(luò)層可達(dá)信息的替代路由被通告,
c)BGP發(fā)言者-發(fā)言者的連接被關(guān)閉,強(qiáng)制撤銷這一對發(fā)言者通高的所有的路由服務(wù)。
3.2 路由信息庫
BGP發(fā)言者的路由信息庫(RIB)包括三個(gè)不同部分:
a)Adj-RIBs-In: Adj-RIBs-In 保存了從輸入U(xiǎn)PDATE消息學(xué)習(xí)到的路由信息,這是決策
過程的輸入。
b)Loc-RIB: Loc-RIB保存了BGP發(fā)言者根據(jù)本地策略在Adj-RIBs-In內(nèi)選擇的本地路由
息。
c)Adj_RIBs_Out: Adj_RIBs_Out保存了本地BGP發(fā)言者通告到對端的路由。
Adj_RIBs_Out內(nèi)部的消息被放在UPDATE消息內(nèi)部發(fā)送的對端。
總之,Adj_RIB_In包括了被對端廣播到BGP發(fā)言者的路由信息;Loc_RIB包括了被本地決
策過程選擇的路由信息;Adj_RIBs_Out組織路由使用UPDATE消息通告到特定對端。
盡管本概念模型區(qū)分Adj-RIBs-In,Loc-RIB,和 Adj-RIBs-Out,這并不意味著也沒有
必要具體應(yīng)用中維護(hù)路由信息的獨(dú)立拷貝。應(yīng)用的選擇(例如,信息庫的三份拷貝或者一個(gè)
拷貝的指針)不受協(xié)議限制。
4. 消息格式
本章描述BGP的消息格式。
消息通過一個(gè)穩(wěn)定的傳輸協(xié)議互聯(lián)發(fā)送。消息只有在被完整收到之后才會處理。最大的
消息是4096字節(jié)。最小的消息就是一個(gè)不包括消息體的BGP消息頭,19字節(jié)。
4.1 消息頭格式
每一個(gè)消息包括一個(gè)定長的消息頭。消息頭后面可以/可以不包含數(shù)據(jù)部分,這取決于
消息類型。這些域設(shè)計(jì)如下:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| |
+ +
| Marker |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Length | Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Marker(標(biāo)記):
本16字節(jié)的域包含消息接收者可以預(yù)測的值。如果消息類型是OPEN,或者OPEN消息
承載了認(rèn)證信息(作為可選參數(shù)),標(biāo)記必須是全1。否者,標(biāo)記的值要使用認(rèn)證機(jī)制來計(jì)
算(認(rèn)證機(jī)制是通過認(rèn)證信息的一部分來指定的)。標(biāo)記可以用來探測BGP對端的同步丟失,
認(rèn)證進(jìn)入的BGP消息。
長度(Length):
兩字節(jié)無符號整數(shù)指定了消息的字節(jié)全長,包括頭部的字節(jié)。這也就是說,允許在
傳輸層數(shù)據(jù)流定位下一個(gè)消息(的標(biāo)記域)。長度的值必須最少19字節(jié)最大4096字節(jié),同時(shí)
由于不同的消息有更多的約束。不允許“填充”多余的數(shù)據(jù)在消息后,所以長度域是需要的
最小值。
類型(Type):
一字節(jié)的無符號整數(shù)制定了消息類型編碼。如下定義:
1 - OPEN
2 - UPDATE
3 - NOTIFICATION
4 - KEEPALIVE
4.2 OPEN消息格式
在傳輸協(xié)議連接建立之后,兩邊發(fā)送的第一個(gè)消息是OPEN消息。如果OPEN消息可以接受,
需要發(fā)回一個(gè)KEEPALIVE消息來確認(rèn)OPEN消息。一旦確認(rèn)了OPEN消息,UPDATE,KEEKPALIVE
和NOTIFICATION消息可以交換。
在定長的BGP消息頭后面,OPEN消息包含下列域:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -