LEARNING TCP PROTOCOL FUNDAMENTALS USING INNOVATIVE TCP FLOW TOOLBOX
1 Ghent University - iMinds (BELGIUM)
2 Ghent University (BELGIUM)
About this paper:
Appears in:
ICERI2015 Proceedings
Publication year: 2015
Pages: 6731-6737
ISBN: 978-84-608-2657-6
ISSN: 2340-1095
Conference name: 8th International Conference of Education, Research and Innovation
Dates: 18-20 November, 2015
Location: Seville, Spain
Abstract:
Computer networking is often included as a subject in computer science, electronics, and engineering courses because computer networks are a fundamental component of information technology systems today. As the subject of computer networking is enormously complex, involving many concepts, protocols, and technologies that are woven together in an intricate manner, motivating students to learn computer networking concepts is often difficult because many students find the subject too technical.
The Transmission Control Protocol (TCP) is a critically important part of computer networks due to its prominent role. Unfortunately, it is also a fairly complicated protocol, with a lot of important concepts and mechanisms to understand. TCP provides an effective abstraction of a reliable network running over an unreliable channel, hiding most of the complexity of network communication from our applications: retransmission of lost data, in-order delivery, congestion control and avoidance, data integrity, and more. As a result, TCP is now thé protocol of choice for many of the most popular applications: World Wide Web, email, file transfers, and many others. Because of this, understanding the core mechanisms of TCP is essential knowledge.
As understanding of network protocols can be greatly deepened by seeing them in action, we present in this paper a web-based TCP flow toolbox to engage students in an active fashion towards “learning by doing”. Whereas interactive Java applets or traditional Wireshark assignments enable students to observe the sequence of messages exchanged between two protocol entities, the presented toolbox allows actively drawing individual packet exchanges using time-sequence diagrams in order to learn the effects of slow start and congestion control, immediate versus delayed acknowledgment, flow control, processing delays, and packets having delay or getting lost. By using these time-sequence diagrams, students can visualize how entities communicate with one another and interactively draw by using drag and drop the sequence of messages exchanged between the entities needed to carry out the TCP functionality of different specific scenarios.
By configuring TCP parameters in the toolbox - for example, checking immediate or delayed acknowledgement, defining which packet gets lost or delayed, etc. - lecturers can easily create new exercises. The TCP flow toolbox can automatically correct the TCP flows at the end of an exercise, or can be used by the student for interactive self-study by receiving step by step feedback during drawing of the TCP messages. Auto-correction can also be turned off to use the toolbox for evaluation purposes.
The TCP flow toolbox is the first and unique in its kind, and complements traditional laboratory exercises where students learn socket programming, Wireshark, DNS configuration, TCP/IP configuration, setting up a customized network, or firewall configuration. Today, no interactive learning material exists to learn the inner working of the complex TCP protocol. Due to its web-based implementation and step by step feedback modus, the toolbox can also be used in e-learning and blended learning settings. By adding learning analytics and collecting data from the learning behavior of the students, the lecturer can easily monitor the progress of his students and use this to attune the content of his classes to the difficulties experienced by the students.Keywords:
Advanced classroom applications, Learning technology, Computer networking, TCP, Blended learning.