01-08-2008 01:48 PM - edited 03-03-2019 08:11 PM
I want to simulate WAN latency in the lab. Is there something I can do to get a router to add some amount of delay to each packet that it forwards?
Thanks
Pat
01-09-2008 10:52 AM
Perhaps a packet generator program on a laptop attached to one of the network segments?
Pacgen is one that runs on Linux (http://sourceforge.net/projects/pacgen/)
01-09-2008 11:24 AM
It's more application performance that I want to investigate. I've got a client / server application and I want to introduce network delay between the client and the server to see what the impact will be.
01-09-2008 02:02 PM
You can make a small network among the router and the server using a switch an the port conected to the server you can put a rate limit, add this you can connect other machine to generate a lot of traffic whit a traffic generator, this will cause a big load in the channel that results in latency
01-10-2008 08:42 AM
There are lots of (pretty expensive) WAN-simulators available. If you need a free software, take a look at dummynet (BSD), or netem (Linux).
01-10-2008 05:10 PM
Latency is just the time a packet takes to travel across the network. This is usually travel time + the time it takes the network devices to process the packet. Assuming you don't have spare wan circuits that you could route the packets through before returning it to your lab, the best way to create latency would be to increase the processing time for the packets. You could for example use a second server to generate extra traffic and then shape the interface to a low value. This would delay the packets but not drop them. You are limited by the interface queue sizes so you may end up dropping traffic before you introduce enough delay to the target flow, but it's worth a shot. You could also drive up the processor usage in the routers. Configuring them to process switch everything and then configuring multiple routing protocols with very low hello timers and multiple neighbors. Do you have any spare 2500's?
HTH,
Keegan
01-10-2008 05:54 PM
We use a PC with two network cards running Monowall ( http://m0n0.ch/wall/ ) You simply need to create a pipe and set the latency you desire and traffic passing between interfaces will be delayed by that amount.
03-18-2016 08:02 AM
You need a network emulator / virtual test network. Take a look at the NE-ONE Network Emulator which allows you to configure bandwidth, latency, packet loss, packet reordering, packet duplication, packet fragmentation, network congestion and many more impairments so that you can create real-world network conditions in the lab. Different impairments can be configured for the up and downlink so you could have a really good uplink but a really bad downlink, great for seeing how the app handles TCP queuing because the acks don't come back in a timely manner and the overall latency therefore increases!
There's an overview video here https://www.youtube.com/watch?v=DwtqlE7LcrQ, specifically aimed at game developers, but it shows what it's about. NE-ONE is configured using a web browser so it's really easy to get installed and configured - you don't need to be a network guru :-)
There's a hardware version - http://www.itrinegy.com/index.php/products/network-emulators/ne-one - or you can download a Virtual Appliance (software) version that runs under VMware. The Virtual Appliance can be download from VMware's Solution Exchange - https://solutionexchange.vmware.com/store/products/ne-one-flex-network-emulator
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide