Il corso di Reti di Calcolatori intende fornire le conoscenze di base relative all'organizzazione e funzionamento di una rete di calcolatori, evidenziando i vantaggi che hanno gli approcci orientati alle reti in un sistema informatico complesso. Gli studenti in grado di capire cosa è una rete di calcolatori, come viene strutturata a livelli e come questi interagiscono tra loro.
Prerequisiti
È richiesta la conoscenza dei principi fondamentali della programmazione.
Metodi didattici
L’insegnamento si compone di sessioni sincrone (lezioni frontali in aula e laboratorio) e asincrone (assegnamenti, project, video lezioni).
Verifica Apprendimento
Gli studenti devono superare una prova scritta e una prova orale. Il punteggio finale ha un offset da 0 a 30 e lode.
Testi
1) Jim Kurose, Keith Ross, "Computer Networking: A Top-Down Approach", 8th edition, Pearson. 2) Andrew S. Tanenbaum, Nick Feamster, and David J. Wetherall, "Computer Networks", Global Edition, 6th edition, Pearson.
Contenuti
Introduction What is Internet? The Network Edge; The Network Core; Delay, Loss, Throughput, and other metrics in Packet-Switched Networks; Protocol Layers and Their Service Models; Transmission Modes; Line Configuration; Unicast, Broadcast, Multicast; Topology; Types of Area Network.
Application Layer Principles of Network Applications; The Web and HTTP; HTTP Python Programming; Electronic Mail in the Internet; SMTP Python Programming; DNS; Peer-to-Peer File Distribution; Video Streaming and Content Distribution Networks; FTP Python Programming.
Transport Layer Transport-Layer overview; Multiplexing and Demultiplexing; User Datagram Protocol; UDP Python Programming; Principles of Reliable Data Transfer; Transmission Control Protocol; TCP Python Programming; Principles of Congestion Control; TCP Congestion Control.
Network Layer Network-Layer overview; What’s Inside a Router? Internet Protocol; Generalized Forwarding and Software Defined Network; Routing Algorithms: the Link-State (LS) Routing Algorithm and the Distance-Vector (DV) Routing Algorithm; Intra-AS Routing in the Internet; Routing Among the ISPs; The SDN Control Plane; Internet Control Message Protocol; Network Management and SNMP, NETCONF/YANG
Link Layer Link-Layer overview; Error-Detection and -Correction Techniques; Multiple Access Links and Protocols; Switched Local Area Networks; Link Virtualization; Data Center Networking
Wireless and Mobile Networks Overview; Wireless Links and Network Characteristics; WiFi: 802.11 Wireless LANs; Cellular Networks: 4G and 5G; Mobility Management: Principles; Mobility Management in Practice; Wireless and Mobility: Impact on Higher-Layer Protocols