+1 833 274 2566

What do you need load balancing for?

"We have deployed around 20 of these on different customer sites in the last four years and they have given us no drama at all. The product keeps evolving with new functionality offered at no additional cost (Windows Feedback Agent for Remote Desktop). The support team gets back to you quickly and they know what they are talking about. Can't say enough good things about Loadbalancer.org."

Ferdie Koukakis

Wanstor LTD

Load Balancing Microsoft Remote Desktop Services (RDS)

Microsoft Remote Desktop Services (RDS) is an industry leading desktop virtualization platforms. It is the successor to Microsoft Terminal Services and facilitates the efficient, flexible and secure deployment of a Windows desktop environment and/or Windows applications, to users both locally and remotely.

Loadbalancer.org provides value-add by enabling scalability, high-availability and ease of management to users wishing to load balance their session hosts, connection broker with either session hosts or virtualisation hosts, session hosts with connection broker, gateways and web access servers depending on the infrastructure or operational requirements.

The load balancer is typically used to load balance multiple Connection Brokers, multiple Web Access Servers and multiple Gateway Servers. Session Hosts are normally load balanced by the Connection Brokers, although the load balancer can also be used as detailed in the deployment guide referenced below.

Remote Desktop Services (RDS) protocol table

Protocol Ports Role Load balancing methods
TCP/HTTPS 443 HTTPS (RD Gateway & RD Web Access) Layer 7
TCP 3389 RDP Layer 7
UDP 3389 RDP (UDP support was added in RDP v8.0) Layer 4
UDP 3391 RDP for RD Gateway Layer 4


  • What RDS deployment models/topologies can be load balanced?

    We officially support load balancing 6 different deployment scenarios with Microsoft RDS. These are: - Stand alone session hosts: Load balance RD session host servers directly - Connection brokers with session hosts: Load balance RD connection brokers sitting in front of RD session host servers - Connection brokers with virtualization hosts: Load balance RD connection brokers sitting in front of RD virtualization host servers - Session hosts deployed with connection brokers: Load balance RD session host servers that were deployed with RD connection brokers and use routing tokens and routing token redirection -Gateways: Load balance RD gateways - Web access servers: Load balance RD web access servers

  • What health checks can be used?

    Our load balancer allows you to use tuneable, customisable real server health checks. These can be adjusted as required to suit the needs of your network environment, unlike the opaque checking mechanisms that are built into the Microsoft RDS product.

  • What user persistence options are available?

    Inbound connections can be forced to persistently stick to the same real server. Persistence options available for RDS deployments are: - Stick on source IP: Use the client IP address for real server persistence - RDP cookie: Use the client’s RDP cookie for real server persistence; useful if inbound connections are NAT-ed and share the same source IP address - SSL session ID: Use the client’s SSL session ID header for real server persistence; useful if inbound connections are NAT-ed and share the same source IP address

  • Can real server CPU and RAM use be accounted for when load balancing?

    Yes. We have a configurable open source Windows service available that reports real server CPU and RAM load back to the load balancer. The load balancer can adjust real server weighting based on this information, so that busy servers receive less new traffic than idle servers.

    Using a feedback agent in this way is particularly useful when load balancing RDS sessions. A scenario can arise with RDS whereby a small number of users performing computationally intensive tasks can quickly tax a real server. In such a situation, load balancing based solely on the number of active connections to a server can cause issues, as this assumes a linear relationship between the number of connections and the amount of resource consumed on a real server.

    The service can be downloaded be downloaded from our blog by clicking here

  • How does this fit in with server maintenance?

    Real servers can be gracefully drained of client connections, allowing them to be taken offline for maintenance once all user connections are finished. This simplifies the process of taking servers offline for updates and routine maintenance while not affecting user experience.

  • Are UDP connections supported?

    Yes. We support load balancing UDP connections to RD gateway servers at Layer 4 on port 3391. The steps to set up the UDP virtual service are covered in our RDS deployment guide.

Surely you must have a question?