Laboratorio di Programmazione in Rete
|
|
- Faustino Martino
- 8 anni fa
- Visualizzazioni
Transcript
1 Laboratorio di rogrammazione in Rete a.a. 2005/ dott.ssa Francesca A. Lisi Orario di ricevimento: mercoledì ore N.B. Il presente materiale didattico è stato prodotto da: dott.ssa V. Carofiglio rielaborato da: dott.ssa F.A. Lisi
2 Sommario della lezione di oggi Famiglie e tipi di socket Ciclo di vita di una socket per TC Applicazioni Winsock Inizializzazione Sviluppo con DEV-C ++ dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 2
3 Socket: famiglie Ogni famiglia riunisce i socket che utilizzano gli stessi protocolli (rotocol Family) sottostanti, supporta un sottoinsieme di stili di comunicazione e possiede un proprio formato di indirizzamento (Address Family) Esempi di famiglia sono: Unix Domain sockets: consentono il trasferimento di dati tra processi sulla stessa macchina Unix Internet socket (AF_INET): consentono il trasferimento di dati tra processi posti su macchine remote connesse tramite LAN o Internet dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 3
4 Socket: tipi Il tipo della socket definisce la modalità di trasporto adottata per inviare dati: Streaming Socket (SOCK_STREAM): Tratta i dati come flusso di byte. Supporta un trasferimento orientato alla connessione, affidabile e full-duplex. Datagram Socket (SOCK_DGRAM): Tratta i dati come datagrammi, cioè pacchetti di lunghezza massima prefissata. Supporta un trasferimento privo di connessione, inaffidabile. Nota bene: Una socket TC è data da AF_INET + SOCK_STREAM Una socket UD è data da AF_INET + SOCK_DGRAM dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 4
5 Socket: identificatori In Internet una socket è univocamente determinata da un indirizzo I, un protocollo di trasporto (TC o UD) e un numero di porta Applicazioni Applicazioni Socket TC Socket UD orte TC orte UD TC UD I Sockets bound to ports Host Descriptor reference dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 5
6 Socket: una astrazione Strutture dati associate ad una socket TC Applicazione Descrittori Closed Struttura di una socket L applicazione fa riferimento alla struttura di una socket tramite descrittori differenti processi possono fare riferimento alla stessa struttura socket informazioni associate alla struttura socket: code di ricezione e invio indirizzi internet informazioni sullo stato dell handshake (per una socket TC) dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 6
7 Il ciclo di vita di una socket TC: Notazione Applicazione Eventi all interno dell applicazione che causano il cambiamento di stato di una struttura socket connect() blocca Indirizzi: (client), W.X.Y.Z (server) Closed Connecting W.X.Y.Z Handshake completato Established W.X.Y.Z orte: (client), (server) Eventi come l arrivo di messaggi, ecc.. dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 7
8 Il ciclo di vita di una socket TC: Stabilire una connessione (lato client) Applicazione (lato client) Closed dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 8
9 Il ciclo di vita di una socket TC: Stabilire una connessione (lato client) Applicazione (lato client) Closed connect() con I W.X.Y.Z e porta blocca Completa i campi; Invia richiesta di connes. al server dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 9
10 Il ciclo di vita di una socket TC: Stabilire una connessione (lato client) Applicazione (lato client) Closed connect() con I W.X.Y.Z e porta blocca Completa i campi; Invia richiesta di connes. al server Connecting W.X.Y.Z non in uso da altre socket indirizzo dell interfaccia attraverso cui vengono inviati i pacchetti al server dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 10
11 Il ciclo di vita di una socket TC: Stabilire una connessione (lato client) Applicazione (lato client) connect() con I W.X.Y.Z e porta blocca Closed Completa i campi; Invia richiesta di connes. al server Connecting W.X.Y.Z Handshake a tre vie completato Established W.X.Y.Z dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 11
12 Il ciclo il client di vita considera di la una socket TC: Stabilire appena una riceve connessione l ack dal server (lato client) Applicazione (lato client) connessione stabilita non se il server non accetta una connessione invia un messaggio connect() con I W.X.Y.Z e porta blocca Closed Completa i campi; Invia richiesta di connes. al server Connecting W.X.Y.Z Handshake a tre vie completato Established W.X.Y.Z dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 12
13 Il ciclo di vita di una socket TC: Setup della socket (lato server) Applicazione (lato server) bind() con porta returns Closed Setta indirizzo locale e porta Closed INADDR_ANY dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 13
14 Il ciclo di vita di una socket TC: Setup della socket (lato server) Applicazione (lato server) Closed bind() con porta returns Setta indirizzo locale e porta Closed INADDR_ANY nel caso in cui il server ha più di un I, consente alla socket di ricevere connessioni indirizzate da tutti i suoi I dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 14
15 Il ciclo di vita di una socket TC: Setup della socket (lato server) Applicazione (lato server) bind() con porta returns listen() Return Closed Setta indirizzo locale e porta Closed INADDR_ANY Setta all ascolto Listening INADDR_ANY dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 15
16 Il ciclo di vita di una socket TC: Setup della socket (lato server) Applicazione (lato server) ualunque richiesta di connessione che avviene prima della listen() verrà rigettata bind() con porta returns listen() Return Closed Setta indirizzo locale e porta Closed INADDR_ANY Setta all ascolto Listening INADDR_ANY dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 16
17 Il ciclo di vita di una socket TC: Accettazione della connessione (lato server) Applicazione (lato server) accept() Blocca sino alla connessione con un client Listening nuova conness. dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 17
18 Il ciclo di vita di una socket TC: Gestione della connessione (lato server) Richiesta di connessione da / Listening nuova connessi. rocesso trasparente dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 18
19 Il ciclo di vita di una socket TC: Gestione della connessione (lato server) Richiesta di connessione da / Listening nuova connessi. Creare una nuova socket per la connessione, settare gli indirizzi e continuare l handshake Connecting W.X.Y.Z I di destinazione I e porta del mittente rocesso trasparente dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 19
20 Il ciclo di vita di una socket TC: Gestione della connessione (lato server) Richiesta di connessione da / Listening nuova connessi. Creare una nuova socket per la connessione, settare gli indirizzi e continuare l handshake Connecting il numero di porta locale è lo stesso per le due socket La socket originale non cambia stato un ack viene inviato dal server al client W.X.Y.Z rocesso trasparente dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 20
21 Il ciclo di vita di una socket TC: Gestione della connessione (lato server) Richiesta di connessione da / Listening nuova connessi. Creare una nuova socket per la connessione, settare gli indirizzi e continuare l handshake Connecting Handshake completato Established W.X.Y.Z W.X.Y.Z rocesso trasparente dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 21
22 Il ciclo di vita di una socket TC: Gestione della connessione (lato server) Richiesta di connessione da / Listening nuova connessi. rocesso trasparente Creare una nuova socket per la connessione, settare gli indirizzi e continuare l handshake Connecting W.X.Y.Z il server non considera la connessione stabilita finchè non viene inviato il terzo messaggio Handshake completato Established W.X.Y.Z dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 22
23 Il ciclo di vita di una socket TC: Gestione della connessione (lato server) Applicazione (lato server) Listening nuova conness. accept() Blocca sino alla connessione con un client Evento descritto in Richiesta di connessione in entrata Established Ritorna il descrittore per questa socket (socket di connessione) dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio Remote di Irogrammazione in Rete (1/5) 23 W.X.Y.Z Rimuove la socket dalla lista di nuove conness. Listening Nuova connessi.
24 Il ciclo di vita di una socket TC: Chiusura della connessione Applicazione Established W.X.Y.Z close() Returns immediately Terminazione senza perdita di dati in transito dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 24
25 Il ciclo di vita di una socket TC: Chiusura della connessione Applicazione Established W.X.Y.Z close() Returns immediately Ha inizio un handshake di chiusura, Il descrittore viene deallocato un msg di chiusura viene inviato all altra parte (fine dati da trasferire) un ack per questo msg viene inviato Terminazione senza perdita di dati in transito dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 25
26 Il ciclo di vita di una socket TC: Chiusura della connessione Applicazione Established W.X.Y.Z close() Returns immediately Ha inizio un handshake di chiusura, Il descrittore viene deallocato un msg di chiusura viene inviato all altra parte (fine dati da trasferire) un ack per questo msg viene ricevuto La connessione viene chiusa completamente solo quando un handshake simile avviene in direzione opposta Terminazione senza perdita di dati in transito dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 26
27 Il ciclo di vita di una socket TC: Chiusura della connessione Applicazione close() Returns immediately Established W.X.Y.Z Ha inizio un handshake di chiusura, Il descrittore viene deallocato Closed W.X.Y.Z Hs msg Half-Closed Terminazione senza perdita di dati in transito W.X.Y.Z dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 27
28 Il ciclo di vita di una socket TC: Chiusura della connessione Applicazione close() Returns immediately Established W.X.Y.Z Ha inizio un handshake di chiusura, Il descrittore viene deallocato Closed W.X.Y.Z Hs msg Half-Closed Terminazione senza perdita di dati in transito W.X.Y.Z Hs ack Time-wait W.X.Y.Z dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 28
29 rogrammazione client/server basata sulle socket Lo sviluppatore ha il controllo degli aspetti della socket che stanno dal lato del livello applicativo, ma ha poco controllo di quelli che stanno dal lato del livello di trasporto (alcuni parametri) Livello di Applicazione Livello di Trasporto TC UD I Host dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 29
30 ... in C per Windows Le applicazioni client-server basate su socket in C per Windows: sono brevemente indicate con il nome di applicazioni WinSock (Windows Socket Application) utilizzano la AI WinSock (file winsock.h) #include<stdio.h> #include<winsock.h> void main() { return; } dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 30
31 Applicazioni WinSock: inizializzazione Tutte le applicazioni WinSock devono essere inizializzate per essere sicuri che le socket Windows siano supportate dal sistema er inizializzare un applicazione Winsock: Creare una variabile di tipo WSADATA: WSADATA wsadata; La struttura WSADATA contiene informazioni sull implementazione delle socket Windows dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 31
32 Applicazioni WinSock: inizializzazione Tutte le applicazioni WinSock devono essere inizializzate per essere sicuri che le socket Windows siano supportate dal sistema er inizializzare un applicazione Winsock: Creare una variabile di tipo WSADATA: WSADATA wsadata; La struttura WSADATA contiene informazioni sull implementazione delle socket Windows wversion: versione per la specifica di socket whighversion: versione massima per a specifica di socket windows supportabile typedef struct WSAData { WORD wversion; WORD whighversion; utilizzata char szdescription[wsadescrition_len+1]; char szsystemstatus[wsasys_status_len+1]; unsigned short imaxsockets; unsigned short imaxudpdg; char FAR lpvendorinfo; } WSADATA dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 32
33 Applicazioni WinSock: inizializzazione Tutte le applicazioni WinSock devono essere inizializzate per essere sicuri che le socket Windows siano supportate dal sistema er inizializzare un applicazione Winsock: Creare una variabile di tipo WSADATA: WSADATA wsadata; Specificare la versione di socket Windows richiesta e recuperare i dettagli della implementazione di tale versione dal sistema operativo Int iresult = WSAStartup(MAKEWORD(2,2), &wsadata); If (iresult!= NO_ERROR) printf( error at WSASturtup\n ); dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 33
34 Applicazioni WinSock: inizializzazione Tutte le applicazioni WinSock devono essere inizializzate per essere sicuri che le socket Windows siano supportate dal sistema er inizializzare un applicazione Winsock: Creare una variabile di tipo WSADATA: WSADATA wsadata; Specificare la versione di socket Windows richiesta e recuperare i dettagli della implementazione di tale versione dal sistema operativo Int iresult = WSAStartup(MAKEWORD(2,2), &wsadata); If (iresult!= NO_ERROR) printf( error at WSASturtup\n ); wversionrequested: versione di socket windows che il chiamante può usare. int WSAStartup( WORD wversionrequested, LWSADATA lpwsadata ); wversion: puntatore alla struttura WSDATA che contiene informazioni per l implementazione della socket Restituisce 0 in dott.ssa caso di V. successo. Carofiglio Il & codice dott.ssadi F.A. errore Lisi altrimenti Laboratorio di rogrammazione in Rete (1/5) 34
35 Applicazioni WinSock: inizializzazione Tutte le applicazioni WinSock devono essere inizializzate per essere sicuri che le socket Windows siano supportate dal sistema er inizializzare un applicazione Winsock: Creare una variabile di tipo WSADATA: WSADATA wsadata; Specificare la versione di socket Windows richiesta e recuperare i dettagli della implementazione di tale versione dal sistema operativo Int iresult = WSAStartup(MAKEWORD(2,2), &wsadata); If (iresult!= NO_ERROR) printf( error at WSASturtup\n ); specifica il numero di versione di WinSock sul sistema e lo costruisce correttamente dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 35
36 Applicazioni WinSock: inizializzazione WORD wversionrequested; WSADATA wsadata; int err; wversionrequested = MAKEWORD( 2, 2 ); Un esempio! err = WSAStartup( wversionrequested, &wsadata ); if ( err!= 0 ) { / Tell the user that we could not find a usable / / WinSock DLL. / return; } / Confirm that the WinSock DLL supports 2.2./ / Note that if the DLL supports versions greater / / than 2.2 in addition to 2.2, it will still return / / 2.2 in wversion since that is the version we / / requested. / if ( LOBYTE( wsadata.wversion )!= 2 HIBYTE( wsadata.wversion )!= 2 ) { / Tell the user that we could not find a usable / / WinSock DLL. / WSACleanup( ); return; } / The WinSock DLL is acceptable. roceed. / dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 36
37 Applicazioni WinSock: sviluppo con DEV-C++ Selezionare la voce File New rojects Selezionare Empty roject Salvare il progetto in dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 37
38 Applicazioni WinSock: sviluppo con DEV-C++ (cont) Clicca su parametri Aggiungi libreria o oggetto Naviga nella directory Dev-C++\Lib e aggiungi il file libwsock32 (oppure libws2_32 per Winsock2) NB: I nomi delle librerie possono cambiare a seconda del compilatore Es: Visual C++ wsock32.lib (ws2_32.lib) dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 38
39 Commenti conclusivi Le esercitazioni per questo corso saranno condotte con: Windows X Dev C++ (v. V) Tuttavia mostreremo le differenze nell uso delle AI socket per UNIX Il materiale didattico e alcuni degli esempi mostrati potranno essere scaricati dalla pagina del corso: N.B. Gli esempi scaricabili sono testati e possono essere compilati ed eseguiti in DEV-C++ senza alcuna modifica. Tuttavia in base alla posizione dei file header (.h) e delle dipendenze varie (es. librerie) sul vostro sistema, talvolta potrebbero essere necessarie piccole modifiche. Nella prossima lezione affronteremo i dettagli implementativi della interazione client-server in C su TC per Windows dott.ssa V. Carofiglio & dott.ssa F.A. Lisi Laboratorio di rogrammazione in Rete (1/5) 39
Laboratorio di Programmazione in rete
Laboratorio di rogrammazione in rete Introduzione alla programmazione C di socket A.A. 2005/06 Comunicazione tra computer Come far comunicare più computer su una rete? Una collezione di protocolli: TC/I
DettagliUna prima applicazione in C per l utilizzo delle socket
Una prima applicazione in C per l utilizzo delle socket Richiamo sulle socket Socket in Windows (WinSock) Differenze tra sistemi operativi D. Gendarmi Socket API API: Application Programming Interface
DettagliCreare una applicazione Winsock di base
Creare una applicazione Winsock di base Usiamo le API Winsock incluse in Creare un progetto per una Socket Windows (in Dev C++) Selezionare la file New Projects Selezionare Empty Project Salvare
DettagliI Socket. Laboratorio Software 2008-2009 M. Grotto R. Farina
M. Grotto R. Farina Sommario 1. Applicazioni Distribuite 2. I Socket Introduzione Interfacce e protocolli Descrizione Stile di comunicazione Namespace e protocollo Include e system call Creazione e chiusura
DettagliCenni di programmazione distribuita in C++ Mauro Piccolo piccolo@di.unito.it
Cenni di programmazione distribuita in C++ Mauro Piccolo piccolo@di.unito.it Socket Nei sistemi operativi moderni i servizi disponibili in rete si basano principalmente sul modello client/server. Tale
DettagliDATAGRAM SOCKET. Angelastro Sergio Diomede Antonio Viterbo Tommaso
DATAGRAM SOCKET Angelastro Sergio Diomede Antonio Viterbo Tommaso Definizione supporta i datagram privo di connessione messaggi inaffidabili di una lunghezza massima prefissata il protocollo UDP supporta
DettagliLaboratorio di Programmazione in Rete
Laboratorio di Programmazione in Rete a.a. 2005/2006 http://www.di.uniba.it/~lisi/courses/prog-rete/prog-rete0506.htm dott.ssa Francesca A. Lisi lisi@di.uniba.it Orario di ricevimento: mercoledì ore 10-12
DettagliTECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI
TECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI Confronto tra ISO-OSI e TCP/IP, con approfondimento di quest ultimo e del livello di trasporto in cui agiscono i SOCKET. TCP/IP
DettagliEsercitazione [6] Client/Server con Socket
Esercitazione [6] Client/Server con Socket Leonardo Aniello - aniello@dis.uniroma1.it Daniele Cono D'Elia - delia@dis.uniroma1.it Sistemi di Calcolo - Secondo modulo (SC2) Programmazione dei Sistemi di
DettagliControllo Winsock di Visual Basic
Controllo Winsock di Visual Basic Il controllo Winsock, non visibile all'utente, consente di accedere ai servizi di rete TCP e UDP. Per creare applicazioni client o server non è necessario conoscere in
DettagliIntroduzione alle applicazioni di rete
Introduzione alle applicazioni di rete Definizioni base Modelli client-server e peer-to-peer Socket API Scelta del tipo di servizio Indirizzamento dei processi Identificazione di un servizio Concorrenza
DettagliTransmission Control Protocol
Transmission Control Protocol Franco Callegati Franco Callegati IC3N 2000 N. 1 Transmission Control Protocol - RFC 793 Protocollo di tipo connection-oriented Ha lo scopo di realizzare una comunicazione
DettagliJ+... J+3 J+2 J+1 K+1 K+2 K+3 K+...
Setup delle ConnessioniTCP Una connessione TCP viene instaurata con le seguenti fasi, che formano il Three-Way Handshake (perchè formato da almeno 3 pacchetti trasmessi): 1) il server si predispone ad
DettagliHTTP adaptation layer per generico protocollo di scambio dati
HTTP adaptation layer per generico protocollo di scambio dati Sandro Cavalieri Foschini 101786 Emanuele Richiardone 101790 Programmazione in Ambienti Distribuiti I - 01FQT prof. Antonio Lioy A.A. 2002-2003
DettagliInterazione (TCP) Client-Server con le socket
Interazione (TCP) Client-Server con le socket D. Gendarmi Interazione TCP Client/Server Server 2. Assegnare un local address alla socket 3. Settare la socket all ascolto 4. Iterativamente: a. Accettare
DettagliIntroduzione alla programmazione C di socket
Introduzione alla programmazione C di socket (testo di riferimento : M. J. Donahoo, K. L. Calvert, TCP/IP Sockets in C: Practical Guide for Programmers. Morgan Kaufman Publishers. ) A.A. 2005/06 Una rete
DettagliCOMUNICAZIONE TRA PROCESSI REMOTI IN UNIX
A cura del prof. Gino Tombolini 1 COMUNICAZIONE TRA PROCESSI REMOTI IN UNIX Il sistema UNIX TCP/IP fornisce un meccanismo di comunicazione tra processi residenti su nodi distinti di una rete, compatibili
DettagliIPC Inter Process Communication
Il protocollo TCP controlla che la trasmissione tra due end points avvenga correttamente. Non stabilisce alcun criterio su chi deve iniziare la comunicazione. Questo compito è svolto dalle applicazioni
DettagliSocket TCP. seconda parte
Socket TCP seconda parte Schema della connessione Computer 1 127.43.18.1 indirizzo I1 indirizzo I2 Computer 2 143.225.5.3 porta 45000 socket porta 5200 socket processo client processo server socket(...)
DettagliIntroduzione alla programmazione in C
Introduzione alla programmazione in C Testi Consigliati: A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. M. Ritchie Linguaggio C P. Tosoratti Introduzione all informatica Materiale
DettagliProva di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00
Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00 NB: alcune domande hanno risposta multipla: si richiede di identificare TUTTE le risposte corrette. Cognome: Nome:
DettagliOpzioni per le Socket
Opzioni per le Socket A.A. 2005/06 Opzioni per le Socket Ogni socket aperto ha delle proprietà che ne determinano alcuni comportamenti Le opzioni del socket consentono di modificare tali proprietà Ogni
DettagliTelematica II 12. Esercitazione/Laboratorio 4
Server UDP in JAVA Telematica II 12. Esercitazione/Laboratorio 4 DayTime daemon UDP Port 13 obiettivo realizzazione di un servizio per l invio della data/orario del server al client utilizzo di un datagram
DettagliTECN.PROG.SIST.INF. UDP socket in Windows. Roberta Gerboni
Roberta Gerboni Schema logico della comunicazione UDP in linguaggio C mediante Datagram socket. bind () Con i datagram socket (SOCK_DGRAM) viene realizzata una comunicazine che permette di scambiare dati
DettagliUDP. Livello di Trasporto. Demultiplexing dei Messaggi. Esempio di Demultiplexing
a.a. 2002/03 Livello di Trasporto UDP Descrive la comunicazione tra due dispositivi Fornisce un meccanismo per il trasferimento di dati tra sistemi terminali (end user) Prof. Vincenzo Auletta auletta@dia.unisa.it
Dettagli2.5. L'indirizzo IP identifica il computer di origine, il numero di porta invece identifica il processo di origine.
ESERCIZIARIO Risposte ai quesiti: 2.1 Non sono necessarie modifiche. Il nuovo protocollo utilizzerà i servizi forniti da uno dei protocolli di livello trasporto. 2.2 Il server deve essere sempre in esecuzione
DettagliApprofondimento di Marco Mulas
Approfondimento di Marco Mulas Affidabilità: TCP o UDP Throughput: banda a disposizione Temporizzazione: realtime o piccoli ritardi Sicurezza Riservatezza dei dati Integrità dei dati Autenticazione di
DettagliStandard di comunicazione
Standard di comunicazione Organizzato a livelli per ridurne la complessità e aumentarne la flessibilità il numero dei livelli e le loro funzionalità dipendono dal tipo di rete ogni livello formalizza un
Dettagli10.1. Un indirizzo IP viene rappresentato in Java come un'istanza della classe InetAddress.
ESERCIZIARIO Risposte ai quesiti: 10.1. Un indirizzo IP viene rappresentato in Java come un'istanza della classe InetAddress. 10.2. Un numero intero in Java è compreso nell'intervallo ( 2 31 ) e (2 31
DettagliReti di Telecomunicazione Lezione 8
Reti di Telecomunicazione Lezione 8 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Livello di trasporto Programma della lezione relazione tra lo strato di trasporto e lo strato
DettagliProgrammazione dei socket con TCP #2
I Il Server e il Client si scambiano messaggi attraverso la rete mediante un dell API (Application Programming Interface) Telematica II 10. Esercitazione/Laboratorio 3 Server ports Clients user space Socket
DettagliReti di Calcolatori. Il software
Reti di Calcolatori Il software Lo Stack Protocollare Application: supporta le applicazioni che usano la rete; Transport: trasferimento dati tra host; Network: instradamento (routing) di datagram dalla
DettagliProva in itinere - Rete Internet (ing. Giovanni Neglia) Mercoledì 23 Maggio 2007, ore 15.00
Prova in itinere - Rete Internet (ing. Giovanni Neglia) Mercoledì 23 Maggio 2007, ore 15.00 NB: alcune domande hanno risposta multipla: si richiede di identificare TUTTE le risposte corrette. Cognome:
Dettagliappunti delle lezioni Architetture client/server: applicazioni client
Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Architetture client/server: applicazioni client 1 Architetture client/server: un esempio World wide web è un esempio particolarmente
DettagliReti di Telecomunicazione Lezione 6
Reti di Telecomunicazione Lezione 6 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Lo strato di applicazione protocolli Programma della lezione Applicazioni di rete client - server
DettagliProva di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00
Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 200, ore 1.00 NB: alcune domande hanno risposta multipla: si richiede di identificare TUTTE le risposte corrette. Cognome: Nome:
DettagliCome si può vedere, la regola è stata fatta in modo da spostare tutti i messaggi di Spam nella cartella del cestino.
www.playnet.it agg. Documento 1/03/2007 REGOLE DEL CLIENT Le regole del client sono un sistema di smistamento dei messaggi (arrivati) fra le varie cartelle di posta presenti sul server. Possono essere
DettagliManuale di Aggiornamento BOLLETTINO. Rel. 5.20.1H4. DATALOG Soluzioni Integrate a 32 Bit
Manuale di Aggiornamento BOLLETTINO Rel. 5.20.1H4 DATALOG Soluzioni Integrate a 32 Bit - 2 - Manuale di Aggiornamento Sommario 1 2 PER APPLICARE L AGGIORNAMENTO... 3 1.1 Aggiornamento Patch Storica...
DettagliL uso di Socket UDP. TCP vs. UDP UDP
L uso di Socket UDP TCP TCP vs. UDP UDP 1 Interazione UDP Client/Server Server 1. Creare un socket 2. Assegnare un local address al socket 3. Iterativamente: a. Inviare e ricevere dati 4. Chiudere il socket
Dettagli1. RETI INFORMATICHE CORSO DI LAUREA IN INGEGNERIA INFORMATICA SPECIFICHE DI PROGETTO A.A. 2013/2014. 1.1 Lato client
RETI INFORMATICHE - SPECIFICHE DI PROGETTO A.A. 2013/2014 1. RETI INFORMATICHE CORSO DI LAUREA IN INGEGNERIA INFORMATICA SPECIFICHE DI PROGETTO A.A. 2013/2014 Il progetto consiste nello sviluppo di un
DettagliLuca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client
Versione 25.4.05 Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Architetture client/server: applicazioni client 1 Architetture client/server: un esempio World wide web è un
DettagliEsercizi (1-2): da: TCP/IP Sockets in C (Donahoo-Calvert)
Esercizi PARTE 1 Esercizi (1-2): da: TCP/IP Sockets in C (Donahoo-Calvert) When you make a phone call, it s usually the callee that answers with hello. What changes to our example client and server would
DettagliIl client deve stampare tutti gli eventuali errori che si possono verificare durante l esecuzione.
RETI INFORMATICHE CORSO DI LAUREA IN INGEGNERIA INFORMATICA SPECIFICHE DI PROGETTO A.A. 2010/2011 Il progetto consiste nello sviluppo di un applicazione client/server. Sia il server che il client dovranno
DettagliBACKUP APPLIANCE. User guide Rev 1.0
BACKUP APPLIANCE User guide Rev 1.0 1.1 Connessione dell apparato... 2 1.2 Primo accesso all appliance... 2 1.3 Configurazione parametri di rete... 4 1.4 Configurazione Server di posta in uscita... 5 1.5
DettagliEsempio 1: stampa locale di file remoto
Alcuni esempi di uso di Socket Esempio 1: stampa locale di file remoto Visualizzazione locale del contenuto di un file remoto. Il client deve richiedere la creazione della connessione e successivamente
DettagliSocket. Nei sistemi operativi moderni i servizi disponibili in rete si basano principalmente sul modello client/server.
Socket Nei sistemi operativi moderni i servizi disponibili in rete si basano principalmente sul modello client/server. Tale architettura consente ai sistemi di condividere risorse e cooperare per il raggiungimento
DettagliSocket & RMI Ingegneria del Software - San Pietro
Socket & RMI Ingegneria del Software - San Pietro Socket È possibile trattare la comunicazione di rete allo stesso modo con cui è possibile trattare la lettura da file. La classe Socket rappresenta la
DettagliLaboratorio di Programmazione in Rete
Laboratorio di Programmazione in Rete a.a. 2005/2006 http://www.di.uniba.it/~lisi/courses/prog-rete/prog-rete0506.htm dott.ssa Francesca A. Lisi lisi@di.uniba.it Orario di ricevimento: mercoledì ore 10-12
DettagliNote di rilascio. Aggiornamento disponibile tramite Live Update a partire dal. Il supporto per Windows XP e Office 2003 è terminato
Note di rilascio Aggiornamento disponibile tramite Live Update a partire dal Componenti Condivisi Versione 18.19.0 08 / 01 /2015 SINTESI DEI CONTENUTI Le principali implementazioni riguardano: Gestione
DettagliInizializzazione degli Host. BOOTP e DHCP
BOOTP e DHCP a.a. 2002/03 Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/~auletta/ Università degli studi di Salerno Laurea e Diploma in Informatica 1 Inizializzazione degli Host Un
DettagliGuida alla registrazione on-line di un DataLogger
NovaProject s.r.l. Guida alla registrazione on-line di un DataLogger Revisione 3.0 3/08/2010 Partita IVA / Codice Fiscale: 03034090542 pag. 1 di 17 Contenuti Il presente documento è una guida all accesso
DettagliCORSO DI RETI SSIS. Lezione n.2. 2 Novembre 2005 Laura Ricci
CORSO DI RETI SSIS Lezione n.2. 2 Novembre 2005 Laura Ricci IL DOMAIN NAME SYSTEM (DNS) Indirizzi IP poco adatti per essere memorizzati da utenti umani è prevista la possibiltà di associare nomi simbolici
DettagliInizializzazione, Assegnamento e Distruzione di Classi
Inizializzazione, Assegnamento e Distruzione di Classi Lezione 9 Operazioni Automatiche In ogni programma C++ oggetti classe vengono gestiti automaticamente dal compilatore Inizializzati al momento della
Dettaglistrutturare dati e codice
Puntatori e passaggio parametri strutturare dati e codice Tipo di dati int * Pi ; Op. dereferenziazione j = *Pi ; Op. indirizzo Pi = &i ; By value int f(int i) ; a = f(b) ; By address int f(int * Pi) ;
DettagliSocket TCP. prima parte
Socket TCP prima parte Cosa cambia: socket int fd = socket(pf_inet, SOCK_STREAM, 0); if (fd
DettagliTCP: trasmissione Source port [16 bit] - Identifica il numero di porta sull'host mittente associato alla connessione TCP. Destination port [16 bit] - Identifica il numero di porta sull'host destinatario
DettagliCreare connessioni cifrate con stunnel
ICT Security n. 24, Giugno 2004 p. 1 di 5 Creare connessioni cifrate con stunnel Capita, e purtroppo anche frequentemente, di dover offrire servizi molto insicuri, utilizzando ad esempio protocolli che
Dettaglirsystem Maximiliano Marchesi maximiliano.marchesi@studenti.unipr.it
Maximiliano Marchesi 28 Settembre 2005 Diario delle Revisioni Revisione 1.2 28 Settembre 2005 maximiliano.marchesi@studenti.unipr.it Sommario Introduzione..................................................................................
DettagliProgram m azione di Sistem a 6
Program m azione di Sistem a 6 Lucidi per il corso di Laboratorio di Sistemi Operativi tenuto da Paolo Baldan presso l'università Ca' Foscari di Venezia, anno accademico 2004/ 2005. Parte di questo materiale
DettagliScuola Superiore Sant Anna. Progetto parte Unix. AA 2008-2009: Distributed File Repository
Scuola Superiore Sant Anna Progetto parte Unix AA 2008-2009: Distributed File Repository Distributed File Repository Descrizione del sistema da realizzare Progettare e implementare un server che mantiene
DettagliTECN.PROG.SIST.INF. I Socket Roberta Gerboni
2015 - Roberta Gerboni Socket e porte I sistemi operativi multitasking possono fare girare contemporaneamente più processi dove ogni processo può rendere disponibili anche più servizi. Questi devono essere
DettagliGestione delle informazioni necessarie all attività di validazione degli studi di settore. Trasmissione degli esempi da valutare.
Gestione delle informazioni necessarie all attività di validazione degli studi di settore. Trasmissione degli esempi da valutare. E stato previsto l utilizzo di uno specifico prodotto informatico (denominato
DettagliAllocazione dinamica della memoria - riepilogo
Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica In breve Storage duration Allocazione dinamica della
DettagliAPI e socket per lo sviluppo di applicazioni Web Based
API e socket per lo sviluppo di applicazioni Web Based Cosa sono le API? Consideriamo il problema di un programmatore che voglia sviluppare un applicativo che faccia uso dei servizi messi a disposizione
DettagliLaboratorio di Programmazione in Rete
Laboratorio di Programmazione in Rete a.a. 2005/2006 http://www.di.uniba.it/~lisi/courses/prog-rete/prog-rete0506.htm dott.ssa Francesca A. Lisi lisi@di.uniba.it Orario di ricevimento: mercoledì ore 10-12
Dettagli(VHUFLWD]LRQLGLEDVHVXOOH6RFNHWLQ&
(VHUFLWD]LRQLGLEDVHVXOOH6RFNHWLQ& 3ULPRHVHUFL]LR6RFNHWVWUHDPFRQULGLUH]LRQH Si progetti un applicazione distribuita Client/Server per una rete di workstation UNIX (BSD oppure System V). In particolare,
DettagliImpostare il ridirezionamento di porta
Impostare il ridirezionamento di porta ID documento Impostare il ridirezionamento di porta Versione 1.5 Stato Stesura finale Data d emissione 11.09.2015 Centro Business Sommario 1.1 Esigenza 3 1.2 Descrizione
DettagliLaboratorio di Sistemi Operativi 29-01-2009. Cognome Nome Mat.
Il compito è costituito da domande chiuse, domande aperte ed esercizi. Non è consentito l uso di libri, manuali, appunti., etc. Tempo massimo 2 ore. Domande chiuse: ogni domanda corrisponde ad un punteggio
DettagliComunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione
I semestre 04/05 Comunicazione tra Computer Protocolli Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/professori/auletta/ Università degli studi di Salerno Laurea in Informatica 1
DettagliFunzioni in C. Violetta Lonati
Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Funzioni - in breve: Funzioni Definizione di funzioni
DettagliGestione dei File in C
Gestione dei File in C Maurizio Palesi DIIT Università di Catania Viale Andrea Doria 6, 95125 Catania mpalesi@diit.unict.it http://www.diit.unict.it/users/mpalesi Sommario In questo documento saranno introdotte
DettagliMODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it
MODELLO CLIENT/SERVER Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it POSSIBILI STRUTTURE DEL SISTEMA INFORMATIVO La struttura di un sistema informativo
DettagliIntroduzione al Linguaggio C
Introduzione al Linguaggio C File I/O Daniele Pighin April 2009 Daniele Pighin Introduzione al Linguaggio C 1/15 Outline File e dati Accesso ai file File I/O Daniele Pighin Introduzione al Linguaggio C
DettagliChat. Connettersi a un server di chat. Modificare le impostazioni di chat. Ricevere impostazioni chat. Chat
2007 Nokia. Tutti i diritti sono riservati. Nokia, Nokia Connecting People, Nseries e N77 sono marchi o marchi registrati di Nokia Corporation. Altri nomi di prodotti e società citati nel presente documento
DettagliRecord in C: il costruttore struct.
Record in C: il costruttore struct. Le variabili di tipo record e i nuovi tipi record si dichiarano in C tramite il costruttore di tipo struct:. ::= ;
DettagliReti di Telecomunicazioni Mobile IP Mobile IP Internet Internet Protocol header IPv4 router host indirizzi IP, DNS URL indirizzo di rete
IP Analizziamo con sufficiente dettaglio il sistema denominato IP, usato per consentire a due computer mobili di spostarsi liberamente in altre reti pur mantenendo lo stesso indirizzo IP. In particolare,
DettagliPer scrivere una procedura che non deve restituire nessun valore e deve solo contenere le informazioni per le modalità delle porte e controlli
CODICE Le fonti in cui si possono trovare tutorial o esempi di progetti utilizzati con Arduino si trovano nel sito ufficiale di Arduino, oppure nei forum di domotica e robotica. Il codice utilizzato per
DettagliReti di Telecomunicazione Lezione 7
Reti di Telecomunicazione Lezione 7 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Il protocollo Programma della lezione file transfer protocol descrizione architetturale descrizione
DettagliOutlook Plugin per VTECRM
Outlook Plugin per VTECRM MANUALE UTENTE Sommario Capitolo 1: Installazione e Login... 2 1 Requisiti di installazione... 2 2 Installazione... 3 3 Primo Login... 4 Capitolo 2: Lavorare con Outlook Plugin...
DettagliI/O su Socket TCP: read()
I/O su Socket TCP: read() I socket TCP, una volta che la connessione TCP sia stata instaurata, sono accedibili come se fossero dei file, mediante un descrittore di file (un intero) ottenuto tramite una
DettagliEsercizio 2. Client e server comunicano attraverso socket TCP
Esercizio 1 Scrivere una applicazione client/server in cui: Il client, in un ciclo infinito: Legge una stringa da standard input Invia al processo server la stringa. Il server visualizza: L'IP da cui si
DettagliL uso di Socket UDP. Usiamo le API Winsock incluse in <Winsock.h> A.A. 2005/06. Dott.ssa Valeria Carofiglio
L uso di Socket UDP Usiamo le API Winsock incluse in A.A. 2005/06 TCP TCP vs. UDP UDP Interazione UDP Client/Server Server 1. (Inizializzare una WSA) 2. Creare una socket 3. Assegnare un local
DettagliFirewall e Abilitazioni porte (Port Forwarding)
Firewall e Abilitazioni porte (Port Forwarding) 1 Introduzione In questa mini-guida mostreremo come creare le regole sul Firewall integrato del FRITZ!Box per consentire l accesso da Internet a dispositivi
Dettagli1. Manuale d uso per l utilizzo della WebMail PEC e del client di posta tradizionale
1. Manuale d uso per l utilizzo della WebMail PEC e del client di posta tradizionale Per poter accedere alla propria casella mail di Posta Elettronica Certificata è possibile utilizzare, oltre all'interfaccia
DettagliDNS-Tunneling. Reference to. Ettore di Giacinto Luca Montunato http://www.pilug.org
DNS-Tunneling Reference to Ettore di Giacinto Luca Montunato http://www.pilug.org Se, in un sistema, è possibile trasmettere bits ad un altro, ed esso risponde a questa trasmissione, è praticamente impossibile
DettagliCorso di Reti di Calcolatori T
Università degli Studi di Bologna Scuola di Ingegneria Corso di Reti di Calcolatori T Esercitazione 2 (proposta) Socket Java con connessione Luca Foschini Anno accademico 2015/2016 Esercitazione 2 1 Specifica
DettagliFirewall e NAT A.A. 2005/2006. Walter Cerroni. Protezione di host: personal firewall
Firewall e NAT A.A. 2005/2006 Walter Cerroni Protezione di host: personal firewall Un firewall è un filtro software che serve a proteggersi da accessi indesiderati provenienti dall esterno della rete Può
DettagliInterprocess Communications - II. Franco Maria Nardini
Interprocess Communications - II Franco Maria Nardini XSI IPC Tre tipi di IPC introdotti da System V: semafori shared memory code di messaggi Comunicazioni tra processi su stesso host Tutte consentono
DettagliEsercitazione. Formato di compitini e compiti: domande ed esercizi "closed book" G. Ferrari - Reti di calcolatori.
Esercitazione Formato di compitini e compiti: domande ed esercizi "closed book" Esercitazione - 1 Domanda 1 In una comunicazione di rete tra due host, quale è il client e quale è il server. Necessario:
Dettagli1. Panoramica Prodotto... 2 1.1 Sezione Anteriore... 2 1.2 Sezione Posteriore... 2
APPLIANCE FAX F90 Quick start guide Rev 1.2 1. Panoramica Prodotto... 2 1.1 Sezione Anteriore... 2 1.2 Sezione Posteriore... 2 2. Messa in opera... 3 2.1 Connessione dell apparato... 3 2.2 Primo accesso
DettagliANTISPAM PLAYNET (nuova Piattaforma) In questa piccola guida vogliamo mostrarvi come creare regole di BlackListe e Whitelist per
www.playnet.it agg. Documento 1/03/2007 ANTISPAM PLAYNET (nuova Piattaforma) Il modulo Instant Antispam di Playnet utilizza diversi sistemi e tecnologie: - Filtro Bayesiano - SpamAssassin - Analisi dei
DettagliNOTE OPERATIVE. Prodotto Inaz Download Manager. Release 1.3.0
Prodotto Inaz Download Manager Release 1.3.0 Tipo release COMPLETA RIEPILOGO ARGOMENTI 1. Introduzione... 2 2. Architettura... 3 3. Configurazione... 4 3.1 Parametri di connessione a Internet... 4 3.2
DettagliCopyright ZYCOO All rights reserved. V1.0. Manuale Utente by. Indice
MANUALE UTENTE Copyright ZYCOO All rights reserved. V1.0. Manuale Utente by Indice 1. Codici Funzione... 2 1.1 Blacklist... 2 1.2 Risposta per Assente (Pickup)... 2 1.3 Parcheggio Chiamata... 3 1.4 Trasferta
DettagliManuale Utente Amministrazione Trasparente GA
Manuale Utente GA IDENTIFICATIVO DOCUMENTO MU_AMMINISTRAZIONETRASPARENTE-GA_1.0 Versione 1.0 Data edizione 03.05.2013 1 Albo Pretorio On Line TABELLA DELLE VERSIONI Versione Data Paragrafo Descrizione
DettagliSoftware di gestione della stampante
Questo argomento include le seguenti sezioni: "Uso del software CentreWare" a pagina 3-11 "Uso delle funzioni di gestione della stampante" a pagina 3-13 Uso del software CentreWare CentreWare Internet
Dettagli- DocFinance Manuale utente
Interfaccia - DocFinance Manuale utente Installazione interfaccia. L interfaccia - DocFinance viene installata tramite il pacchetto di Setup, che permette di lanciare la console di configurazione automatica
DettagliServizi Remoti. Servizi Remoti. TeamPortal Servizi Remoti
20120300 INDICE 1. Introduzione... 3 2. Consultazione... 4 2.1 Consultazione Server Fidati... 4 2.2 Consultazione Servizi Client... 5 2.3 Consultazione Stato richieste... 5 3. Amministrazione... 6 3.1
DettagliLuca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni server
Versione 30.5.05 Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Architetture client/: applicazioni 1 La logica dei socket Abbiamo visto che un applicazione client si connette
DettagliGNred Ver1.5 Manuale utenti - Modulo diashow
GNred Ver1.5 Manuale utenti - Modulo diashow [ultima modifica 09.06.06] Modulo diashow Tramite questo modulo aggiuntivo di GNred è possibile rappresentare sul vostro sito un insieme di foto. Le foto vengono
DettagliEsercitazione Laboratorio di Sistemi Operativi 20-01-2014. Cognome Nome Mat.
Il compito è costituito da domande chiuse e domande aperte. Non è consentito l uso di libri, manuali, appunti., etc. Tempo massimo 2 ore. Domande chiuse: ogni domanda corrisponde ad un punteggio di 1 punto
Dettagli