• Non ci sono risultati.

Reti di calcolatoriProva scritta – 12 febbraio 2016

N/A
N/A
Protected

Academic year: 2021

Condividi "Reti di calcolatoriProva scritta – 12 febbraio 2016"

Copied!
2
0
0

Testo completo

(1)

Nome Cognome Matricola______________________________

Reti di calcolatori

Prova scritta – 12 febbraio 2016

Esercizio 1 [9 punti]

Si vuole realizzare un servizio Web per la raccolta dei dati di monitoraggio del livello dei fiumi in un bacino idrogeologico. Il servizio prevede le seguenti pagine:

1. Un form in cui si può scegliere il fiume da un menu a scelta singola, i punti di misura da un menu a scelta multipla e inserire il livello misurato (un numero decimale positivo inserito come stringa). Il form permette di specificare un insieme di punti di misura per uno stesso fiume ad ogni invio se il valore è lo stesso. Le opzioni dei menù devono essere generate dinamicamente a partire da array. Si assuma un array che contiene la lista (“Arbia”,

”Farma”, ”Merse”, ”Ombrone”) per i fiumi e (“P1”, “P2”, “P3”, “P4”) per i punti di misura.

2. Una pagina di raccolta dei dati che, per ogni fiume e punto di misura, memorizza sul server il valore massimo e minimo dei livelli inseriti col form di cui al punto 1 nella stessa sessione di lavoro.

3. Una pagina di riepilogo che stampa una tabella con le coppie livello minimo – livello massimo per ogni opzione fiume-punto di misura, oppure il carattere “-” se non ci sono valori memorizzati per quella combinazione. Si riportano per ogni fiume i punti di misura per cui è presente il minore rapporto fra il livello minimo e il livello massimo.

Si scrivano il form e le due pagine di raccolta dati e riepilogo usando HTML/PHP. Si supponga di utilizzare il metodo POST nel form.

Esercizio 2 [2 punti]

Dato il seguente codice PHP

$a['00'] = 0.1;

$a['01'] = "${a['00']}01";

$a['11'] = $a['00']*$a['01'];

foreach($a as $k=>$v) {$n = $n.$k.$v;}

indicare quali sono le variabili definite nell’interprete dopo l’esecuzione del codice, con il loro tipo e valore.

Esercizio 3 [punti 5]

Si vuole definire un formato per l’interscambio dati relativo alla gestione dei dati di monitoraggio di un bacino idrogeologico. Il file scambiato specifica la lista dei corsi d'acqua monitorati nel bacino.

Ciascun corso d'acqua è identificato da un codice numerico (integer) e ha associato un nome (string), la tipologia (string, es. “fiume”, “torrente”), la lunghezza (decimal), la lista delle misurazioni effettuate e la lista degli interventi di manutenzione. Per ogni misurazione si specifica il momento in cui è stata effettuata (dateTime), il tipo di misurazione (string, es. “livello”, “portata” ), le

coordinate geografiche in cui è stata effettuata (string, es. “43.313914, 11.338857”) e il valore misurato (decimal). Per ogni intervento di manutenzione si indicano la data (date), le coordinate geografiche in cui è stato effettuato (string) e la descrizione (string, es. “sistemazione argini”). Si proponga la struttura XML necessaria, mostrando un esempio, e si scriva il file XML schema

associato.

(2)

Esercizio 4 [punti 4]

Dato il seguente schema di rete

scegliere la configurazione di rete dell’host 11 (IP, netmask e configurazione di routing) e indicare il contenuto delle tabelle di routing del router R1.

Esercizio 5 [punti 5]

Si scriva il codice javascript necessario ad implementare la seguente funzionalità in una pagina HTML: la pagina contiene due menu a tendina in cui il primo ha come opzioni una lista di classi predefinite (es. “A”, “B”, “C”) e il secondo una lista di colori (es. “yellow”, “cyan”, “lavender”,

“lightgreen”, ”white”). Quando viene modificato il valore selezionato nel menu dei colori (evento onchange), il colore di sfondo di tutti gli elementi del solo tipo paragrafo (tag P) della classe selezionata dal primo menu assumono il colore selezionato. Nota: il tag di un elemento HTML in javascript è accessibile con la proprietà tagName (es. e.tagName) che fornisce la stringa in uppercase; il colore di sfondo è definito dalla proprietà style.backgroundColor.

Esercizio 6 [punti 5]

Spiegare come è reso possibile l'inoltro al destinatario corretto dei pacchetti in una connessione TCP.

Host 1 Host 2

Host 3 Host 4

Host 5

Host 6

Host 7 Host 8 Host 9

Host 10

Internet

R4

R2

R3 R1

172.27.32.0/19 serial 0

serial 0

serial 0 eth 0

eth 0

eth 0

eth 0 eth 1

eth 1 eth 1

Host 11

eth 1 192.168.7.73

151.63.104.1 172.27.32.1

199.1.42.64/26

199.1.42.65

192.168.7.72/30

151.63.104.0/21 172.27.32.3

172.27.32.2

192.168.7.74

199.1.42.192/26 199.1.42.193

151.63.40.0/21 151.63.40.1

151.63.56.0/21 151.63.56.1

Riferimenti

Documenti correlati

Si scriva il codice javascript necessario ad implementare la seguente funzionalità in una pagina HTML: entrando con il cursore in un elemento di tipo <p>

Si scriva il codice javascript necessario ad implementare la seguente funzionalità in una pagina HTML: quando si passa sopra una riga di una tabella (elemento

Si scriva il codice javascript necessario ad implementare la seguente funzionalità in una pagina HTML: scrivendo in un campo di testo predefinito il nome di una

Si scriva il codice javascript necessario ad implementare la seguente funzionalità in una pagina HTML: cliccando su una immagine (tag HTML <img>), questa e tutte

Una pagina di riepilogo che stampa una tabella con la media di peso per ogni combinazione compagnia-fascia oraria, oppure il carattere “-” se non c'è un

Una pagina di raccolta dei dati che, per ogni orario e punto di misura, memorizza sul server il valore massimo e minimo dei livelli di rumore inseriti col form di cui al punto 1

Per ogni servizio si specifica il nome identificativo del processo server (string), la porta (integer), il tipo di protocollo (string, “http”) e la lista degli

Una pagina di raccolta dei dati che, per ogni fascia oraria e tratto di rilevazione, memorizza sul server il valore massimo e minimo delle velocità medie inserite col form di cui