Applicable versionsNetSim StandardNetsim Pro

 

Applicable Releasesv12v13

NetSim has a in-built virtual traffic generator which supports different traffic models. 


Listed below are the different application methods present in the traffic generator:

  • Unicast
  • Multicast
  • Broadcast

Note that Multicast applications are limited to certain networks only. 


Listed below are the different Application models that are available:

  • CBR
  • Custom
  • Peer to Peer
  • Email
  • HTTP
  • CoAP
  • FTP
  • Video
  • Voice
  • Database
  • Sensor App
  • Emulation  
  • Interactive Gaming 

Note that some of the Application models are limited to certain network modules only. For Eg: Sensor App is limited to WSN and IoT networks.


Following are some of the Application parameters that are found in simple Application types such as Custom, CBR, FTP, Sensor_App and Database:
  • Start Time - Time at which an application starts  and generates the first packet
  • End Time - Time at which the application stops generating packets
  • Inter Arrival Time Value - Time between two packets that are generated. Can be constant or variable based on the distribution selected.
  • Inter Arrival Time Distribution - Distribution used for packet generation time.


It is based on these parameters that the packets are generated in the Application Layer.


Let us consider the following example:

Start Time: 0 Seconds
End Time: 100000 Seconds
Inter Arrival Time
Value: 1000000 micro Seconds
Distribution: CONSTANT

The function fn_NetSim_Application_StartDataAPP() (file Database_FTP_Custom.c) is called at the time as specified by the Application Parameter "Start Time" (0 in this case).

A packet is generated and a new event "event_APP_START" is added at time specified by "Start Time" (0 in this case).

In the function, fn_NetSim_Application_Run(), (file Application.c)under case TIMER_EVENT, When event_APP_START is triggred, a new event "APPLICATION_OUT_EVENT" is added at time as specified by the "event_APP_START" event time (0 in this case) with the previously generated packet.

In the function, fn_NetSim_Application_Run(), under case APPLICATION_OUT_EVENT, a new event "TRANSPORT_OUT_EVENT" is added at time as specified by the "APPLICATION_OUT_EVENT" event time (0 in this case) with the previously generated packet.

Further a call to function, fn_NetSim_Application_GenerateNextPacket() (file Application.c) is done inside the same case, where a new packet is generated and a new event "APPLICATION_OUT_EVENT" is added to send the generated packet at current event time (0 in this case) + arrival time (1 sec in this case) calculated based on the Inter arrival time "Value" and "Distribution".

This process continues, with each "APPLICATION_OUT_EVENT" event adding the next "APPLICATION_OUT_EVENT" till the Application End Time is reached or Simulation End Time is reached.


Related Articles:

https://support.tetcos.com/en/support/solutions/articles/14000041020-how-do-i-change-the-payload-of-a-packet-in-netsim-

https://support.tetcos.com/en/support/solutions/articles/14000063499-what-is-the-impact-of-application-traffic-packet-generation-rate-on-performance-metrics-

https://support.tetcos.com/en/support/solutions/articles/14000085089-how-to-read-the-payload-from-a-file-in-the-application-layer-