Sistemi di elaborazione dell’informazione Modulo 4 -Tecniche di programmazione distribuita Unità didattica 1 - Socket library Ernesto Damiani Lezione 3.

Slides:



Advertisements
Presentazioni simili
Programmazione con socket
Advertisements

Programmazione socket
Come programmare servizi di rete?
Calcolatori Elettronici
Reti di Calcolatori1 Il modello Client/Server La comunicazione Se sintetizziamo uno scenario completo possiamo identificare diverse interfacce.
Modulo 2 – U.D. 1 – Lez. 2 Ernesto Damiani – Sistemi di elaborazione dell'informazione.
Cosa è una applicazione distribuita?
Sistemi di elaborazione dellinformazione Modulo 2 -Protocolli di rete TCP/IP Unità didattica 4 - Gestione degli indirizzi Ernesto Damiani Lezione 4 – NAT.
Ingegneria del software Modulo 2 -Il software come prodotto Unità didattica 2 - I costi del software Ernesto Damiani Università degli Studi di Milano Lezione.
Modulo 2 - U.D. 3 - L.4 Ernesto Damiani - Sistemi di eleborazione dell'informazione.
Ingegneria del software Modulo 1 -Introduzione al processo software Unità didattica 3 - Modelli di fase danalisi Ernesto Damiani Università degli Studi.
Modulo n – U.D. n – Lez. n Nome Cognome – titolo corso.
Modulo 3 – U.D. 3 – Lez. 1 Ernesto Damiani - Sistemi di elaborazione dell'informazione.
Sistemi di elaborazione dellinformazione Ernesto Damiani Lezione 5 – SONET Modulo 1 -Tecniche di comunicazione digitale Unità didattica 1 -Richiami sulla.
Modulo n – U.D. n – Lez. n Nome Cognome – titolo corso.
Modulo n – U.D. n – Lez. n Nome Cognome – titolo corso.
Reti di calcolatori Modulo 1 -Tecniche di comunicazione digitale Unità didattica 4 – Interconnessione tra reti locali Ernesto Damiani Università di Milano.
Modulo 4 – U.D. 1 – Lez. 6 Ernesto Damiani - Sistemi di elaborazione dell'informazione.
Cryptophone 2 Matteo Ferrari. Descrizione del Problema e Soluzioni adottate. Realizzare un’interfaccia grafica in C# per dispositivi Mobile di un progetto.
Come comunicano i processi ?
Interazione col DB Per interagire con una base dati da una pagina PHP occorre procedere come segue: Eseguire la connessione al DBMS MySQL in ascolto;
Modulo n – U.D. n – Lez. n Nome Cognome – titolo corso.
Sistemi di elaborazione dell’informazione Modulo 2 -Protocolli di rete TCP/IP Unità didattica 4 -Gestione degli indirizzi Ernesto Damiani Lezione 1 – Assegnazione.
Protocolli avanzati di rete Modulo 3 -Wireless network Unità didattica 3 - Medium Access Control (MAC) Ernesto Damiani Università degli Studi di Milano.
Sistemi di elaborazione dell’informazione Modulo 2 -Protocolli di rete TCP/IP Unità didattica 4 -Gestione degli indirizzi Ernesto Damiani Lezione 2 – DHCP.
Sistemi di elaborazione dell’informazione Modulo 1 - Tecniche di comunicazione digitale Unità didattica 1 -Richiami sulla trasmissione digitale Ernesto.
Sistemi di elaborazione dell’informazione Modulo 3 - Protocolli applicativi Unità didattica 1 - Domain Name System Ernesto Damiani Lezione 2 – Caratteristiche.
Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 4 -Protocolli del Web Ernesto Damiani Lezione 1 – World Wide.
Reti di calcolatori Modulo 2 -Protocolli di rete TCP/IP Unità didattica 2 – Il protocollo TCP/IP Ernesto Damiani Università degli Studi di Milano - SSRI.
Sistemi di elaborazione dell’informazione Modulo 1 -Tecniche di comunicazione digitale Unità didattica 3 – Modelli astratti di protocolli Ernesto Damiani.
Ingegneria del software Modulo 1 - Introduzione al processo software Unità didattica 3 - Modelli di fase d’analisi Ernesto Damiani Università degli Studi.
Sistemi di elaborazione dell’informazione Modulo 2 -Protocolli di rete TCP/IP Unità didattica 7 -Instradamento dinamico Ernesto Damiani Lezione 3 – Da.
Sistemi di elaborazione dell’informazione Modulo 3 - Protocolli applicativi Unità didattica 2 - Telnet, FTP e altri Ernesto Damiani Lezione 2 – Da FTP.
Sistemi di elaborazione dell’informazione Modulo 2 - Protocolli di rete TCP/IP Unità didattica 4 -Gestione degli indirizzi Ernesto Damiani Lezione 3 –
Sistemi di elaborazione dell’informazione Modulo 1 -Tecniche di comunicazione digitale Unità didattica 2 -Standard di rete locale Ernesto Damiani Lezione.
Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 1 -Domain Name System Ernesto Damiani Lezione 1 – Nomi e indirizzi.
Sistemi di elaborazione dell’informazione Modulo 2 -Protocolli di rete TCP/IP Unità didattica 6 -User Datagram Protocol Ernesto Damiani Lezione 1 – UDP.
Ingegneria del software Modulo 4 -Processi software Unità didattica 1 -Rational Unified Process Ernesto Damiani Università degli Studi di Milano Lezione.
Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 1 -Domain Name System Ernesto Damiani Lezione 3 – Complementi.
Sistemi di elaborazione dell’informazione Modulo 4 -Tecniche di programmazione distribuita Unità didattica 1 -Socket library Ernesto Damiani Lezione 1.
Sistemi di elaborazione dell’informazione Modulo 4 - Tecniche di programmazione distribuita Unità didattica 1 - Socket library Ernesto Damiani Lezione.
Ingegneria del software Modulo 1 -Introduzione al processo software Unità didattica 3 - Modelli di fase d’analisi Ernesto Damiani Università degli Studi.
Sistemi di elaborazione dell’informazione Modulo 1 - Tecniche di comunicazione digitale Unità didattica 3 - Modelli astratti di protocolli Ernesto Damiani.
Sistemi di elaborazione dell’informazione Modulo 4 -Tecniche di programmazione distribuita Unità didattica 1 - Socket library Ernesto Damiani Lezione 8.
Sistemi di elaborazione dell’informazione Modulo 4 - Tecniche di programmazione distribuita Unità didattica 1 -Socket library Ernesto Damiani Lezione 2.
Ingegneria del software Modulo 1 - Introduzione al processo software Unità didattica 3 -Modelli di fase d’analisi Ernesto Damiani Università degli Studi.
Sistemi di elaborazione dell’informazione Modulo 4 - Tecniche di programmazione distribuita Unità didattica 1 -Socket library Ernesto Damiani Lezione 4.
Ingegneria del software Modulo 1 -Introduzione al processo software Unità didattica 3 -Modelli di fase d’analisi Ernesto Damiani Università degli Studi.
Ingegneria del software Modulo 1 -Introduzione al processo software Unità didattica 3 - Modelli di fase d’analisi Ernesto Damiani Università degli Studi.
Sistemi di elaborazione dell’informazione Modulo 2 -Protocolli di rete TCP/IP Unità didattica 4 -Gestione degli indirizzi Ernesto Damiani Lezione 5 – Configurazione.
Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 5 -Amministrazione remota Ernesto Damiani Lezione 1 – Gestione.
Reti di calcolatori Modulo 2 -Protocolli di rete TCP/IP Unità didattica 2 – Il protocollo TCP/IP Ernesto Damiani Università degli Studi di Milano - SSRI.
Sistemi di elaborazione dell’informazione Modulo 1 - Tecniche di comunicazione digitale Unità didattica 5 -Cenni ai protocolli di rete pubblica Ernesto.
Sistemi di elaborazione dell’informazione Modulo 1 -Tecniche di comunicazione digitale Ernesto Damiani Lezione 2 – Rete telefonica Unità didattica 1 -Richiami.
Sistemi di elaborazione dell’informazione Modulo 2 -Protocolli di rete TCP/IP Unità didattica 3 -Instradamento statico Ernesto Damiani Lezione 2 – ICMP.
Sistemi di elaborazione dell’informazione Modulo 2 -Protocolli di rete TCP/IP Unità didattica 7 -Instradamento dinamico Ernesto Damiani Lezione 4 – OSPF.
Protocolli avanzati di rete Modulo 3 -Traffic Engineering Unità didattica 2 – Infrastruttura di rete ottica Ernesto Damiani Università di Milano Lezione.
Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 2 -Telnet, FTP e altri Ernesto Damiani Lezione 4 – Napster e.
Ernesto Damiani Lezione 5 – Gnutella Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 2 - Telnet, FTP e altri.
Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 3 -Protocolli di posta elettronica Ernesto Damiani Lezione 3.
Sistemi di elaborazione dell’informazione Modulo 4 - Tecniche di programmazione distribuita Unità didattica 1 -Socket library Ernesto Damiani Lezione 5.
Reti di calcolatori Modulo 1 -Tecniche di comunicazione digitale Unità didattica 4 – Interconnessione tra reti locali Ernesto Damiani Università di Milano.
Sistemi di elaborazione dell’informazione Modulo 3 - Protocolli applicativi Unità didattica 5 -Amministrazione remota Ernesto Damiani Lezione 2 – SNMP.
Sistemi di elaborazione dell’informazione Modulo 4 -Tecniche di programmazione distribuita Unità didattica 1 - Socket library Ernesto Damiani Lezione 9.
Sistemi di elaborazione dell’informazione Modulo 2 -Protocolli di rete TCP/IP Unità didattica 6 -User Datagram Protocol Ernesto Damiani Lezione 2 – UDP.
Protocolli avanzati di rete Modulo 2 -Multiplexing Unità didattica 1 – Infrastruttura di rete ottica Ernesto Damiani Università di Milano Lezione 4 – Link.
Corso di Reti di Calcolatori Interfaccia socket. [2] Introduzione La programmazione di rete è ciò che permette a due o più computer collegati da una rete.
Socket programming in Java La realizzazione di un server in Java consente di scrivere una sola versione eseguibile su diverse piattaforme. Il linguaggio.
Socket programming in Java La realizzazione di un server in Java consente di scrivere una sola versione eseguibile su diverse piattaforme. Il linguaggio.
Il Livello di Trasporto
Transcript della presentazione:

Sistemi di elaborazione dell’informazione Modulo 4 -Tecniche di programmazione distribuita Unità didattica 1 - Socket library Ernesto Damiani Lezione 3 – Set up di connessione

Setup di connessione (1) Va ricordato che per SOCK_DGRAM non c’è alcun setup di connessione. Una connessione avviene tra due tipi di partecipanti: –passivo: aspetta un partecipante attivo per richiedere la connessione; –attivo: inizia la richiesta di connessione al lato passivo. Una volta che la connessione è stabilita, i partecipanti passivi e attivi sono “simili”: –entrambi possono inviare e ricevere dati; –entrambi possono terminare la connessione.

Setup di connessione (2) Partecipante passivo: –fase 1: listen (attende richieste in ingresso); –fase 3: accept (una richiesta); –fase 4 (condivisa con l’attivo): invio dati. La connessione accettata è spostata su un nuovo socket. Il vecchio socket continua ad ascoltare la rete aspettando altri partecipanti attivi.

Setup di connessione (3) Partecipante attivo: –Fase 2: richiesta e creazione della connessione (connect); –Fase 4 (condivisa con il passivo): ricezione dati. Partecipante passivo Attivo 2 socket Attivo 1 socket A-sock-1I-sockA-sock-2

Setup di connessione: listen Chiamata dal partecipante attivo. int status = listen(sock, queuelen); –status: 0 se ascolta, -1 in caso di errore; –sock: descrittore di socket, intero; –queuelen: numero (intero) di partecipanti attivi che possono “aspettare” una connessione. “listen” non è bloccante: ritorna immediatamente.

Setup di connessione: accept FINE Chiamata dal partecipante passivo. int s = accept(sock, &name, &namelen); –s: intero, il nuovo socket (usato per trasferire i dati); –sock: intero, il socket originale (su cui si è ascoltato); –name: struct sockaddr, indirizzo del partecipante attivo; –namelen: sizeof(name): parametro valore/risultato.  Deve essere impostato appropriatamente prima della chiamata.  Viene regolato dal sistema operativo al ritorno. “accept” è bloccante: aspetta la connessione prima di ritornare.