RTC over WAN – What is the Required Bandwidth for my Workload

RTC over WAN – What is the Required Bandwidth for my Workload

  • Comments 2

As you probably know we shipped Dynamics NAV 2009 R2 with a few features to support running the RoleTailored Client over WAN. Specifically we added the capability of using Certificates to validate the Server that the client is connecting to and a Login dialog that enables a NAV user to type in credentials that are different from his/hers current windows credentials. How to use and configure this is well documented and available on MSDN at this point. (http://msdn.microsoft.com/en-us/library/gg502476.aspx)

The question that remains is what kind of bandwidth is needed when deploying RTC over WAN. As you probably also know we published some initial findings at the time of release for R2 (http://msdn.microsoft.com/en-us/library/gg502513.aspx). These numbers were pretty generic but still valid. Our tests were done by posting 10 sales orders programmatically. We did this on connections between 300/300 Mbit and 10/1 Mbit. Let me reiterate the most important findings:

Two factors make a difference from a network perspective:

  • Latency
  • Bandwidth

With regard to latency the chart above shows that as we added latency between client and server our ability to utilize bandwidth decreased. This makes sense as added latency makes us wait for network I/O rather than server CPU cycles. The elbow seems to be somewhere between 75 and 125 ms latency.

For bandwidth we saw that the upstream bandwidth from the client to the server seemed to have a significant impact on the response time. Specifically we saw that if we throttled the bandwidth below 0,1 Mbit the response time almost doubled.

Now for the interesting part – how can you go about measuring the required bandwidth for your own workload. I will provide one example (which was also shown at Convergence Atlanta 2011 and Directions EMEA 2011).

First let us set up Performance Monitor to capture data for us:

  • Capture Bytes Sent/sec and Bytes Received/sec for Network Interface Counter

Make sure to capture the relevant NIC

  • Change sampling to 1 sec

Now we are ready to run the test. For this example the test is just opening the RoleTailored client. Before you go ahead make sure that nothing else is consuming bandwidth at this point.

  • Go back into Performance Monitor and start the capture
  • Open the RoleTailored client and wait for it to fully render
  • In performance monitor stop the capture

To view the results go back into Performance Monitor:

  • Create Report in Performance Monitor using captured file

  • Look at the numbers for Maximum for both Bytes sent and received

To transform these numbers into something useful some basic math will have to be applied.

The numbers in the report are bytes per second. To get to bits per second multiply the number by 8. To get to Kilobits per second divide by 1024 and finally to get to megabits per second divide by 1024 again.

As an example if the captured number was 162.276 as above this would mean:

Bits/sec KB/sec MB/sec
Bytes received 162276 1298208 1267,781 1,238068

This exercise can be applied to any operation that you would want to separate out in the RTC. If your remote users would want to post sales orders this is what you should measure. If they will be running specific reports you should go ahead and measure the required bandwidth for a single instance of that report.

- Claus Busk Andersen

Leave a Comment
  • Please add 3 and 3 and type the answer here:
  • Post
  • That's a great blog! Thanks Claus.

    I wonder if it is possible to extended this blog in relative terms. Testing for example

    - Classic Client over WAN

    - MSTS with RTC over WAN

    - MSTS with Classic Client over WAN

    and post comparative results (e.g. if RTC over WAN = 100 then CC = X, MSTS RTC = Y, MSTS CC = Z).

  • You should use snagit for screen captures where you need to circle or highlight things.  It does a much cleaner/professional looking job than your rough hand-drawn circle.  :)

    (Not trying to be a jerk - just passing along a tip.  I use snagit all the time myself for client work.)

Page 1 of 1 (2 items)