Thursday, August 28, 2008

MIMIC 9.00 Performance Report: Windows vs. Linux on dual-core Pentium

MIMIC 9.00 Performance Report: Windows vs. Linux on dual-core Pentium

MIMIC is SNMP simulation software that supports up to 20,000 agents on one workstation. The main concern is the performance for a fully loaded workstation. You want at least hundreds of PDUs per second to make a simulation viable. Each hardware platform / operating system combination has different performance characteristics.

For MIMIC, performance is primarily governed by the amount of physical memory (RAM). The memory requirements depend on the simulations you are going to run. Obviously, a high-end router simulation with hundreds of interfaces, RMON tables, etc. is going to take more memory than the simulation of an end system.

As a ball-park estimate, we like to see at least 1MB of dedicated physical RAM per simulated agent, e.g., a 100 agent scenario should run fine on a 128MB system (depending on how much memory is used by the OS and other processes). For better performance (less swapping), 2MB per agent is recommended. When the agents are running the same simulation, MIMIC optimizes memory usage to contain only one copy of the simulation data for all agents of the same type.

You can more accurately measure this by running a simulation configuration, and checking on memory usage before and after starting the desired agent simulations. Notice that MIMIC uses memory on demand, so you should measure the memory after doing a walk of the desired tables (or a complete MIB walk). Eg. on Windows NT use the Windows Task Manager to check "Memory Usage", and on Unix use the "top" utility. The memory usage by MIMIC is approximately the same for all platforms.

The CPU is of secondary importance. Most modern processors (e.g., Intel Pentium 2GHz or faster, and Ultra Sparc) are adequate. MIMIC works with multi-processor systems, since it is a multi-threaded, distributed application. Agent thread processing will be distributed across multiple CPUs.

The final bottleneck would be the network pipe to your agents. 10Mb Ethernet is adequate for low-volume traffic, 100Mb is better for more demanding applications. MIMIC works with multiple network adapters on your system, so you can talk to the simulations over separate network pipes. MIMIC works with the OS-native protocol stacks, so that all network interface cards that your OS supports can be used. You can even run MIMIC over PPP.

This performance test is designed to measure peak performance of MIMIC on various supported platforms under common access scenarios. The variables in the test are the number of agents running simultaneously, and the number of agents being accessed simultaneously. It is assumed that the most common SNMP request is the GETNEXT, as is done in sequential table traversals.

This report contrasts Windows Server 2003 and XP to various flavors
of Linux on a dual-core 1.8 GHz Pentium E2160.

It shows:
1. The best performer at the low end (10 and 100 agents) is Ubuntu, by
10 to 20% better than Windows Server 2003 or XP.

2. In the mid range (1,000 agents) openSUSE is best by 10%.

3. At 2,000 agents, all OSs are comparable (within 10%), except for
Fedora 9, which lags drastically.

4. At the high-end (5,000 to 20,000 agents), the Linux contenders
(Fedora 9 and openSuSE) are slightly (upto 10%+) better than Windows
2003, which performs better when accessing the first agents, but worse
when accessing higher agents.

No comments: