Sei sulla pagina 1di 1

Reti di Calcolatori (ITPS, Corso M-Z)

a.a. 2023-24 Assegnazione TCP


Consegna entro il 30 Novembre 2023

Progettare e implementare un’applicazione TCP client/server secondo il seguente protocollo


applicativo:

1) Il server è avviato su una data porta.

2) Il client, richiede la connessione al server.

3) Stabilita la connessione, il server invia al client la stringa "connessione avvenuta".

4) Il client riceve la stringa e la stampa.

5) Il client legge una lettera dallo std input e la invia al server.

6) Il server riceve la lettera dal client e a seconda della lettera ricevuta si comporta nel seguente modo:

Se la lettera corrisponde a “A” o (“a) invia al client la stringa “ADDIZIONE”;

Se la lettera corrisponde a “S” o (“s”) invia al client la stringa “SOTTRAZIONE”;

Se la lettera corrisponde a “M” o (“m”) invia al client la stringa “MOLTIPLICAZIONE”;

Se la lettera corrisponde a “D” o (“d”) invia al client la stringa “DIVISIONE”;

Se la lettera non corrisponde a nessuna delle lettere indicate invia al client la stringa “TERMINE
PROCESSO CLIENT”

7) Il client riceve la stringa inviata dal server. Nel caso in cui ci si trovi in uno dei primi 4 casi del punto
precedente il client legge dallo std input due interi e li spedisce al server; altrimenti termina il processo.

8) Il server riceve i due interi dal client e a seconda della lettera ricevuta al punto 6) esegue l’operazione
corrispondente e invia il risultato al client. A questo punto termina la connessione corrente e resta in attesa di
nuove connessioni. Il server gestisce un client per volta e non termina mai il suo processo.

9) Il client visualizza sullo std output l’intero inviato dal server e termina il processo.

NOTE:

• Ø La consegna deve avvenire secondo le modalità descritte a lezione, ossia caricando il


sorgente del codice portabile di client e server sulla vostra repository Github. Non chiedete che
sia inviata una conferma di ricezione

Ø I risultati delle correzioni saranno pubblicati sulla piattaforma di eLearning del


dipartimento

Ø La consegna deve includere il sorgente dei 2 progetti Eclipse (uno per il client e uno per
il server) come cartelle. Utilizzare la seguente nomenclatura per i due progetti: client-
TCP_nomegruppo e server- TCP_nomegruppo

Potrebbero piacerti anche