Optimized Delivery through 3rd Party Load Balancers

0 users found this article helpful

Prior to version 18, RAS was using the custom UDP handshake to initialize an RDP-UDP tunnel and forward it to the correct machine. With the release of RAS v18 we're using RDP correlation id to identify the tunnel, this change improves the compatibility with 3rd-party Load Balancers and provides the following advantages:

 

RDP-UDP Initialization Packet

Section Fields Notes
Header PROTO2X_HEADER header  
(CLIENT_INITRUDP_QUERY) DWORD dwFlags // Support added in RAS v14.0
  #define CORF_FLAG_SUPPORTSRUDP 0x0001
  // Support added after RAS v14.x
  #define CORF_FLAG_SUPPORTSDTLS 0x0002
  #define CORF_FLAG_SUPPORTSGWIP 0x0004
  // Support added in RAS v18
  #define CORF_FLAG_SUPPORTSEXT 0x0008
  #define CORF_FLAG_SUPPORTSIPV6 0x0010
Payload DWORD dwGatewayStrLen BYTE[16] if CORF_FLAG_SUPPORTSIPV6 flag is set
CHAR[] <# Gateway IP #>
BYTE[4] dwServerIP
WORD dwServerPort

Note: Items in RED were introduced in v18

 

Was this article helpful?

Tell us how we can improve it.