Lab 2 traffic generator
This presentation is the property of its rightful owner.
Sponsored Links
1 / 70

Lab 2. Traffic Generator PowerPoint PPT Presentation


  • 92 Views
  • Uploaded on
  • Presentation posted in: General

Lab 2. Traffic Generator. Chuan- Ching Sue DCNLAB, CSIE NCKU [email protected] Outline. Recall Long-Range Dependence Initialization Experiment Requirement Basic Procedure Advance Method Pool Type Simulation Conclusion. Recall Long-range Dependence . Long-Range Dependence .

Download Presentation

Lab 2. Traffic Generator

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Lab 2 traffic generator

Lab 2. Traffic Generator

Chuan-Ching Sue

DCNLAB, CSIE NCKU

[email protected]


Outline

Outline

  • Recall Long-Range Dependence

    • Initialization

    • Experiment Requirement

    • Basic Procedure

    • Advance Method

    • Pool Type

  • Simulation

  • Conclusion


Recall long range dependence

Recall Long-range Dependence


Long range dependence

Long-Range Dependence

  • This is self-similar and long-range dependent traffic.

    • non-negligible probability

    • extremely large bursts of data (packet trains)

    • extremely long periods of silence (inter-burst gaps)

  • This traffic has bursty behavior at several timescales and most closely models the empirical traffic profiles observed in LANs.


Initialization

initialization


Experiment requirement

Experiment Requirement

  • PC client

    • Remote Desktop Connection

  • Simulation platform

    • OMNeT++ [3]

    • Xrdpserver

  • The installation of the simulation platform was introduced in the lab 1 slides.


Traffic generation model

Traffic Generation Model

  • To simulate the real traffic in OMNeT++ simulator, the traffic generator will be introduced in the following slides.


Traffic generation model1

Traffic Generation Model

  • The network traffic is aggregated by a number of sources with Pareto distributed ON/ OFF periods. [1]

Dispatcher

Figure 1. traffic is aggregated by n sources


Create testbed

Create Testbed

  • To simulate the interested traffic generation model, we create a testbed which is similar to the model.

  • Below figure is an example of the testbed.


Submodules of testbed

Submodules of Testbed

  • The Testbed for testing traffic should include

    • Source module

    • Dispatcher module

    • User module

    • Sink module

  • The following slides will introduce the procedure of creating the testbed.


Create testbed project

Create Testbed Project

  • Open OMNeT++

  • File -> New-> OMNeT++ Project


Testbed project name

Testbed Project Name

  • Input project name, we take “Traffic_Generator” as example


Initial contexts

Initial Contexts

  • Select “Empty project with src and simulations folders” for clearness


Finish creating empty project

Finish Creating Empty Project

  • The initial contents should include

    • Includes

    • src folder

    • simulations folder

    • Makefile

    • Makefle.vc


Create source

Create Source

  • Create source.ned in src folder


Select template

Select Template

  • Select “NED file with one item”


Ned component type

NED Component Type

  • Select “Simple module”


Edit source code

Edit Source Code

  • Click “Source” to edit the empty Source module.


Edit source code1

Edit Source Code

  • Write the topology property of source.

  • For example

    • Loading

    • Output


Create dispatcher

Create Dispatcher

  • Similarly, create a dispatcher module in src folder.


Initial contents select template

Initial Contents: Select Template

  • Select the “NED file with one item”


Ned component type1

NED Component Type

  • Since that there will be no other modules inside dispatcher module, we select the “Simple module” type.


Edit source code2

Edit Source Code

  • Now, an empty Dispatcher module is done.

  • Click “Source” to edit its source code.


Edit source code3

Edit Source Code

  • Write the topology property of the dispatcher.

  • For example

    • Input from source

    • Output


Create user module

Create User Module

  • Create a user module in src folder.


Initial contents select template1

Initial Contents: Select Template

  • Select “NED file with item”


Ned component type2

NED Component Type

  • Select the “Compound module”, because the user module should include the source modules and dispatcher module.


Edit the source code

Edit the source code

  • Write the user topology in the source code.

  • For example:

    • Loading

    • Number of source

    • Connection between source and dispatcher


The sink

The Sink

  • To verify the simulation result, here we use a Sink module to catch packets from the user module and pre-process data before analysis.


Create sink

Create Sink

  • As the procedure of creating the source module, we create the Sink module in src folder.

  • The Selection of initial contents is still “Simple module”.


Edit source code4

Edit Source Code

  • Since the Sink module has to catch packets from user, it should carry at least one input gate.

  • The desire time scale is also required.


Create network

Create Network

  • Now, we have all required modules. It’s time to create the network

    • In OMNeT++, a simulation must contain one network.

  • The network file should be created in the “simulations” folder.

  • Our example network file is “test_traffic.ned”.


Initial contents

Initial Contents

  • Select the “An empty network” template.

  • The empty network “Test_traffic” was created.


Edit network source code

Edit Network Source Code

  • In the Test_traffic network, there is a user which generate packet by its number of source and a sink which catch packets from user.


Traffic generator implement

Traffic Generator Implement

  • The connected configure setting in the testbedwas done.

  • Now we will begin the introduction of the generator implementation.


On off bursty traffic generator

ON / OFF Bursty Traffic Generator

  • There are two states in each source module

    • ON period state

    • OFF period state

  • There will be multiple packets generated in ON period, and the OFF period happened when the source is silence.


On off bursty traffic generator1

ON / OFF Bursty Traffic Generator

  • When the packet is generated, it will be transmit to the dispatcher immediately.

  • A traffic generator can only transmit one packet at a time.

    • Thus, if there are two or more sources generate packets, those packets will be queued at the dispatcher.


Traffic generation model example

Traffic Generation Model: Example

  • Though orange packet generated by source 2 attime t1. The source 1 has generated its first red packet before t1.

  • Thus, The orange packet should wait for the transmission of the red packet.


Traffic generation model example1

Traffic Generation Model: Example

  • Therefore, the aggregated traffic is still the bursty.

  • The dispatcher time line shows the aggregated traffic from three source.


Length of on off period

Length of ON/OFF Period

  • To represent the LRD of the real world traffic, the length of ON and OFF period should be generated by the Pareto distribution.

  • The generated number from Pareto distribution can be interpreted as the number of packets or the byte length in the ON period.

  • We call these two method

    • Packet number pool

    • Packet byte pool


Packet number pool

Packet Number Pool

  • At the end of every OFF period, the source uses a Pareto distribution to generate the number of packets in the new ON period. After that, the source use uniform(64, 1518) to generates the length for each packet, since the packet length of an Ethernet frame is between 64 and 1518 bytes.

  • The packet is generated in the period time of ON, and the period time of OFF is silence. It indicates that there is no packet generated.


Packet number pool1

Packet Number Pool

  • For example, the length of first ON and OFF period in source are 2 and 1 which indicates there are two packets will be generated in the ON period time and wait for one packet length of OFF period time.


Packet byte pool

Packet Byte Pool

  • At the end of every OFF period, the source uses a Pareto distribution to generate the byte length of ON and OFF.

  • After that, the source uses uniform(64, 1518) to decide the packet length.

  • When a source generates a packet, the remainder period length will be subtracted by the new packet length.

  • Therefore, when the remainder period length is not enough to create a single packet, the remainder period length will be reserved tothe next ON period.

    • If the remainder ON period length is ignored in every ON period, the real load will lower than the offered load.


Packet byte pool1

Packet Byte Pool

  • For example, the ON and OFF period length of source are 1100 and 600 at the first ON/OFF period.

  • The byte length of ON period is used to divide into packets.


Initialization1

Initialization

  • The self-similar traffic is constructed by several Pareto distribution sources. They must not only be random each itself, but also be random to each other.

  • Initialization is to randomize sources at beginning.


Three initialization methods

Three Initialization Methods

  • At the beginning of system, if the status of all sources is in the ON period, it could cause the high bursty and letting the simulation result is inaccurate.

  • There are three methods which distribute the ON period time of all source.

    • All sources are OFF at the beginning.

    • Some sources are initially in ON period, the percentage of ON sources is set according to the offered load. (Ex: 5% sources are ON initially at load 0.05)

    • Initially random the start of each source.[2]


All sources are off at the beginning

All Sources are OFF at The Beginning

  • All Pareto distribution sources are starting to generate packet after period time of OFF. Owing to period time of OFF in each sources are not equal, and each sources are not start in the same time.


All sources are off at the beginning cont d

All Sources are OFF at The Beginning (cont’d)

  • A big bursty comes after a period of silence.

  • Those sources are starting in OFF period time, so it has a silence period in the beginning.

  • Because those period time of OFF is not variance to much, so packets may be generated in the same time.


Part of sources are initially on

Part of Sources are Initially ON

  • Some sources are starting at ON period time. The ratio of ON and OFF is depending on the network’s load.

  • For example, If the ONU’s load is 0.05, there are 5% sources starting at ON period time.


Part of sources are initially on cont d

Part of Sources are Initially ON (cont’d)

  • Because part of sources are starting in ON period time. The big period of silence disappears, the burst is smaller than setting all source to be OFF status.


Initially random the start timing of each source cont d

Initially Random the Start Timing of Each Source (cont’d)

  • According to the period time of ON and OFF in the cycle, the start time is selected by a random distribution. It can randomize the start point of each Pareto distribution sources.


Initially random the start timing of each source cont d1

Initially Random the Start Timing of Each Source (cont’d)

  • Silence disappears, burst is smaller.

  • The start time is decided by a random distribution. Therefore, the part of Pareto distribution sources will start in ON period time and the other sources will start in OFF period time. The silence disappears in the beginning.


Drawback

Drawback

  • No matter which initialization method, there is still some bursty at the beginning. All source OFF at the beginning has the longest bursty time at the beginning.

  • The undesired burstywill result in an unsteady simulation result.

    • To make simulation result more steady, the warm-up period will be introduced in the lab 4.


Implement source

Implement Source

  • Create two files in src folder

    • Source.h

      • Declaration of source

    • Source.cc

      • Definition of source


Definition initialize example

Definition: Initialize Example


Definition handlemessage example

Definition: handleMessage Example


Objective

Objective

  • To write a LRD traffic generator and observe the number pool generated traffic

    • From three kinds of initialization method

      • All source OFF at the beginning.

      • Part of sources are initially ON, the ratio is load.

      • Initially random the start timing within an ON+OFF period of each source.


Simulation

Simulation


Initialization experiment parameters

Initialization Experiment Parameters

  • OMNeT++ 4.1 simulation time 200 seconds

  • 1 user (self-similar traffic generators)

    • 128 sources

    • 100Mbps

    • Hurst parameter = 0.8

      • α=1.4

    • load 0.5


Verify the different pool 1 ms scaling

Verify the different pool - 1 ms scaling

Number pool

Byte pool


Verify the different pool 10 ms scaling

Verify the different pool - 10 ms scaling

Number pool

Byte pool


Verify the different pool 100 ms scaling

Verify the different pool - 100 ms scaling

Number pool

Byte pool


Verify the different pool 1 s scaling

Verify the different pool - 1 s scaling

Number pool

Byte pool


Verify the different pool 10 s scaling

Verify the different pool - 10 s scaling

Number pool

Byte pool


All sources off at the beginning

All sources OFF at the beginning

  • A big bursty after a period of silence


Part of sources are initially on1

Part of sources are initially ON

  • Bursty for 0.03 sec


Initially random the start timing within an on off period of each source

Initially random the start timing within an ON+OFF period of each source

  • Silence disappears


Conclusion and reference

Conclusion and Reference


Conclusion

Conclusion

  • Without good initialization or warm up period setup, the high delay at the beginning may make the statistical average delay incorrect.


Reference

Reference

  • [1] W. Willinger, M.Taqqu, R. Sherman,and D. Wilson. “Selfsimilarity through high-variability: statistical analysis of Ethernet LAN traffic at the source level,” In Proc. ACM SIGCOMM '95, pp. 100-113, Feb 1995.

  • [2] G. Kramer, Ethernet Passive Optical Networks, McGraw-Hill Professional, ISBN: 0071445625, Publication, Mar 2005.

  • [3] “OMNeT++”, [Online]. Available: http://www.omnetpp.org


  • Login