doi:10.1016/j.peva.2004.10.012
Copyright © 2004 Elsevier B.V. All rights reserved.
Performance evaluation of an open distributed platform for realistic traffic generation
Dipartimento di Informatica e Sistemistica, Universitá di Napoli “Federico II”, Via Claudio 21, 80125 Napoli, Italy
Available online 16 December 2004.
Abstract
Network researchers have dedicated a notable part of their efforts to the area of modeling traffic and to the implementation of efficient traffic generators. We feel that there is a strong demand for traffic generators capable to reproduce realistic traffic patterns according to theoretical models and at the same time with high performance. This work presents an open distributed platform for traffic generation that we called distributed internet traffic generator (D-ITG), capable of producing traffic (network, transport and application layer) at packet level and of accurately replicating appropriate stochastic processes for both inter departure time (IDT) and packet size (PS) random variables. We implemented two different versions of our distributed generator. In the first one, a log server is in charge of recording the information transmitted by senders and receivers and these communications are based either on TCP or UDP. In the other one, senders and receivers make use of the MPI library. In this work a complete performance comparison among the centralized version and the two distributed versions of D-ITG is presented.
Keywords: Distributed network traffic generator; Network analysis; Performance evaluation; MPI
Fig. 1. Telnet packet size distribution.
Fig. 2. Example of FTP session.
Fig. 3. Time series of entire 2 h VBR video.
Fig. 4. D-ITG platform architecture.
Fig. 5. Data rate analysis.
Fig. 6. Architecture of D-ITG with log server.
Fig. 7. ITGSend maximum data rate analysis. (a) Maximum data rate for the D-ITG sender; (b) loss rate in the generation process.
Fig. 8. Network scenario for ITG-LS TCP implementation.
Fig. 9. MPI D-ITG architecture.
Fig. 10. ITGSend maximum data rate analysis. (a) Maximum data rate for the D-ITG receiver; (b) loss rate in the receiving process.
Fig. 11. Testbed architecture.
Fig. 12. Resulting plots of TCP generation with IDT = Pareto and PS = constant (window size of 1 s).
Fig. 13. Output results of TCP generation with IDT = Pareto and PS = constant.
Fig. 14. Ethereal snapshot.
Fig. 16. Poisson packet size trend (D-ITG output).
Fig. 17. TCP traffic using uniformly distributed PS.
Fig. 18. TCP mcalc snapshot.
Fig. 19. UDP video traffic (D-ITG output).
Fig. 20. Two hours of telnet traffic.
Fig. 22. Mcalc telnet output.
Fig. 23. D-ITG telnet PS.
Fig. 24. Mcalc VoIP output. (a) Mcalc VoIP output (Codec G.711 with one voice sample per packet and without VAD); (b) mcalc VoIP output (Codec G.711 with one voice sample per packet and with VAD); (c) mcalc VoIP output (Codec G.711 with two voice samples per packet and without VAD); (d) mcalc VoIP output (Codec G.729 with two voice samples per packet and without VAD); (e) mcalc VoIP output (Codec G.729 with three voice samples per packet and without VAD); (f) mcalc VoIP output (Codec G.723.1 with one voice sample per packet and without VAD).
Fig. 25. Sender buffer size analysis—data rate (c=512; t=60 s): this figure depicts the packet rate achieved by the different implementations of ITGSend as a function of the required packet rate C, for different values of the log buffer size D. The achieved maximum packet rate grows as D increases. For every implementation, it is possible to determine an upper bound for the maximum packet rate. ITG-CV achieves the smallest upper bound (about 28,000 pkt/s when D is at least 30) while the other three implementations perform better (about 30,000 pkt/s when D is at least 40).
Fig. 26. Sender buffer analysis (c=512; t=60 s): this figure shows the percentage of packets the sender is not able to generate as a function of C, for different values of D. ITG-LS and ITG-MPI exhibit a similar behavior (a percentage error smaller than 2% for C<30,000 and D=40) and perform better than ITG-CV. In particular, it is possible to note that ITG-MPI and the UDP version of ITG-LS perform slightly better than the TCP version of ITG-LS (a percentage error almost null for C=30,000 and D=40 against the percentage error of 1.5% achieved by the TCP version of ITG-Log).
Fig. 27. Sender packet size analysis (C=26,000 for ITG, C=28,000 for ITG-LS and ITG-MPI; t=60 s): this figure illustrates the percentage error as a function of c; for all the implementations of D-ITG, the generation error is null for c<1024. For values above this threshold, we can observe a considerable packet loss.
Fig. 28. Sender max data rate analysis (c=1024; D=40): this figure depicts the generated data rate as a function of C, while D and c are equal to their optimal values. For all the implementations of D-ITG, it is possible to determine an upper bound to the generation rate. The smallest upper bound is achieved by ITG-CV and is about 218,500 Kbps. The other implementations perform similarly, having a maximum data rate equal to about 230,000 Kbps (that is, 5% greater).
Fig. 29. Sender max data rate analysis (c=1024; D=40): this figure shows the percentage generation error for the three implementations of D-ITG. We can observe that only ITG-MPI and the UDP version of ITG-LS achieve a generation error smaller than 5% when the expected packet rate is 300,000 pkt/s (which corresponds to an actual data rate of 245,760 kbps).
Fig. 30. Receiver buffer size analysis (c=512; t=60 s): this figure represents the number of packets received by the different implementations of ITGRecv as a function of C, while increasing D. The maximum packet rate increases as D grows. For all the implementations, it is possible to calculate an upper bound. This value is similar for all the component of D-ITG and is equal to 22,000 pkt/s.
Fig. 31. Receiver buffer analysis (c=512; t=60 s): this figure illustrates the percentage of lost packets as a function of C for different values of D. The different implementations of D-ITG exhibit a similar behavior for C<22,000.
Fig. 32. Receiver packet size analysis (C=20,000; t=60 s): this figure shows the percentage error (percentage of packets not received) as a function of c. For all the implementations of D-ITG, the percentage error is null for c<1024. For values above this threshold, we can observe a considerable packet loss.
Fig. 33. Receiver max data rate analysis (c=1024; D=40): this figure depicts the received data rate as a function of C, while D and c are equal to their optimal values. For all the implementations of D-ITG, it is possible to determine an upper bound to the received rate. The smallest value is achieved by ITG-CV and is about 165,000 Kbps. The two versions of ITG-LS and ITG-MPI exhibit a similar behavior and their upper bound is about 180,000 Kbps. The gain achieved with respect to ITG-CV is about 10%.
Fig. 34. Receiver max data rate analysis (c=1024; D=40): this figure shows the percentage of lost packets for the three implementations of D-ITG. The two versions of ITG-LS and ITG-MPI exhibit a null error rate for C<22,000. ITG-LS presents a loss rate of 7% for C=22,000. For C above this value, the error rate grows, but it is still below 8% for C=24,000 for the two versions of ITG-LS.
Table 1.

Table 2.
Hardware characteristics


Corresponding author. Tel.: +39 081 7683825; fax: +39 081 7683816.