네트워크/IP Service

First-Hop Redundancy Protocol (feat. Gateway 이중화 기술) - GLBP 동작방식

고미-고미 2022. 5. 27. 18:17
728x90

● Gateway Load Balancing Protocol (GLBP) 소개

 

GLBP는 Cisco 전용 프로토콜이며 게이트웨이 이중화 서비스와 부하분산 서비스를 제공 합니다.  GLBP에는 Active / Standby 기능을 제공하고 추가적으로 Active Virtual Gateway (AVG) 와 Active Virtual Forwarding (AVF) 라는 역할이 존재 합니다. 

 

  • Active Virtual Gateway (AVG)
    - GBLP를 구성하는 라우터 장비들은 GLBP 그룹마다 하나의 AVG를 선출 합니다. AVG로 선출 된 라우터는 VIP에 대한 ARP 요청에 응답하는 역할을 수행 합니다. 예를 들어 HOST가 VIP에게 ARP 요청을 보내면 AVG는 ARP 응답 메시지를 전달합니다. 다만 ARP응답 메시지에 포함되는 vMAC 정보는 AVF의 정보입니다.   
  • Active Virtual Forwarder (AVF)
    - AVF 라우터는 실제 트래픽을 전송하는 역할을 수행 합니다. AVF는 유니크한 vMAC주소를 생성하고 AVG에 의해 AVF로 지정 됩니다. AVG가 HOST의 ARP요청에 대한 응답을 전송 할 때 AVF의 vMAC주소를 전달하여 HOST가 AVF에게 트래픽을 전달 하도록 합니다. AVG가 ARP 응답에 사용하는 vMAC 정보를 다르게 전달하여 부하분산이 수행 되도록 합니다.  

GLBP 그룹마다 최대 4개의 AVF와 하나의 AVG를 지원하며, AVG와 AVF 역할을 동시에 수행 할 수 있습니다. AVG에 장애가 발생하면 AVG의 역할이 Standby AVG로 넘어가게 됩니다. AVF에 장애가 발생하면 다른 AVF 라우터가 트래픽을 넘겨받아 전송을 수행 합니다. 

 

● Gateway Load Balancing Protocol (GLBP) 설정

  • (물리 인터페이스 or SVI) glbp instance-id ip vip-address
  • (Optional)  glbp instance-id preempt  (AVG 역할 가져오기)
  • (Optional)  glbp instance-id priority [0 - 255]
  • (Optional)  glbp instance-id load-balancing {host-dependent | round-robin | weighted}
  • (Optional)  glbp instance-id timer [hello-second | msec millisecond] [hold-second | msec millisecond]
  • (Optional)  glbp instance-id authentication {text-password | text text-password | md5 {key-chain key-chain | key-string key-string}}

SW#2 ↔ SW#3은 VLAN 30 (172.16.30.0/24)에 GLBP (VIP 172.16.30.1)를 설정 합니다.   

 

SW#2에 GLBP 설정 후 발생하는 첫 번째 syslog는 SW#2가 AVG가 된 것을 알려주고 있습니다. 두 번째 syslog는 SW#2가 glbp group 30에 대해 첫 번째 AVF (fwd 1)가 된 것을 알려주고 있습니다. SW#3에 GLBP 설정 후 발생하는 첫 번째 syslog는 GLBP Group 30에 두 번째 AVF (fwd 2)가 된 것을 알려주고 있습니다.

 

show glbp brief 명령어를 통해 GLBP 상태 정보를 확인할 수 있습니다. Fwd의 첫 줄의 "-"은 AVG에 대한 표시 입니다. 그리고 뒷따라 나오는 2개의 정보는 AVF에 대한 정보 입니다. 세부적인 정보는 show glbp 명령어를 통해 timer, preemption setting, AVG & AVF 상태 정보들을 확인 할 수 있습니다.

 

 

● Gateway Load Balancing Protocol (GLBP) 부하분산 

 

기본적으로 GLBP의 부하분산의 방식은 Round-Robin, Weighted, Host Dependent 3가지 방법이 있으며 기본값은 Round-Robin 방식을 이용 합니다. 

  • Round Robin (RR)
    - ARP 응답에 사용하는 vMAC 주소를 순서대로 사용 합니다. GLBP 설정 시 기본값으로 사용하는 부하분산 알고리즘 입니다.
    - glbp instance-id loadbalancing round-robin (기본값)
  • Weighted (가중치)
    - GLBP 그룹에 Weighted (가중치)를 이용하여 응답 비율을 조절하는 방식 입니다. 높은 값을 가질 수록 더 많은 트래픽을 처리하게 됩니다.
    - glbp instance-id loadbalancing weighted
    - glbp instance-id weighting 20
  • Host Dependent 
    - HOST의 MAC 주소를 사용하여 응답할 vMAC을 결정하는 방법 입니다. HOST는 동일한 vMAC 주소를 사용하기 때문에 AVF가 변경되지 않는 특징이 있습니다.
    - glbp instance-id loadbalancing host-dependent 
728x90