Link to home
Start Free TrialLog in
Avatar of kamalgopi
kamalgopi

asked on

Simulate Network Latency

Hi All,

Is there a Way i can Simulate Network Latency from Connecting My PC to a Router Ethernet Interface and The Router will be connected to my Local LAN. And from the PC i will run a Application which in turn connects to the Server in the Local LAN.

The reason we want to simulate the same from the Local LAN is to see if the perfomance is the same when accessed locally with the Latency we normally get over the WAN.

Because we have our customers who connect to the Server which have a 150ms Latency to reach it. Just want to prove to them that it is the Latency that causes the application to be slow and this is the best we can get over.
Avatar of giltjr
giltjr
Flag of United States of America image

Just how bad is the performance.  Although 150ms of RTT is high may or may not affect performance that much.  In some of our testing we did not notice significant performance impact until we got 300ms or higher.

However, what is the bandwidth?  

If you happen to have a recent distribution of Linux you can use netem function to simulate everything:

  latency
  packet drop
  out of sequence packets
  available bandwidth (even asymmetrical bandwidth to simulate Cable or DSL type connections).

We have a remote office that has a 768Kbps link with about 100ms RTT and their response time for most of our application is only slightly slower than in our local office.
Avatar of kamalgopi
kamalgopi

ASKER

It is a 64K link to the site.
Yeah actually 150ms is not that bad,. They have been running SAP from the same site and it seems to work perfectly fine. I think it could be the expectation is wrong or there is seriously something wrong on how the application handles the packet
I would take a wild guess and say that your performance issues are more due to the bandwidth than latency.

At 64Kbps assuming a TCP/IP based application you are talking about getting 7-7.5KB per second before the link is saturated.  In fact if the link is saturated the RTT will also go up. For example if the application is web based and the avg. web page is 50K, it would take close to 8 seconds just to transfer that one page.

Do you have away to monitor link utilization?

Do you know how many users are located at the remote site and what the average bytes in and out are per transaction for this application?
Actually all the testing we are doing is during non-business hours which means there is nothing other than this aplication on this circuit. And also you have a point on the 7-7.5KB per second. I would need to see how many bytes are transfered for a particular transaction in the application. Yes it is a TCP based application. Also i suppose the Windowing does makes a difference here.
Also is there a Way i can simulate a 64K Serial Link? I just checked around and i dont have a Back to back smart serial cable :(
Again, if you have Linux you can use netem and simulate just about anything.

I have a Linux box with two NIC's that I can connect "in-line" and then configure netem to simulate what I want.  I even created a simple web interface using PHP and Apache so that I can configure what I want netem to do.  I have a couple dozen pre-configured options to select from.  I put in the IP address of the server I am going to, then select from a pull down box one of the pre-configured WAN emulations I want to do (various link speeds and latency) click submit.  

It will only impact traffic to/from the host IP address I enter.
Thanks. Let me source for a Linux Box tmr and try that out.
ASKER CERTIFIED SOLUTION
Avatar of giltjr
giltjr
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial