Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

NS3 and Network Simulation

  1. Aug 18, 2014 #1
    Hello guys i want to compose a code (in C++) for Ns3 to simulate the fuctionality of sliding window , maybe can help me somebody!!!
  2. jcsd
  3. Aug 19, 2014 #2
    NS3 is a network simulator that works with C++. I have never used it before.
    Sliding window can be used in a network protocol for dealing with delayed packets that need to be presented to the application in the order sent.

    So tell me about Ns3. Won't you have to implement the a version of the sliding window algorithm/protocol to have Ns3 simulate it?
  4. Aug 19, 2014 #3
    Sliding window Simulate In Ns3

    Mrs Scott Thank u for immediately response in my answer, i installed Ns3 in my computer is network simulator, now i must to compose a sliding window code to simulate this in Ns3 and record the measurements of delay and throughput, sliding window operation you can find in this link http://en.wikipedia.org/wiki/Sliding_window_protocol.
  5. Aug 20, 2014 #4
    I think I'm catching on to your situation. There seems to be two possible issues.

    First: I'm guessing that you have done some C++ coding before - perhaps as part of a college course. But this is the first time you've had to work with a package like Ns3 - where some investigation is needed before you even know where your code goes.

    What you need to do is:
    1) Get any simulation working. Just so you know what to expect when things are working.
    2) Build the sample code and get it working. Almost any package of this sort will have example code - probably supporting TCP-IP or a variant. During the development of Ns3, test cases needed to be developed to verify that Ns3 worked. Those test cases are almost always included as part of the package - in the form of sample code.
    3) Make a copy of the sample code and make some small change - build it - run it. This is the equivalent of the "Hello World" exercise. Once you have accomplished this, you have a minimal understanding of the build and run process.

    Second: It's not clear from your post whether you understand the "Sliding Window" method. In TCP, packets are numbered. On the receiving side, the packets need to be buffered because they may not be arriving in the correct order. So if packets 1, 3, 4, 8, 9, and 10 have been received, packet 1 can be passed on, but the other packets (3, 5, 8, 9, and 10) need to be held until packet 2 arrives. So packet 1 will be acknowledged and the retransmission of packet 2 will be arranged.

    Let's say a sliding window of 8 packets is established. When the connection is first established, the sender can send packets 1 through 8 - but no more. The receiver might then receive 1, 3, 4, and 8. And would immediately acknowledge that packet 1 has been received. The receiver, on learning that packet 1 had been received, would move his sliding window from 1-8 to 2-9, and would then send packet 9. The missing packet 2 would be negotiated in the same way as before.

    BTW: I'm a Mr, not a Mrs. But just call me Scott or .Scott.
  6. Sep 22, 2014 #5
    Hello guys,

    Can you please compose code of Sliding Window for NS-3? Is there any cource code available in Internet?

    Thanks in advance
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook