Skip to content

gdhillon/l3dsr

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Direct Server Return (DSR) load balancing is a common way to distribute
network traffic using an approach that currently requires the load
balancer and all hosts behind the Virtual IP (VIP) to be within the same
Layer 2 broadcast domain.  This is a severe limitation that hinders
scaling VIPs beyond a single contiguous subnet.  To overcome this
limitation, we present a method to perform DSR load balancing across Layer
3 boundaries (``L3DSR''), a solution that allows Yahoo! to serve up to ten
times as many VIPs on a single hardware Load Balancer compared to other
Layer 3 load balancing methods.

In order to overcome Layer 2 limitations, we use the 6-bit Differentiated
Services Code Point (DSCP) field of the IPv4 header used for packet
classification to relay information to the server.  The server inspects
the header and rewrites the destination address based on the value of the
DSCP field and according to its own mapping of DSCP values to destination
addresses.

L3DSR is currently supported by:
 - A10 AX3200 >= 2.2.5
 - Brocade ADX Series >= 12.1d
 - Brocade/Foundry ServerIron 450
   - M7 and JetCore blades
   - >= 12.2.01p
 - Citrix Netscaler running 8.x, 9.x
 - Radware Alteon 4408, 4416, 5412
   - SW versions 27 and above
 - Radware AppDirector (All platforms)
   - 2.10 and above, requires the optional BWM license

On the server, L3DSR is currently supported by:
 - FreeBSD >= 6.x
 - RHEL4 >= 4.7 (IPv4 only), RHEL5 >= 5.4 (IPv6 >= 5.9),
   RHEL6 >= 6.0, and Fedora 17

L3DSR was developed at Yahoo! Inc.  If you have questions or comments,
please contact:
   Jan Schaumann <jans@verizonmedia.com> (overall design),
   Carl Stanley <carl_stanley@yahoo.com> (LBs),
   Quentin Barnes <qbarnes@gmail.com> (iptables-daddr), or
   Wayne Badger <badger@verizonmedia.com> (dsrtools/yvipagent).

About

Direct Server Return load balancing across Layer 3 boundaries

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 42.2%
  • Roff 18.8%
  • Makefile 14.4%
  • Perl 11.6%
  • C 7.2%
  • sed 5.8%