• Non ci sono risultati.

Reti di calcolatoriProva scritta – 8 settembre 2016

N/A
N/A
Protected

Academic year: 2021

Condividi "Reti di calcolatoriProva scritta – 8 settembre 2016"

Copied!
2
0
0

Testo completo

(1)

Nome Cognome Matricola_______________________________

Reti di calcolatori

Prova scritta – 8 settembre 2016

Esercizio 1 [9 punti]

Si vuole realizzare un servizio Web per la raccolta dei dati relativi alla concentrazione di ossigeno nelle acque di una laguna. Il servizio prevede le seguenti pagine:

1. Un form in cui si può scegliere l’orario della misura da un menù a scelta singola, il/i punti di misura da un menù a scelta multipla e il valore di concentrazione misurato (un numero decimale) in un campo di testo. Il form permette di specificare un insieme di punti di misura per una stessa ora ad ogni invio se la concentrazione misurata è la stessa. Le opzioni dei menù devono essere generate dinamicamente a partire da array. Si assuma un array che contiene la lista (“08:00”, ”12:00”, ”16:00”, ”20:00”) per l’orario e (“42.43-11.18”, “42.44- 11.19”, “42.44-11.21”, “42.45-11.20”) per i punti di misura.

2. Una pagina di raccolta dei dati che memorizza sul server gli inserimenti fatti col form di cui al punto 1 nella stessa sessione di lavoro. Per ogni orario e punto di misura si memorizzano i valori massimo e minimo delle concentrazioni inserite.

3. Una pagina di riepilogo che stampa una tabella con il rapporto fra la concentrazione minima e quella massima per ogni opzione orario-punto di misura, oppure il carattere “-” se non ci sono valori memorizzati per quella combinazione. Si riporta/no poi per ogni punto di misura l’/gli orario/i che ha/hanno la massima differenza relativa fra la concentrazione maggiore e quella minore (calcolata come 1-concentrazione_minore/concentrazione_maggiore).

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 for($k=1;$k<4;$k++)

$a[“$k.$k”] = $k*0.1;

foreach($a as $i=>$v) $s = $i+$v;

$t = “r=”.$s*10;

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 al monitoraggio ambientale di una riserva naturalistica. Il file scambiato specifica la lista delle zone in cui è suddivisa la riserva. Per ogni zona sono specificati un codice identificativo (integer), il tipo di ambiente (string, es. “bosco”), la superficie in ettari (decimal), una lista di eventi e una lista di rilevazioni. Per ogni evento si specifica il timestamp (dateTime), le coordinate geografiche in cui è stato rilevato (string, es.

“42.555479, 11.725679”) e la descrizione dell’evento (string, es. “incendio”). Per ogni rilevazione si specificano la data (date), l'ora (time), il tipo di misura (string, es. “temperatura”) e il valore misurato (string). 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 7 (IP, netmask e configurazione di routing) e indicare il contenuto delle tabelle di routing del router R2.

Esercizio 5 [punti 5]

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 classe, tutti gli elementi paragrafo (tag <P>) di quella classe (il tag di elemento è disponibile come attributo tagName) vengono evidenziati con un bordo rosso (si assegna alla proprietà border il valore "thick solid red") quando viene premuto il tasto “return” (evento keypress con keyCode 13). Quando viene fatto un nuovo inserimento, il bordo degli elementi evidenziati in precedenza viene rimosso (si assegna “initial”

alla proprietà border).

Esercizio 6 [punti 5]

Illustrare le funzionalità principali offerte da un servizio di trasporto di tipo stream, illustrando come possono essere implementate.

--- Recupero prima prova --- Svolgere

Esercizio 1 (PHP) [14 punti]

Esercizio 2 (PHP) [4 punti]

Rispondere alle seguenti domande

1. Illustrare i vantaggi della struttura a strati dei protocolli di rete. [6 punti]

2. Motivare l’utilità dei campi di intestazione previsti in HTTP, facendo degli esempi di uso. [6 punti]

--- Recupero seconda prova --- Svolgere

Esercizio 3 (XML) [punti 8]

Esercizio 4 (indirizzi IP) [punti 6]

Esercizio 5 (javascript) [punti 8]

Esercizio 6 (domanda) [punti 8]

Host 1 Host 2

Host 3 Host 4

Host 5 Host 6

Host 7 Host 8 Host 9

Host 10

Internet

R1

R3

R4 R2

172.28.208.0/20

serial 0 serial 0 serial 1 eth 0

eth 0 eth 0

eth 1

eth 1 eth 1

Host 11

172.21.3.222

31.216.0.1 172.28.208.2

209.4.2.64/26

172.28.208.1

172.21.3.220/30

31.216.0.0/13 172.28.208.4

172.21.3.221

209.4.2.192/26 209.4.2.65

31.144.0.0/13 31.144.0.1

31.80.0.0/13

31.80.0.1

209.4.2.193 eth 0 eth 2

Riferimenti

Documenti correlati

Si scriva il codice javascript necessario ad implementare la seguente funzionalità in una pagina HTML: clickando su un elemento di tipo &lt;div&gt; questo viene

Un form in cui si può scegliere il nome del peschereccio da un menu a scelta singola, il/i tipo/i di pesce da un menù a scelta multipla e la quantità in kg (un numero) in un campo

Per ciascun batterio sono specificati un codice identificativo (integer), il nome scientifico (string), la dimensione media (decimal), il tipo di forma (string, es. “cocchi”) e la

pubblicazione sono specificati un codice identificativo (integer), il titolo (string), gli autori (string), la data di pubblicazione (date), la sede di pubblicazione (string), la

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

Si scriva il codice javascript necessario ad implementare la seguente funzionalità in una pagina HTML: data una tabella con celle con contenuto di testo assegnato,

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

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