RDP Behavior Over High Latency Links RRS feed

  • Question

  • Hi,

    I have a couple of questions concerning performance of RDP over a high latency link.I hope this is the correct forum but I didn't see a RDP specific forum.

    First, a little background. Back at the data center we have a VMWare Virtual Desktop Infrastructure. The client is about 120 - 130ms away (1 way). The client uses a VMWare plug-in in the IE browser which in turn uses the RDP protocol code present on the XP Pro client to talk to the VDI over the high latency link. The users are complaining of slow performance. One of the specific complaints is scrolling through a PDF document. To test this out we tried connecting to the VDI from a desktop about 15ms away and scrolled through a PDF first by hitting the Page Down keyboard key a defined number of times and then by using the mouse scroll wheel a defined number of times. We then did the same thing when using a test machine in our lab that inhibited the packets using a Shunra network simulation device to mimic the latency experienced by the users. Finally, on to the questions!

    1. When looking at packet captures of the different tests one thing jumps out at me. During the low latency test I see that a group of 5 or 6 dataful packets will arrive at the client and the client will respond with a single TCP ACKnowledgement. When the ACK arrives back at the VDI the next group of packets are sent and this pattern repeats. During the high latency test I see if 6 packets arrive at the client then the client will respond with 3 ACKs. If there are 7 packets then the client will respond with 3 immediate ACKs and then a single ACK a short time later ACKing the 7th packet. Is this difference a product of TCP noticing the high latency and adjusting its ACKing structure or is it the interaction between RDP & TCP? Any suggestions for tuning either protocol in this instance? Please note that selective ACKs are turned on in both cases.

    2. Another thing I notice is that there is a fairly low level of unacknowledged (or in-flight) data present. This is both on the low & high latency tests. Basically, a chunk of data is sent out and no more is sent until the previous chunk is acknowledged. The peak I see is about 7,500 bytes. Again, is this a product of RDP in conjunction with TCP or TCP itself? I have seen other protocols used in conjunction with TCP have higher levels of in-flight data.

    Any suggestions or information would be much appreciated.   Thanks, F

    Tuesday, April 27, 2010 3:33 PM