Border Gateway Protocol (BGP), նկարագրված է RFC 1771, նախատեսված է ավտոնոմ համակարգերի միջև մարշրուտիզացիայի համար:
Ավտոնոմ համակարգը [AS] – դա մարշրուտիզատորների մի խումբ է, որը ղեկավարվում է մեկ ադմինիստրատորի կողմից, կամ որտեղ օգտագործվում է մարշրուտիզացիայի մի ստրատեգիա: BGP -ն հաճախ օգտագործվում է ISP-ների մեջ և միջև (Inetrnet Service Providers).
Ռոուտեռները (մարշրուտիզատորները), որոնք պատկանում են նույն ավտոնոմ համակարգին և փոխանցում են միմյանց BGP պրոտոկոլներ-ներ աշխատում են IBGP պրոտոկոլով, այսինքն Internal BGP, իսկ տարբեր համակարգերում գտնվող ռոուտերները EBGP-ով External BGP: Կարգավորող հրամանները IBGP-ի և EBGP-ի համար նույնն են, բացառությամբ neighbor ebgp-multihop հրամանի: Մինչ ներքին մարշրուտների փոխանակմանը BPG-ն պետք է համոզված լինի, որ նրանք հասանելի են սեփական AS-ի մեջ: BGP օգտագործում է TCP-ն որպես փոխանակման պրոտոկոլ պորտ 179-ով: Ցանկացած երկու ռոուտեռներ որոնց միջև հաստատված է TCP միացություն մարշրուտների մասին ինֆորմացիայի փոխանակման համար կոչվում են "peers" կամ "neighbors":
Վերը բերված նկարի մեջ ռոուտեռներ A-ն և B-ն հանդիսանում են BGP peers, նույնը ինչ որ B և C, C և D. Նշեմ, որ ինչպես երևում է նկարում ավտոնոմ համակարգի ներսում (AS) peers-ներ հանդիսացող ռոուտեռները պարտադիր չե, որ անմիջականորեն միացված լինեն իրար, նրանք կարող են "3"-րդ կողմի միջով միացված լինեն:
BGP peers-ը սկսում են BGP իրենց թույլատրելի մարշրուտիզացիաների փոխանակում իրար միջև: Հետո նրանք իրար միջև ուղարկում են միայն incremental updates. Բացի դրանից, BGP peers փոխանակում են keepalive messages (որպեսզի համոզվեն, որ կապը չի ընդատվել իրար միջև), և notification messages (սխալների մասին հաղորդագրություններ և այլ ծառայողական ինֆորմացիա).
Վերը նշված ռաութերների համար օգտագործվում են հետևյալ կարգավորուման հրամանները:
Ռաութեր A-ի համար
router bgp 100
neighbor 129.213.1.1 remote-as 200
Ռաութեր B-ի համար
router bgp 200
neighbor 219.213.1.2 remote-as 100
neighbor 175.220.1.2 remote-as 200
Ռաութեր C-ի համար
router bgp 200
neighbor 175.220.212.1 remote-as 200
neighbor 192.208.10.1 remote-as 300
Ռաութեր D-ի համար
router bgp 300
neighbor 192.208.10.2 remote-as 200
router bgp 100
neighbor 129.213.1.1 remote-as 200
Ռաութեր B-ի համար
router bgp 200
neighbor 219.213.1.2 remote-as 100
neighbor 175.220.1.2 remote-as 200
Ռաութեր C-ի համար
router bgp 200
neighbor 175.220.212.1 remote-as 200
neighbor 192.208.10.1 remote-as 300
Ռաութեր D-ի համար
router bgp 300
neighbor 192.208.10.2 remote-as 200
Ինչպես երևում է օրինակից, router bgp {AS համարը} հրամանով տրվում է AS-ի համարը տվյալ ռոուտեռին և դրանով միացվում է BGP-ի փոխանակումը AS-ների միջև:
Որոշ նշումներ.
- Ռոուտեռներ A-ն և B-ն մարշրուտիզացիայի ինֆորմացիան փոխանակում են EBGP-ով, իսկ ռոուտեռներ B-ն և C-ն` IBGP-ով: Նշենք որ, EBGP հարևանները (peers) միացված են անմիջականորեն, իսկ IBGP peer-երը` ոչ, բայց քանի որ կապված են իրար BGP-ով այն տույլ է տալիս հասանելի լինեն մեկը մյուսի համար և փոխանակել ինֆորմացիա:
- Բոլոր BGP ինֆորմացիա փոխանակող ռոուտեռները պետք է ունենան "peers relation" իրար միջև, այսինքն պետք է տրամաբանական կապ ունենան միմյանց հետ:
- AS 200 հանդիսանում է "տրանզիտ" AS 100-ի և AS 300-ի համար, այսինքն AS 200-ում պակետները իրանց վերջնակետին չեն հասնում, այլ միայն "օգտագործում" են այդ AS-ը տրանզիտով անցնելու համար:
Ստուգելու համար արդյո՞ք աշխատում են (հասանելի են) BGP (peers) հարևանները, կարելի է օգտագործել show ip bgp neighbors հրամանը:
Ռոուտեռ A-ի համար կստանանք.
RouterA# show ip bgp neighbors
BGP neighbor is 129.213.1.1, remote AS 200, external link
BGP version 4, remote router ID 175.220.212.1
BGP state = established, table version = 3, up for 0:10:59
Last read 0:00:29, hold time is 180, keepalive interval is 60 seconds
Minimum time between advertisement runs is 30 seconds
Received 2828 messages, 0 notifications, 0 in queue
Sent 2826 messages, 0 notifications, 0 in queue
Connections established 11; dropped 10
state- ը ցույց է տալիս, արդյո՞ք հասանելի է peer-ը տվյալ ռոուտեռից. established(հաստատված) նշանակում է որ այն հասանելի է, այլ դեպքերում այն անհասանելի է:
Remote router ID -ը ցույց է տալիս հարևան-ի հիմնական կամ loopback ինտեռֆեյսի IP-ն table
version number – ամեն անգամ, երբ մարշրուտիզացիայի ցանկում ավելացվում է նոր ինֆորմացիա այս թիվը մեծանում է 1-ով:
Կարևոր է. ամեն անգամ փոփոխություններ անելուց հետո անհրաժեշտ է կատարել հետևյալ հրամանը. clear ip bgp [ip address], որպեսզի միացումը վերսկսվի և փոփոխությունները ուժի մեջ լինեն:
No comments:
Post a Comment