CODICE 80454 ANNO ACCADEMICO 2023/2024 CFU 6 cfu anno 3 INGEGNERIA INFORMATICA 8719 (L-8) - GENOVA SETTORE SCIENTIFICO DISCIPLINARE ING-INF/05 LINGUA Italiano SEDE GENOVA PERIODO 1° Semestre MATERIALE DIDATTICO AULAWEB PRESENTAZIONE Il corso si pone come obiettivo quello di descrivere le reti di calcolatori, prendendo come riferimento il modello OSI ed il modello TCP/IP. Parte dal livello fisico e procede verso il livello applicativo. Il corso tratta le architetture ed i protocolli, e si focalizza sui protoclli TCP/IP, sullo standard Ethernet e sulla virtualizzazione delle reti. Inoltre introduce il tema dell'interfaccia di programmazione basata su socket e descrive gli strumenti pricipali per l'analisi dei protocolli. OBIETTIVI E CONTENUTI OBIETTIVI FORMATIVI Architetture di rete, Livelli, Protocolli, Interfacce, Commutazione, Modello ISO-OSI, Livello Fisico, Analisi dei segnali,Topologie,Linee,Baud e bit rate, Sincronizzazione, Codici di linea, Livello Data Link, Framing, Controllo di errore e di flusso, livello MAC, Ethernet, PPP. Livello network, Routing, TCP/IP, IP, ARP, DHCP, TCP, UDP, protocolli di livello applicativo. OBIETTIVI FORMATIVI (DETTAGLIO) E RISULTATI DI APPRENDIMENTO Al termine dl corso gli studenti: Conosceranno le architetture di rete Conosceranno i protocolli di rete Saranno in grado di analizzare le Protocol Data Unit di reti basate su TCP/IP Saranno in grado di scrivere semplici applicazioni in C in grado di scambiare dati sulla rete Saranno in grado di progettare reti. PREREQUISITI Elementi di programmazione Elementi di matematica e statistica MODALITA' DIDATTICHE Lezioni frontali PROGRAMMA/CONTENUTO Il programma di dettaglio è il seguente: Introduction & Terminology: Standard Bodies Circuit/Packet Switching, LAN/WAN, Network Topolgies Layering and Network Architecture (Layers, Entities, Protocol, Interface, PDU, Payload, Header, ….) Modello ISO - OSI (7 layers) Physical Layer: Propagation Speed (from Maxwell Eq.) Rate, Fourier Analysis of a Bit Sequence, test on Excel Digital Modulation (ASK, FSK, PSK, QAM) Bit level Synchronization Asynchronous, free running clocks, Start/Stop bit, clock precision analysis . Synhronous (Manchester, AMI (HDB3, B8ZS)), code examples. Timed Division Multiplexing (TDM) Frames and Frame Level Synchronization (time slots, Mux/Demux, T1) Digital Telephony through PCM and DTM. Data Link Layer: Data Link Layer entities as Operating System Processes Inter Process Communication Positive Acknowledgement and Retransmission Layer 2 Rate Analysis without/with errors (size, rate, distance, speed, error rate) Window Flow Control (principle and pseudo-code) Error Management Error Detection (Parity and CRC) Error Correction (basic limitations for single/double error correction) Hamming Code for Single Error Correction Point to Point Protocol, RFC and Finite State Machine Analysis Medium Access Control (MAC Sublayer) The Original Ethernet: CSMA/CD, principle of working, Collision Analysis From Ethernet requirements to frame structure, padding to avoid undetected collisions Probabilistic analysis of Collisions and Ethernet Performance From Shared Medium Ethernet to Switched Ethernet Ethernet Switch Architecture Ethernet Switch Controller, pseudo code analysis Forwarding Tables Data Plane (Frame Forwarding) Control Plane (Learning) Spanning Tree Network Layer: Routing and Routing Tables Connection Oriented model (CO): Virtual Circuit, Routing Tables in the CO model Connectionless model (CL): Datagram, Routing Tables in the CL model Control Plane Distance Vector (Bellman Ford Algorithm) Shortest Path (Dijkstra Algorithm) The Internet Protocol suite: The TCP/IP – UDP/IP Reference Model, comparison with the OSI Reference Model Applicable RFCs Internet Protocol (IP): IP Header analysis and relationships between header fields and functionalities. IP Addresses, from the original Addressing Scheme to Subnetting and CIDR IP Routing Network/Port Address Translation (NAT/PAT) Transmission Control Protocol (TCP): Header analysis and relationships between header fields and functionalities. TCP Segment Structure and TCP Ports Connection Establishment, 3-way Handshaking, Finite State Machine User Datagram Protocol (UDP): Header analysis and relationships between header fields and functionalities. Header analysis and relationships between header fields and functionalities. UDP Segment Structure and UDP Ports Additional Protocols in the TCP/IP Suite ICMP DHCP ARP DNS The Application Layer in Internet The Standard Application Layer (Web, Mail, Remote Login, File Transfer) Programming Interface (Socket in C Language) Laboratory Wireshark base traffic analysis Command Line based Network Configuration in Windows and Linux (ipconfig/ifconfig) Linux emulation on MS Windows through Cygwin Socket Programming in C language on client/server applications putty (remote login) to access a remote server scp to move files between local/remote servers TESTI/BIBLIOGRAFIA A. Tanenbaum, Computer Networks DOCENTI E COMMISSIONI MASSIMO MARESCA Ricevimento: In coda alle lezioni durante il periodo delle lezioni. Su appuntamento nellla restante parte dell'anno. Commissione d'esame MASSIMO MARESCA (Presidente) CARLO ANDREOTTI ALESSANDRO ARMANDO DANIELE D'AGOSTINO LUCA GAGGERO ALBERTO GIORDANO PIERPAOLO BAGLIETTO (Presidente Supplente) LEZIONI INIZIO LEZIONI https://corsi.unige.it/8719/p/studenti-orario Orari delle lezioni L'orario di questo insegnamento è consultabile all'indirizzo: Portale EasyAcademy ESAMI MODALITA' D'ESAME Esame orale al termine del corso MODALITA' DI ACCERTAMENTO L'accertamento del raggiungimento degli obiettivi del corso verra' fatto attraverso domande sulla teoria, attraverso esercizi ed attraverso l'analisi di protocolli di rete. Calendario appelli Data appello Orario Luogo Tipologia Note 22/01/2024 09:00 GENOVA Orale 12/02/2024 09:00 GENOVA Orale 06/06/2024 09:00 GENOVA Orale 20/06/2024 09:00 GENOVA Orale 04/07/2024 09:00 GENOVA Orale 19/07/2024 09:00 GENOVA Orale 03/09/2024 09:00 GENOVA Orale