- What is a network emulator?
- There are many network emulators available today, why would I want to get Mini Maxwell?
- I can use any of the freely available network emulators to do that, like NIST Net or netem. So, why Mini Maxwell?
- How can you be selling a product that uses netem! Doesn't that violate the GPL v2 license agreement?
- What specific advantages does Mini Maxwell have over netem?
- Why do I need support for netem's statistical assumptions? Isn't this self-evident?
- Is there any reason that I would want netem instead of Mini Maxwell?
- You say that Mini Maxwell runs in "bridging mode". What does that mean?
- How do you configure Mini Maxwell's IP address?
- Learning time is an important consideration. How long will it take to learn Mini Maxwell?
A Network Emulators imitate the function of a network by making modifications to network activity that allow the imitating system (the emulator) to accept the same traffic and data and achieve the same results as the imitated network.
Mini Maxwell introduces network delays, packet drops, etc. so that the devices on the network respond in the same way that they would if there were real-world network problems, like congestion, outages, ARP cache timeouts, misconfigured routers, etc.
A Mini Maxwell is the perfect choice if you want a highly portable, very low cost, network emulator. Mini Maxwell emulates real-world network conditions in your lab or office for testing, validation, troubleshooting, training, demonstrations, and trade shows. Mini Maxwell supports packet drop/loss, duplication, delay (latency)/jitter, reorder, and burst.
Mini Maxwell is a completely contained unit that operates in layer two bridging mode, making it easy to install without having to fiddle with IP addresses and routing between the devices under test. Mini Maxwell is operated via a web interface without the need for arcane command lines.
In addition, MM can sort the traffic into "bands" and impose different impairments on each band.
A NIST net was last updated in 2005 and runs on Linux 2.4.x, an obsolete operating system with no migration path. Mini Maxwell uses an up-to-date version of Linux. Mini Maxwell uses the netem kernel module to do the actual real-time impairments.
A InterWorking Labs meticulously observes and honors all intellectual property agreements and contracts, including the GPL v2 and v3 license agreement governing the use of Netem. InterWorking Labs has not modified netem or the Linux kernel; Mini
Maxwell is a collection of web pages, scripts, and cgi-bin programs that make use of the unmodified netem services. Mini Maxwell uses the netem kernel module without violating the GPL v2 license. Many commercial products, like Mini Maxwell, operate on freely available, open source, operating systems. This is permissible under the GPL v2 license agreement.
A Mini Maxwell has applied netem in a way that avoids many of the difficulties of using netem directly. For example, the Mini Maxwell package includes three Ethernet interfaces, two of which are run in "bridging" mode. The netem impairments are applied to the outgoing packets on these two interfaces. Mini Maxwell offers a graphical, web-based interface, and online help to quickly and easily accomplish tasks.
The same tasks using netem require hours of research, if they are possible at all, as well as mastery of a cryptic command line interface.
- Easy set up and configuration. Mini Maxwell can operate as a ?bump on the wire?. There is no need to create special IP addresses or routes.
- Bi-directional traffic impairments. You can impair traffic flowing in both directions simultaneously, not just one direction.
- Traffic partitioning. You can partition the traffic by protocol, address, or other header fields and perform different kinds of impairments on each of those traffic partitions.
- Simultaneously packet impairments applied to traffic flowing between several different source-destination host pairs, not just traffic going to one destination.
Finally, because Mini Maxwell is a commercial product, there is technical support, bug verification and correction, and explanations for all the underlying statistical assumptions of Netem.
A No. Netem's statistical assumptions are only partially documented. For example, netem describes random numbers being correlated without explaining that a separate sequence of random numbers is maintained for drops, duplications, etc.
Undertaking a thorough study of the source code can be both time consuming and error prone, particularly if you are trying to use a tool to accomplish another task. Netem poses many challenges for technical users and engineers, especially those without a PhD and ten years of development experience, and even some of them will have difficulty.
The effective use any network emulator requires:
- Strong technical understanding of the problems of operational networks.
- Experience with the application of statistics to network modeling.
- Experience with buggy software, including discontinuities, and the ability to generate test cases to prove the software bugs.
By clearly defining the statistical assumptions for a particular impairment, Mini Maxwell removes the guesswork for the user. For example, if you apply jitter to the traffic stream and that jitter will use a Pareto distribution, then you can make some assumptions about the effects on the outgoing traffic. If you don't know the distribution model of the jitter, then you cannot effectively evaluate the outcome. This gets even more important with correlation and other statistical models.
A Yes, if there is a requirement to use Netem from the command line. However, it is a non-trivial process to install, configure and use netem. The command syntax is arcane and complex. To realize a simple, meaningful emulation/impairment scenario, requires creating 20 to 30 lines of code.
Mini Maxwell provides a web interface, not a command line interface. The web interface (both html and style sheets) has been passed through the W3C validators.
A Mini Maxwell operates as a transparent layer-2 bridge. A transparent layer-2 bridge generally forwards packets so that arriving on either of of its two network interfaces are transmitted, without change, out of the other network interface. Mini Maxwell, like most layer-2 bridges, maintains a MAC address based forwarding table so that it does not forward packets that are addressed to destinations that are not "on the other side" of the bridge.
Thus, from the user's point of view Mini Maxwell appears very much like a two port version of familiar Ethernet switches.
The physical interfaces in Mini Maxwell are wired as ethernet host ports rather than as switch ports. This means that when hooking a host directly to Mini Maxwell it may be necessary to use an Ethernet cross-over cable. These are readily available.
A There is a default IP address and subnet mask. You can change this by following the steps in the setup guide.
A Mini Maxwell provides an easy way to invoke and control Netem without advanced technical training. In fact, a political science student in our office was using Mini Maxwell very effectively in 30 minutes.