Finally, after years of working with network programming, I came to realize that 80% of all network programming problems were not programming problems at all, but were from a lack of understanding of how the protocols operate.
I also realized that (there) were numerous publicly-available tools out there that aid in understanding the protocols and anyone could use them, when shown how.
Lab operation mechanism
This guide is based on a lab course offered at Polytechnic University, Brooklyn, New York, USA. The course personnel were a faculty member who delivered lectures on TCP/IP protocols and two lab instructors who were responsible for the setup and maintenance of the lab, and assisting students during experiments. Each experiment, consisting of the exercises in one chapter of this book, typically took the students two to three hours to complete.
Due to the limitation of space and equipment, the whole class was divided into small groups of eight (i.e., the number of workstations in the lab). The groups were scheduled to use the lab in different time slots. In the labs, each student was assigned a workstation and was required to perform the experiments independently. If required, two or more students could share a workstation and perform the experiments together.