Overview

IPNetSim™ emulates a bidirectional WAN IP Link with a 10 Gbps or a 10/100/1000 Mbps full duplex link. For each direction, incoming traffic can be identified into separate user defined streams (up to 16 streams for 1 Gbps pipe and up to 4 streams for 10 Gbps pipe). These user defined streams can be modified to simulate network impairments.

IPNetSim™ comprises of 4 ports, of which 2 ports support 10/100/1000 Mbps in either Electrical or Optical mode, emulating a 1Gbps full duplex pipe. The optical mode supports only 1000 Mbps using SFPs enabling testing on optical fiber. The other two ports on the unit support 10 Gbps using 10 Gbps SFP+s.

IPNetSim™ appliance is available with additional licenses for 1Gbps/10Gbps ports.

Working Principle

IPNetSim™ is connected to the 2 end points of a WAN link. It can be configured to act either as a transparent bidirectional Ethernet link or a simple Ethernet bridge between 2 end points. The links are emulated between Port 1 (P1) and Port 2 (P2). IPNetSim™ bandwidth can be controlled to simulate various WAN link speeds (RS232/DSL/Modem/T1/E1/T3/E3 etc.).

P1 -> P2 is one link and in the reverse direction, i.e., P2 -> P1 forms the other link. By default, P1 and P2 work in pass-through mode, and pass all frames across to the other port. Frames arriving at P1 are carried over to P2 and frames arriving at P2 are carried over to P1.

Transparent Bidirectional Link (P1-P2)/(P2-P1)

In each direction, user can define streams (based on various header fields) to classify traffic into multiple streams. For each stream, a different set of WAN Emulation parameters can be applied, a single IPNetSim™ can emulate different WAN scenarios like Head Office to Data Center, Head Office to Branch Office etc.

IPNetSim™ (Multi-Stream WAN Emulator) connecting 2 network end points

WAN Emulation includes various real world impairment settings such as Bandwidth, Latency, Packet-Loss, Error Insertion, Reordering, and Duplication, to check the performance of end equipment to real world impairments. These settings can be applied for the selected 16 unique streams on 1Gbps link and 4 unique streams on 10Gbps link independently in each direction

Traffic (bidirectional streams) can be processed at wirespeed (1Gbps or 10Gbps). Bidirectional streams can be configured as a symmetrical (identical WAN impairments in both directions) or asymmetrical (different WAN impairments in each direction). WAN impairments can be configured independently for each stream. When WAN Emulation is started by the user, the impairments are introduced into the traffic as shown below.

Impairments over P1->P2 and P2->P1 Link

Stream Definition

As depicted in the figure, IPNetSim™ includes a powerful “Stream Definition” feature that permits user to configure MAC, IP, VLAN, MPLS, UDP header fields to classify the traffic flows.

There are two actions for the stream definitions:

Stream: Packets matching the stream definition are sent as specified stream.

Bypass: Packets not matching the stream definitions are forwarded without emulation.

For each stream, user can define the stream parameters separately for each direction (P1 ->P2 and P1 <- P2). Streams can be defined in two modes – Packet Mode or Raw Mode.

In Raw mode, user can select a 120 byte window anywhere within the frame (starting from MAC Destination Address field till the end of Payload) to compare and identify the stream using raw hex data (120 bytes) and an offset. User can also define a corresponding 120 byte Hex mask, so that each bit can be set to ‘Compare’ or ‘don’t care’ conditions. For each stream definition, offset can be set to any byte within the packet (from 0 to 2047) which gives flexibility to define any fields within any protocol headers, and even the payload

In Packet mode, each field can be compared against either a fixed value, a range of values or ANY value. Various packet field values can be edited directly as per the layer stack (L2/L3/L4) selected. Streams can be defined based on various fields like Source/Destination MAC Address, VLAN Id, MPLS Label, Source/Destination IPv4 Address, Source/Destination UDP ports etc.

Stream Throughput Graph

The real-time Throughput of each stream, plotted as rate against time, is displayed in the form of a line graph. All the streams (16 streams on 1G ports and 4 streams on 10G ports) throughput can be viewed together, or user can select or deselect each stream to view separately. Graphing is supported from 5 seconds up to 7 days.

IPNetSim™ supports user defined streams to classify the traffic into up to 4 streams (for 10Gigabit link) and 16 streams (for 1Gigabit link), and applying separate impairments for each stream independently, thus emulating multiple WAN links within a single device. It also supports bi-directional full wirespeed emulation i.e., approximately 30 million packets/sec in each direction aggregating to a total of 60 million packets/sec.

IPNetSim™ has the capability to better model real-world impairments such as Packet Loss, Packet Reordering, Packet Duplication, and Packet Error Insertion with Periodic and Random options, which are briefly discussed below:

Bidirectional WAN link Emulation

Packet Loss Impairment

Screen shot of Packet Loss model configurations

Packet Loss can be introduced either as a rate as well as Manually. For both rate and manual, user can choose to drop a single packet or a burst of packets, at a time.

Rate: User can configure the Loss rate, and packets will be dropped at that rate. User can choose a periodic loss, where the packet drops will be regular and predictable, or random packet loss, where packets will be dropped randomly. For both periodic as well as random packet loss, the overall packet loss rate is maintained, but only the way the packets selected for dropping is changed

Manual Drop: This allows user to manually drop either a single packet or burst of packets at run time. This drop will be in addition to the rate loss, if active.

Single vs Burst Drop: In Single drop, only one packet will be dropped at a time. However, Real world Packet Loss is many times bursty in nature i.e. a bunch of consecutive packets are lost. This allows user to drop a burst of packets at a time instead of a single packet i.e. a bunch of consecutive packets are lost. To emulate such conditions, Burst Packet Loss can be configured

Packet Reordering

Screen shot of Packet Reorder model configurations

Packet reordering model includes Periodic and Random Packet Reordering options. In Periodic option, the packets are reordered at constant specified rate. While in Random option, packets are randomized for reordering, but still maintain the specified Reorder rate.

Once a packet has been selected for reordering, it will be held for a certain amount of time before being reinserted into the stream. The delay can be configured in terms of time (milliseconds), or Packet offset (number of frames). During Packet offset delay, the reordered frame will be held until the configured offset frames are received, before being reinserted into the stream. The offset selected at run time will be a random value between the maximum and minimum defined value range.

The Packet Reordering model also includes Manual Packet Reorder option to reorder a packet instantaneously at run time. When selected, it will immediately reorder a single packet.

Packet Duplication

Screen shot of Packet Duplication model configurations

Packet Duplication model also includes Periodic and Random Packet Duplication options. In Periodic Duplication option, the packets are duplicated at specified rate periodically. In Random Duplication option, the selected packet is duplicated (based on the rate) randomly, but maintaining the duplication rate.

A single packet can be duplicated instantaneously at run time with Manual Packet Duplication option.

Packet Error Insertion

Screen shot of Packet Error Insertion model configurations

Packet Error Insertion model also includes Periodic and Random Packet Error Insertion options. In Periodic Error Insertion option, the start of frame and end of frame byte offsets specifies where exactly in the frame to inject errors. In the Random Error Insertion option, the packet will be randomly selected for error insertion (based on the rate), but the error insertion rate is maintained.

But in Manual Error Insertion option, error is introduced into a single packet at run time manually.

Command Line Interface (CLI)

IPNetSim™ can be configured as server-side application and on the client side, the standard TCL shell (tclsh85.exe) with IPNetSim™ specific functionalities can be used to communicate with the MAPS™ CLI Server, execute scripts, read back responses etc.