Good news!
Not so long ago (in April of this year) we released a new version of the HP network equipment simulator, available for use by everyone!
Previously, this product was known in the depths of HP as HP Simware, and was intended only for internal use. A little later, a version was released for our partners, and now it is available to the general public under a new name -
HP Network Simulator .
')
The product is based on the new network operating system,
HP Comware v7, and is designed for network modeling and exploring the user interface and functionality of the HP Comware OS.
In this article I will talk in detail about the principles of the simulator and show how you can use this tool in the work of a network engineer with specific examples.
Installing HP Network Simulator
Before installing, make sure that the machine meets the minimum requirements:
CPU ≥ 3.0 GHz
RAM ≥ 4 GB
Disk: ≥ 80 GB
OS: Windows 7 or higher
Next, download and install
Oracle VM VirtualBox version 4.2.18 or higher (I recommend using the 4.2.xx branch).
And finally, download and install the
HP Network Simulator tool for Comware7 Devices .
The installation process itself is too simple to paint, just press the Next button to achieve the desired result.
Setting and running the topology
The logic of the simulator is quite simple:
- First, in a simple text editor (aka GUI), the network topology configuration is created;
- Then, on its basis, virtual machines are automatically generated for each device;
- And in the final, these virtual machines are launched in VirtualBox.
Next we look at each step in detail.
Project configuration preparation
After starting the HP Network Simulator application, a GUI window opens with a text editor.
Click the “New” button to create a new project, the editor will immediately generate the default configuration:
It is with it that we will begin preparing our own (customized) configuration.
The simulator is based on the HP Comware OS, which operates on almost the entire HP network equipment range — switches, routers, wireless WiFi controllers, and security devices.
The simulator allows you to almost fully reproduce the interface and functions of HP switches and routers (both modular and fixed configuration).
Types of supported devices
There is no binding to specific iron models in the simulator; instead, each instance of a virtual machine can be one of the following types of devices:
Model
| Device type
| Ports
|
Routers
|
SIM1101 / SIM1201 | 32-bit / 64-bit centralized router
| • Port 1: Network management port.
• Ports 2 to 4: GE ports.
• Ports 5 to 8: Serial ports.
|
SIM1102 / SIM1202
| 32-bit / 64-bit centralized router
| • Port 1: Network management port.
• Ports 2 to 4: GE ports.
• Ports 5 to 8: POS ports.
|
SIM1103 / SIM1203
| 32-bit / 64-bit centralized router
| • Port 1: Network management port.
• Ports 2 to 4: GE ports.
• Ports 5 to 8: E1 ports.
|
SIM1104 / SIM1204
| 32-bit / 64-bit centralized router
| • Port 1: Network management port.
• Ports 2 to 3: 25-Mbps ATM ports.
• Port 4: 155-Mbps ATM port.
• Port 5: 622-Mbps ATM port.
• Port 6: ADSL ATM port.
• Port 7: G.SHDSL ATM port.
• Port 8: E1 ATM port.
|
SIM1105 / SIM1205
| 32-bit / 64-bit centralized router
| • Port 1: Network management port.
• Port 2: E3 ATM port.
• Port 3: T1 ATM port.
• Port 4: T3 ATM port.
• Port 5: ADSL 2+ port.
• Port 6: SHDSL_4WIRE ATM port.
• Port 7: SHDSL_4WIRE_BIS ATM port.
• Port 8: SHDSL_8WIRE_BIS ATM port.
|
Switches
|
SIM2101 / SIM2201
| 32-bit / 64-bit centralized switch
| • Port 1: Network management port.
• Ports 2 to 8: GE ports.
|
SIM2102 / SIM2202
| 32-bit / 64-bit centralized switch
| • Port 1: Network management port.
• Ports 2 to 4: GE ports.
• Ports 5 to 8: 10-GE ports that can operate as FC interfaces.
|
Modular routers and switches
|
SIM3101 / SIM3201 (MPU)
| 32-bit / 64-bit distributed switch or router
| • Port 1: Network management port.
• In the Comware system, the number of this port is 0.
|
SIM3111 / SIM3211 (interface card)
| 32-bit / 64-bit distributed switch or router
| • Ports 1 to 7: GE ports.
|
SIM3112 / SIM3212 (interface card)
| 32-bit / 64-bit distributed switch or router
| • Ports 1 to 3: GE ports.
• Ports 4 to 7: Serial ports.
|
SIM3113 / SIM3213 (interface card)
| 32-bit / 64-bit distributed switch or router
| • Ports 1 to 3: GE ports.
• Ports 4 to 7: POS ports.
|
SIM3114 / SIM3214 (interface card)
| 32-bit / 64-bit distributed switch or router
| • Ports 1 to 3: GE ports.
• Ports 4 to 7: E1 ports.
|
SIM3115 / SIM3215 (interface card)
| 32-bit / 64-bit distributed switch or router
| • Ports 1 to 2: 25-Mbps ATM ports.
• Port 3: 155-Mbps ATM port.
• Port 4: 622-Mbps ATM port.
• Port 5: ADSL ATM port.
• Port 6: G.SHDSL ATM port.
• Port 7: E1 ATM port.
|
SIM3116 / SIM3216 (interface card)
| 32-bit / 64-bit distributed switch or router
| • Port 1: E3 ATM port.
• Port 2: T1 ATM port.
• Port 3: T3 ATM port.
• Port 4: ADSL 2+ port.
• Port 5: SHDSL_4WIRE ATM port.
• Port 6: SHDSL_4WIRE_BIS ATM port.
• Port 7: SHDSL_8WIRE_BIS ATM port.
|
The choice of device width (32-bit or 64-bit) depends on which machine the simulator runs on. If you have a 32-bit OS, choose 32-bit device types, if the OS is 64-bit, respectively, the devices should be 64-bit.
Project Configuration Syntax
The project syntax is quite simple and should follow the following rules:
- Configuration parameters are written line by line.
- Configuration lines that define the parameters of the devices themselves are specified in the format Parameter = value . The editor supports syntax highlighting for correct parameter names (see table below).
- Configuration strings defining the parameters of connections between devices are specified in the Parameter <-> Parameter format.
- Some parameters may contain sub-parameters. Sub-parameters are separated by a colon “:”. Example - Parameter = value : Sub-parameter value ;
- Comments begin with the # character.
- Comments, blank lines, space characters and tabs are ignored and can be used to group and format the text.
Device settings
The table below describes the available device parameters in the simulator config:
device_id
| The unique device ID (1-120). Supports up to 30 devices in one project.
|
device_model
| A series of device models. Obtained from a specific model (see table above) by setting the last two digits to 0. Example - SIM11 00 .
|
board
| Uniquely identifies a specific device model or line card (for modular devices).
Supports optional sub-parameter memory-size .
The default memory size varies from 384 to 768 MB depending on the model, but it is recommended to set at least 1024 in order for all functions to work correctly (for example, a Telnet / SSH server).
For modular devices, all interface cards and MPUs are additionally listed using the slot sub-parameter.
Example:
board = slot 0: SIM3101: memory_size 768
board = slot 2: SIM3111
|
host_ip
| Optional parameter. It is required in a situation when you need to spread simulated devices to different hosts. Specifies the IP address of the host where the device virtual machine will be running.
|
Connections between devices are described in the format
device X1: [
slot Y1:]
interface Z1 <--->
device X2: [
slot Y2:]
interface Z2.
The connection of the device with the network interface of the physical host is described as follows:
device X1: [
slot Y1:]
interface Z1 <--->
host : "
NIC name "
where "
NIC name " is the name of the network interface (for example, "VirtualBox Host-Only Ethernet Adapter")
Configuration example
As an example, I used the simplest scheme of three switches connected in a ring:
We take the automatically generated “default” config as a basis and redo it as follows:
#********************************************************************* # device 1 device_id = 1 # device type is centralized switch (64-bit mode) device_model = SIM2200 # board type is switch with 8 GE ports board = SIM2202 : memory_size 1024 #********************************************************************* # device 2 device_id = 2 # device type is centralized switch (64-bit mode) device_model = SIM2200 # board type is switch with 8 GE ports board = SIM2202 : memory_size 1024 #********************************************************************* # device 3 device_id = 3 # device type is centralized switch (64-bit mode) device_model = SIM2200 # board type is switch with 8 GE ports board = SIM2202 : memory_size 1024 #********************************************************************* # connect switches in ring topology device 1 : interface 5 <---> device 2 : interface 6 device 2 : interface 5 <---> device 3 : interface 6 device 3 : interface 5 <---> device 1 : interface 6 #*********************************************************************
VM generation
To generate virtual machines from the project configuration file, click “F6” (“Run” button) and, if the syntax is correct, after some time VirtualBox starts with VMs ready for launch for each of the three switches:
VM startup
To start the simulation, we start all the VMs at once and wait for them to boot. After loading of VM we get access to CLI of our devices and we can start setup of new-made labs.
Project preparation is more complicated: MDC + IRF + control system
As I wrote earlier, the simulator supports not only the basic functions (switching, routing and various standard network services), but also the most interesting advanced technologies from the HP Networking portfolio, such as:
- N virtualization: 1 - HP IRF technology;
- Virtualization 1: N - HP MDC technology;
- Data Center Consolidation Technology for L2 - HP EVI ;
- as well as a variety of other technologies and protocols: TRILL, SPB, OSPF, BGP, IS-IS, MPLS, FC / FCoE, LACP ... and many others.
In our example, we will see the work of the MDC and IRF technologies in action. For this, I depicted the following scheme:
This scheme is based on 3 devices: a modular switch with one MPU and two line cards (
device 1 ) and two switches of a fixed configuration, interconnected onto an IRF stack (
device 2 and
device 3, respectively).
The configuration of the simulator will be as follows:
#********************************************************************* #device 1 device_id = 1 #device type is chassis device_model = SIM3200 #board slot type and memory_size board = slot 0 : SIM3201 : memory_size 1024 board = slot 2 : SIM3211 board = slot 3 : SIM3211 #********************************************************************* #device 2 device_id = 2 #device type is box device_model = SIM2200 #board type board = SIM2202 : memory_size 515 #********************************************************************* #device 3 device_id = 3 #device type is box device_model = SIM2200 #board type board = SIM2202 : memory_size 515 #********************************************************************* #connect host interface device 1 : slot 0 : interface 1 <---> host : "VirtualBox Host-Only Ethernet Adapter" device 2 : interface 1 <---> host : "VirtualBox Host-Only Ethernet Adapter" device 3 : interface 1 <---> host : "VirtualBox Host-Only Ethernet Adapter" #connect interfaces device 1 : slot 2 : interface 1 <---> device 2 : interface 2 device 1 : slot 2 : interface 2 <---> device 3 : interface 2 device 1 : slot 3 : interface 1 <---> device 2 : interface 3 device 1 : slot 3 : interface 2 <---> device 3 : interface 3 device 2 : interface 7 <---> device 3 : interface 8 device 2 : interface 8 <---> device 3 : interface 7 #*********************************************************************
SW1 Switch Configuration
Inside the modular switch SW1 we create two isolated contexts -
MDC1 and
MDC2 , which will function as completely independent logical switches.
From the admin MDC (which we get to by default) for the context of
MDC1 , the line card in the
second slot of the SW1 chassis is fully available, for the
MDC2 in the
third :
# mdc mdc1 id 2 location slot 2 mdc start allocate interface GigabitEthernet2/0/1 to GigabitEthernet2/0/7 # mdc mdc2 id 3 location slot 3 mdc start allocate interface GigabitEthernet3/0/1 to GigabitEthernet3/0/7 #
Switching between MDC is as follows:
[SW1]switchto mdc mdc1 ****************************************************************************** * Copyright (c) 2010-2014 Hewlett-Packard Development Company, LP * * Without the owner's prior written consent, * * no decompiling or reverse-engineering shall be allowed. * ****************************************************************************** <SW1-MDC1>switchback [SW1]
You can view the status of all contexts on the device as follows (from the admin MDC):
[SW1]display mdc ID Name Status 1 Admin active 2 mdc1 active 3 mdc2 active [SW1]
In this article I will not touch on the MDC technology in all its aspects, since a separate article on this topic is planned to be released soon.
After we have created the contexts we need in SW1, we need to configure their management interfaces. For all contexts of a single device, the common Management interface on the MPU is
M-Ethernet0 / 0/0 . Within each context, a management IP address is assigned on this interface:
# [SW1-M-Ethernet0/0/0]interface M-Ethernet0/0/0 [SW1-M-Ethernet0/0/0]ip address 192.168.56.11 24 # MDC1 [SW1-MDC1-M-Ethernet0/0/0]interface M-Ethernet0/0/0 [SW1-MDC1-M-Ethernet0/0/0]ip address 192.168.56.21 24 # MDC2 [SW1-MDC2-M-Ethernet0/0/0]interface M-Ethernet0/0/0 [SW1-MDC2-M-Ethernet0/0/0]ip address 192.168.56.22 24
SW2 Switch Configuration
Switch SW2 will be an IRF stack of two switches
device 2 and
device 3 . The full method of setting up IRF on the switches can be found in the
relevant manuals on our website.
We will only make sure that the IRF works correctly, and then also configure the management interface on the stack:
Configuring Management Interfaces on the IRF Stack of Switches:
# , ( Master- ) [SW2-M-Ethernet1/0/1]interface M-Ethernet1/0/1 [SW2-M-Ethernet1/0/1]ip address 192.168.56.12 24
Next, I made settings for interfaces, link aggregation, SNMP, LLDP, OSPF routing and a number of other functions, but in order to save time, I will not describe in detail their every step, all device configs can be viewed in the annexes to the article.
Configure IMC Management System
The most attentive of you may have noticed that in the simulator config I specifically indicated the following lines:
#********************************************************************* #connect host interface device 1 : slot 0 : interface 1 <---> host : "VirtualBox Host-Only Ethernet Adapter" device 2 : interface 1 <---> host : "VirtualBox Host-Only Ethernet Adapter" device 3 : interface 1 <---> host : "VirtualBox Host-Only Ethernet Adapter"
With such a simple scheme, all Management-interfaces of the simulated devices will be connected to the VirtualBox virtual adapter on the host. Thus, I will have access to these devices from my laptop, as well as from other virtual machines running in VirtualBox.
This is exactly what we need, since the plan is to put our wonderful
HP IMC management system on a separate VM and visualize the entire virtual stand topology with this system. In addition, all other interesting IMC features will be available, such as performance monitoring, configuration management, VLAN, ACL, SNMP trap collection and analysis, Syslog messages and many many more.
For reasons of saving RAM on a laptop, I chose the most minimal version of the system -
IMC Basic . You can download it
from our website and use it for free during the 60 days of the trial period.
In the case of installation in production, the system is quite demanding on server performance (especially RAM), but for test purposes, two gigabytes per VM was enough.
To install the system, I created a new VM in the same VirtualBox, installed Windows Server 2008 R2 Standard and, in fact, IMC Basic 7.0 itself.
Network settings for the VM are as follows:
This means that the IMC server will be connected to the same virtual adapter as the management interfaces of all devices, and all of them will see each other by IP.
Now it remains for the small - start IMC, start automatic discovery of devices and open a window with a network topology -
IMC Network Topology :
GNS3 integration
GNS3 is perhaps the most well-known graphical network simulator, so I decided to show how you can easily integrate the already familiar many topology engineers from GNS3 with our HP Network Simulator.
The basis for the interaction of the two simulators is the Cloud cloud in GNS3. As well as virtual machines from the HP Network Simulator are bound by their internal interfaces to the adapter “
VirtualBox Host-Only Ethernet Adapter ”, the cloud from GNS3 also connects to the network interface of this adapter. Further, Cisco / Juniper virtual devices from GNS3 together with HP devices from HP Network Simulator are connected through it.
In my example, I configured a GRE tunnel between the HP
SW2 switch stack (HP Network Simulator) and the Cisco
R1 router (GNS3), and on top of the tunnel — OSPF routing:
Device customization
Despite the fact that there is no such thing in the official documentation for the simulator, you can manually customize existing types of devices or add new ones:
Note : in the current version of the simulator, there is a limit of 8 ports per device, which is caused by the restriction of VirtualBox (no more than 8 network interfaces per VM. In the most recent version of VirtualBox, their number is increased to 36, however, the limit remains in the simulator itself). In addition, in modular devices, one of the ports is used for communication between MPUs and line cards, so the maximum number of user ports on line cards is 7.
Note 2 : 10G ports on the switches are convergent and can be configured to operate in 10G Ethernet or Fiber Channel (FC) modes.
Conclusion
The new simulator is really interesting and relatively convenient means of network modeling and is perfect for solving the following tasks:
- Training of specialists in HP network equipment and technologies;
- Creation of virtual demonstration stands and their demonstration to their customers;
- Conduct small demonstrations "in the fields";
- Checking the work of various network technologies and protocols;
- Testing functionality for HP Comware 7;
- Adaptation of engineers to the HPN command line syntax :)
- • ... and many others.
In addition, the new simulator is not picky about the resources of iron. In order to verify this, I carried out all the above-mentioned manipulations with the stands on my working laptop with an
Intel Core i5 2520M processor and only
8 GB of RAM (most of which was occupied by many third-party applications — mail, office, browsers, Skype and etc.).
I managed to run 5 instances of the devices in the simulator, as well as one virtual machine with the IMC control system, without testing the brakes.
Device configurations
Update:
official examples appeared
lab under the simulator.