šFusion's SD-WAN Quality of Service (QoS) Implementationš
Discover how Fusion SD-WAN uses Linux tc for top-tier QoS, optimizing bandwidth & reducing latency
Fusion's SD-WAN leverages the Linux kernel's tc
(traffic control) framework to deliver robust Quality of Service (QoS) capabilities. This implementation provides precise control over traffic prioritisation, enabling businesses to optimise bandwidth utilisation, ensure low latency for critical applications, and mitigate congestion effectively. This comprehensive guide provides an understanding on the functionality as well as configuring QoS within Fusionās SD-WAN.
The Quality of Service parameters are accessed on the Anatres platform under policies. A Quality of service profile is created which can be associated with multiple nodes. Fusionās SD-WAN has a unique ability to implement the QoS in a bi-directional manner automatically across the last mile which isnāt available in other solution that do not use centralized hubs or cloud gateways.
The standard default profiles caters for the significant number of uses cases and rarely needs to be modified.
Profiles
Definition
A profile is a collection of traffic classes and packet filters. Each profile determines how traffic is classified and prioritised across the bonded/aggregated network.
Parameters
Name
- A unique, descriptive identifier for the profile.
Overhead Margin
Specifies the percentage of total bonded bandwidth to reserve for avoiding ISP queues, minimising latency.
Default Value: 5%
Considerations:
High rates of small packets (e.g., VoIP) require larger margins.
Links with high Layer 2 overhead (e.g., DSL, T1) also require larger margins.
Example:
- A 10 Mbps bond with a 5% overhead margin will limit available bandwidth to 9.5 Mbps.
Traffic Classes
Overview
Traffic classes define levels of service for different types of network traffic. These classes enable precise control over bandwidth allocation, latency, and prioritisation.
Parameters
Name
- A descriptive name for the traffic class.
Reserved Percent
- Guarantees a percentage of available bandwidth for the class.
Reserved Minimum
- The minimum guaranteed bandwidth in Mbps for the class, overriding
Reserved Percent
if it is higher.
Reserved Maximum
- The upper limit of guaranteed bandwidth in Mbps, even if the
Reserved Percent
allows for more.
Limit Percent
- Restricts the maximum bandwidth usage as a percentage of total available bandwidth.
Limit Minimum
- Ensures a minimum bandwidth cap in Mbps for the class.
Limit Maximum
- Restricts the maximum bandwidth cap in Mbps for the class.
Default
- Specifies whether this class should handle packets not matching any filter. Only one class can be marked as the default.
Leaf Qdisc
Determines the packet management algorithm:
PFIFO: First In, First Out; suitable for low-latency applications.
SFQ: Stochastic Fairness Queueing; ideal for high-bandwidth fairness.
Packet Filters
Overview
Packet filters define the characteristics of packets to determine their traffic class. Multiple matches can be defined, all of which must be satisfied for a packet to be classified.
Parameters
Traffic Class
- Specifies the destination traffic class for matched packets.
Protocol
- Matches packets based on their IP protocol (e.g., TCP, UDP, ICMP).
Length
- Matches packets based on size (in bytes). Accepts ranges (e.g.,
80:160
).
Source/Destination Network
- Matches packets based on CIDR notation of source/destination IPs.
Ports
- Matches source or destination ports for TCP/UDP protocols. Accepts ranges and lists (e.g.,
80,443,8000:8050
).
Advanced Settings
Source/Destination Ports: Matches packets based on source/destination ports separately.
ICMP Type: Matches ICMP packets by type.
TCP Flags: Matches based on TCP flags.
DSCP: Matches based on Differentiated Services Code Point.
Connection Tracking: Matches packets based on connection state (e.g., Established).
Default Profile
Fusion SD-WAN comes pre-configured with a default profile optimised for most networks. It includes the following traffic classes:
Real-time
Reserved Bandwidth: 40%
Traffic:
ICMP packets ā¤ 500 bytes.
IAX2 traffic.
SIP/H.323 control traffic.
Packets with DSCP expedited forwarding.
Interactive
Reserved Bandwidth: 20%
Traffic:
DNS traffic.
RDP traffic.
TCP acknowledgements.
SSH traffic (limited to 20 packets per second to exclude SCP).
Routine
Reserved Bandwidth: 20%
Traffic: Default class for unmatched packets.
Bulk
Reserved Bandwidth: 20%
Traffic:
FTP on ports 20, 21.
HTTP/S flows > 2 MB.
Configuring QoS
Create a Profile: Assign a unique name and set the overhead margin.
Define Traffic Classes:
Specify reserved/limited bandwidth parameters.
Assign a leaf qdisc for packet management.
Add Packet Filters:
Define matching criteria (protocol, ports, DSCP, etc.).
Assign filters to traffic classes.
Test and Adjust:
Validate performance under load.
Adjust overhead margin and class parameters as needed.
This comprehensive QoS framework ensures that critical applications always receive the bandwidth and latency prioritisation they require, while efficiently utilising bonded or aggregated network resources.