Applicazioni Telematiche

Corso di Laurea Specialistica in Ingegneria Informatica

Corso di Laurea Specialistica in Ingegneria delle Telecomunicazioni

Prof. Roberto Canonico


Obiettivi formativi

Il corso si propone di fornire le nozioni teoriche e metodologiche di base per la progettazione e lo sviluppo di applicazioni telematiche, con particolare riferimento ai sistemi basati sul web ed alle applicazioni multimediali distribuite. Le applicazioni telematiche verranno studiate sia dal punto di vista dell'architettura software che dal punto di vista dei protocolli che definiscono le modalità di comunicazione.


Edizioni precedenti del corso


A.A. 2008-09

Programma dettagliato delle lezioni svolte

Le slide delle lezioni verranno pubblicate in formato PDF dopo ciascuna lezione.

Lezione Data Slide / Riferimenti Argomenti
1 2/3/2009 Introduzione al Corso.
Interazione Client-Server nel World Wide Web.
Protocollo HTTP: formato dei messaggi.
2 5/3/2009 HTTP: Cookies. Web Caching. Gestione della coerenza. Gerarchie di cache. ICP.
3 9/03/2009 Content Delivery Networks. Infrastrutture e modelli di funzionamento di CDN. Content Adaptation.
4 12/03/2009 Applicazioni multimediali distribuite e requisiti di Qualità del Servizio.
Protocolli a supporto dello streaming di flussi audio/video. Il protocollo RTP.
Il protocollo RTSP per il controllo di sessioni.
5 16/03/2009 Web Server. Servizio di pagine statiche.
Cenni all'architettura software ed alla configurazione di Apache web server.
Configurazione dei meccanismi di autenticazione ed autorizzazione in Apache.
6 19/03/2009 Programmazione server-side con tecnica CGI. Esempi di programmi CGI in C ed in Tcl.
Form HTML ed invio dati mediante i metodi GET e POST di HTTP.
7 23/03/2009 Programmazione di applicazioni multimediali distribuite in Java mediante Java Media Framework (JMF).
La API di JMF. Trasmissione, ricezione e presentazione di stream RTP con JMF.
Esempi di programmi Java-JMF.
8 26/03/2009 Applicazioni web: programmazione client-side. JavaScript: caratteristiche del linguaggio ed esempi. Applet Java: ciclo di vita, ambiente di esecuzione, esempi.
Programmazione server-side. Form HTML ed invio dati mediante i metodi GET e POST di HTTP.
9 30/03/2009 Linguaggi di markup. Introduzione ad XML.
Sintassi XML. DTD e Schema. XSL.
10 2/04/2009 Parsing di documenti XML: DOM e SAX.
Trasformazioni XSL. Sintassi XPath. XSL processors.
Elaborazione di documenti XML in Java: API JAXP. Esempi.
11 6/04/2009 Session Initiation Protocol (SIP) e suo utilizzo in applicazioni di Voice-Over-IP (VOIP). Architettura prevista da RFC3261. User Agent Client e Server, Proxy, Redirect Server, Registrar, Back-to-Back User Agent. Varie tipologie di proxy. Proxy stateless, transaction stateful e call stateful. Formato dei messaggi SIP. Session Description Protocol (SDP) e suo utilizzo in SIP.
12 16/04/2009 Programmazione server-side mediante Java Servlet.
Java Servlet: ciclo di vita, modello di servizio, esempi.
Installazione e configurazione del Web Container Apache Tomcat.
13 20/04/2009 Struttura di una Web Application in Tomcat. Utilizzo di Servlet per redirection. Metodi per la gestione di sessione d’utente in un’applicazione Web. Accesso a database da Java Servlet.
14 23/04/2009 Esempi di applicazioni web con accesso a database mediante query SQL.
Introduzione alla tecnologia Java Server Pages (JSP).
JSP: ciclo di vita. JSP: scriptlet, dichiarazioni ed espressioni.
15 27/04/2009 ...
16 4/05/2009 Sviluppo di applicazioni per terminali mobili. Il framework J2ME. Livelli di configurazione CDC e CLDC. Profilo MIDP.
Uso delle API JSR-82 per comunicazioni tramite Bluetooth.
17 7/05/2009 Protocolli standard IETF per il conferencing multimediale su Internet.
Il Framework XCON dell'IETF. I protocolli CCMP e BFCP.
Architetture distribuite per la gestione di web conferencing: DCON.
18 11/05/2009 Applicazioni web convergenti. Il modello SIP Servlet.
Ciclo di vita e gestione di sessione in SIP Servlet.
19 14/05/2007 Dalle applicazioni Web ai Web Services. Service Oriented Architectures (SOA).
Lo stack protocollare dei WS. WSDL. Sviluppo di Web Service in Java mediante la API JAX-RPC.
Sviluppo e deployment di Web Services con Apache Tomcat ed Axis.
Il Web Service Deployment Descriptor (WSDD). Deployment automatico di web service con JWS.
20 18/05/2009 Applicazioni peer-to-peer. Caratteristiche di un sistema p2p. Sistemi peer-to-peer non strutturati e strutturati.
Gnutella: caratteristiche generali, protocollo e meccanismi di discovery.
Meccanismi di discovery per sistemi peer-to-peer non strutturati: Query Caching, Expanding Ring, Query Routing, Random Walks. Sistemi peer-to-peer strutturati (cenni).
21 21/05/2009 Composizione di servizi web. Orchestrazione e coreografia di web services. Descrizione del workflow di un processo di business. Linguaggi per la composizione e coreografia di web services. BPEL4WS. Un engine per la composizione di web-services: ActiveBPEL.
22 25/05/2009 Applicazioni peer-to-peer di file distribution.
BitTorrent: analisi del funzionamento. Ruolo del tracker. Algoritmi di piece selection.
23 28/05/2009 Asynchronous Javascript And XML. Un esempio. Cenni su AJAX toolkits: JaxCent e GWT.

Testi consigliati - relativamente al programma svolto finora...

Nota1: altri testi potranno essere consigliati durante il prosieguo del corso.

Nota2: i testi indicati sotto sono "consigliati". Purtroppo, nessuno dei testi indicati coprirà da solo l'intero programma svolto in questo corso. Altri sussidi didattici liberamente accessibili tramite il Web verranno indicati nelle note relative a ciascuna lezione.

  • Web Protocols and Practice: HTTP/1.1, Networking Protocols, Caching, and Traffic Measurement
    Balachander Krishnamurthy, Jennifer Rexford
    Addison-Wesley, 2001

roberto.canonico at unina.it

Ultimo aggiornamento: 8 giugno 2009