본문 바로가기
network/ccie-bgp

Introducing Route Reflectors

IBGP Scalability Issues in a Transit AS(ISP)

• BGP가 확장 됨에 따라, 많은 네이버를 맺기 위해 TCP세션이 점점 커지게 된다.
• 불필요한 중복 라우팅 트래픽을 처리할 솔루션이 필요한데 이때 사용 되는 것이 Route Reflectors,confederations 이다.

• Route reflectors modify IBGP split-horizon rules. (=>Route reflectors IBGP의 split-horizon를 수정 한다.)
• BGP confederations modify IBGP AS-path processing(=>BGP confederations는 AS-PATH를 수정 한다)

Route Reflector Split-Horizon Rules

-  IBGP에서는 IBGP로온 정보는 IBGP로 보내지 않는다는  split horizon이 loop방지를 위해 작동하는데,
아래 그림처럼 Route reflectors 설정한 장비는 IBGP 받은 정보를 IBGP로 전달 하게 되어 full mash 없이 구성이 가능 하다.

 

 


- 아래 그림과 같이 reflector 구성하여 split horizon 을 무시 하게 된다.


 


- 단  non client 로 받은 정보는 client 에게만 전달한다.
- 이때 client 는 reflector가 구분 하며,  non-client 끼리는 무조건 full mash로 구성 되어야 한다.




Redundant Route Reflectors
- reflector  설정시 해당 reflector가 down 되면 복구가 불가능 하기때문에 이중화 구성이 필요로 하다.

 


- 아래와 같이 이중화 구성이 된 reflector 구성이 필요로 하다.
- 이런 구조를 할 경우 하나의 group으로 보게 되고 해당 group 을 cluster 라고 부른다.




reflector loop방지 방법

- split horizon을 무시 하기때문에loop가 발생 할 경우가 발생할 가능성이 있다.

1) reflector가 2개인 경우 client 는 update를 2개씩 받는 구조가 되는데 ,
이때 같은 cluter 에서 같은 cluster-id 의 reflector 가 보낸 업데이트를 받은 reflector는 해당 업데이트를 받지 않는다 
2)  originated id(처음 발생 시킨 라우터 아이디)를 확인 하여 자신의 originated id이면 받지 않는다
3) clutest-id 는 다른 cluster 를 갈때마다, 누적되며, cluster-id 에 자신의 cluster-id가 있을 경우 받지 않는다.


• A group of redundant route reflectors and their clients form a  cluster. -> 각 클러스터는 고유한 클러스터 ID가 있어야 한다
• Each cluster must have a unique cluster-ID. -> reflector가 1개 일 경우 해당 라우터 아이디가 cluster-ID가 되기 때문에 별도 설정 필요 없다.
• Each time a route is reflected, the cluster-ID is added to the  cluster-list BGP attribute.  
=>이중화로 되어있는 구조에서는 cluster-ID를 생성 해서 알려 줘야 한다.
• The route that already contains the local cluster-ID in the  cluster-list is not reflected.
=> cluster-ID 이미 포함 되어 있는 경우 클러스터 목록에 반영 되지 않는다.


- 아래 그림처럼 reflector가 2개로 cluter 되어 있는 환경에서 외부 reflector로 전달 된 뒤 다른 reflector를 통해서 들어오면 
해당 정보는 drop된다.

 

 


 
반응형