Corso di Reti di Calcolatori T



Documenti analoghi
Corso di Reti di Calcolatori L-A

Il client deve stampare tutti gli eventuali errori che si possono verificare durante l esecuzione.

Esercizio 2. Client e server comunicano attraverso socket TCP

Programmazione dei socket con TCP #2

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni server

1. RETI INFORMATICHE CORSO DI LAUREA IN INGEGNERIA INFORMATICA SPECIFICHE DI PROGETTO A.A. 2013/ Lato client

Installazione del software Fiery per Windows e Macintosh

Corso di Reti di Calcolatori T

10.1. Un indirizzo IP viene rappresentato in Java come un'istanza della classe InetAddress.

MUDE Piemonte. Modalità operative per eseguire Firma e inoltro del modello

ProgettAzione tecnologie in movimento - V anno Unità 4 - Realizzare applicazioni per la comunicazione in rete

PROCESSO CIVILE TELEMATICO GUIDA RAPIDA AGLI ADEMPIMENTI

Reti di Telecomunicazione Lezione 7

Socket & RMI Ingegneria del Software - San Pietro

FTP. Appunti a cura del prof. ing. Mario Catalano

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client

Airone Gestione Rifiuti Funzioni di Esportazione e Importazione

Protocollo di trasmissione Trova il Tuo Farmaco. Indice. Versione documento: 1.4 Data: 29/06/2011

MANUALE UTENTE. In questo manuale verranno descritte tutte le sue funzioni. Il sistema OTRS è raggiungibile al seguente link:

Gestione dei servizi all utenza. 3. Autorizzazioni

Per scrivere una procedura che non deve restituire nessun valore e deve solo contenere le informazioni per le modalità delle porte e controlli

Sistema per il monitoraggio della Spesa Sanitaria

FPf per Windows 3.1. Guida all uso

MANUALE ESSE3. Iscrizione alle prove d esame e visione esiti STUDENTI

Stampe in rete Implementazione corretta

Gestione degli appelli e verbalizzazione degli esami online GUIDA DOCENTI. (versione 1.0 del )

BOZZA MANUALE SDI-FVG PASSIVE SOMMARIO

Note per generazione file.txt per invio trimestrale V.P. all AGENZIA DELLE ENTRATE

Il Web Server e il protocollo HTTP

Istruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito)

CONFIGURAZIONE NUOVO SISTEMA DI POSTA ELETTRONICA CON THUDERBIRD

COME CREARE UNA LEZIONE

GUIDA ALL UTILIZZO DEL PORTALE DELLA RETE DEI COMUNI OGLIO PO

Guida al sistema. Dott. Enea Belloni

I casi d uso corrispondono ai compiti che l attore (che può essere una persona fisica e non) può svolgere.

PORTALE CLIENTI Manuale utente

Applicazioni distribuite

Ministero della Giustizia

Sommario. Oggetto: Istruzioni configurazione client VPN SSL per piattaforma Windows Data: 25/01/2016 Versione: 1.0

2.5. L'indirizzo IP identifica il computer di origine, il numero di porta invece identifica il processo di origine.

UNIWEB: GUIDA OPERATIVA PER L APERTURA DEGLI APPELLI (giugno 2011)

Università degli Studi di Messina

Manuale di sistema Napoli 09 Ottobre T.R.F Transcodifica File V1.5

Studi di Settore. Nota Operativa 22/4/2013

Pronto Esecuzione Attesa Terminazione

Limiti della gestione tradizionale degli archivi. Prof. Francesco Accarino IIS Altiero Spinelli

appunti delle lezioni Architetture client/server: applicazioni client

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 7 Febbraio 2005, ore 15.00

Sistemi Informativi I Caso di studio con applicazione di UML

Registratori di Cassa

SERVIZIO MUTA-SCIA NOTE DI RILASCIO DELLA VERSIONE DI MARZO Revisione del Documento: 01 Data revisione:

ISTRUZIONI GEAFER 2. Conclusa la registrazione, l utente potrà accedere al proprio profilo ed eventualmente modificare i dati inseriti.

Messaggi volatili. Matteo Zignani. 10 gennaio 2015

NOTE OPERATIVE. Prodotto Inaz Download Manager. Release 1.3.0

Topologia delle reti. Rete Multipoint: ogni nodo è connesso agli altri tramite nodi intermedi (rete gerarchica).

I.N.A.I.L. Certificati Medici via Internet. Manuale utente

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.

Guida per l accesso alla rete dati Wireless Windows Vista

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4)

Architettura Client-Server

Sommario. Oggetto: Istruzioni configurazione client VPN per piattaforma Mac OSX Data: 25/01/2016 Versione: 1.0

REGOLE PER L ESAME (agg.te settembre 2015)

Omnia Web Timesheet. Manuale utente

Transmission Control Protocol

Guida all Utilizzo dell Applicazione Centralino

SUAP. Per gli operatori SUAP/amministratori. Per il richiedente

Sistema per il monitoraggio della Spesa Sanitaria

LA CASELLA PEC Dipartimentale

Software Servizi Web UOGA

Tabelle di riferimento Pulsanti Inserire documento Predisposizione doc Approvazione Doc Numerazione Doc Pubblicazione Albo Webservice

PROCEDURA INVENTARIO DI MAGAZZINO di FINE ESERCIZIO (dalla versione 3.2.0)

MANUALE DEL FLASH POINT MANAGER 19 Luglio 2007 INDEX

Un qualsiasi computer con connessione ad Internet di tipo xdsl o altra tipologia che ne assicuri adeguate prestazioni in termini di velocità di banda;

Esercitazione [5] Input/Output su Socket

Java SOAP Client. Manuale per l installazione. WebEDI Scambio elettronico documenti. ManualeInstallazioneSoapCli ent

B R E V E G U I D A ( V I S I S L A B C O F F E E ) Breve guida page 1

Guida all utilizzo della Piattaforma per la staffetta di Scrittura Creativa Manuale pratico per docenti e tutor

Capitolo 1 Installazione del programma

Start-up. Lo scopo di questa Guida è quello di fornire le prime informazioni per permettere al Presidente di Sezione di:

Cup HiWeb. Integrazione dei servizi del CUP Marche in applicativi di terze parti

Protocolli applicativi: FTP

ICARO Terminal Server per Aprile

Reti di Calcolatori PROTOCOLLO FTP. File. File Transfer Protocol Modello FTP Operazioni FTP Comandi del protocollo Esempi di Client FTP avanzati

Guida Migrazione Posta Operazioni da effettuare entro il 15 gennaio 2012

Guida Rapida di Syncronize Backup

Il protocollo BitTorrent

Indice GAMMA. Guida utente

Guida alla procedura di inserimento materiale didattico sui minisiti degli insegnamenti

Reti di Calcolatori PROTOCOLLO FTP

CAUSALI CONTABILI INSERIMENTO/PERSONALIZZAZIONE DI UNA CAUSALE

GESTIONE 770 TRASFERIMENTO DATI DA ARCHIVIO CONTABILE

Dopo aver installato WSFTP.le, alla prima schermata quando lo apriamo vedremo questo.

GPSTAR Evolution - Aggiornamento del 18 Giugno 2015 Rel

NAVIGARE FRA LE PRATICHE...

Guida alla Pubblicazione di un WEB a cura del Prof. ETTORE PANELLA

Tecnologie di Sviluppo per il Web

Estensione di un sistema per la gestione semi-automatica di siti didattici con XML

ESERCITAZIONE PREPARAZIONE ALL ESAME INGEGNERIA DEL SOFTWARE

COMPILAZIONE DEL RAPPORTO DI RIESAME ANNUALE 2014/15

File Server Resource Manager (FSRM)

Transcript:

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 Client Sviluppare un applicazione C/S che effettui il trasferimento dal client al server di tutti i file di un direttorio, in particolare quelli che iniziano con un prefisso dato dall utente (multiple put con match di nome). Il client chiede all utente il nome del direttorio, relativo al direttorio corrente dove viene lanciato il cliente e un prefisso, si connette al server con una socket connessa (con java.net.socket), usandone lo stream di output per inviare informazioni, e lo stream di input per ricevere il comando di attivazione del trasferimento per ciascun file. Il server fornisce un attiva nel caso un file con quel nome non sia presente sul file system del server con quel nome, esito negativo altrimenti (ad esempio salta file ). I file richiesti vengono salvati nel direttorio corrente sul server e il protocollo indicato evita che vengano sovrascritti file esistenti che abbiano lo stesso nome. Esercitazione 2 2

Specifica Server Il server attende una richiesta di connessione da parte del client (sulla server socket di ascolto java.net.serversocket), usa la socket (java.net.socket) prodotta dalla connessione per creare uno stream di input da cui ricevere i nomi dei file e il contenuto dei file, e uno stream di output su cui inviare il comando di attivazione trasferimento, anche per più richieste di multiple put dallo stesso client. Si noti che si deve utilizzare la stessa socket per il trasferimento di tutti i file del direttorio. Il server deve essere realizzato come server concorrente e parallelo. Per ogni nuova richiesta ricevuta il processo padre, dopo aver accettato la richiesta, attiva un processo figlio a cui affida il completamento del servizio richiesto. Esercitazione 2 3 Note per la realizzazione Per il trasferimento dei file bisogna studiare un protocollo per la gestione del trasferimento multiplo. Ad esempio il client, prima dell invio del singolo file, può inviare il nome del file eilnumero di byte da cui il file è composto, quindi il client invia lo stream di byte. Il server segue questo protocollo per ogni file e utilizza la medesima socket per gestire tutte le comunicazioni. Il ciclo si ripete fino a quando tutti i file nel direttorio richiesto sono stati inviati, quindi il client notifica la fine delle trasmissioni chiudendo la comunicazione e la connessione. File1 Trovare un modo per File2 indicarlo. Client File3 Server Esercitazione 2 4

Note per la realizzazione Più in dettaglio, si vuole realizzare il seguente protocollo: Client nomefile1 lengthfile1 File1 nomefilek attiva salta Server nomefilen lengthfilen FileN attiva Esercitazione 2 5 Trasferimento di più direttori (versione semplificata) Per il trasferimento di più direttori bisogna studiare un opportuno protocollo. Anzitutto si sottolinea che il direttorio è una struttura locale che non può essere trasferita come un qualsiasi altro file dati. Se non ci interessa ricostruire la struttura in direttori (lato server) è possibile riutilizzare il protocollo proposto in precedenza procedendo, per i vari direttori e i file all interno di ciascuno di essi come segue: prima dell invio del singolo file che inizia col prefisso richiesto, può inviare il nome del file eilnumero di byte da cui il file è composto, quindi il client invia lo stream di byte. Il server segue questo protocollo per ogni file e utilizza la medesima socket per gestire tutte le comunicazioni e salva tutti i file nel medesimo e unico direttorio corrente. Il ciclo si ripete fino a l utente non indica un finefile, che provoca anche la chiusura della comunicazione col server, l intenzione di interrompere la sessione. Esercitazione 2 6

Proposta di estensione: Trasferimento direttori (mget) Si estenda il programma sviluppato in modo che gestisca il trasferimento di più direttori dal server al client (multiple get dei file dei direttori di nome prefisso). Protocollo: si estenda il protocollo in modo da abilitare il trasferimento di diversi direttori utilizzando la stessa unica connessione dal cliente al server. Per ogni richiesta, il Client dovrà creare in locale un direttorio con lo stesso nome di quello richiesto, dove verranno salvati i file inviati dal server, quindi dovrà salvare in tale direttorio i file in arrivo dal server, e mettersi in attesa di una nuova richiesta dell utente. Esercitazione 2 7 Proposta di estensione: Trasferimento più direttori (mget) Il Server, invece, per ogni richiesta di direttorio, deve inviare tutti i file del direttorio, e notificare la fine della trasmissione del direttorio stesso. Si gestisca inoltre la terminazione dell interazione fra client e server: il client deve poter indicare al server la propria intenzione di chiusura dell interazione. Una volta terminata la sessione client eserver(processo figlio del server principale) terminano la propria esecuzione. Esercitazione 2 8

Get e Put Coordinate Si estenda ulteriormente il programma sviluppato in modo da abilitare il funzionamento del server in modalità sia get (trasferimento dal server al client) che put (trasferimento dal client al server). Protocollo: si estendano i protocolli proposti, in modo da gestire la sessione di lavoro fra client e server utilizzando sempre una stessa connessione. Per ogni richiesta, il Client richiede all utente il tipo della richiesta che viene inoltrata al server (put o get); poi, Client e Server si coordinano per portare a termine l operazione richiesta. Al termine, il client si pone in attesa di una nuova richiesta dell utente fino alla terminazione dell interazione. Esercitazione 2 9 Consegna Chi realizza la estensione può inviare via Piazza lo svolgimento dell estensione, in modo da discutere la soluzione con i docenti ed eventualmente proporla e esaminarla insieme agli altri studenti Esercitazione 2 10