본문 바로가기

네트워크/BGP

BGP Bestpath

BGP Bestpath Selection 절차

BGP는 만들어질때 Load share를 가정하고 만들어 진 프로토콜이 아니라서 결국 Bestpath를 하나만 남기겠금

최초 설계가 되어 있음.

 

 Phase 1 Peer에게 Network 정보를 수신 하였을때 Next-hop에 대한 reachability에 대한 보장을 제일 먼저 확인 함

       즉 광고 받은 네트워크의 Next-hop이 자신의 Next-hop과 일치 하는지 확인

       Local preference가 없는 Network에 대한 Default Local preference를 입력( Defatult Local preference=100)

       Local preference 기준으로 1차 Best path 선출

       (eBGP로 받은 경로 redistirbute된 경로는 LP가 없기에 Defatult Local preference값을 입력함)

       (BGP는 Next-hop을 임의로 변경할 수 있기 때문)

 

Phase 2 Local perference 가 동일 하다면 광고 받은 Network의 Attribute로 Bestpath를 선정함

        - AS-path 체크 (짧을 수록 우선)

        - Origine Code 체크 (낮을 수록 우선)

        - MED 체크 (낮을 수록 우선) (MED가 없을 경우 0 으로 간주되 최우선 순위로 동작)

        - eBGP와 iBGP 비교 (3가지 경우를 들수 있음)

                동일한 경로를 eBGP로 광고 받는 경우

                      RFC에 특별히 언급되어 있지 않기 때문에 Vendor마다 상이

                동일한 경로를 eBGP와 iBGP로 광고받은 경우

                      eBGP로 받은 경로를 우선함

                      (해당 케이스의 경우 만일 AS 내부 네트워크를 eBGP와 iBGP로 받은 경우라면 AS-Path 단에서

                       iBGP로 선정되고 끝나고 AS 외부 네트워크를 iBGP로 우선해서 보낼경우 Loop이 돌수 있기 때문에

                       ebgp 경로를 우선으로 동작 함)

                 동일한 경로를 iBGP로 광고 받은 경우

                       Next-hop까지의 MED(Metric)을 비교하여 낮은 쪽으로 전송함                      

          - 라우팅 테이블에서 Next-hop까지의 Metric을 비교(IGP 기준)

          - BGP Route-ID를 비교 (낮은 쪽이 우선)

          - Peer address 비교 (낮은 쪽이 우선)

          - 광고받은 시간 비교(오래된 측 먼저 받은 경로 우선)

 

보면 알수있지만 BGP의 Best path 선정은 Wellknown attribute 선에서 끝남 

다만 RFC에서 명확이 이렇게 해라 라고 하는 것이 아니라 해당 Bestpath 선출 방식을 표준으로 권고(recommand) 하고 있기 때문에 Vendor마다 조금씩 상이한 부분이 있음 

아래의 표를 보면 Cisco와 Juniper는 분명 표준을 따르고 있긴 하지만 조금 씩 상이한 부분이 존재 함

 

표준 Cisco Juniper
Next-hop reachability Next-hop reachability Next-hop reachability

Highest Weight Administrative Distance
Highest Local Preference Highest Local Preference Highest Local Preference

Locally Generated routes

Lowest AIGP
Lowest AS-Path Length Lowest AS-Path Length Lowest AS-Path Length
Lowest Origin Code Lowest Origin Code Lowest Origin Code
Lowest MED Lowest MED Lowest MED
IBGP<EBGP IBGP<EBGP IBGP : Locally Generated Routes
IBGP : next-hop IGP Metric IBGP : next-hop IGP Metric EBGP IBGP<EBGP

IBGP only
 - Lowest peer router ID
IBGP only
 - Lowest peer router ID

IBGP : next-hop IGP Metric
IBGP only
 - Lowest peer ip address
IBGP only
 - Lowest peer ip address

IBGP only
 - Lowest peer router ID
Oldest Oldest Oldest IBGP only
 - Lowest peer ip address

 

'네트워크 > BGP' 카테고리의 다른 글

ROUTE-MAP  (0) 2021.10.31
BGP attribute  (0) 2021.10.18
BGP message & attribute  (0) 2021.10.08
BGP FSM  (0) 2021.10.08
BGP overview  (0) 2021.09.28