GTP load balancing
You can use the following load balancing command to enable or disable GTP load balancing.
config load-balance setting
set gtp-load-balance {disable | enable}
end
The following flow rule is also available to direct GTP-C traffic to the primary FPC.
config load-balance flow-rule
edit 17
set status disable
set vlan 0
set ether-type ipv4
set src-addr-ipv4 0.0.0.0 0.0.0.0
set dst-addr-ipv4 0.0.0.0 0.0.0.0
set protocol udp
set src-l4port 0-0
set dst-l4port 2123-2123
set action forward
set forward-slot master
set priority 5
set comment "gtp-c to primary blade"
end
By default, both of these configurations are disabled and GTP-C and GTP-U traffic is not load balanced. The DP processor sends all GTP-C and GTP-U traffic to the primary FPC.
To load balance GTP-U traffic to multiple FPCs, you can set gtp-load-balance
to enable
. This also enables the GTP-C flow rule. GTP-U traffic is then load balanced across all FPCs while GTP-C traffic is still handled by the primary FPC. This is the recommended configuration for load balancing GTP traffic.
GTP-U load balancing may not distribute sessions evenly among all of the FPCs. Its common in many 4G networks to have just a few SGWs. Similar configurations with very few servers may also be used in other GTP implementations. If the FortiGate-6000 receives GTP traffic from a very few servers, the GTP traffic will have very few source and destination IP addresses and TCP/IP ports. Since SLBC load balancing is based on source and destination IP addresses and TCP ports, its possible that sessions will not be distributed evenly among the FPCs. In fact, most GTP-U traffic could be processed by a limited number of FPCs.
Enabling GTP-U load balancing still distributes sessions and improves performance, but performance gains from enabling GTP-U load balancing may not be as high as anticipated.