CC&Ts EMIP-1 is a Linux-based Internet/WAN emulation tool. By imitating the
cloud that is cyberspace, developers and application implementers can evaluate
new products, stress-test networks, verify bandwidth, etc. Unlike The Cloud
from Shunra Software (also reviewed in this issue), the EMIP-1 can be set for extremely
precise packet lengths, and because the software runs on Linux instead of Windows,
its far less susceptible to crashing. The EMIP-1s feature list is not as
impressive as that of The Cloud, but its half the cost and comes installed on an
industrial PC. (CC&T sent us a platform from Top Technology, but the company is
considering using other brands.) Shunras The Cloud only includes
software, so the EMIP-1 is the obvious bargain.
Installing the EMIP-1 was a half-day project, but it should have lasted just a
half hour. The reason ours took so long was that the server arrived slightly damaged from
shipping, and analyzing that damage proved to be difficult. Initially, the damage appeared
to be merely cosmetic the floppy disk drives front cover had popped off, and
the two open bays beneath the systems CD-ROM drive were out of alignment. On the
first boot-up, POST beep codes indicated that the video card was not functioning
reseating it fixed the problem. Then, on our second boot-up, the system came up
successfully, but we could not ping to it. Reseating the network adapter fixed that.
Finally, on the third boot-up, everything worked properly.
However, before those steps, we built a miniature 10Base-T testing network, consisting
of two machines running Windows NT, attached to the same hub as the EMIP-1. (The fact that
our test PCs ran Windows NT is incidental any computer or device that runs TCP/IP
with any flavor of UNIX, Linux, or Windows can be tested by the EMIP-1.) Beyond the
network setup, the remainder of the installation is all software settings.
Logging on to Linux is a far less painful step than logging onto any version of
Windows. Once we opened an XTERM window (via the included Red Hat Linux GUI), a series of
simple commands was required. These included an initialization command a command
that adds each destination systems MAC and IP addresses, and a command that updates
the software concerning each change. Once these commands are issued, the STARTEMIP command
opens the program. Opening Linux and EMIP-1 for the first time also requires minor network
configuration, most of which is environment-specific and/or configured by CC&T before
the systems ship. For example, the system we received required an updated system file,
which a CC&T engineer sent to us via e-mail, along with simple instructions on how to
perform the update.
The EMIP-1 user manual is unique because it reads more like a textbook, but this
is a good thing. In addition to the chapter on network configuration, there is a
comprehensive chapter on usage (network workload generation), and a chapter of examples.
There are more than a few flagrant examples of poor grammar, spelling mistakes, etc., but
the overall quality of the manual is high, with plenty of screen captures, intelligent
organization and a concise, technical style. The sections that explain the software
installation and features are sufficient, and leave no question unanswered.
The testing architecture of the EMIP-1 is divided into three main parts: The
delay module, the queue module, and the loss module. The delay module comes first in the
flow chart, and is configurable for fixed delay, user-defined delay (specifying the delay
for every Xth packet up to eight packets, and looping), and empirical delay (in which a
two-column, user-defined table sets various delay lengths and their probabilities of
After being appropriately delayed, packets enter the queue module, where they encounter
background traffic. Users can choose from three kinds of background traffic, including: A
packet-train model, in which on/off states are multiplexed with your real traffic; a
pare-to model, in which on/off states create trends based on an analytical distribution;
and a trace file model, in which an empirical method precisely controls, in segments, how
much delay will occur after a particular amount of time elapses. In each type, users
control the packet size and other parameters.
The third step is the loss module. There are two main options here fixed loss
(configured with a mean loss probability and a conditional loss probability for
example, the probability that packet 2 will be lost considering that packet 1 was also
lost), and user-defined loss (specifying that every Xth packet is lost, out of a looping
series of up to eight packets).
Before configuring any of these options, users first choose which options they wish to
enable for their test. There are eight possible combinations of delay, background traffic
(which CC&T calls bandwidth mode), and loss, numbered zero through seven.
The combinations include:
- Mode 0 delay
- Mode 1 delay, background traffic
- Mode 2 delay, background traffic, loss
- Mode 3 delay, loss
- Mode 4 loss
- Mode 5 background traffic
- Mode 6 background traffic, loss
- Mode 7 no resistance
Option 2 is the most general mode, including all three modules; option 7 provides the
least packet resistance, being the pass-though mode of no delay, no background traffic,
and no loss. Each mode also has its own packet statistics table, divided into two columns,
for aggregate statistics and the last 10 starting intervals. The items are the same for
each column, but they change depending on which mode youre using. See Table
1 for a list of which statistics appear for which modes.
Other features of the EMIP-1 include an options menu, where users can configure the
system bandwidth in bits per second, the maximum queue length, the time interval between
statistics updates and the length of time considered recent for the statistics
boxes. Another valuable feature is that you dont have to stop the emulation to
change the mode parameters, although the emulation does have to be stopped to change the
actual mode. Also, the reset statistics button updates the data shown, and removing the
emulation software from the server is as easy as configuring it.
Although using a Linux-based product might take some adjustments for the Windows
audience, using the EMIP-1 in particular is very similar to most Windows conventions.
During the systems configuration, the software provides feedback after each step
for example, after issuing the initial batch of addRTE,
config, and getkey commands, the software always replied with a
text message saying, Now you have to do this, or Next, run the
command, etc. Positive and directional feedback is not something we expect in
Windows software; in fact, sometimes we expect negative feedback. CC&Ts
developers should be commended for including this help.
We found the GUI and the softwares usability to be as helpful as the installation
replies. For example, in many Windows programs, if there is a 10-part menu, the
unavailable options would be grayed out, with the available options in black.
This can be confusing as the menu structures and various windows get more complex and
crowded. Although the pull-down menus in the EMIP-1 software follow the same principle,
the statistics/options tables only show the relevant features/choices for the current
mode, which we like.
Like similar testing tools, the EMIP-1 has a rather moderate learning curve, and the
concepts of packet degradation are far more important to learn than the actual
how-to of the software. Understanding the implications of delay, traffic,
loss, jitter, etc. are harder concepts to grasp than how to select modes in the
softwares GUI. Actually configuring an EMIP-1 packet test is a simple task, but
planning the test can take many hours, especially on larger scaled networks. So, before
you buy this system or any system like it for your developers or testing lab, make sure
that they fully appreciate the concepts and real-world implications of what theyre
about to be able to measure, and ensure that they are comfortable in the Linux
ROOM FOR IMPROVEMENT
One major operational drawback of the EMIP-1 is the lack of real-time
logging/reporting. The packet statistics do change as the emulation runs, but there is no
means to log and categorize the results over an extended period. Were impressed with
how each module (delay, traffic, and loss) has many sub-options and operational modes.
Still, we think that there can be more available testing features, like options for
jitter, echo, packet fragmenting, and double-packeting, although features like jitter
could theoretically be accomplished by using the included packet options creatively.
Finally, although the users manual has some good examples at the end, we think it
could benefit from an IP testing white paper and a good copy editor.
This is a solid, recommendable product in its own regard, but its very hard
to say how it compares to the Shunra product. This product has fewer, but more precise
features. Both products documentation quality is about the same, but the EMIP-1 is
half the cost of the The Cloud, and includes an industrial PC. To develop the best
possible testing lab, each user should consider which particular features are most
important to them, and choose the product that best fits that list. Optimally, we would
buy both products for the most comprehensive testing, as they have a feature overlap, but
each has unique features as well. The EMIP-1 is definitely deserving of our Editors