Scheda programma d'esame
RETI DI CALCOLATORI E LABORATORIO DI RETI
LAURA EMILIA MARIA RICCI
Anno accademico2018/19
CdSINFORMATICA
Codice274AA
CFU12
PeriodoPrimo semestre

ModuliSettoreTipoOreDocente/i
LABORATORIO DI RETIINF/01LABORATORI48
FEDERICA PAGANELLI unimap
RETI DI CALCOLATORIINF/01LEZIONI48
LAURA EMILIA MARIA RICCI unimap
Obiettivi di apprendimento
Learning outcomes
Conoscenze

Il corso si propone di fornire le nozioni teoriche e metodologiche di base per la comprensione dei modelli di riferimento e protocolli delle reti di calcolatori e conoscenze pratiche per la programmazione in ambiente di rete.

Knowledge

The aim of the course is to introduce the main aspects of computer networks including reference models and protocols in computer networks as well as practical knowledge for network programming.

Modalità di verifica delle conoscenze
  • Progetto software
  • Esame orale finale: discussione del progetto software e dei contenuti del programma

 

Assessment criteria of knowledge
  • Software project
  • Final oral exam: discussion on the software project and course contents

.

Capacità

Al termine del corso lo studente avrà acquisito i fondamenti su modelli architetturali e protocolli di rete e sarà in grado di progettare e sviluppare servizi e applicazioni di rete in linguaggio JAVA.

Skills

The student will acquire foundations of architectural models and network protocols and he/she will also able to design and implement network services and applications in Java.

Modalità di verifica delle capacità

Al termine del corso dovrà sviluppare un programma Java che risolve un problema assegnato dai docenti  e sostenere una prova orale sulle nozioni teoriche.

Assessment criteria of skills

The student will design and develop a Java program that implements a solution of a problem assigned by teachers and pass an oral discussion on network foundations.

Comportamenti

Lo studente acquisirà conoscenza dei fondamenti dei modelli e protocolli di rete e dei principali strumenti offerti da java per la programmazione multi-threading e di rete.

Behaviors

The student will acquire knowledge on foundations of network models and protocols and the main tools offered by Java for multi-threading and network programming.

Modalità di verifica dei comportamenti

Realizzazione di un programma funzionante e discussione orale sulle conoscenze teoriche acquisite.

Assessment criteria of behaviors

Oral discussion on acquired knowledge of network protocols and architectures and development of a Java network program.

Prerequisiti (conoscenze iniziali)

Fondamenti di programmazione in linguaggio Java

Prerequisites

Foundations of Java programming.

Indicazioni metodologiche

Lezioni frontali

Attività di apprendimento:

  • frequenza delle lezioni
  • studio individuale
  • lavoro di laboratorio

Frequenza: consigliata

Metodi di insegnamento:

  • Lezioni
  • Laboratorio
Teaching methods

Delivery: face to face lectures

Learning activities:

  • attending lectures
  • individual study
  • Laboratory work

Attendance: Advised

Teaching methods:

  • Lectures
  • laboratory
Programma (contenuti dell'insegnamento)

Il modulo “reti di calcolatori” introduce i fondamenti delle reti di calcolatori illustrando applicazioni e protocolli dell'architettura di rete TCP/IP.

In particolare i contenuti trattati sono:

  • introduzione alle reti di computer e Internet
  • stack protocollare TCP/IP, dettagliato di seguito.
  • livello applicazione (paradigma client-server paradigm e protocolli per le applicazioni web, FTP, email, Telnet and DNS e paradigma peer-to-peer)
  • livello di trasporto (sliding windows protocols, UDP eTCP)
  • livello di rete (IPv4 eIPv6, algoritmi e protocolli per unicast routing)
  • data link layer (medium access protocols, link layer level addressing, wired LANs eEthernet).
  • Wireless networks (wireless LANs with IEEE 802.11 and bluetooth) e mobile IP
  • Sicurezza in reti di calcolatori (SSL, Ipsec and PGP).

Il modulo “Laboratorio di Programmazione di Rete” si pone l’obiettivo di fornire le conoscenze necessarie per la scrittura di applicazioni di rete tramite l'utilizzo di socket (indirizzi, URL, socket TCP e UDP, modelli connection-oriented e connectionless, comunicazioni punto a punto, multicast e broadcast, modello client/server). Gli argomenti affrontati sono:

  • Programmazione concorrente in Java con thread
  • Meccanismi di serializzazione in Java
  • JAVA API per socket TCP
  • JAVA API per protocollo UDP: Datagram Socket
  • Remote Method Invocation (RMI) per la realizzazione di semplici servizi di rete.
  • Stile architetturale REST
Syllabus

The “reti di calcolatori” module introduces the foundations of computer networks by illustrating applications and protocols of the TCP/IP network architecture. Specifically, after an introduction to computer networks and to Internet, the protocol stack is introduced. Then, the relevant protocols and principles of: application layer (with the client-server paradigm and the protocols for web, FTP, email Telnet and DNS applications, and the peer-to-peer paradigm), transport layer (with siliding windows protocols, UDP and TCP), network layer (IPv4 and IPv6, algorithms and protocols for unicast routing), and data link layer (medium access protocols, link layer level addressing, wired LANs and Ethernet). Then, wireless networks (wireless LANs with IEEE 802.11 and bluetooth) and mobile IP, as well as security issues (SSL, Ipsec and PGP) are presented.

The "Laboratorio di Programmazione di Rete” module aims at providing students with knowledge for design and development of network applications, including:

  • Concurrent programming with threads
  • Java serialization mechanisms
  • JAVA API for TCP sockets
  • JAVA API for UDP protocol
  • Remote Method Invocation (RMI) for basic network services
  • REST architectural style

 

Bibliografia e materiale didattico

B.A. Forouzan & F. Mosharraf – Computer Networks: A Top Down Approach  McGraw-Hill

Materiale didattico (diapositive) fornite dai docenti

Bibliography

B.A. Forouzan & F. Mosharraf – Computer Networks: A Top Down Approach  McGraw-Hill

Slides provided by teachers

Modalità d'esame
  • Progetto software
  • Esame orale finale: discussione del progetto software e dei contenuti del programma

 

Assessment methods
  • Software project
  • Final oral exam: discussion on the software project and course contents
Altri riferimenti web

Modulo di Laboratorio di Reti: https://elearning.di.unipi.it/course/view.php?id=134

Additional web pages

Laboratorio di Reti Module: https://elearning.di.unipi.it/course/view.php?id=134

Ultimo aggiornamento 05/10/2018 11:34