How to simulate realistic TCP traffic in OMNeT++?

1,397 views
Skip to first unread message

Tushar Mathur

unread,
Aug 19, 2015, 6:50:20 PM8/19/15
to OMNeT++ Users

I want to simulate TCP traffic between a source and destination pair, using OMNeT++, such that:

  1. 1. there is a periodic transmission of a 2GB file (every 1.5-2.0 second, as allowed by automatic TCP congestion mechanism)

  2. 2. the traffic being simulated must be permitted to grow with the TCP congestion window dominating its bit-rate. The maximum bit-rate must be limited by the link bandwidth

  3. 3. as soon as the file is completely transmitted, automatically restart the transmission of next 2GB file

  4. 4. calculate average bandwidth consumption on the link

Is there any module or feature which supports this functionality?


I have tried to use NS3 for this scenario but it did not have a method to automatically restart the application once the first transmission is completed.


Just to be clear, I haven't used OMNeT++ before.


I would appreciate it if  some expert can answer this problem.


Thanks,

-Tushar

David van Wyk

unread,
Aug 20, 2015, 3:29:00 AM8/20/15
to omn...@googlegroups.com
Hi Tushar,

I don't know if you have looked at it yet, but your best bet for accomplishing this will probably be with something like the INET (https://inet.omnetpp.org/) framework. That's at least a good place to start.

I would also suggest running through the INET manual as this gives a good overview of the congestion control and how to use it.

Note, I'm no expert at OMNET, just busy working on vaguely the same type of problem, and INET is doing the trick for me.

Regards
David

Edit: https://www.youtube.com/watch?v=-U95qOpYsLQ is a really nice YoutTube video to get you started in INET with TCP. 
https://www.youtube.com/watch?v=m2n5vZQ4030&spfreload=1 is a good example of how the congestion window works.

note: in these examples an older version of INET and OMNET are being used, so just recheck the syntaxes in the documentation.

Tushar Mathur

unread,
Aug 20, 2015, 10:26:47 AM8/20/15
to OMNeT++ Users
Hey David,

Thanks for the pointers. How are you achieving the periodic bursts of TCP traffic generation? Is there a traffic generation application.

I knew INET framework would be a suitable framework for this problem from the literature search I did earlier.

All the information you shared is helpful. Thanks. 

Thanks for the help!
-Tushar

David van Wyk

unread,
Aug 21, 2015, 2:06:32 AM8/21/15
to OMNeT++ Users
While I haven't looked at burst transmission in detail yet, I would assume that the sendScript parameter of the TCP session app would be able to do that.

Tushar Mathur

unread,
Aug 24, 2015, 3:19:02 PM8/24/15
to OMNeT++ Users
Thanks, David!

chitsu...@gmail.com

unread,
Sep 24, 2015, 12:53:33 AM9/24/15
to OMNeT++ Users
I'm also a beginner of OMNeT++
Do u see
In INET framework > inet/example/inet/TCPclientserver.ned
open it and then change parameters.

Mathur, Tushar

unread,
Sep 28, 2015, 2:42:04 PM9/28/15
to omn...@googlegroups.com
Depends on what you want to do. I found out a lot of examples on TCP. There are few different TCP applications which you can use.

--
You received this message because you are subscribed to a topic in the Google Groups "OMNeT++ Users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/omnetpp/_aPw-7VBERg/unsubscribe.
To unsubscribe from this group and all its topics, send an email to omnetpp+u...@googlegroups.com.
Visit this group at http://groups.google.com/group/omnetpp.
For more options, visit https://groups.google.com/d/optout.

Reply all
Reply to author
Forward
0 new messages