ACE4710 and RDP Load Balancing

Unanswered Question
Nov 13th, 2008

Hello,

I have configure "RDP Load Balancing" as explained in the Software Version A3(1.0) manual.

Users claim that they do not reconnect to the RDP session after a quite short inactivity time !

What are the default RDP "sticky" timers and where can I see these values?

How can I modify the timers that allows a user to reconnect to the terminal server where his disconnected session resides and to resume that session ?

I look araound for the documentation, but I did not find much concerning RDP session load balancing.

Thank you for your inputs

François

I have this problem too.
0 votes
  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 5 (1 ratings)
Loading.
Gilles Dufour Thu, 11/13/2008 - 02:13

It all depends what you configured.

Do you have a sticky group ?

What timeout did you configure ?

There is also a default tcp idle timeout of 1h.

Would this be considered *low* ?

This can be changed with a parameter-map.

Gilles.

fsteininger Thu, 11/13/2008 - 02:28

1/ No, I do not have a sticky group.

2/ I did not configured any timeout.

3/ Yes, 1h is too low (during lunch time, 2 houres would be a minimum)

I configured load balancing exactly like in the manual: "Cisco 4700 Series Application Control Engine Appliance Server Load-Balancing Configuration Guide

Software Version A3(1.0)

August 2008"

Here the output of my configuration:

class-map match-all VIP-STS

2 match virtual-address 10.209.17.100 tcp eq rdp

policy-map type loadbalance rdp first-match VIP-STS-l7slb

class class-default

serverfarm sf-sts

policy-map multi-match int10

class VIP-STS

loadbalance vip inservice

loadbalance policy VIP-STS-l7slb

loadbalance vip icmp-reply active

nat dynamic 20 vlan 20

...

thank you for your effort.

François

Gilles Dufour Thu, 11/13/2008 - 04:21

You can increase the idle timeout with the following command :

parameter-map type connection TCP-timeout

set timeout inactivity 10800 (3h)

And apply the parameter-map under

policy-map multi-match int10

class VIP-STS

With the command

connection advanced-options TCP-timeout

If that does not help, you may have to configure stickyness.

Gilles.

dknov Fri, 12/05/2008 - 13:59

Gilles,

Sorry to piggy-back on this thread. Does "set timeout inactivity" affect sessions terminated on ACE (like HTTP loadbalancing) or also sessions passing through ACE (regular L3 loadbalancing)?

In this example we are talking about L3 loadbalancing, so will this command have an effect, or is sticky timeout the only way in case of L3 sessions?

David

fsteininger Fri, 12/05/2008 - 15:19

Hello David,

I can not answer your question now, because we only have RDP sessions load balancing.

Changing the "set timeout inactivity 10800" (3h), actually has solved the problem of the RDP sessions been disconnected. But the strange thing is that the session are not disconnected after 3 houres as we could expect. After more than 10 houres the session were still alive !!!

I am going to open a TAC service request to get more information for tunning RDP session...

François

dario.didio Wed, 12/09/2009 - 02:08

Hi Francois,

Did you receive any feedback from Cisco TAC concerning RDP loadbalancing and this timeout?

Is the timeout of the RDP session linked to the TCP inactivity timeout?

I would be glad to hear some feedback from you concerning this issue.

Thanks,

Dario

fsteininger Tue, 01/05/2010 - 02:40

Hello,

it's quite a long time since I had this RDP problem...

We stopped using RDP load balancing because it involved too much HW arround the ACE (see Cisco TAC explanation at the end of the message)

Now we are doing sticky on "Source IP"

........

/* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;}

There is no really much things to configure and check on the ACE 

regarding RDP. Advanced RDP setups usually involve Session Directory 

server which inserts routing tokens and ACE load-balances based on 

that. Here is a link with more information on that:

http://technet.microsoft.com/en-us/library/cc757253.aspx

Here is another page that explains how the load-balancer works with 

RDP. This is not with ACE but the concept is the same:

http://www.cisco.com/en/US/prod/collateral/modules/ps2706/ps780/product_solution_overview0900aecd806fc547.html

So here the "stickiness" is handled and configured on SD. The ACE only 

inspects the routing token and modifies its decision based on that. 

For this to work you need the "policy-map type loadbalance rdp first-

match ..." part.

This feature is still "under development" and we don't have CLI 

commands to control it or to look what is it doing.

Another way of doing it is that you don't have SD and that you do 

layer 4 load-balancing of TCP sessions between some RDP servers. Here 

configure the above mentioned loadblance policy without the "rdp" 

part, and if you can configure for example stickiness based on client 

source IP.

.....


This response dated already from January 2009. Many things may have change inbetween......

Ask directly Cisco for news.

Regards

François


fsteininger Tue, 01/05/2010 - 02:50

Finally I got the response frome the Cisco TAC:

/* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;}

I understand you concerns. However, I first need to clarify which 

scenario are you running.

There is no really much things to configure and check on the ACE 

regarding RDP. Advanced RDP setups usually involve Session Directory 

server which inserts routing tokens and ACE load-balances based on 

that. Here is a link with more information on that:

http://technet.microsoft.com/en-us/library/cc757253.aspx

Here is another page that explains how the load-balancer works with 

RDP. This is not with ACE but the concept is the same:

http://www.cisco.com/en/US/prod/collateral/modules/ps2706/ps780/product_solution_overview0900aecd806fc547.html

So here the "stickiness" is handled and configured on SD. The ACE only 

inspects the routing token and modifies its decision based on that. 

For this to work you need the "policy-map type loadbalance rdp first-

match ..." part.

This feature is still "under development" and we don't have CLI 

commands to control it or to look what is it doing.

Another way of doing it is that you don't have SD and that you do 

layer 4 load-balancing of TCP sessions between some RDP servers. Here 

configure the above mentioned loadblance policy without the "rdp" 

part, and if you can configure for example stickiness based on client 

source IP.

==> I decided, since I do not have SD, to go on sourece IP sticky.

Actions

This Discussion