next up previous contents index
Next: 10. CONCLUSION Up: 9. APPLICATIONS Previous: 9.4 Simulation of Software   Contents   Index

9.5 Simulation of TCP

Shah Asaduzzaman and Zaki Hasnain Patel have built a TCP model for SVM. This model simulates communication via the TCP network protocol.

Figure 9.3: The TCP system
Image tcpiptotalsystem

The communication process of the system is shown in Figure 9.3. There are 6 parts in the system:

Figure 9.4: Overview of the TCP simulator
Image tcpip_statechart-top

Each part of the system is modeled with a DCharts orthogonal component. The whole system is a combination of those orthogonal components by means of importation (Figure 9.4).

Figure 9.5: The submodel of the client application
Image tcpip_statechart-clientapp

Figure 9.6: The submodel of the TCP driver (for both client side and server side)
Image tcpip_statechart-tcpdriver

Figure 9.7: The ActiveClose state of the TCP driver
Image tcpip_statechart-tcpdriver-activeclose

Figure 9.8: The PassiveClose state of the TCP driver
Image tcpip_statechart-tcpdriver-passiveclose

Figure 9.9: The Established state of the TCP driver
Image tcpip_statechart-tcpdriver-established

Figure 9.10: The submodel of the communication channel
Image tcpip_statechart-channel

Figure 9.11: The submodel of the server application
Image tcpip_statechart-ServerApp

The 6 parts of the system is modeled with submodels imported into the total system:

Figure 9.12: The virtual-time version of the communication channel
Image tcpip_statechart-channel2

The channel in Figure 9.10 uses the $after$ special event to simulate delay in the network and the time interval between two subsequent inquiries to the buffer. As a result, this model is a real-time model. To convert it into a virtual-time model, Shah Asaduzzaman and Zaki Hasnain Patel have provided another version of the channel submodel Channel2 (Figure 9.12). The clock component is imported as a top-level orthogonal component in the system. The new data channel schedules events by sending the Schedule event to the clock component. When the virtual time becomes equal to the scheduled time, the clock component sends back a SchedulerNotify event. (The schedule event and the notify event discussed in section 9.2 are renamed to Schedule and SchedulerNotify, respectively.)

Figure 9.13: The plot of the simulation result of the TCP model
Image tcpip_graphical-output

The results of the simulation are gathered and plotted in Figure 9.13. For more information about the TCP model, the readers are referred to Shah Asaduzzaman's on-line report for the Modeling and Simulation course at McGill University:

http://www.cs.mcgill.ca/~asad/archive/project-522/


next up previous contents index
Next: 10. CONCLUSION Up: 9. APPLICATIONS Previous: 9.4 Simulation of Software   Contents   Index
Thomas Huining Feng 2004-04-28