Will the Transport Protocols work as per your Imagination and theoretical Expectation?
A poor student wants to know the answer to the above question and started to do some experiments on it.
The Experimental Network Scenario
The following is a small experiment that was done by a poor student on a wired network to understand the performance of three transport layer protocols for a VoIP application. This simulation was done on a dumbbell topology to realize the congestion at bottlenecks. Along with VoIP traffic, the student simulated mild background traffic in this simulation to mimic the real-world conditions.
The VoIP streams Under Low Background Traffic
The VoIP traffic is shown in Blue Packets
The Low Background traffic is shown in Brown Packets
The Student’s Expectations and Imagination on Simulation result :
Ø Along with that student, if you will see the following topology then you may have your own expectations of the result.
Ø Of course, as we know, SCTP is designed for providing better performance under VoIP like real-time communication scenarios.
Ø And as a “Network” professional, one may say that SCTP will perform a little bit better than TCP
Ø And we already know that UDP is unreliable so that TCP was conceived to provide better end to end delivery.
Ø And as a “Network” professional, one may say that UDP will perform poorly than TCP as well as SCTP.
The Actual Simulation Results :
Let us do a preliminary or elementary or simple analysis of the trace file outputs.
If one looks at the results of this primitive form of analysis, then definitely it will look very strange or erroneous. So that a “Network Expert” may simply say that the simulation setup was wrong or the simulation script itself may be wrong – or at least the trace analysis was wrongly done.
But the fact is, nothing is wrong (except our ‘theoretical’ expectation and imagination)
The following graph shows the comparison of sent bytes over time while using three different transport protocols. As shown in the graphs, UDP was able to transmit many packets since it doesn’t need any feedback mechanism or acknowledgement mechanism which may cause the delay in sending packets. So UDP will try to send as many packets as possible.
Since in TCP as well as in SCTP, there will be some kind of rate control mechanism implemented. So the packet transmission will be controlled by the acknowledgement mechanism. TCP and SCTP will try to use the bandwidth in a very fair manner so they are not sending too many packets as in the case of UDP.
Since UDP was able to send many packets, it was also capable of receiving much since there was not much congestion in the network (or the network is not under overloaded condition). The following graphs show the total received packets over time in three cases.
Since UDP was able to send many packets, there was a chance for a lot of packet drops as well as the error (due to collision). Since UDP is sending many packets, the queues in the intermediate nodes/routers will get filled up and possibly drop the packets due to queue overhead. The following graphs show the total dropped packets over time in three cases.
As far as this network scenario is concerned, more throughput was achieved in the case of UDP since UDP was able to send more packets while comparing with TCP and SCTP.
During the beginning(below 3 seconds), there was low traffic and at this point, TCP was better than SCTP.
But during medium traffic load (3 to 8 seconds), SCTP provided better throughput than TCP.
But during high traffic ( after 8th second), again TCP provided better throughput than SCTP
Ok. The student who did this experiment now understands that what he achieved is not by accident or by error. But he will need some support for justifying his results. Because even though what he got is real, people will not accept it without any proof from previous work.
Searching for Supporting Documents to Justify the Results :
So that, the poor student searched the internet for such support and finally found a paper in which the authors arrived at more or less the same results. Now he convinced himself and others and concluded his experiments.
CONCURRENCY AND COMPUTATION: PRACTICE AND EXPERIENCE 2007;
Published online on 3 April 2007 in Wiley Inter-Science
(The following may be expired links by now)
www.interscience.wiley.com).DOI:10.1002/cpe.1159
http://wpage.unina.it/alberto/papers/wiley_sctp_from_interscience.pdf
The Unexpected Conclusion
The results from the above-mentioned paper show that UDP, as well as TCP, will perform better than SCTP with respect to some metrics (under some specific conditions). The Results arrived by our poor student’s experiment also proves the same. So this experiment and results obviously show that the results of a network simulation mostly will not be the same as our (wrong) theoretical expectation and imagination.