COMPUTER NETWORKS AND LAB.
The aim of the course COMPUTER NETWORKS AND LABORATORY is to provide the basic knowledge required for proper design, installation, configuration, management and use of Computer Networks. To this end, after a brief introduction to the basic principles of telecommunications, and a broad presentation of the architectural models of computer networks, the course provides a detailed discussion of protocols and services of TCP/IP networks, conducted according to the well-known ISO/OSI model. For a better understanding of the discussed issues, the course also includes laboratory activities aimed at exemplifying, through important case studies, the adopted technological solutions and to provide basic knowledge about the techniques as well as the tools currently used for the development of network applications.
Knowledge and understanding: The student must demonstrate the knowledge and understanding of the theoretical and practical aspects of network infrastructures, the possible limitations that these aspects bring about the services they offer, with particular regard to modern programming paradigms, development environments and SW tools necessary for the development of efficient network applications.
Applying knowledge and understanding: The student must demonstrate to be able to use the acquired knowledge to correctly identify and produce solutions to real-world problems often found in the management/use of computer networks.
Making judgements: In addition to being able to independently design and implement network applications (client/server, peer-to-peer, etc.), the student must also be able to evaluate and validate their effectiveness.
Communication skills: The student must be able to participate actively in workgroups both in design/management activities and in the deployment/testing/documentation of network applications. In particular, with reference to the ability to write an appropriate documentation, it is crucial to know the correct technical terminology used in computer networks.
Learning skills: The student must be able to update and deepen his/her knowledge by accessing sources of information, documentation and software that are also present on the Internet, as well as stay adjourned about HW and SW technology innovations of computer networks.
The student must have adequate knowledge of the topics covered in the courses of Computer Architecture and Laboratory, Programming I and Programming Laboratory 1, Operating Systems and Laboratory.
The course provides the necessary basic knowledge for a correct design, installation, configuration and management of computer network. After a short introduction to the fundamentals of telecommunications, the architectural models of computer networks are analysed in depth following the well known ISO/OSI model. Particular attention is devoted to protocols and services of modern TCP/IP networks and to the development of network programming. The course provides the analysis of actual use cases.
Traditional teaching in the presence and teaching in a suitable computing lab to analyze and practice with the architectures and network programming.
ANDREW S. TANENBAUM, “Reti di Calcolatori” (consigliato).
W. RICHARD STEVENS, BILL FENNER, ANDREW M. RUDOFF, “UNIX® Network Programming,
Volume 1, 3rd ed.: The Sockets Networking API”, Addison Wesley Professional, 2003.
RICHARD W. STEVENS, “TCP/IP illustrated, Vol. 1: The protocols”, Addison-Wesley (to consult).
KUROSE, ROSS, “Internet e Reti di Calcolatori”, McGraw Hill, 2001 (to consult).
BEHROUZ FOROUZAN, “Reti di Calcolatori e Internet”, McGraw-Hill (to consult).
The assessment of the knowledge consists in a final exam that quantifies the level of achievement with respect to the goals previously indicated.
The verification procedure, as indicated on the e-learning platform of the Department of Science and Technology, provides two distinct parts. First, the student presents/discusses a self-developed project in which the ability to master the network programming technique is evaluated. In the second part, he/she takes an oral exam with the aim of assessing the competence about network infrastructures both from a HW and SW point of view.
Lectures are in Italian. The professor is fluent in English and is available to interact with students in English, also during the examination.