FortiGate
FortiGate Next Generation Firewall utilizes purpose-built security processors and threat intelligence security services from FortiGuard labs to deliver top-rated protection and high performance, including encrypted traffic.
ekrishnan
Staff
Staff
Article Id 275312
Description

This article describes the expected behavior of the session ID seen in the logs when traffic is being handled by the SD-WAN rule with the Maximize Bandwidth strategy.

Scope FortiGate, SD-WAN.
Solution

In this example, the SD-WAN rule has been configured as below:

 

config system sdwan
    set status enable
        config zone
            edit "virtual-wan-link"
            next
        end
        config members
            edit 1
                set interface "port1" -> Member 1.
                set gateway 10.47.15.254
            next
            edit 2
                set interface "port3" -> Member 2.
                set gateway 10.47.31.254
            next
end

 

config health-check
    edit "test"
        set server "8.8.8.8" "8.8.4.4" -> health check servers.
        set members 0 -> Indicates All members in SD-WAN are selected.
            config sla -> (SLA target).
                edit 1
                    set latency-threshold 100 -> The values here are configured for testing purposes and in real-time should be a lower value.
                    set jitter-threshold 100
                    set packetloss-threshold 100
                next
end

config service -> SD-WAN rule.
    edit 1
        set name "Test"
        set mode load-balance -> Load balancing Strategy has been used (in other words: Maximize bandwidth (SLA)).
        set dst "all"
        set src "all"
            config sla
                edit "test" -> Applying the SLA target configured above.
                    set id 1
                next
            end
        set priority-members 1 2
    next

In the above: Port1 and Port3 are the SD-WAN members and the relevant health check servers and SD-WAN rule are configured.

 

Relevant Firewall policy for the outbound traffic is already configured. Also note that the default Hash mode i.e. load-balancing mode is round-robin and this article explains this configuration for the same for other Hash modes the same behavior should be seen in terms of Session ID but the load-balancing method would differ. 

 

Below are the details for Hash Modes:


round-robin: All traffic is distributed to selected interfaces in equal portions and circular order (Default).
source-ip-based: All traffic from a source IP is sent to the same interface.
source-dest-ip-based: All traffic from a source IP to a destination IP is sent to the same interface.
inbandwidth: All traffic is distributed to a selected interface with the most available bandwidth for incoming traffic.
outbandwidth: All traffic is distributed to a selected interface with the most available bandwidth for outgoing traffic.
bibandwidth: All traffic is distributed to a selected interface with the most available bandwidth for both incoming and outgoing traffic.

 

To verify if load-balancing is taking place,

 

In GUI:

 
 

image.png

 

It is noticed that both Port1 and Port3 show a tick mark which means load balancing is happening and this is based on the SLA target criteria met.

 

On CLI:

 

diag sys sdwan service

Service(1): Address Mode(IPV4) flags=0x200 use-shortcut-sla
Tie break: cfg
Gen(1), TOS(0x0/0x0), Protocol(0: 1->65535), Mode(load-balance hash-mode=round-robin)
Members(2):
1: Seq_num(1 port1), alive, sla(0x1), gid(2), num of pass(1), selected
2: Seq_num(2 port3), alive, sla(0x1), gid(2), num of pass(1), selected
Src address(1):
0.0.0.0-255.255.255.255

Dst address(1):
0.0.0.0-255.255.255.255

 

On the CLI output, it is possible to see that both the interfaces Port1 and Port3 are selected as well.

 

Now the important thing to note is that even if the traffic is getting load balanced it will maintain a different session and this will be indicated in the logs as a different Session ID.

 

image.png

 

The log output shows traffic going to Facebook, and the traffic is getting Load balanced as  Port1 and Port3 are being used.

 

The Session ID will be different for traffic going out via each interface and not the same.