Getting started

Programming computer interactions on the network is a fun but challenging task. Many underlying procedures must be executed, and several data points must be moved around for your application to deliver a message to another computer. Understanding everything that goes under the socket interface might be too much for a bachelor-level course, thus, we are focusing on application-layer development. To start, the following sections of the manual will introduce you to the basics of socket programming and the low-level concepts required to interact with the socket abstraction. We also provide a very basic Python guide to facilitate the development of the assignments.

In the unlikely case that you have not followed the course material yet, it is important to mention that the following resource is not a substitute for the knowledge gained via the textbook, lectures, or tutorials. Many concepts related to the layered networking architecture will come into play during the lab, and we expect you to be able to put the theory into practice. If you are up-to-date with the course material, the reference documentation serves as a handbook for solving the assignments.

Last updated