728x90

GRES 는 라우팅엔진 switchover 시에 커널 정보와 인터페이스 정보 손실을 방지하여 트래픽 손실을 방지하는 JUNOS 의 HA  기능중 하나입니다. 커널정보와 인터페이스 정보 손실을 방지하지만 control plane( 라우팅엔진 내 정보들 ) 의 손실을 보호하지는 못합니다. 그러기 때문에 switchover가 발생하면 neighboring 라우터는 이를 감지 할 수 있습니다. 

NSR(nonstop routing) 이나 GR(graceful restart) 과 같이 사용하게 되면  마스터 라우팅 엔진이 라우팅 업데이트를 받으면 그 즉시 백업 라우팅 엔진에게도 전달 해 주므로 swithover 가 발생하면 라우팅 정보는 그대로 유지 할 수 있습니다. 

백업 라우팅엔진이 마스터로 부터 keepalive를 2초 동안 받지 못하면 백업라우팅엔진은 마스터가 고장난걸로 간주하고 자신이 마스터가 됩니다. PFE(packet forwarding engine)은 기존 마스터와 연결을 끊고 새로운 마스터와 새로 연결합니다. PFE는 리부팅 하지 않기 때문에 ( GRES 미 설정시에는 PFE가 리부팅 함) 트래픽이 중단되지 않습니다. 새로운 마스터 라우팅엔진은 PFE와 동기화를 하게 되고 라우팅엔진이 PFE가 가진 forwarding table 이 최신정보가 아닌 걸 알게되면 업데이트 메시지를 보내 업데이트 하게 된다. 



1. 마스터 라우팅엔진 동작

2. chassisd 와 같은 routing platform processes들이 동작

3. Packet Forwarding Engine이 동작하고 마스터 라우팅엔진과 연결됨.

4. 모든 라우팅 정보들이 업데이트 된다.

5. 백업 라우팅엔진 동작

6. 라우터가 GRES가 enable 되어있는지 인지한다. 

7. kernel synchronization process (ksyncd) 이 백업과 마스터 라우팅엔진을 동기화 시킨다.

8. 동기화가 완료되면 모든 상태정보와 포워딩테이블이 업데이트 된다. 





1. 마스터 라우팅엔진으로부터 keepalive 를 받지 못하면 라우터는 switchover 를 수행한다.

2. Packet Forwarding Engine은 새롭게 마스터가 된 라우팅엔진과 연결을 수립한다. 

3. Routing platform processes(rpd) 는 GRES가 보호하지 못하므로 rpd가 restart 된다. 

4. switchover 발생 시점의 상태정보를 업데이트 한다. 

5. GR (graceful restart) 가 설정되어 있다면 helper라우터로 부터 라우팅 정보를 받아서 복원한다. 


 출처 : http://www.juniper.net/techpubs/en_US/junos13.1/topics/concept/gres-overview.html

728x90

Nonstop Active Routing

NSR은 인터페이스와 커널정보를 보존하기 위해 GRES와 동일한 구조를 사용한다. 그러나 GRES와는 다르게  NSR은 백업 라우팅 엔진에서 rpd( routing protocol daemon)을 실행하면서 라우팅 정보를 동기화 하고 있다. 이로인해 helper 라우터로 부터 라우팅 정보를 복원할 필요가 없습다. peer 라우터가 GR (gresful restart) 를 미지원 할 경우 사용하면 유용하고,  GR (graceful restart)의 대안으로 사용하기도 한다.


- NSR를 사용하기 위해서는  반드시 GRES가 enable상태이여야 한다. 



1. 마스터 라우팅엔진 부팅

2. 마스터 라우팅엔진에 chassisd, rpd 가 실행된다.

3. 패킷포워딩엔진이 시작하고 마스터 라우팅엔진과 연결된다.

4. 모든 시스템 정보가 업데이트 된다.

5. 백업 라우팅엔진이 시작되고 chassisd, rpd 가 실행된다.

6. 시스템이 GRES, NSR 이 enable 되어 있는지 확인한다.

7. ksyncd ( kernel synchronization daemon) 이 

8. ksyncd가 마스터와 백업라우팅엔진을 서로 동기화 시킨다.

9. 지원되는 프로토콜의 상태정보는 마스터와 백업 rpd 사이에서 다이렉트로 업데이트 된다.


1. 마스터와 백업간의 keeplives 가 실패하면 시스템은 백업라우팅 엔진으로 switch over 한다.

2. 패킷 포워딩엔진이 백업라우팅엔진과 연결되며, 백업라우팅엔진은 마스터가 된다. rpd  가 이미 실행중이기

    때문에 restart 가 필요없다. ( GRES 만 enable 상태일 경우에는 rpd 가 실행중이지 않으며 restart 가 된다.)

3. switch over 중에 배운 상태정보는 시스템에 업데이트 된다. 포워딩과 라우팅은 switch over 동안에 계속되며 이로인해 

   최소한의 패킷로스가 발생한다.

4. 마치 아무일 없었던 것처럼 peer 라우터와 계속적으로 정보를 교환한다. adjacencies 와 session 정보는 손실되지 않고 

   (백업 , 마스터 rpd 가 동기화 하고 있었기 때문에 ) rpd 가 restat 되지 않는다. 


GRES만 enable 된 경우 백업 라우팅엔진에 rpd 가 running 중이 아니므로 restart 가 필요하고, 인접  peer 라우터에게 라우팅 정보를 업데이트 받아야만 한다. 


출처 : http://www.juniper.net/techpubs/en_US/junos9.5/information-products/topic-collections/swconfig-high-availability/nsr-overview.html


<script src="https://ads-partners.coupang.com/g.js"></script> <script> new PartnersCoupang.G({ id:370207 }); </script>

+ Recent posts