In today’s scenario many networked applications run on our smartphones. These applications interact with network components over public internet. For some of the applications like video applications, performance and hence the user experience depends upon the performance of the network connectivity.
The various parameters which characterise the quality of the network connectivity are as follows:
- Bandwidth
- Packet Delay / Latency
- Packet Loss
- Packet jitter (variable delay)
These characteristics differ for different types of underlying technology providing network connectivity. Even for a single technology, these network parameters change with time and at different locations depending upon the resources being used by the ISP providing the network connectivity.
Since the network connectivity is not controlled by application provider, application provider needs to test its application performance over different network conditions to ensure that application is usable under different scenarios in the field.
Network condition simulation aims at simulating the real-life value of these parameters in lab environment during testing.
Features of Network Condition Simulator:
Salient features of the network condition simulator are as follows:
- Linux and python-based Network Simulator
- Simulation of network condition in lab environment for Network conditions like bandwidth, delay, packet loss
- Provides capability to automate the network impairments to be introduced in the network at specific intervals of time (using the JSON file).
- Can be used to manually introduce a specific impairment by passing network parameters using a command line interface
- Ability to degrade Bandwidth, introduce delays and packet loss in the data over the network interface in a time-varying manner
- Various network profiles like Drop Profile, Ramp up Profile, Oscillating Profile
- Support for hand-crafted as well as “recorded” profiles
- While simulating the network conditions the simulator logs all the impairments being introduced. During the Post processing, this log serves for correlating the impairment and the network traffic capture for the Player and analysing the Player performance