Esercizio 2. Client e server comunicano attraverso socket TCP



Похожие документы
MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

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

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

Controllo Winsock di Visual Basic

Socket TCP. seconda parte

Esercitazione [6] Client/Server con Socket

Introduzione alle applicazioni di rete

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

Automatizzare i compiti ripetitivi. I file batch. File batch (1) File batch (2) Visualizzazione (2) Visualizzazione

POSTA ELETTRONICA Per ricevere ed inviare posta occorrono:

Esercizi (1-2): da: TCP/IP Sockets in C (Donahoo-Calvert)

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

Programmazione dei socket con TCP #2

Telefonare su PC Panoramica

Il sistema operativo UNIX/Linux. Gli script di shell

Abilitare la connettività per 3PAR Storage

J+... J+3 J+2 J+1 K+1 K+2 K+3 K+...

Manuale per la configurazione di AziendaSoft in rete

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

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

Nelle reti di calcolatori, le porte (traduzione impropria del termine. port inglese, che in realtà significa porto) sono lo strumento

rsystem Maximiliano Marchesi

Configurazione di Outlook Express

Sistemi operativi. Esempi di sistemi operativi

GUIDA AL FUNZIONAMENTO DEL PROGRAMMA "UDVPANEL" PER PC

Liberare la memoria allocata dinamicamente.

Sviluppata da: Lo Russo - Porcelli Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL.

MANUALE D USO SAREMA SF1000

3 - Variabili. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

appunti delle lezioni Architetture client/server: applicazioni client

2 Configurazione lato Router

Test di comunicazione tra due LOGO! 0BA7: Master - Master

Parte II: Reti di calcolatori Lezione 10

COME CREARE E COLLEGARSI AD UN DATABASE MICROSOFT SQL SERVER O SUN MYSQL

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

Interprocess Communications - II. Franco Maria Nardini

Assistenza Clienti Gestione dei ticket in ambiente multi utenza. Software di CRM vtiger

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

COME CONFIGURARE UN CLIENT DI POSTA

Sistemi Operativi: Programmazione di Sistema

Pronto Esecuzione Attesa Terminazione

Client operatore - LiveOperator

Studi di Settore. Nota Operativa 22/4/2013

Indice GAMMA. Guida utente

NOME 0 PROVIDER DOMINIO istruzione.it

Introduzione a JDConnector

Altri tipi di connessione

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

Applicazioni distribuite

Il tuo manuale d'uso. LEXMARK X502N

Cenni di programmazione distribuita in C++ Mauro Piccolo

Sistema di gestione Certificato MANUALE PER L'UTENTE

19. LA PROGRAMMAZIONE LATO SERVER

Breve guida all'utilizzo di TortoiseSVN

Prof. Giuseppe Chiumeo. Avete già studiato che qualsiasi algoritmo appropriato può essere scritto utilizzando soltanto tre strutture di base:

Socket TCP. prima parte

Registratori di Cassa

Installazione del software Fiery per Windows e Macintosh

Accesso al Sistema di Posta Elettronica OWA (Outlook Web Access)

Corso basi di dati Installazione e gestione di PWS

Xampp. Valeriano Maysonnave - A.A. 2014/2015 -

Omnia Web Timesheet. Manuale utente

Programma di configurazione di reti NetWare

MANUALE DEL FLASH POINT MANAGER 19 Luglio 2007 INDEX

Test in automatico di programmi Android

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

Corso di Sistemi Operativi Ingegneria Elettronica e Informatica prof. Rocco Aversa. Raccolta prove scritte. Prova scritta

Client - Server. Client Web: il BROWSER

Blue s Hotel Pro Il software che hai sempre desiderato per il tuo Hotel!

NetMonitor. Micro guida all uso per la versione di NetMonitor

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

1. Manuale d uso per l interfaccia web di Gestione PEC2

Scrivere uno script php che, dato un array associativo PERSONE le cui chiavi sono i

Corso di Informatica

Telematica II 12. Esercitazione/Laboratorio 4

Configurazione di Microsoft Outlook 2007

MANUALE CONFIGURAZIONE ED UTILIZZO GATEWAY MBUS-MODBUS (RTU/TCP) MODELLO PiiGAB M900

PORTALE CLIENTI Manuale utente

Guida all'impostazione dei messaggi di avviso e delle destinazioni di scansione per le stampanti X500 Series

HTTP adaptation layer per generico protocollo di scambio dati

HORIZON SQL CONFIGURAZIONE DI RETE

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo

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

REGISTRAZIONE ALL AREA CLIENTI

1. Manuale d uso per l interfaccia web di Gestione PEC

I/O su Socket TCP: read()

Транскрипт:

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 e' connesso il client I messaggi testuali inviati dal client Client e server terminano quanto l utente digita la stringa exit Scrivere due verioni dell esercizio. Una prima in cui Client e server comunicano attraverso socket locali Una prima in cui Client e server comunicano attraverso socket TCP.

Esercizio 2 Scrivere una applicazione client/server in cui il server accetta i seguenti comandi: TIME: Il server invia al client l'ora corrente DATE: Il server invia al client la data corrente PORT: Il server crea un nuovo socket, invia il numero di porta al client. Successivamente al comando PORT, tutte le comunicazioni avvengono sul nuovo socket. Il client riceve dall'utente il comando da inviare al server Nota: Se un process esegue la listen su un socket su cui NON ha eseguito la bind, il sistema operativo associa una porta libera casuale. Il processo puo' ottenere il numero di porta assegnato dal sistema utilizzando la funzione getsockname() Client e server comunicano attraverso socket TCP

Esercizio 3 Scrivere una applicazione client/server in cui Il server puo' gestire concorrentemente piu' client. Quando il client si collega al server, viene creato un processo figlio che gestisce l'intera sessione per il client. Il server riceve dal client una stringa ed invia al client l'indirizzo IP associato alla stringa. Il client invia al server le stringhe lette da standard input termina quando l'utente digita la stringa exit. Client e server comunicano attraverso socket TCP

Esercizio 4 Scrivere una applicazione client/server in cui Il server puo' gestire concorrentemente piu' client. Il client Legge da standard input una espressione aritmetica <operando1> <operatore> <operando2> e la invia al server Il server esegue l'operazione ed invia il risultato al client Il client visualizza il risultato. termina quando l'utente digita la stringa exit. Client e server comunicano attraverso socket TCP

Esercizio 5 Scrivere una applicazione client/server in cui Il client Invia al server una stringa. Visualizza le informazioni ricevute dal server. termina quando l'utente digita la stringa exit. Il server: Riceve una stringa dal client. Se la stringa corrisponde al nome di un file nella directory corrente, invia al client il contenuto del file. Se la stringa corrisponde al nome di una sottodirectory della directory corrente, invia al server l elenco dei file regolari contenuti nella sottodirectory indicata Altrimenti invia l elenco di tutti I file contenuti nella directory corrente. Il server deve essere in grado di gestire piu client concorrentemente. Client e server comunicano attraverso socket TCP

Esercizio 6 Scrivere una applicazione client-server in liguaggio C in cui: Il server: Crea un processo figlio per ogni client Il processo figlio riceve da client uno dei seguenti comandi READ <nomefile>: Scrive sul socket il contenuto del file <nomefile>. Se il file non esiste, scrive sul socket Non esiste. WRITE <nomefile>: Scrive nel file <nomefile> le informazioni lette dal socket. Il processo figlio termina dopo l esecuzione di un solo comando. Il client Riceve su riga di comando gli indirizzi di DUE server, IP1 ed IP2, ed il nome di un file <nomefile>. Invia al primo server il comando READ <nomefile> Invia al secondo server il comando WRITE <nomefile> Quando il client termina, il file <nomefile> deve essere presente sul server con indirizzo IP2. Il suo contenuto e : Il contenuto di <nomefile> sul server IP1, se questo file esiste La stringa Non esiste se NON esiste il file <nomefile> sul server con indirizzo IP1. Client e server comunicano attraverso socket TCP.

Esercizio 7 Scrivere una applicazione client-server in liguaggio C in cui: Il server: Crea un processo figlio per ogni client Il processo figlio riceve uno dei seguenti comandi Il client SH: Invia al client l output dello script shell /usr/bin/myscript.sh FS: Invia al client l output dello comando df EXIT: Termina legge comandi da standard input invia i comandi al server (Si assuma che i comandi siano sempre corretti) visualizza i messaggi ricevuti dal server Termina quando l utente inserisce EXIT Client e server comunicano attraverso socket TCP.

Esercizio 8 Scrivere una applicazione client/server in cui Il client: Legge dallo standard input una stringa (max 100 caratteri) Invia la stringa al server; Visualizza la risposta del server; Termina quando l utente digita FINE Il server crea per ogni client un processo figlio: Riceve dal client una stringa Invia al client Se la stringa corrisponde ad un file eseguibile L output del esecuzione Se la stringa corrisponde ad una directory Il numero di file regolari contenuti in essa contenuti; Altrimenti invia l intero -1.

Esercizio 9 Si scriva una applicazione client-server in C che simuli un call center. Esistono due tipi di server: Operatore e Scheduler. Si assuma che esistano al più N server di tipo Operatore e che esista esattamente un solo server di tipo Scheduler. Quando un server Operatore viene eseguito: si collega al server Scheduler inviando un numero di porta; si mette in attesa di chiamate da parte degli utenti. Il client Utente, richiede una connessione al server Scheduler il quale risponderà inviando: l indirizzo IP ed il numero di porta associato ad un operatore disponibile; il messaggio Server Busy se tutti gli scheduler attivi sono occupati. Se il client riceve un indirizzo valido: apre una connessione con il server operatore ; legge stringhe da standard input; invia le stringhe lette all operatore; visualizza le risposte dell operatore Termina quando viene digitata la stringa fine. Il server operatore re-invia al client i messaggi ricevuti. Quando un client termina, il server operatore informa lo scheduler che e nuovamente libero.