UDP Load Balancer Definition
A UDP Load Balancer utilizes User Datagram Protocol (UDP), which provides low latency for applications like live broadcasts and online games that depend on speed.
What Is a UDP Load Balancer?
A UDP load balancer is a type of load balancer that utilizes User Datagram Protocol (UDP), which operates at layer 4 — the transport layer — in the open systems interconnection (OSI) model. UDP traffic communicates at an intermediate level between an application program and the internet protocol (IP). A UDP load balancing configuration is often used for live broadcasts and online games when speed is important and there is little need for error correction. UDP has low latency because it does not provide time-consuming health checks, which makes UDP the fastest option.
How Does a UDP Load Balancer Work?
A UDP load balancer assumes data being sent between computers is correct. Unlike the Transmission Control Protocol (TCP), UDP does not track data to ensure it was successfully transmitted and received. Data is sent using an IP address and a port number, but it is not tracked or confirmed. This is why UDP is considered a connectionless and unreliable protocol. But it is useful for applications where precision doesn’t matter as much as speed, such as live broadcasts. The lack of verification in UDP allows information to be sent much faster.
Overview of UDP Load Balancing
UDP connections only last a short time, which is why UDP-based traffic includes short-duration Domain Name System (DNS) address lookups and Network Time Protocol (NTP). The UDP protocol does not use connection sequence numbering to monitor the transmission and receipt of data. UDP connections, however, can be tracked through the IP address and the port number. But this does not determine which connection the data belongs to. This presents a challenge for load balancing due to the lack of details about the servers where requests are sent. Since UDP is connectionless, data packets are directly forwarded to the load balanced server. The load balancing decision is made on the first packet from the client, and the source IP address is changed to the load balancer’s IP address.
UDP Load Balancer Versus TCP Load Balancer
TCP stands for Transmission Control Protocol. UDP stands for User Datagram Protocol. Load balancing methods are different for these protocols, and they represent the most common protocols used for sending data using Internet Protocol (IP).
The biggest difference between TCP and UDP load balancing is how the data is tracked. TCP guarantees the transmission and receipt of data by ordering and numbering the data packets. Then the recipient confirms delivery. A TCP load balancer also checks the data packets for errors. A TCP load balancer is considered the most reliable because data is tracked in transit to ensure no information is lost or corrupted.
A UDP datagram only sends data. There is no confirmation of receipt. Nothing is tracked or checked for errors. All data, whether corrupted or not, simply arrives. If data is lost on UDP servers, there is no way to find it. Verifying all the data takes time and the lack of verification with a UDP load balancer allows for the fastest delivery of data possible. This speed is desirable for online games and live broadcasts.
Does Avi Offer a UDP Load Balancer?
Yes. Avi Networks’ UDP Fast Path profile allows a virtual service to support UDP. Avi will translate the client’s destination virtual service address to the destination server and rewrite the client’s source IP address to Avi’s Service Engine (load balancer) address when forwarding the packet to the server. This ensures that server response traffic traverses symmetrically through the original Avi Service Engine.
By default, Avi treats a stream of UDP packets from the same client IP port as a session, making a single load balancing decision and sending subsequent packets to the same destination server.
Avi Networks’ intent-based Software Load Balancer provides scalable application delivery across any infrastructure and any level in the networking stack (L4-7). The Software Load Balancer forms the backbone of Avi, providing speed, performance and reliability for modern enterprises.
For more on the actual implementation of load balancers, check out our Application Delivery How-To Videos.
For more information on Avi’s UDP load balancing configuration see the following resources: