Testing the performance of network applications, such as a
CRM application or a latency-sensitive application, such as VoIP, can be
quite tricky. Developers often test their applications on a clean
high-speed test network in a lab environment as opposed to a ï¿½real worldï¿½
network. As such, issues such as bandwidth bottlenecks, jitter, latency,
packet loss, etc., are non-factors on a clean testing network.
Shunra Software helps solve this problem with their software-based
network emulation tool called Shunra\Cloud v4.0 that will help developers
understand how their applications will work in a real-world scenario
before they are deployed. In addition, network managers will love this
software tool to see how much impact a set amount of latency or packet
loss can affect specific applications already deployed on the network.
Shunra\Cloud tests are fully customizable, repeatable, and can be
automated, enabling users to perform ï¿½what ifï¿½ scenarios and determine
the real end-user experience, without the risk of testing over the real
How does it work? Shunra\Cloud alters the way IP traffic flows within
its host. Instead of processing the IP traffic immediately, each IP packet
sent to or received by the host is delayed, duplicated, fragmented, or
dropped according to the required emulation parameters. Shunra\Cloud can
be installed on a client, server, or on a dedicated PC configured as a
router or modem, allowing users to emulate and test a link between any
Installing Shunra/Cloud v4.0 was very straightforward and we
encountered no difficulties. After installing, we ran the application,
which consists of a very easy to use graphical user interface.
We then single-clicked on the WAN cloud icon, which brought up the
customizable parameters for the WAN. From this screen we were able to set
five major parameters: Latency, packet loss, packet effects, link faults,
and congestion. Each of the five major parameters have useful settings
that can be changed to suit your testing requirements. For instance, under
the ï¿½Latencyï¿½ settings screen, we were able to choose fixed latency,
uniform distributed latency, normal distributed latency, and linear
latency. The ï¿½Packet Lossï¿½ screen also has several interesting
parameters, including periodic packet loss, random loss by percentage,
burst loss, and Gilbert-Elliot Loss.
In addition, we were also able to specify symmetric bandwidth (same uplink
and downlink bandwidth) or asymmetric bandwidth (uplink and downlink have
differing bandwidths) for each of the two gateways. The asymmetric setting
can be useful in asymmetric network scenarios such as DSL or cable
broadband. Shunra\Cloud can accurately emulate physical links from 2.4
Kbps up to 10 Mbps. To emulate the backbone infrastructure of rates higher
than 10 Mbps Shunra offers another product called Shunra\Storm. Shunra\Storm
supports links ranging from 2.4 Kbps up to 622 Mbps.
One useful feature is Shunra\Cloudï¿½s ï¿½Packet Overheadï¿½ setting.
Since a gateway often adds overhead bytes to the IP data that flows
through the gateway NIC, you can use this parameter to specify the number
of bytes, in order to emulate the bandwidth consumption they impose on the
network. Another useful feature is something called the ï¿½CloudCatcher,ï¿½
which essentially allows you to play back a profile recorded using the
CloudCatcher. This will take all the ï¿½real-worldï¿½ recorded samples of
latency and select each at random. This is useful for creating jitter
effects (rapidly changing network conditions) on the network. Since VoIP,
video, and other streaming media are sensitive to jitter, Shunra\Cloud is
very useful in testing these types of applications.
Another interesting feature is that the software lets you import a simple
test file of latency values. The software can then randomly pick each of
these latency values at specified intervals. Shunra\Cloud also offers a
variety of automated testing methods. Three command line options are
available that can be scheduled. CloudPlay.exe and CloudStop.exe commands
enable you to activate pre-configured WAN emulation files. Cloud.exe lets
you specific all the various testing parameters specified on a single
command line. Finally, the source code to their API is supplied with
Shunra\Cloud, enabling C/C++ applications to integrate into it.
To determine the root cause of any performance degradation, Shunra\Cloud
provides a wide variety of reports and graphs including total throughput
per direction, throughput per IP, packet lists, and network statistics.
ROOM FOR IMPROVEMENT
There wasnï¿½t much to complain about with this product. It is very
simple to use and easy to navigate. We only discovered two minor usability
complaints. One is that you have to close the current emulation file in
order to open a new one. Weï¿½d like to be able to simply open a new
emulation file, which would close the current one. Or perhaps Shunra could
add MDI support so that we could have multiple emulation files open at
once and then quickly switch between all of them from the ï¿½Windowï¿½
Our second usability suggestion is we tried to open a sample emulation
file from the Samples folder from within the Cloud software and none of
the samples showed up in the window. We then changed the drop-down
file-type list from ï¿½WAN Emulation Fileï¿½ to ï¿½Cloud Emulation
File/Templateï¿½ and then the samples showed up.
Shunra\Cloud is an excellent solution for application developers to
test and develop their applications first, which will minimize rollout
risk. By using a tool such as Shunra\Cloud you can certainly cut costs,
saving time and resources by pinpointing and fixing problems before
deployment. In addition this software can be used to help determine what
sort of service level agreements (SLAs) you can expect to offer your
customers, as well as determine the ROI on network upgrades. Overall, TMC
Labs was very impressed with Shunra\Cloud 4.0 and would highly recommend
it for your network testing/emulation needs.
[ Return To The March 2003
Table Of Contents ]