본문 바로가기
Network tech/BGP

[BGP] Split Horizon를 방지하는 RR(Route-Reflector)란 무엇인가?

by 어깨 :) 2024. 4. 13.
728x90

1. RR(Route-Reflector)의 개요

 iBGP 네이버 중에서 Route Reflector와 해당 Client에 대해서는 iBGP Split Horizon 적용하지 않음.

 

 

여기서 Split Horizon란?
  ㅇ Routing Loop를 방지하기 위한 규칙 중 하나

  ㅇ 정보를 받은 인터페이스(포트)를 통해 같은 정보가 나가는 것을 방지하는 메커니즘
     - 어떤 루트 정보를 얻은 쪽의 인터페이스에다가,
     - 다시 그 방향으로 그 루트 정보를 광고(Advertisement) 하지 말도록 하는 규칙

  ㅇ IBGP를 통해 습득한 루트는 다른 IBGP Peer Router에게 전달하지 않는다는 규칙

  ㅇ BGP는 Routing Loop를 허용하지 않기 위하여,
     - AS 내부 모든 BGP 라우터가 Full-Mesh(그물망) 형태로 연결됨

Split Horizon 해결책이 바로 "Route Reflector"

 


다시 정리하자면 아래 내용을 참고할 것!

1. 개요

  ㅇ BGP 라우팅 프로토콜에서 동일 AS 내에서 iBGP 관계를 맺고있는 라우터끼리는 항상
     Full-mesh(완전 그물망) 형태로 서로 연결되어야 함
     - 그 이유는 루트를 항상 그 루트를 광고(Advertise)한 라우터로부터 직접
       배워야 한다는 원칙이 있기 때문 임 (☞ Split Horizon),
     - 결국, 모든 iBGP 라우터는 Full-meshed 되어야 하므로,
     - 루트에 대한 정보 교환량은 대단히 많아지게 됨

  ㅇ 따라서, 서로 연결되어있는 라우터들 중에서 Route Reflector라는 대표적인
     라우터를 두면 서로간의 정보 교환량이 적어지게 되는 잇점이 있게됨 


2. 주요 특기사항

  ㅇ Route Reflector에 한해서 Split Horizon 원칙이 배제 됨
  ㅇ Route Reflector는 패킷이 전달되는 경로에는 영향이 없고, 라우팅 정보를 분배하
     는 방법 만이 영향을 받게 됨
  ㅇ 동일 AS 내에서도 여러 개의 Route Reflector를 둘 수 있음
  ㅇ 동일 AS 내에서 Route Reflector는 통상적인 BGP 라우터와도 공존이 가능

  ㅇ 관련 표준 : RFC 2796

  ㅇ 기타관련참고용어 : BGP Confederation

http://www.ktword.co.kr/test/view/view.php?nav=2&no=2475&sh=RR

 

RR

RR   Route Reflector, Route Reflection   루트 리플렉터(2008-12-25)

www.ktword.co.kr

 


2. RR과 관련한 용어

-Route Reflector : iBGP를 통해서 알게 된 경로를 다른 iBGP Peer Router에 Advertise 하는 라우터. 
- Client : RR에 종속되어 있는 RR Client
- Cluster : Router Reflector와 Client의 결합체
- Nonclient : Reflector Client가 아닌, Route Reflector의 iBGP Peer Router이다.
- Originator-ID : Local AS 내에서 Route Originator의 Router ID이다. 
                          Route Reflector가 Route를 Update 할 때 Update Message에 추가한다. 
- Cluster ID : 두 개 이상의 Route Reflector가 하나의 Cluster내에 있는 경우,

                      설정되는 Cluster의 식별자이다.(  bgp cluster-id cluster-id 명령을 사용하여 설정한다.) 
                      Cluster 내에 하나의 RR이 있는 경우는 RR의 Router ID가 Cluster ID가 된다.
- Cluster List: Route가 경유한  Cluster-ID의 List이다. RR이 Update를 받게 되면 Cluster List를 체크하며,

                      자신의 Cluster ID를 발견하는 경우 Update를 무시하여 Routing Loop을 방지한다.

 

다시 정리하자면!

Route Reflector -Split-Horizon 규칙을 면제받은 라우터
-Route Reflector는 다시 다른 Route ReflectorClient가 될 수 있음
Route Reflector Client -Route Reflector에서 Client로 지정된 라우터
Non-Client -Route ReflectorNeighbor 관계지만 Client가 아닌 라우터
Cluster -Route ReflectorClient의 집합
Cluster ID -Route ReflectorRouter-IDCluster-ID로 사용됨

 


3. RR( Route Reflector) 구조에서 Routing Update

- RR은 Client와 Non-Client 모두로부터 Update를 수신. 
- Client로부터의 Update는 Client와 Non-Client 모두로 Update 한다.
  (Originator에는 Update 하지 않는다.) 
- eBGP Peer로부터의 Update는 Client와 Non-Client 모두로 Update. 
- Non-Client로부터의 Update가 다른 Non-Client로는 전달되지 않음.

- Non-Client로부터의 Update는 Client들에게만 Update. 

 

 

 


4. RR( Route Reflector ) 구조 예시

 

728x90