• Non ci sono risultati.

Reti di calcolatoriProva scritta – 21 luglio 2015

N/A
N/A
Protected

Academic year: 2021

Condividi "Reti di calcolatoriProva scritta – 21 luglio 2015"

Copied!
4
0
0

Testo completo

(1)

Nome Cognome Matricola_______________________________

Reti di calcolatori

Prova scritta – 21 luglio 2015

Esercizio 1 [9 punti]

Si vuole realizzare un servizio Web per il monitoraggio dei venti in un impianto di produzione eolica. Il servizio prevede le seguenti pagine:

1.

Un form in cui si può scegliere uno o più anemometri da un menu a scelta multipla, la direzione del vento da un menu a scelta singola e inserire la velocità in m/s in un campo di testo. Ad ogni invio, il form permette di specificare un insieme di anemometri per una stessa direzione se la velocità del vento è la stessa. Le opzioni dei menù devono essere generate dinamicamente a partire da array. Si assuma un array che contiene la lista (“A1”,

”A2”, ”A3”, ”A4”) per gli anemometri e (“Nord”, “Ovest”, “Sud”, “Est”) per le direzioni.

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 anemometro e direzione si devono memorizzare il massimo e il minimo fra i valori di velocità inseriti.

3.

Una pagina di riepilogo che stampa una tabella con la coppia velocità minima-massima per ogni combinazione anemometro-direzione, oppure il carattere “-” se non ci sono valori memorizzati per quella combinazione. Poi, per ogni anemometro si riportano le direzioni che hanno la minore differenza fra la velocità massima e minima del vento.

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

$x['v.0'] = 1;

for($i=1,$j=0;$i<3;$i++,$j++) $x[“v.$i”] = $x[“v.$j”].$i;

$y = $x[“v.0”]+$x[“v.2”];

indicare quali sono le variabili definite nell’interprete dopo l’esecuzione del codice, con il loro tipo e valore (esclusi gli indici usati nel ciclo for).

Esercizio 3 [punti 5]

Si vuole definire un formato per l’interscambio dati relativo alla misure dell'attività sismica di una regione. Il file scambiato specifica la lista delle stazioni di misurazione. Ciascuna stazione è identificata da un codice numerico (integer) ed ha associata la località in cui si trova (string), il nome del responsabile (string) e la lista degli eventi sismici rilevati. Per ogni evento sismico si specifica l'istante della prima scossa (dateTime), l'epicentro (string, in coordinate geografiche, es.

“43.318264, 11.338220”), la profondità in metri (decimal) e la lista delle scosse. Per ogni scossa si riporta l'intensità in scala Richter (decimal), l'ora (time) e la durata in secondi (integer). 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 10 (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: clickando su un elemento di tipo <div> questo viene selezionato evidenziandolo con un bordo di colore rosso (alla proprietà borderColor si assegna il valore “red”). Clickando su un secondo elemento se questo è della stessa classe (proprietà className) dell'elemento selezionato in precedenza, si scambiano i colori del testo (proprietà color) e l'elemento precedente viene deselezionato (a borderColor viene assegnato il valore “initial”). Se la classe dei due elementi è diversa non si fa nulla.

Esercizio 6 [punti 5]

Illustrare le differenze fra un servizio di tipo stream e di tipo datagram a livello di trasporto.

--- Recupero prima prova --- Svolgere

 Esercizio 1 (PHP) [14 punti]

 Esercizio 2 (PHP) [4 punti]

Rispondere alle seguenti domande

1.

Illustrare a cosa serve il servizio resolver del sistema operativo. [6 punti]

2.

Spigare cosa è la codifica url-encoded e quando il suo uso non è appropriato. [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

R4

R2

R3 R1

172.17.40.0/21 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.6.13

81.152.0.1 172.17.40.1

194.4.44.64/26

194.4.44.65

192.168.6.12/30

81.152.0.0/14 172.17.40.3

172.17.40.2

192.168.6.14

194.4.44.128/26 194.4.44.129

81.88.0.0/14 81.88.0.1

81.216.0.0/14 81.216.0.1

(3)

Nome Cognome Matricola_______________________________

Reti di calcolatori

Prova scritta – 21 luglio 2015

Esercizio 1 [9 punti]

Si vuole realizzare un servizio Web per la raccolta dei statistiche sui visitatori di un museo. Il servizio prevede le seguenti pagine:

1.

Un form in cui si può scegliere una o più zone da un menu a scelta multipla, la stanza del museo da un menu a scelta singola e il numero di visitatori rilevato in un campo di testo. Ad ogni invio, il form permette di specificare più zone per una stessa stanza se il numero di visitatori rilevato è lo stesso. Le opzioni dei menù devono essere generate dinamicamente a partire da array. Si assuma un array che contiene la lista (“N”, ”E”, ”S”, ”O”) per le zone in una stanza e (“Leonardo”, “Michelangelo”, “Raffaello”, “Donatello”) per le stanze.

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 stanza e zona si devono memorizzare il numero di rilevazioni e il totale dei visitatori.

3.

Una pagina di riepilogo che stampa una tabella con la media dei visitatori per ogni combinazione stanza-zona, oppure il carattere “-” se non ci sono valori memorizzati per quella combinazione. Poi, per ogni stanza si riportano le zone che hanno ottenuto il numero medio di visitatori 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

$z['z.2'] = 0;

for($i=1,$j=2;$i>=0;$i--,$j--) $z[“z.$i”] = $i.$z[“z.$j”];

$y = $z[“z.0”]-$z[“z.1”];

indicare quali sono le variabili definite nell’interprete dopo l’esecuzione del codice, con il loro tipo e valore (esclusi gli indici usati nel ciclo for).

Esercizio 3 [punti 5]

Si vuole definire un formato per l’interscambio dati relativo alla gestione di una rete autostradale. Il file scambiato specifica la lista delle tratte. Ciascuna tratta è identificata da un codice numerico (integer) ed ha associate le coordinate geografiche del primo estremo (string, es. “43.318264, 11.338220”) e del secondo (string), la lunghezza in metri (decimal) e la lista dei caselli di ingresso/uscita. Per ogni casello si specificano un identificatore (string), la tipologia (es.

“Automatico”, string), il numero piste di ingresso/uscita (integer) e la lista delle statistiche di traffico in ingresso/uscita. Per ogni statistica si specificano il giorno (date), l'ora di riferimento (time), il numero di veicoli in ingresso (integer) e quello in uscita (integer). Si proponga la struttura XML necessaria, mostrando un esempio, e si scriva il file XML schema associato.

(4)

Esercizio 4 [punti 4]

Dato il seguente schema di rete

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

Esercizio 5 [punti 5]

Si scriva il codice javascript necessario ad implementare la seguente funzionalità in una pagina HTML: clickando su un elemento di tipo <span> questo viene selezionato evidenziandolo con uno sfondo di colore giallo (alla proprietà backgroundColor si assegna il valore “yellow”). Clickando su un secondo elemento se questo è della stessa classe (proprietà className) dell'elemento selezionato in precedenza, si scambiano le dimensioni del carattere (proprietà fontSize) e l'elemento precedente viene deselezionato (a backgroundColor viene assegnato il valore “initial”).

Se la classe dei due elementi è diversa non si fa nulla.

Esercizio 6 [punti 5]

Illustrare la modalità di interazione fra il resolver e il server DNS motivando la soluzione adottata.

--- Recupero prima prova --- Svolgere

 Esercizio 1 (PHP) [14 punti]

 Esercizio 2 (PHP) [4 punti]

 Esercizio 6 (domanda) [6 punti]

Rispondere alla seguente domanda

Spigare cosa è la codifica url-encoded e quando il suo uso non è appropriato. [6 punti]

--- Recupero seconda prova --- Svolgere

 Esercizio 3 (XML) [punti 8]

 Esercizio 4 (indirizzi IP) [punti 6]

 Esercizio 5 (javascript) [punti 8]

Rispondere alla seguente domanda

 Spiegare cosa è un event listener/handler nella programmazione javascript. [punti 8]

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

10.56.0.0/13 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.3.181

211.5.55.161 10.56.0.1

211.5.55.96/27

211.5.55.97

192.168.3.180/30

211.5.55.160/27 10.56.0.3

10.56.0.2

192.168.3.182

139.44.176.0/20 129.44.176.1

211.5.55.32/27 211.5.55.33

139.44.48.0/20 139.44.48.1

Riferimenti

Documenti correlati

Un form in cui si può scegliere l'apparecchiatura frigorifera da un menu a scelta singola, il/i comparto/i da un menù a scelta multipla e la temperatura (un numero con

Si scriva il codice javascript necessario ad implementare la seguente funzionalità in una pagina HTML: cliccando su una delle celle di una tabella predefinita il suo

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

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

multipla, la fascia oraria della rilevazione da un menu a scelta singola e inserire il volume di acqua in m 3 transitato nella fascia oraria, in un campo di testo.. Ad ogni invio,

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