...

Esame di Fondamenti di Informatica

by user

on
Category: Documents
13

views

Report

Comments

Transcript

Esame di Fondamenti di Informatica
Esame di Reti di Calcolatori 5 e 6 crediti
Corso di Laurea in Ingegneria Informatica
Anno Accademico 2009/2010
Prof. Vitaletti, 16 Novembre 2010
5 crediti: 100 minuti, 6 punti a domanda, 5 domande.
6 crediti: 120 minuti, 5 punti a domanda, 6 domande.
Domanda 1. A cosa serve il TTL (Time-to-Live) nella fase di ricerca in una rete P2P (Peer-toPeer)? Per uqle motivo è importante?
In una rete p2p un nodo manda un messaggio ai vicini, il quale mantiene un contatore che a ogni
hop viende decrementato. Nel momento un cui vale 0 non viene piu inoltrato al prossimo nodo.
Serve perché se non cifosse non ci sarebbe alcun controllo dell’inoltro dei messaggi, e la mole di
traffico diventerebbe enorme.
Domanda 2. In cosa consiste l'attacco man-in-the-middle, e come può essere evitato?
(sarebbe meglio disegnarlo)
Supponiamo avere
E = Erminigilda
e
A = Asdrubale
E e A vogliano comunicare tra loro
Poi c’è MichaelJackson (MJ), che cantando ManInTheMirror, si vuole intrufolare nella
comunicazione di E con A.
E dice ad A che lei è Erminigilda, ma MJ che è il Man in the Middle, prende messaggio di E, e lo
invia lui ad Asdrubale.
A allora invia a MJ il nonce R e MJ gli invia R crittografato con la SUA chiave privata Kmj-,
A riceve quindi Kmj-(R) credendo che sia di E, e chiede di avere la chiave pubblica di E, e MJ gli
invia la sua (Kmj+). Ora A credendo di avere chiave pubblica e privata di E (Ka+ e Ka-), prova a
decriptare R cosi:
Kmj-(Kmj+(R)) ottenendo proprio R. Quindi per lui la comunicazione funziona, perché è riuscito
a decriptare R ma non sa che le chiavi che ha usato non sono di Erminigilda.
Dall’altra parte MJ, sempre cantando ManInTheMirror, invia ad E il R ricevuto all’inizio da A.
E lei glielo reinvia criptato con la sua Ke-. Lui allora, fingendosi sempre Asdrubale, le chiede la
sua Ke+ ( chiave pubblica di Erminigilda ).
Dopodiche MJ cifra R con Ke+: e invia a Erminigilda Ke+(R).
Erminigilda decripta tranquillamente. E tutti son contenti
Poi MJ si accorge che l’attacco era ManINtheMiddle e non in the mirror e triste se ne va a casa.
In questo modo il furbetto può visionare tutti i dati della conversazione senza farsi scoprire.
Il tutto puo essere reso sicuro con la CERTIFICAZIONE della chiave pubblica. In questo modo
esiste un’autorità garante della chiave pubblica
Domanda 3. Si consideri un percorso fatto di 4 router che accettano pacchetti di dimensione 1Kb
appartenenti a due classi di priorità P1 e P2. Tutti i router implementano la politica di scheduling
weighted fair queueing e hanno la medesima banda in uscita di 10Mbps. La dimensione delle
code assegnate a P1 e P2 è di 10 pacchetti.
 Assegnare il peso W1 alla classe P1 affinchè il ritardo massimo di un suo pacchetto nell'
attraversare i tre router sia di 150ms.
 Qual'è in questo caso il ritardo massimo di un pacchetto che appartiene a P2?
R=10Mbps, 10^7 b/s
pck= 10^3 b
code=10pck, 10^4bit/s
150ms = [3ROUTER*10^4 ] / [ 10^7*( w1/(w1+w2) )]
50ms=10^-3 * ( (w1+w2) /w1)
w1*50s=w1+w2 => w2=49w1
w1=1, w2=49
w1/(w1+w2)= 1/50=0,02.
W2/(w1+w2)=49/50=circa1=0,98
Ritardo Massimo=3*10^-3/0,98=3ms circa
Domanda 4. Definire la sequenza corretta delle istruzione JAVA di un server mono-thread (es:
ABCD) e completare le parti mancanti denotate con ____ Il numero di porta utilizzato è 7766 e
l’indirizzo IP è x.y.z.w
A) m1=fc.readLine();
B) Socket s2 = ss0.________________();
C) ServerSocket ss0 = new ServerSocket(_________);
D) BufferedReader fc = new BufferedReader(newInputStreamReader(___.getInputStream()));
c 7766
b accept
d s2
a
Domanda 5. Perché in HTTP sono necessari i cookie? Descrivere cosa sono e come si
utilizzano attraverso un semplice esempio.
Perché è un protocollo stateless, quindi è necessario il cookie che viene registrato in un database
locale gestito dal proprio browsere
Esempio l’utetn fa la prima connessione a un dato sito come amazon che gli asssegna un cookie
L utente navia, setta delle preferenze dopodiche lascia il sito
A una successiva connesisone presentera il proprio cookie e verranno recuperate le sue preferenze
Domanda 6 (solo per 6 crediti). Per quale motivo il page-rank è “query independent”?
Perché dipende solo dalla struttura dei link: infatti è possibile calcolare il vettore di probabilità e
quindi assegnare il pagerank (preprocessing) prima dell'effettiva richiesta da parte di un client
(query processing). Il pagerank utilizza il random walk con teleporting e cioè ad ogni nodo
sceglie il prossimo nodo a caso (random walk) ed ogni tanto viene scelto in nodo casuale interno
al grafo per non arrivare in nodo senza link uscenti (teleporting). Random Walk con teleporting
può essere modellizzato tramite una catena di markov ergodica (presi due stati c'è sempre un
cammino che li congiunge) e sotto queste condizioni esiste ed è unica la distrubuzione delle
frequenze che è proprio il pagerank.
Fly UP