- Gateway Load Balancing Protocol
- Active virtual gateway (AVG)
- Active virtual forwarder (AVF)
- Timers
- TLV
- Load-balancing
- GLBP + STP (L2 between AVF)
- Design
Gateway Load Balancing Protocol
- Cisco proprietary
- per host load-balancing
- everybody sends Hello
- no gratuitous ARP, Hello is used instead
- IP src: interface IP address
- MAC src:
- during neighbourship negotiation – physical MAC
- vMAC 0007.b4××.××yy, ×××× – group number, yy – AVF number
- IP dst: 224.0.0.102
- MAC dst: 0100.5e00.0066
- UDP 3222
- BFD not supported
- ICMP Redirect is filtered
; 100 by default
(config-if)# glbp <GROUP> priority <N>
; can be learned from AVG
(config-if)# glbp <GROUP> ip [<IP> [secondary]]
(config-if)# glbp <GROUP> ipv6 autoconfigure
; cache ARP replies, sent by AVG, disabled by default, cache is not transferred on preempt
(config-if)# glbp <GROUP> client-cache maximum <N>
Active virtual gateway (AVG)
- highest priority, if tie – highest IP
- replies to ARP requests
- assigns vMAC to AVF using TLV
; AVG preempt, disabled by default
(config-if)# glbp <GROUP> preempt [delay minimum <sec>]
Active virtual forwarder (AVF)
- up to 4 active
- highest weight
- load-balancing host traffic
- sends Hello from assigned vMAC
- AVF fails
- load is transferred to min weight AVF, if tie – highest IP
- AVF preemption:
- AVF is restored after failure
- AVF preempts its assigned vMAC back, AVG not involved
- vMAC preemption does not depend on weight
- does not preempt vMACs, that were assigned after other AVF failure
- if packet for not-owned vMAC is received, it is forwarded further
; AVF preempt, enabled by default, delay = 30s by default
(config-if)# glbp <GROUP> forwarder preempt [delay minimum <sec>]
; defaults: MAX = 100, LOW = 1, UP = max
; if weight < low, cannot be an AVF; if weight > up, become AVF again
(config-if)# glbp <GROUP> weighting <MAX> [lower <LOW>] [upper <UP>]
; N = 10 by default
(config-if)# glbp <GROUP> weighting track <OBJ> [decrement <N>]
Timers
- AVG timers are used
- timers:
- hello:
- hold:
- redirect:
- 10 min default
- how long vMAC from failed AVF is serviced: traffic forwarding + reply to ARP with vMAC
- timeout:
- 4h default
- AVF and vMAC valid time
(config-if)# glbp <GROUP> timers [msec] <HELLO> [msec] <HOLD>
(config-if)# glbp <GROUP> redirect <REDIRECT> <TIMEOUT>
TLV
- Hello: AVG role, vIP, priority, timers
- Request/Response: AVF role, AVF number, vMAC
Load-balancing
- round-robin: default
- weighted
- host dependent: does not tear NAT session
- none: HSRP behaviour
(config-if)# glbp <GROUP> load-balancing round-robin|weighted|host-dependent
GLBP + STP (L2 between AVF)
Design
- preempt delay = 1.5 × boot time
- do not use with VSS