Giới thiệu cơ bản về giao thức BGP
Trang 1BGP C B N Ơ Ả
Tác gi : Đăng Quang Minh ả ̣
BGP C B N Ơ Ả
S c n thi t c a BGP ự ầ ế ủ
BGP là m t giao th c khá ph c t p độ ứ ứ ạ ược dùng nhi u trên Internet và trong các công tyề
đa qu c gia M c đích chính c a BGP là k t n i các m ng r t l n ho c cácố ụ ủ ế ố ạ ấ ớ ặ Autonomous-System Các công ty l n có th dùng BGP nh là m t k t n i gi a cácớ ể ư ộ ế ố ữ
m ng các qu c gia khác nhau M c đích c a các giao th c ngo i nh BGP là khôngạ ở ố ụ ủ ứ ạ ư
ch tìm ra m t đỉ ộ ường đi v m t m ng nào đó mà còn cho phép ngề ộ ạ ười qu n tr tìm raả ị các AS c a các network Các giao th c n i nh EIGRP, RIP, OSPF và ISIS s tìm raủ ứ ộ ư ẽ network mà người qu n tr c n ả ị ầ
M t s tính ch t c a BGP ộ ố ấ ủ
BGP là m t giao th c đ nh tuy n d ng path-vector nên vi c ch n l a độ ứ ị ế ạ ệ ọ ự ường đi t tố
nh t thông thấ ường d a trên m t t p h p các thu c tính đự ộ ậ ợ ộ ược g i là ATTRIBUTE Doọ
s d ng metric khá ph c t p, BGP đử ụ ứ ạ ược xem là m t giao th c khá ph c t p Nhi mộ ứ ứ ạ ệ
v c a BGP là đ m b o thông tin liên l c gi a các AS, trao đ i thông tin đ nh tuy nụ ủ ả ả ạ ữ ổ ị ế
gi a các AS, cung c p thông tin v tr m k cho m i đích đ n BGP s d ng giaoữ ấ ề ạ ế ỗ ế ử ụ
th c TCP c ng 179 Nh các chứ ổ ư ương trước đã đ c p, các giao th c nhóm distanceề ậ ứ vector thường qu ng bá thông tin hi n có đ n các router láng gi ng, còn path vectorả ệ ế ề
ch ra chính xác danh sách toàn b đỉ ộ ường d n đ n đích Ngoài ra các giao th c đ nhẫ ế ứ ị tuy n ho t đ ng dùng path vector giúp vi c xác đ nh vòng l p trên m ng r t t t b ngế ạ ộ ệ ị ặ ạ ấ ố ằ cách xem xét các con đường mà các router khác g i v xem có chính b n thân ASở ề ả trong đó hay không, n u có s bi t đế ẽ ế ược ngay là l p, và s lo i b ặ ẽ ạ ỏ
BGP h tr cho các đ a ch CIDR (Classless Interdomain Routing) BGP cho phép dùngỗ ợ ị ỉ xác th c và BGP có các c ch keepalive đ nh kỳ nh m duy trì quan h gi a các BGPự ơ ế ị ằ ệ ữ peers
Trong giai đo n ban đ u c a c a phiên thi t l p quan h BGP, toàn b các thông tinạ ầ ủ ủ ế ậ ệ ộ routing-update s đẽ ược g i Sau đó, BGP s chuy n sang c ch dùng trigger-update.ử ẽ ể ơ ế
B t kỳ m t thay đ i nào trong h th ng m ng cũng s là nguyên nhân gây ra trigger-ấ ộ ổ ệ ố ạ ẽ update
M t trong các đ c đi m khác bi t nh t c a BGP là trong các routing-update c a nó.ộ ặ ể ệ ấ ủ ủ Khi ta xem xét các BGP update, ta s nh n th y các routing update này là khá chínhẽ ậ ấ xác BGP không quan tâm đ n vi c giao ti p đ có đ y đ ki n th c c a t t c cácế ệ ế ể ầ ủ ế ứ ủ ấ ả
Trang 2subnet bên trong m t công ty mà BGP quan tâm đ n vi c chuy n t i đ y đ thông tinộ ế ệ ể ả ầ ủ
đ tìm m t AS khác Các BGP update th c hi n quá trình summarization đ n m tể ộ ự ệ ế ộ
m c t i đa b ng cách cho phép m t s AS, cho phép m t s prefix và m t vài thôngứ ố ằ ộ ố ộ ố ộ tin đ nh tuy n Tuy nhiên, m t ph n nh c a BGP update là khá quan tr ng BGPị ế ộ ầ ỏ ủ ọ
đ m b o r ng l p transport đã truy n các update và các c s d li u v đả ả ằ ớ ề ơ ở ữ ệ ề ường đi đã
được đ ng b BGP có th đồ ộ ể ược hi n th c bao g m gi a các AS khác nhau hay trongệ ự ồ ữ cùng 1 AS Khi dùng BGP đ k t n i các AS khác nhau, BGP để ế ố ược g i là eBGP Giaoọ
th c này cũng có th đứ ể ược dùng đ mang thông tin gi a các router eBGP trong m tể ữ ộ
AS Khi đó BGP được g i là iBGP.ọ
Trong m t AS ta s d ng giao th c đ nh tuy n n i IGP (ví d nh RIP, ISIS, EIGRP,ộ ử ụ ứ ị ế ộ ụ ư OSPF) nh ng khi ra ngoài m t AS thì ph i s d ng m t giao th c khác V n đ ư ộ ả ử ụ ộ ứ ấ ề ở đây chính là m c đích c a các IGP và EGP không gi ng nhau Các IGP th c hi n đ nhụ ủ ố ự ệ ị tuy n gói đi t ngu n đ n đích mà không c n quan tâm đ n chính sách đ nh tuy nế ừ ồ ế ầ ế ị ế (policy) Trong khi ra kh i ph m vi m t AS thì chính sách đ nh tuy n l i là v n đỏ ạ ộ ị ế ạ ấ ề quan tr ng Xét ví d sau: ọ ụ
AS4 -AS1 -AS2 -AS3 -(C Company)
| |
| |
Trang 3B Company -A Company
Gi s A mu n truy n d li u đ n AS4 A và B là 2 đ i th c a nhau B khôngả ử ố ề ữ ệ ế ố ủ ủ
mu n chuy n d li u cho công ty A nên A ch có th chuy n d li u thông qua AS3,ố ể ữ ệ ỉ ể ể ữ ệ AS2, AS1 đ đ n để ế ược AS4, m c dù con đặ ường thông qua công ty B có th là t i uể ố ư
nh t Gi s C thu c AS3 cũng mu n đ n AS4 nh ng C là đ i tác c a B nên B s nấ ả ử ộ ố ế ư ố ủ ẵ sàng cho quá giang Nh v y A và C có cùng m t đích đ n nh ng ph i đi theo nh ngư ậ ộ ế ư ả ữ cách khác nhau Các IGP không th làm để ược đi u này vì m t nguyên nhân ch y uề ộ ủ ế chính là các giao th c đó đ u liên quan đ n metric hay là cost mà hoàn toàn khôngứ ề ế quan tâm đ n chính sách đ nh tuy n Nó ch bi t c g ng làm sao chuy n đế ị ế ỉ ế ố ắ ể ược các gói d li u đ n đích m t cách hi u qu và t i u nh t ữ ệ ế ộ ệ ả ố ư ấ
Các thu t ng BGP ậ ữ
1 Aggregation Là quá trình tóm t t các route – (summarization)ắ
2 Attribute T ươ ng t nh metric Các bi n này s mô t các đ c đi m c a ự ư ế ẽ ả ặ ể ủ
nào.
System
Đ nh nghĩa m ng c a m t t ch c Trong m t AS, cácị ạ ủ ộ ổ ứ ộ router s có cùng giao th c đ nh tuy n N u ta k t n i raẽ ứ ị ế ế ế ố Internet, ch s AS này ph i là duy nh t và đỉ ố ả ấ ược cung
c p b i các y ban Internet.ấ ở ủ
Gateway
Protocol (EGP)
Thu t ng chung cho m t giao th c đậ ữ ộ ứ ược ch y gi a cácạ ữ
AS khác nhau Cũng có m t giao th c có tên là EGP làộ ứ
ti n thân c a BGPề ủ
Gateway
Protocol (IGP)
Đây là các giao th c đ nh tuy n ch y bên trong m t AS.ứ ị ế ạ ộ Trong quá kh , thu t ng gateway thứ ậ ữ ường được dùng để
đ nh nghĩa m t router.ị ộ
7 IBGP Giao th c này đứ ược dùng bên trong m t AS Các routerộ
không yêu c u ph i là láng gi ng c a nhau v phầ ả ề ủ ề ươ ng
di n k t n i v t lý và thệ ế ố ậ ường ngoài rìa c a m t AS.ở ủ ộ IBGP được dùng gi a các router ch y BGP trong cùngữ ạ
m t AS.ộ
8 Originator-ID Đây là thu c tính c a BGP Nó là m t thu c tính tùyộ ủ ộ ộ
ch n Thu c tính này s ch a giá tr routerID c a routerọ ộ ẽ ứ ị ủ
đã phát sinh ra đường đi đó M c đích c a thu c tính nàyụ ủ ộ
là ngăn ng a routing loop N u m t router nh n đừ ế ộ ậ ượ c
Trang 4m t update t chính nó, router đó s b qua update đó.ộ ừ ẽ ỏ
routing
C ch này cho phép ngơ ế ười qu n tr l p trình giao th cả ị ậ ứ
đ nh tuy n b ng cách đ nh nghĩa traffic s đị ế ằ ị ẽ ược route
nh th nào Đây là m t d ng c a đ nh tuy n tĩnh PBRư ế ộ ạ ủ ị ế
đ c l p v i các giao th c đ nh tuy n và dùng route-mapộ ậ ớ ứ ị ế
đ t o ra các quá trình riêng l đ áp đ t các quy t đ nhể ạ ẽ ể ặ ế ị
đ nh tuy n.ị ế
10 prefix list Prefix list được dùng nh m t thay th cho distribute-listư ộ ế
đ ki m soát BGP h c ho c qu ng bá các c p nh t nhể ể ọ ặ ả ậ ậ ư
th nào Prefix-list thì nhanh h n, uy n chuy n h n và ítế ơ ể ể ơ
t n tài nguyên c a h th ng h n.ố ủ ệ ố ơ
11 Route-reflector Đây là router đ ượ ấ c c u hình đ chuy n các routes t các router iBGP ể ể ừ
router khác ho t đ ng nh m t route-reflector-server.ạ ộ ư ộ Client không c n thi t ph i thi t l p peer v i các clientầ ế ả ế ậ ớ khác
clients Có th có nhi u h n m t route-reflector serverể ề ơ ộ trong m t cluster.ộ
khác
Khi nào thì dùng BGP?
Khi m ng c a m t công ty k t n i đ n nhi u ISP ho c các AS khác và đang dùng cácạ ủ ộ ế ố ế ề ặ
k t n i này Nhi u công ty dùng các k t n i khác nhau nh m m c đích d phòng Chiế ố ề ế ố ằ ụ ự phí có th gi m thi u n u t t c các k t n i đ u để ả ể ế ấ ả ế ố ề ược dùng Trong trường h p này,ợ PBR có th c n thi t đ tri n khai trên t ng k t n i BGP còn để ầ ế ể ể ừ ế ố ược dùng khi chính sách đ nh tuy n c a nhà cung c p d ch v và c a công ty khác nhau Ho c trafficị ế ủ ấ ị ụ ủ ặ trong công ty c n ph i đầ ả ược phân bi t v i traffic c a ISP M ng c a hai t ch cệ ớ ủ ạ ủ ổ ứ không th xu t hi n nh m t AS M t trể ấ ệ ư ộ ộ ường h p khác ph i dùng BGP là khi m ngợ ả ạ
c a ta là m t ISP N u là m t ISP, h th ng m ng này ph i cho phép các traffic khácủ ộ ế ộ ệ ố ạ ả
đi qua AS c a mình Lúc này nó ho t đ ng nh m t transit domain ủ ạ ộ ư ộ
Khi nào thì không dùng BGP?
M t h th ng m ng đ n gi n là m t h th ng m ng d dàng qu n lý và b o trì Đâyộ ệ ố ạ ơ ả ộ ệ ố ạ ễ ả ả
là lý do chính đ tránh dùng BGP trong m t h th ng m ng Vì v y, n u h th ngể ộ ệ ố ạ ậ ế ệ ố
m ng có các đ c đi m sau, nên dùng nh ng cách th c khác, ch ng h n nh staticạ ặ ể ữ ứ ẳ ạ ư
ho c default-routing ặ
Trang 5- M ng c a ISP và m ng c a công ty có chung m t chính sách đ nh tuy nạ ủ ạ ủ ộ ị ế
- M c dù công ty c a b n có nhi u k t n i đ n ISP, các k t n i này là dặ ủ ạ ề ế ố ế ế ố ự phòng và vì v y không c n m t k ho ch đ kích ho t nhi u h n m t k t n iậ ầ ộ ế ạ ể ạ ề ơ ộ ế ố
đ n Internet.ế
- Tài nguyên m ng là có gi i h n, ch ng h n nh b nh và CPU c a router.ạ ớ ạ ẳ ạ ư ộ ớ ủ
- Băng thông gi a các AS là th p và các phí t n cho đ nh tuy n s nh hữ ấ ổ ị ế ẽ ả ưở ng
đ n quá trình chuy n d li u.ế ể ữ ệ
M t s thu c tính quan tr ng c a BGP ộ ố ộ ọ ủ
BGP đ nh tuy n traffic b ng cách s d ng các thu c tính Vi c s d ng các thu cị ế ằ ử ụ ộ ệ ử ụ ộ tính ám ch đ n vi c s d ng các bi n trong quá trình ch n l a đỉ ế ệ ử ụ ế ọ ự ường đi trong BGP Các thu c tính c a BGP không ch là danh sách các bi n mà qua đó route độ ủ ỉ ế ược ch nọ
l a M t vài thông tin đự ộ ược mang trong các thông đi p c p nh t là quan tr ng h nệ ậ ậ ọ ơ các thông tin khác M t s thông tin khác là r t quan tr ng cho ho t đ ng c a BGP, vìộ ố ấ ọ ạ ộ ủ
v y các thông tin này ph I đậ ả ược mang đ n t t c các router BGP trong m ng Quáế ấ ả ạ trình ch n l a đọ ự ường đi d a trên nh ng thu c tính và các giá tr c a nó Các thu cự ữ ộ ị ủ ộ tính được chia thành hai nhóm: nhóm n I ti ng (well-known) và nhóm tùy ch nổ ế ọ
(optional) C hai nhóm này s đả ẽ ược ti p t c chia ra làm các nhóm con ế ụ
Well-known mandatory Các thu c tính này là b t bu c và đ ộ ắ ộ ượ c công nh n b i t t c ậ ở ấ ả
các router BGP
Optional Transitive Router có th không công nh n các thu c tính nàyể ậ ộ
nh ng n u router nh n đư ế ậ ược thu c tính này, nó sộ ẽ đánh d u và g i đ y đ c p nh t này đ n router kấ ử ầ ủ ậ ậ ế ế
ti p Các thu c tính s không thay đ i khi đi quaế ộ ẽ ổ router n u thu c tính này không đế ộ ược công nh nậ
b i router.ở Optional Nontransitive Các thu c tính này b lo i b n u c p nh t mangộ ị ạ ỏ ế ậ ậ
thu c tính này đi vào router mà router không hi uộ ể
ho c không công nh n thu c tính Các thu c tínhặ ậ ộ ộ này s không truy n t i các BGP ẽ ề ớ
1 Thu c tính ộ AS_PATH: Đây là thu c tính quan tr ng trong vi c xác đ nh độ ọ ệ ị ường đi
t i u, mang 2 ch c năng Th nh t, AS_PATH càng ng n càng đố ư ứ ứ ấ ắ ược router u tiênư
h n (ví d t AS3 đ n AS4 có 2 con đơ ụ ừ ế ường khác nhau: AS3 - B - AS4, ho c AS3 -ặ
Trang 6AS2 - AS1 – AS4 thì router s u tiên con đẽ ư ường ng n h n là qua B) Ch c năng thắ ơ ứ ứ hai là ngăn ng a vòng l p B i vì thu c tính AS_PATH r t quan tr ng cho quá trìnhừ ặ ở ộ ấ ọ
ho t đ ng c a BGP nên t t c các nhà cung c p ph i h tr nó và là m t thu c tínhạ ộ ủ ấ ả ấ ả ỗ ợ ộ ộ mang tính b t bu c, nghĩa là t t c các b đ nh tuy n ph i chuy n thu c tính này đ nắ ộ ấ ả ộ ị ế ả ể ộ ế
t t c các láng gi ng trong m i thông đi p c p nh t c a BGP.ấ ả ề ọ ệ ậ ậ ủ
2 Thu c tính ngu n g c (ộ ồ ố Origin-attribute): là m t thu c tính xác đ nh ngu n g cộ ộ ị ồ ố
c a các routing thông tin c p nh t đ nh tuy n N u là “i ” thì ch r ng routing thôngủ ậ ậ ị ế ế ỉ ằ tin c p nh t đ nh tuy n đậ ậ ị ế ược bi t thông qua m t IGP (RIP, OSPF…) N u giá tr “e”ế ộ ế ị thì routing thông tin c p nh t đ nh tuy n đậ ậ ị ế ược bi t thông qua m t EGP N u giá trế ộ ế ị
“?” (incomplete) thì ch r ng không bi t ngu n g c c a routing thông tin c p nh tỉ ằ ế ồ ố ủ ậ ậ
đ nh tuy n (Đi u này có th xu t hi n n u routing thông tin c p nh t đ nh tuy nị ế ề ể ấ ệ ế ậ ậ ị ế
được bi t thông qua IGP r i sau đó l i đế ồ ạ ược thông báo qua EGP.) Khi nó h c đọ ườ ng
b ng l nh network thì nó đ thu c tính này là: i Khi nó h c đằ ệ ể ộ ọ ường qua các l nh nhệ ư redistribute v.v thì nó đ thu c tính là: “?”.Còn sau đó các m ng này để ộ ạ ược qu ng báả
t i các EGP router láng gi ng thì thu c tính này đớ ề ộ ược đ i thành e vì router m i h cổ ớ ọ
được các tuy n đế ường này nh EGP ờ Thu c tính origin không thay đ i qua giao th cộ ổ ứ EBGP mà v n gi nguyên Thu c tính origin là e khi tuy n đẫ ữ ộ ế ược h c t giao th cọ ừ ứ
EGP (đây là giao th c đ nh tuy n gi a các AS, đứ ị ế ữ ượ ử ục s d ng nhi u trên Internet khiề BGP ch a ra đ i nh ng hi n nay h u nh không còn đư ờ ư ệ ầ ư ượ ử ục s d ng)
Next-Hop attribute:
Trong eBGP, giá tr next-hop là đ a ch IP c a router t bên ngoài c a vùng t tr ASị ị ỉ ủ ừ ủ ự ị
qu ng bá vào bên trong AS Đ a ch IP đả ị ỉ ược ch ra b i l nh neighbor Tuy nhiên trongỉ ở ệ môi trường multiaccess, n u m t route đ n t m t router, s là không khôn ngoanế ộ ế ừ ộ ẽ
n u m t router qu ng bá đ a ch c a nó nh là đ a ch ngu n vì đi u này s d n đ nế ộ ả ị ỉ ủ ư ị ỉ ồ ề ẽ ẫ ế
vi c các packets b g i đ n vài router trên m ng multiacess trệ ị ử ế ạ ước khi có th tìm raể
được ngu n g c xu t phát th t s Vì v y, có m t lu t r ng, đ a ch c a router xu tồ ố ấ ậ ự ậ ộ ậ ằ ị ỉ ủ ấ phát gói tin BGP s v n gi nh đ a ch ngu n.ẽ ẫ ữ ư ị ỉ ồ
Khi BGP khai báo m t m ng, router t đ nh rõ b n thân router đó nh là Next Hop.ộ ạ ự ị ả ư Tuy nhiên, n u router đó g i thông đi p update cho m t router láng gi ng khác trongế ở ệ ộ ề cùng m t AS thì nó l i ti p t c dùng router ngoài AS làm Next hop Do đó ta ph i c uộ ạ ế ụ ả ấ hình cho các router còn l i trong AS bi t đạ ế ược chính router biên cùng AS v i nó làở ớ router Next Hop ch không ph i là router khác AS.ứ ả
Trang 7Bước 1: Router A g i c p nh t v m ng 192.33.33.0ử ậ ậ ề ạ
Bước 2: Router D nh n update và truy n Tuy nhiên n u routerD thay đ i đ a chậ ề ế ổ ị ỉ source-address thành đ a ch đ a ch c a chính nó, s có m t s nh m l n x y ra vìị ỉ ị ỉ ủ ẽ ộ ự ầ ẫ ả trong môi trường multiaccess, m i router s công b nó là next-hop Đ tránh tìnhọ ẽ ố ể
hu ng này, đ a ch ngu n c a update không thay đ i ố ị ỉ ồ ủ ổ
Bước 3: Router B bi t routerA là next-hop c a m ng 192.33.33.0ế ủ ạ
The Next-Hop Attribute and a Nonbroadcast Multiaccess Network
Cũng gi ng nh trong môi trố ư ường multiaccess, m t m ng NBMS cũng tuân theo cùngộ ạ
m t qui lu t Tuy nhiên s có ti m n m t v n đ vì các router khác s không có khộ ậ ẽ ề ẩ ộ ấ ề ẽ ả năng k t n i tr c ti p v i router ngu n n u đám mây NBMA có c u hình hub-and-ế ố ự ế ớ ồ ế ấ spoke
Trang 8Thu c tính Nexthopself trong BGP ộ
150.10.0.0 (AS 100)
RouterA -(150.10.3.1) -IBGP -RouterB -|
|(170.10.20.1)
|
| (170.10.20.2)
RouterC
|_ 170.10.0.0 (AS 300)
Thu c tính BGP nexthop là m t đ a ch next hop IP mà nó s độ ộ ị ỉ ẽ ược dùng đ đi đ nể ế
m t s m ng đích Đ i v i EBGP, next hop luôn luôn là đ a ch IP c a router lángộ ố ạ ố ớ ị ỉ ủ
gi ng đã đề ược khai báo trong câu l nh neighbor Theo ví d trên, RouterC s qu ngệ ụ ẽ ả cáo network 170.10.0.0 cho RouterA v i m t next hop là 170.10.20.2 và ngớ ộ ượ ạ c l i RouterA s qu ng cáo l i 150.10.0.0 cho RouterC v i m t next hop là 170.10.20.1.ẽ ả ạ ớ ộ
Đ i v i IBGP, có m t nguyên t c là: “the next hop advertised by EBGP should beố ớ ộ ắ carried into IBGP” Chính vì quy lu t này, nên Router A s qu ng cáo l i 170.10.0.0ậ ẽ ả ạ cho các IBGP peer c a nó, trong trủ ường h p này là RouterB v i m t next hop làợ ớ ộ
170.10.20.2 Vì th , lúc này RouterB s có next hop đ đi đ n network 170.10.0.0 sế ẽ ể ế ẽ
là 170.10.20.2 ch KHÔNG ph i là 150.10.30.1 ứ ả
Lúc này thì b n ph i đ m b o r ng RouterB có th reach 170.10.20.2 thông qua IGP,ạ ả ả ả ằ ể
n u không RouterB s drop nh ng packet có dest là 170.10.0.0 vì lúc này đ a ch nextế ẽ ữ ị ỉ hop address tr nên inaccessible Đ n đây thì b n hãy hình dung n u nh trong môiở ế ạ ế ư
trường NBMA, và có thêm m t RouterD (network 180.20.0.0) độ ược thêm vào trong
AS 300, mà RouterA không có PVC k t n i tr c ti p đ n RouterD thì lúc này nexthopế ố ự ế ế
c a RouterD quãng cáo cho RouterA mà RouterA s không reach đủ ẽ ược Lúc này routing s fail Đ kh c ph c tình tr ng này thì NEXT-HOPE-SELF đẽ ể ắ ụ ạ ượ ử ục s d ng
Trang 9neighbor {ip-address| peer-group-name1 } next-hop-self
Câu l nh này s cho phép áp đ t BGP dùng đ a ch mình khai báo thành next hop thayệ ẽ ặ ị ỉ
vì đ BGP t ch n next hop ể ự ọ
RouterC#
router bgp 300
neighbor 170.10.20.1 remote-as 100
neighbor 170.10.20.1 next-hop-self
RouterC s q ang cáo 180.20.0.0 v i NextHop = 170.10.20.2 Next-hop-self ch có l iẽ ủ ớ ỉ ợ trong môi trường nonmeshed
Local-Preference attribute: Đây là thu c tính không b t bu c (t c là không c n ph iộ ắ ộ ứ ầ ả
xu t hi n trong thông đi p Update), ch mang ý nghĩa c c b trong ph m vi AS màấ ệ ệ ỉ ụ ộ ạ không bao gi g i ra kh i AS đó Nó đờ ở ỏ ược truy n đ n các local BGP neighbors.ề ế
Thu c tính Local-Preference cho phép chúng ta ch n con độ ọ ường mong mu n nh t raố ấ
kh i m t AS.ỏ ộ
Weight attribute: Đây cũng là thu c tính không b t bu c, các nhà cung c p khôngộ ắ ộ ấ
c n ph i h tr cho nó Th c t thu c tính ch đầ ả ỗ ợ ự ế ộ ỉ ược cung c p cho m t b đ nh tuy nấ ộ ộ ị ế
đ n và không g i trong b t kỳ thông đi p Update nào Thu c tính Weight đơ ở ấ ệ ộ ược dùng
đ đi u khi n hể ề ể ướng truy n các local packet đ n router khi router đó có hai routeề ế khác nhau ra kh i AS(multihomed) ỏ
Thu c tính MULTI_EXIT_DISC (MED) ộ
Đây là thu c tính độ ược AS dùng đ tham chi u cho vi c nên ch n router nào đ điể ế ệ ọ ể
đ n cùng m t đích trong m t AS Trong BGP cũng có m t ATTRIBUTE đế ộ ộ ộ ược g i làọ metric, đó là MED (Multiexit Discrimination) Tuy nhiên MED này có ý nghĩa h i khácơ
so v i metric trong các IGP BGP dùng MED (metric) đ hớ ể ướng d n cho các routerẫ láng gi ng l a ch n đề ự ọ ường đi t t nh t ố ấ MED(multiple-exit-discriminator) là 1 attribute
c a BGP, nó gi i thi u v nh ng router láng gi ng bên ngoài v 1 m ng đủ ớ ệ ề ữ ề ề ạ ược ch nọ vào 1 AS có nhi u exit point, cái nào có MED th p h n s đề ấ ơ ẽ ược ch n (do đó có l nóọ ẽ
gi ng v i metric), không gi ng nh Local Preference, MED đố ớ ố ư ược trao đ i gi a cácổ ữ
AS nh ng nó s không ra kh i AS đó n u nó đã vào (khi 1 thông tin c p nh t đ như ẽ ỏ ế ậ ậ ị tuy n vào 1 AS v i giá tr MEd xác đ nh thì nó s đế ớ ị ị ẽ ượ ử ục s d ng đ th c hi n quy tể ự ệ ế
đ nh trong n i b AS đó N u 1 route xu t phát t chính AS thì MED s đị ộ ộ ế ấ ừ ẽ ược tính theo metric c a IBGP ủ MED là m t attribute y u (trong th t route-selection c aộ ế ứ ự ủ BGP), nên đ control để ược nó c n ph i care đầ ả ược các thu c tính có m c u tiên caoộ ứ ư
h n (ơ weight-localpreference-originate-ASpath-origin code) H n n a, originated ASơ ữ không th đi u khi n quá trình đ t MED trên các originating AS (neighbor AS), ho cể ề ể ặ ặ
ngượ ạc l i, nên hi m khi đế ược dùng trong th c t Ngoài ra, v i nhi u Customer v iự ế ớ ề ớ các yêu c u chính sách ch n outgoing traffic khác nhau, MED không hi u qu Ngầ ọ ệ ả ườ i
ta hay s d ng community attribute đ gi i quy t v n đ ch n incomming traffic thayử ụ ể ả ế ấ ề ọ
Trang 10cho as-path prepending ho c MED.ặ
Communtity attribute:
Đây là m t thu c tính không b t bu c Thu c tính này độ ộ ắ ộ ộ ược dùng đ ể cung c p chính ấ sách cho m t nhóm các router đi qua các AS ộ Do đó các router này có cùng m t tínhộ
ch t và có chung chính sách N u m t router nh n đấ ế ộ ậ ược m t thông đi p Thông tinộ ệ
c p nh t đ nh tuy n v i thu c tính Community đậ ậ ị ế ớ ộ ược thi t l p,nó s x lý thông đi pế ậ ẽ ử ệ này m t cách h p lí N u nó không hi u thông đi p này thì s g i thu c tính đó choộ ợ ế ể ệ ẽ ử ộ router láng gi ng router x lý (Tuy nhiên, n u nó hi u thì s không bao gi g i thu cề ử ế ể ẽ ờ ử ộ tính đó cho láng gi ng router tr khi đề ừ ược ch đ nh làm thêm đi u gì đó).ỉ ị ề
T ng quan ho t đ ng c a BGP ổ ạ ộ ủ
BGP là m t giao th c hộ ứ ướng k t n i Khi thi t l p m t quan h neighbor, m t phiênế ố ế ậ ộ ệ ộ làm vi c TCP s đệ ẽ ược thi t l p và duy trì BGP s g i ra các thông đi p keepalive đế ậ ẽ ử ệ ể
ki m tra để ường truy n và duy trì phiên làm vi c TCP này Các thông đi p keepaliveề ệ ệ này ch là nh ng header có giá tr 19-bytes Sau đó các router s g i các c p nh t đ nhỉ ữ ị ẽ ử ậ ậ ị
kỳ ch khi có thay đ i x y ra Sau khi đã đi u ch nh b ng BGP, quá trình BGP sỉ ổ ả ề ỉ ả ẽ truy n đ n t t c các láng gi ng các thay đ i ề ế ấ ả ề ổ
Có 4 ki u thông đi p để ệ ược dùng trong BGP:
Thông đi p Open ệ : được dùng đ thi t l p k t n i v i các router BGP khác.ể ế ậ ế ố ớ
Thông đi p keepalive ệ : được g i đ nh kỳ gi a các BGP peers đ duy trì k t n I và đử ị ữ ể ế ố ể
ki m tra để ường đi Các thông đi p keepalive này đệ ược g i theo c ch không tin c y.ử ơ ế ậ
N u kho ng th i gian đ nh kỳ đế ả ờ ị ược gán v b ng 0, s không có thông đi p keepaliveề ằ ẽ ệ nào được g i.ử
Thông đi p c p nh t ệ ậ ậ : ch a các đứ ường đi v các đ a ch đích và các thu c tính c aề ị ỉ ộ ủ
đường đi Các c p nh t bao g m các route không còn t n t i Thông tin ch a trongậ ậ ồ ồ ạ ứ các c p nh t bao g m các thu c tính v đậ ậ ồ ộ ề ường d n, bao g m thu c tính origin,ẫ ồ ộ AS_PATH, neighbor
Thông đi p Notification ệ : được dùng đ thông báo cho các router khác v nh ngể ề ữ nguyên nhân gây ra k t n i b ng t.ế ố ị ắ
CIDR và Route Aggregation
BGP c n ph i truy n m t s thông tin gi a các AS nh ng có l không ph i t t cầ ả ề ộ ố ữ ư ẽ ả ấ ả các thông tin là c n thi t N u h th ng m ng đầ ế ế ệ ố ạ ược thi t k đ h tr quá trìnhế ế ể ỗ ợ summarization, t ng s tài nguyên m ng s đổ ố ạ ẽ ược gi m đi b i vì có r t ít b nh ,ả ở ấ ộ ớ băng thông và CPU được dùng đ g i b ng đ nh tuy n Th t ra, b ng cách tóm t tể ử ả ị ế ậ ằ ắ các l p đ a ch IANA, m ng Internet s tr thành m t m t môi trớ ị ỉ ạ ẽ ở ộ ộ ường nhanh h n vàơ