Si consideri la tecnica go-back-N per la ritrasmissione di frame errate all˙interno di una finestra di livello 2 e si ipotizzi di utilizzare NACK() per segnalare
al trasmettitore la frame mancante nella sequenza. In queste condizioni, l˙efficienza della ritrasmissione sarebbe migliorata se utilizzassimo ACK cumulativi al
posto di NACK()? | No, in quanto la tecnica Go-back-n prevede comunque la ritrasmissione dell'intera finestra.
L'utilizzo di un ACK cumulativo non comporterebbe nessun beneficio in questo caso. |
2) Come funziona l'opzione Time-Stamp su una connessione TCP in cui si suppone che il ricevente restituisca un ACK ad ogni segmento dati ricevuto? | L'opzione di time stamp è stata introdotta per aiutare TCP a calcolare il ritardo sulla rete (nel nostro caso RTT). Si tratta di un header aggiuntivo che utilizza il trasmettitore
per scrivere al suo interno l'orario nel quale è stato mandato un segmento. Il ricevitore, mandando l'ack relativo, risponderà facendo riferimento a quel time stamp, in modo
tale che il trasmettitore possa calcolare il Round Trip Time senza possibili ambiguità e capire quanto tempo è passato dal momento in cui è stato inviato il segmento.
E' molto utile in caso di finestre di trasmissione molto grandi (maggiori di 2^32). |
3) Elencare le differenze fra Bridge e Switch in una rete IEEE 802.3. | Mentre un bridge utilizza la politica CSMA/CD, lo switch è collegato ai suoi dispositivi tramite link punto-punto (non più broadcast). In questo modo non c'è rischio di
collisione e non c'è contesa per il canale, con conseguente aumento di prestazioni. Inoltre uno switch è molto più economico di un tradizionale bridge. |
4) Descrivere e motivare la sequenza di pacchetti scambiata dal protocollo DHCP. | DHCP (Dinamyc Host Configuration Protocol) è un protocollo che permette di configurare in maniera dinamica gli indirizzi ip degli host collegati ad una rete,
tramite un server DHCP. I pacchetti che vengono inviati sono i seguenti:
DHCP Discovery: il client invia in broadcast una richiesta per ottenere un IP dinamico. Viene utilizzato un Transaction ID che ha il compito di identificare univocamente
la richiesta (questo ID viene generato dal mac address della macchina client);
DHCP Offer: il server DHCP manda una risposta con lo stesso transaction id della discovery e l'indirizzo IP proposto per il relativo client. Dato che questo indirizzo IP
potrebbe già essere in uso da un'altra macchina prima si assicura che sia disponibile provando a mandare un messaggio alla macchina associata a quell'indirizzo ip. In
caso non ci sia risposta allora vuol dire che è disponibile;
DHCP Request: il client accetta o meno l'indirizzo IP propost dal server;
DHCP ACK: il server manda un ACK di conferma. |
Descrivere l˙algoritmo di bit stuffing usato da trasmettitore e ricevitore su una linea punto punto mostrando perché esso consente al ricevitore di identificare
una frame senza introdurre ritardi in ricezione. | L'algoritmo di bit stuffing consiste nell'aggiungere un flag di 8 bit (01111110) a inizio e fine della frame. Per permettere di mandare anche frame con dato equivalente alla
sequenza di flag precedentemente specificata (che altrimenti specificherebbe in modo sbagliato la fine della frame) viene inserito uno 0 ogni cinque 1.
Il ricevitore, essendo a conoscenza di questo meccanismo, usa un contatore per contare gli 1: in caso raggiunge cinque e il prossimo bit è uno zero il ricevitore saprà che si
tratta ancora del dato, altrimenti capisce che la sequenza di bit è il flag di fine frame. |
6) In TCP la politica di ritrasmissione segmenti opera in parte secondo lo schema go-bach-N e in parte secondo quello Selective Repeat. Quali scelte algoritmiche possiamo citare fra quelle coerenti con Selective Repeat? | TCP utilizza una tecnica simile a selective repeat per la trasmissione delle finestre e la ritrasmissione di eventuali segmenti persi.
Nel caso venga perso un segmento in trasmissione, il ricevitore attraverso un apposito buffer continuerà ad immagazzinare i segmenti fuori sequenza e comunicherà al
trasmettitore fino a che segmento ha ricevuto tramite ack cumulativi. Dopo 3 ack fuori sequenza il trasmettitore tramite la tecnica di fast retransmit trasmette il segmento
che era andato perso.
Forse qui puoi anche parhare di sehective ack? |
7) Si consideri un router di bordo in un˙area MPLS. Descrivere la sequenza di operazioni che trasformano un pacchetto IP in ingresso in un pacchetto MPLS nelle code di uscita. | MPLS è un protocollo che assegna ad un pacchetto di livello 3 un'etichetta.
Alla ricezione di un pacchetto ip, l'indirizzo di destinazione viene usato per capire verso che porta verrà inoltrato quel pacchetto mpls.
Per trasformare un pacchetto ip in mpls viene aggiunto l'header mpls che viene costruito in base all'header del pacchetto ip. |
8) Sia data una stringa binaria in ingresso di 24 bit e l˙ipotesi di usare la codifica Base64 per il trasferimento fra due MTA. Descrivere con uno schema a blocchi i
passi seguiti per la codifica e per generare il formato NVT in trasmissione. | I 24 bit vengono suddivisi in sequenze di 6 bit -> in questo modo 24 bit formeranno 4 sestetti di bit. Una volta suddivisi i bit in sestetti a loro volta suddivisi in coppie di 2 e 4 bit, e ottenuti i relativi valori decimali, vengono usati per accedere ad una tabella BASE64 (quindi vengono usati come indici). I caratteri estratti dalla tabella vengono poi
spediti presumo al MTA destinazione. |
9) Una frame di 2Kb deve essere trasmessa tra due calcolatori connessi da un canale di comunicazione in fibra lungo 30Km e avente banda di 20Mbps. Calcolare
l˙utilizzo del canale se il livello data-linh usa un protocollo Selective Repeat con numeri di sequenza rappresentati con 3 bit. | Dimensione frame = 2Kbit
Lunghezza canale = 30Km
Banda = 20Mbps
Canale in fibra => velocità di propagazione = 3 * 10^8
Calcolare l'utilizzo del canale se si usa selective repeat e 3 bit per il numero di sequenza.
U = k * ( tx / (tx + 2tp) )
tx = ( dimensione frame / banda) = ( 2000 / 20 * 10^6) = ( 2 * 10^3 / 2 * 10^7 ) = 10^(-4) secondi = 0,1 * 10^(-3) secondi = 0,1 ms
tp = ( lunghezza del canale / velocità di propagazione ) = ( 30 * 10^3 ) / ( 3 * 10^8 ) = ( 3 * 10^4 ) / ( 3 * 10^8 ) = 1 * 10^(-4) secondi = 10ms
U = k * ( 0,1 / (0,1 + 20) ) = k * ( 0,1 / 20,1 ) = k * 0,005
Ho numeri di sequenza di 3 bit con selective repeat, il che vuol dire che posso trasmettere finestre da 4 frame ciascuna. -> k = 4
U = 4 * 5% = 20% |
10) L'attuale finestra di congestione (CW) TCP è pari a 16KB, MSS di 1KB e SST pari a 32KB. Stabilire i nuovi valori di SST e CW nell˙ipotesi di ricevere un
retransmission timeout. | CW = 16 KByte
MSS = 1 KByte
SST (Slow start threshold) = 32 KByte
Allora, in caso di RTO la SST diventa esattamente la metà dell'attuale flight size. Quindi SST = 8 Kbyte
La congestion window invece diventa MSS quindi 1 Kbyte: questo perché se scade RTO significa che la rete è molto congestionata (in quanto non arrivano neanche i 3 ACK
del fast retransmit). |
1) Come descrivereste lo schema di ritrasmissione di TCP facendo riferimento a Go-bach-n e Selective Repeat. Analogie e differenze. | TCP in caso di ritrasmissione di segmenti persi si comporta come selective repeat in quanto utilizza buffer in lato ricezione che permette di memorizzare segmenti fuori
sequenza. In lato trasmissione invece è presente la politica di selective ack che si comporta similmente a selective repeat e permette di specificare quali segmenti sono
arrivati al ricevitore, e quali invece devono ancora essere mandati.
Per quanto riguarda invece go back n, si comporta come questa politica in quanto usa ack cumulativi al posto di quelli selettivi. |
2) Descrivere la natura out-of-band di FTP e come questa viene implementata su TCP. | Perché utilizza due connessioni separate per trasferire un file, una per il controllo e una per i dati.
Sono comunque due connessioni TCP che utilizzano la porta 20 e la porta 21 per il lato server. |
3) Descrivere il comportamento di un Proxy ARP. | Nel caso di due reti separate e collegate attraverso un gateway, se una macchina vuole mandare una arp request nella rete vicina non potrà farlo se non utilizzando un
proxy arp che si tratta essenzialmente del gateway che sostituisce la macchina destinazione e le permette di farsi identificare e mandare il proprio mac address alla
macchina che ha fatto la richiesta. |
4) In che modo la codifica Manchester consente la sincronizzazione del ricevitore e del suo clock? | In trasmissione la codifica manchester si occupa di associare ad ogni bit in trasmissione un cambiamento di stato (se trasmetto un 1 avrò una transizione di stato da 0 a
1 e viceversa), e di far oscillare il clock con un periodo doppio rispetto ai dati trasmessi. In ricezione invece, grazie al preambolo di 8 byte (01010101), il clock di ricezione
riesce a sincronizzarsi con quello di trasmissione. |
5) Perché MPLS viene indicato come protocollo di Label Switching e che vantaggio comporta sul tradizionale packet routing? | E' un protocollo di label switching in quanto fa instradamento tramite l'utilizzo di apposite etichette e quindi di pacchetti MPLS che incapsulano il pacchetto fino alla destinazione.
Hai delle tabelle già preconfezionate con delle etichette gestite dal designated router: in questo modo i router sono molto efficienti in quanto dovranno solamente lavorare sulle etichette e sulle priorità. I router di confine (gli ABR) avranno solamente un compito in più, ovvero tunneling (incapsulamento indirizzo IP in indirizzo MPLS e il contrario quando deve uscire dalla zona). Il designated router ha risorse aggiuntive per permettere di mandare le tabelle compilate. |
6) Frame da 2K bit sono trasferiti su un canale in fibra di 36Km a 200Mbps. Calcolare l˙utilizzo del canale se a livello 2 viene usata una tecnica Selective Repeat
con numeri di sequenza su 3 bit. | F = 2Kbit (grandezza di una frame)
L = 36Km (lunghezza del canale)
"Ch = 200Mbps (velocità di trasmissione)
Vp = 3*10^8 (velocità di propagazione)"
Calcolare l'utilizzo in caso di selective repeat e numeri di sequenza su 3 bit.
tx = F / Ch = 2 * 10^3 / 200 * 10^6 = 0,01ms
tp = L / Vp = 36 * 10^3 / 3 * 10^8 = 0,12ms
U = k * ( tx / (tx + 2tp) ) = 4 * 0,04 = 0,16 = 16% |
7) Descrivere il Fast Retransmit di TCP e il suo comportamento in caso di errore. | Nel caso di fast retransmit il trasmettitore riceva 3 ACK fuori sequenza trasmette immediatamente il segmento indicato dal ricevitore.
E' stato introdotto in quanto il Retransmission Timeout è un periodo di tempo effettivamente troppo elevato, e quindi abbiamo bisogno di mandare il segmento che era stato perduto il prima possibile. |
8) E' possibile che in una rete Distance Vector i nodi siano sincronizzati nella trasmissione dei propri DV-update producendo un picco di traffico di controllo in rete? | Update Storm (tempesta di Update): può capitare che i timer scadano tutti insieme, quindi viene generato tantissimo traffico in rete.
Soluzione: ogni nodo genera il proprio update con un ritardo random (0 – 5 secondi) |
9) Volendo progettare una rete CSMA/CD che opera a 50Mbps indicare quale vincolo imposto dallo standard IEEE 802.3 andrebbe modificato per conservare
compatibilità di frame. | È necessario accorciare di 5 volte la lunghezza massima del canale, che da 2.5Km per una rete ethernet che opera a 10Mbit, scende a 500m per una rete ethernet che
opera a 50Mbit con uguale compatibilità di frame. |
10) Sia data una connessione TCP con valori attuali di RTT e RTO rispettivamente uguali a 30 secondi e 36 secondi. Se il prossimo segmento S1 viene validato da
un ACK dopo 40 secondi, calcolare i nuovi valori di RTT e RTO ipotizzando i parametri alpha e beta uguali a 0.9. | nessuna risposta per ora |
1) Descrivere le differenze principali tra Go Bach N e Selective Repeat | La politica Selective Repeat prevede l'utilizzo di un buffer in lato ricezione, in modo da immagazzinare le frame ricevute anche in caso siano fuori sequenza. Con go back n
questo non succede, in quanto il ricevitore ha spazio solamente per una frame, e il trasmettitore deve ritrasmettere l'intera finestra di frame a partire dalla prima frame che
il ricevitore ha segnalato di non aver ricevuto.
Per quanto riguarda l'uso, go back n andrebbe usato in situazioni in cui il ricevitore ha poca memoria e la rete ha un basso tasso di errori. Selective repeat si usa in caso il
ricevitore ha molta memoria a disposizione oppure la rete ha un tasso di errori molto alto. |
2) Una connessione TCP produce un segmento di dimensioni 2500 Byte. Descrivere i frammenti (con i relativi campi significativi) generati dal livello IP sottostante se la reti di transito é una LAN ethernet. | La lan ethernet ha dimensione massima di frame 1500Byte. Le token ring 4000Byte.
20 Byte della frame sono per l'header.
Il resto (1500-20) dev'essere divisibile per 8.
Campo payload = 1500-20 = 1480 che è divisibile per 8, quindi ok. E' uno dei due frammenti. Campo offset = 0 in quanto è il primo frammento
Campo payload = 2500 - 1480 = 1020
Campo offset (mi dice che non sto partendo dal byte iniziale ma da questo byte qui) = 1480 / 8 = 185 |
3) Supponiamo che la stazione CSMA/CD non rispetti la dimensione minima di frame in fase di trasmissione. Quali conseguenze potrá subire nell˙accesso al canale
condiviso? | In questo caso il trasmettitore che stava trasmettendo la frame con dimensione minima non rispettata (ovvero tempo di trasmissione della frame minore di 2tp) nel caso ci
fosse un'altra macchina che vuole trasmettere e genera la sequenza di jam (in quanto ha rilevato una collisione), non potrebbe capire se è stato lui a generare la collisione
oppure nel nostro caso l'altra macchina che ha provato a comunicare sul canale. |
5) La tecnica di routing Link State supera alcuni limiti della tecnica Distance Vector. Quali ? | La tecnica di routing link state permette di superare alcuni problemi abbastanza gravi del distance vector, ovvero il count to infinity e il bouncing effect.
Questo lo fa attraverso una tecnica di flooding, ovvero i link state generati da un nodo vengono poi propagati su tutta la rete grazie all'aiuto degli altri nodi che, ricevendo un link state, fungono da relay e lo inoltrano in uscita verso altri nodi. E' un'operazione molto costosa ma che permette di evitare i due problemi elencati precedentemente. |
6) Descrivere la tecnica di Slow Start di TCP. | Dato che la componente di livello 4 non conosce niente della componente di rete, è costretta ad aprire la connessione in modo "cauto".
Vengono mandate delle finestre di messaggi che vengono raddoppiate di volta in volta per testare le capacità della rete, finchè non viene raggiunta una Slow Start
Threshold (SST), ovvero la soglia massima configurata. |
7) L˙ABR di una backbone area MPLS assegna una label 20 a tutti i pacchetti IP appartenenti ad un flusso f in uscita della parte 2.
I pacchetti di questo flusso attraversano anche il router R della backbone area. Il router R può utilizzare la label 20 per identificare il flusso di pacchetti diverso da f o può usarla solo per identificare lo stesso flusso ? | Sì, può farlo in quanto possono arrivare pacchetti con la stessa etichetta ma da router diversi. Vengono gestiti attraverso la tabella di instradamento che contiene la stessa
label ma proveniente da router differenti. L'unicità di una label è limitata al contesto del collegamento fra due porte. |
8) Come funziona il sistema di cache dei nomi studiato per i DNS ? | Dato che la tecnica iterativa o ricorsiva per ricavare l'associazione nome logico/indirizzo ip di un determinato dominio è alquanto costosa e ripeterla ogni volta sarebbe poco efficiente (in quanto vado a visitare un intero albero che è potenzialmente enorme), si utilizza un sistema di cache per i server dns che memorizzano per un determinato periodo di tempo (solitamente 1 giorno) la risoluzione nome logico/indirizzo ip dei domini, in modo tale che quando un server dns ne interroga un altro è possibile che lui abbia già questa informazione in memoria cache e non ci sia bisogno di scorrere l'intero albero. |
9) Un frame di 2Kb deve essere trasmesso tra 2 calcolatori connessi da un canale di comunicazione in fibra lungo 100 Km e capace di trasmettere a 100 Mbps.
Calcolare l˙utilizzo del canale se il livello data-linh usa un protocollo Selective Repeat con numeri di sequenza rappresentati da 4 bit. | F = 2Kbit L = 100Km (lunghezza del canale)
Ch (velocità di trasmissione) = 100Mbps
Vp (velocità di propagazione) = 3 * 10^8 [canale in fibra]
Calcolare l'utilizzo in caso di selective repeat con numeri sequenza su 4 bit.
Per selective repeat abbiamo bisogno di un numero di sequenza pari a 2*k, dove k è la dimensione della finestra di trasmissione.
Se abbiamo 4 bit per il numero di sequenza (16 numeri quindi) potremo trasmettere finestre grandi al massimo 8. k = 8 quindi
U = k * ( (tx) / (tx + 2tp) )
tx = F / Ch = (2 * 10^3) / (100 * 10^6) = 2/10^5 = 0,02ms
tp = L / Vp = (100 * 10^3) / (3*10^8) = (1 * 10^5) / (3 * 10^8) = 1/3 * 10^-3 = 0,3ms
U = 8 * ( 0,02 / 0,02 + 0,6 ) = 8 * ( 0,02 / 0,62 ) = 8 * 0,03 --> 8 * 3% = 24%
Nel caso di gobackn #seq = k + 1, quindi la dimensione della finestra poteva essere k-1. |
10) L˙attuale finestra di congestione (CW) TCP é pari a 36KB, MSS di 1KB e SST di 32KB. Stabilire i nuovi valori di SST e CW nella ipotesi di aver ricevuto il terzo ACK duplicato. | Questa dovrebbe essere una situazione di congestione lieve.
La Slow Start Threshold viene portata a Flight Size / 2 quindi 18KB.
La congestion window invece viene portata a SST, quindi 18KB. |
1) Definire una topologia a maglia a piacere (non lineare) e creare la condizione che scatena un count-to-infinity o un boucing effect. | in questo caso si è preso in considerazione di count to infinity di raggiungimento di a per B e C |
2) Una connessione TCP produce un segmento di dimensione 5000 Byte. Descrivere i frammenti (con i relativi campi significativi) generati dal livello IP sottostante se la rete di transito è una LAN Token Ring con dimensione massima di frame 4000 Byte. | Dimensione del segmento 5000 byte.
Rete di transito Token Ring (dimensione massima delle frame è 4000 byte).
Ho 20 byte di header.
1˚ Frammento:
Payload = 3980 non divisibile per 8 => payload = 3976
Offset = 0
2˚ Frammento:
Payload = 5000 - 3976 = 1024
Offset = 497 |
3) Lo standard IEEE 802.3 Ethernet 10Mbps prevede una dimensione minima di frame pari a 512 Bit. Gigabit Ethernet impone di rivedere i calcoli che definiscono la dimensione minima di frame. In che modo? | Lo standard IEEE 802.3 impone che in reti ethernet di 1Gbps la distanza tra stazioni e hub sia al più di 100 metri.
In questo modo la dimensione minima delle frame diventa di 512 byte. |
4) In una LAN Ethernet la sorgente X genera una frame per la destinazione Y. Che azioni compie un bridge quando riceve questa frame su una sua porta di ingresso? | Quando il bridge si trova nel suo stato iniziale e non conosce effettivamente il destinatario e quindi dove mandare la frame, comunica in broadcast la frame a tutti i dispositivi nella rete in cui si trova Y. Nel caso Y si trovi nello stesso dominio di collisione di X non ci sarà bisogno di utilizzare il broadcast su altre reti.
Una volta che il bridge ha memorizzato nella propria tabella la porta di un destinatario, non ci sarà più bisogno di operare in flooding. |
5) Descrivere il protocollo DHCP. | Il protocollo DHCP (Dynamic Host Configuration Protocol) viene utilizzato per assegnare indirizzi ip agli host in maniera dinamica attraverso l'uso di un server dhcp.
Esso opera attraverso l'utilizzo di diversi pacchetti:
DHCP Discovery: l'host che vuole avere assegnato un indirizzo ip in maniera dinamica manda in broadcast questo pacchetto contenente un transaction id che
permette di identificare in modo univoco la macchina (il transaction id viene generato in base al mac address);
DHCP Offer: il server dhcp riceve la discovery del client e manda successivamente una offer contenente la coppia <transaction id, indirizzo ip>. Dato che
l'indirizzo ip potrebbe già essere in uso da un'altra macchina prima si assicura che sia disponibile mandando un messaggio alla macchina identificata da
quell'indirizzo ip. In caso non riceva risposta allora vuol dire che quell'indirizzo ip è disponibile.
DHCP Request: il client accetta o meno l'indirizzo ip proposto dal server.
DHCP ACK: il server manda un segnale di conferma al client. |
6) A livello 2 il timer di ritrasmissione (RTO) è stimato in base ai tempi di trasmissione e di propagazione. Lo stesso vale anche per TCP? | Il primo calcolo di rto è una costante e quindi non influenzato dai tempi di trasmissione e di propagazione.
Dal secondo tentativo in poi viene considerato il rtt dell'ultimo scambio avvenuto e quindi influenzato dai tempi di propagazione e di trasmissione. |
7) In TCP è definita l'opzione Selective-ACK. Questo è stato fatto perché la tecnica di ritrasmissione di default è Go-back-n? | In teoria di default vengono utilizzati ack cumulativi, quindi tcp in ritrasmissione si comporta come go-back-n, ma è possibile negoziare in apertura della connessione TCP l'utilizzo di selective-ack che permette a tcp di comportarsi come selective repeat anche in questo ambito. |
8) Descrivere la tecnica iterativa di risoluzione di un nome in DNS e dare una valida ragione per preferirla a quella ricorsiva. | E' preferibile in quanto il carico di lavoro viene distribuito solamente sulla macchina che ha fatto la richiesta di name resolution. |
9) Una frame di 2Kbyte deve essere trasmessa tra due calcolatori connessi da un canale di comunicazione in fibra lungo 60Km e avente banda di 20Mbps.
Calcolare l˙utilizzo del canale se il livello data-linh usa un protocollo go-bach-n con numeri di sequenza rappresentati con 3 bit. | non ancora risposta |
10) Sia data una connessione TCP con applicazione interattiva lato trasmissione che produce 10 Byte ogni 5 msec. Se la trasmissione avviene su un link da 100Kbps e 100msec di ritardo di propagazione, dimensionare i primi 2 segmenti inviati sulla connessione ipotizzando l˙uso dell˙algoritmo di Nagle. | 1) Tx = (20Byte(header) + 10 Byte(creati)) * 8/100Kbs
RTT = Tx + 2 * 100 ms = 202.4msec
2) in 202.4 msec il produttore ha creato:
202.4/5 * 10 Byte = 404.8Byte che vengono inviati |
1) Selective-ACK è un˙opzione che TCP consente di attivare in fase di apertura connessione. Evidenziare i suoi vantaggi rispetto alla tecnica di Fast Retransmit. | I vantaggi di selective-ack sono diversi dato che trasmetto segmenti che permettono di identificare i segmenti che non sono arrivati e quelli già ricevuti.
Se uso gli ack cumulativi e in trasmissione perdo diversi segmenti, prima dell'intervento del fast retransmit passano comunque 3 ack fuori sequenza, il che vuol dire che ricevo 3 segmenti che vengono poi bufferizzati: non ho modo però di tenere conto di quali segmenti perdo oltre a quello iniziale, ed è qui che ci conviene usare selective-ack. Inoltre usando ack cumulativi e la ritrasmissione seguendo uno schema go-back-n dovrei ritrasmettere a partire dal primo segmento perso, ed è un enorme traffico inutile se ho già bufferizzato dei segmenti ricevuti correttamente: usando selective-ack dovrò ritrasmettere solamente i segmenti che sono stati effettivamente persi. |
2) In TCP il timer di ritrasmissione (RTO) viene dimensionato pesando la stima attuale di RTT e la storia delle stime fatte sui segmenti precedenti. Quale valore
viene assegnato a RTO nel caso del primo e secondo segmento trasmesso su una connessione TCP? | RTO1 = 3 secondi
RTO2 = M + 4(M/2) |
3) Una applicazione interattiva utilizza una connessione TCP. Il lato receiver consuma 10 byte ogni 20 msec, mentre la connessione ha un buffer di ricezione di
4000 Byte e usa segmenti di 1200 Byte. Ipotizzando un sender sempre in grado di spedire dati, spiegare come viene realizzato il controllo di flusso fra sender e
receiver per evitare buffer overflow e stabilire le regole che governano lo scambio delle informazioni di controllo. | E' clark: il receiver è lento !! -> consuma 10 byte ogni 20msec
buffer ricezione = 4000 byte, segmenti di 1200 byte
Devo calcolare il min(1/2*buffer di ricezione, mss)
=> min(2000byte, 1200byte) = 1200byte
Spedisco il window update quando il buffer ha 1200 byte liberi. |
4) Un canale con bit rate di 100Kbps ha ritardo di propagazione di 10msec. Dimensionare la frame per garantire un utilizzo del canale del 60%. | non ancora risposta |
5) Spiegare perché in un approccio Distance Vector non è sufficiente adottare il triggered update (attivare la spedizione rapida di un DV appena viene rilevato un guasto su un link) per evitare il count-to-infinity. | il caso è presto spiegato quando un nodo riceve un aggiornamento con infinito e lo propaga subito come da procedura ma il distance vector viene perso, in tal caso il problema rimarrebbe tale a prima |
6) IPV6 fornisce due modalità di source routing: esatta e approssimata. Spiegare la differenza e i campi dell˙extended header necessari per la gestione. | La source routing è un meccanismo per specificare gli hop che attraverserà il pacchetto.
Esatta significa che la sequenza è rigida e va rispettata l'adiacenza anche se non conviene da tabella di routing.
Approssimata consente di seguire un cammino a discrezione dei router da un hop all'altro IN IPv6 per il source routing si usa un header aggiuntivo che consente di specificare fino a 24 hop da cui passare. |
7) Descrivere come vengono costruite le tabelle di forwarding di uno switch. | L'autoapprendimento è il metodo più comune utilizzato per costruire le tabelle di forwarding di uno switch. In questo metodo, lo switch apprende gli indirizzi MAC dei dispositivi collegati monitorando i pacchetti che riceve. Quando lo switch riceve un pacchetto, confronta l'indirizzo MAC di destinazione con gli indirizzi MAC che ha già imparato. Se l'indirizzo MAC non viene trovato, lo switch aggiunge l'indirizzo MAC alla tabella di forwarding e la porta su cui è arrivato il pacchetto. |
8) Considerando OSPF descrivere quando il protocollo ricorre al flooding e come tale soluzione può essere evitata per limitare l'overhead che ne deriva. | il protocollo ricorre al flooding all'inizializzazione della rete e ogni volta che la rete subisce una modifica, per limitare l'overhead dovuto dal calcolo del cammino ottimale può essere delegato un router della rete per fare i calcoli per gli altri dato che sarà lunico ad avere ben nota la rete |
9) Descrivere le caratteristiche del protocollo FTP (meglio con l˙ausilio di uno schema temporale). | non ancora risposta |
10) Spiegare perché, in condizioni di elevato traffico generato dalle singole stazioni, lo schema CSMA 1-persistente aumenta la probabilità di collisione rispetto ad
uno schema non-persistente. | L'1-persistente trasmette immediatamente non appena trova il canale libero. Se ci sono tante stazioni che stanno già facendo carrier-sense ci sarà sicuramente una
collisione. Aspettando un tempo casuale prima di trasmettere sarebbe meno probabile l'eventuale collisione. |
1) Dovendo Scegliere fra uno schema Go-back-N e uno Selective Repeat a livello 2 quali elementi di sistema considerate? | Scegliamo uno schema selective repeat nel caso in cui il ricevitore sia dotato di abbastanza memoria per bufferizzare le frame ricevute dal trasmettitore, e nel caso in cui la rete è particolarmente congestionata e quindi c'è un alto tasso d'errore. Scegliamo invece lo schema go-back-n se la rete ha un tasso d'errore abbastanza basso
oppure il ricevitore non può adottare l'utilizzo di un buffer per memorizzare le frame ricevute fuori sequenza: in quel caso le butterà semplicemente via. |
2) Descrivere la natura di out-of-band di FTP e come questa viene implementata su TCP. | FTP utilizza due connessioni tcp diverse, una per il flusso dei dati, e una per i segnali di controllo. E' per questo che viene chiamata "out-of-band".
Il client farà richiesta di apertura connessione per il flusso dei dati sulla porta 21, mentre per la connessione per i segnali di controllo sulla porta 20. |
3) ARP risolve un indirizzo IP nell’indirizzo corrispondente di livello 2. Come si comporta nel caso la macchina di destinazione non appartenga alla stessa network della sorgente? | Utilizzando un proxy ARP, Sostanzialmente un router sostituisce la macchina B inoltrando le richieste che manda A. Ogni volta che A vorrà comunicare con B starà in realtà comunicando con il router che funge da sostituto. |
4) Quale caratteristica della codifica Manchester consente di sincronizzare il ricevitore e il suo cloch con il trasmettitore? | La codifica manchester prevede che per ogni bit trasmesso ci sia una transizione di stato (da 0 a 1 in caso di un 1, e da 1 a 0 in caso di 0).
Il ricevitore riesce a sincronizzarsi grazie al preambolo fatto di ..10101010.. |
5) Perché MPLS viene indicato come protocollo di Label Switching e che vantaggio comporta sul tradizionale pachet routing? | non ancora risposta |
6) Frame da 2K bit sono trasferiti su un canale in fibra di 36Km a 200Mbps. Calcolare l’utilizzo del canale de a livello due viene usata una tecnica di Selective
Repeat con numeri di sequenza su 4 bit. | non ancora risposta |
7) Descrivere i vantaggi del Fast Retransmit di TCP rispetto al normale utilizzo di timeout e il suo comportamento in caso di errore. | Il fast retransmit di TCP permette di mandare immediatamente al ricevitore un segmento che è stato perso: questo lo fa dopo aver ricevuto 3 ack fuori sequenza.
E' stato introdotta questa tecnica in quanto il normale timer di ritrasmissione (retransmission timeout - RTO) è troppo lungo quando non sappiamo ancora
dimensionarlo in base alla capacità della rete del livello sottostante. |
8) In una rete Distance Vector i nodi possono generare picchi di traffico di controllo legati alla spedizione (quasi sincronizzata) di DV-update. Come è possibile limitare il problema? | Update storm (tempesta di update): può capitare che i timer scadano tutti insieme, quindi viene generato tantissimo traffico in rete.
Soluzione: ogni nodo genera il proprio update con un ritardo random (0 – 5 secondi) |
9) Volendo progettare una rete CSMA/CD che opera a 50Mbps indicare quale vincolo imposto dallo standard IEE 802.3 andrebbe modificato per conservare compatibilità di frame. | per mantenere le frame intatte deve essere modificata la distanza massima fra le stazioni che da 2.5km passa a 500m |
10) Sia data una connessione TCP con valori attuali di RTT e RTO rispettivamente uguali a 20 e 22 sec. Se il prossimo segmento S1 viene validato da un ACK
dopo 30 sec calcolare i nuovi valori di RTT e RTO ipotizzando i parametri alfa e beta a 0,9. | non ancora risposta |
1) Dato uno schema go-bach-N su una finestra grande h, mostrare quanti numeri di sequenza sono richiesti e perché. | Sono richiesti k+1 numeri di sequenza in quanto è necessario disambiguare le varie finestre trasmesse. |
2) Una connessione TCP produce un segmento di dimensione 3000B.
Descrivere i frammenti con (i campi significativi) generati dal livello IP sottostante se la rete di transito è una rete LAN Ethernet | Frame di 3000Byte.
Lan ethernet, dimensione massima di un frammento = 1500Byte
20 byte di header
1˚ Frammento:
identificativo = 1 - total length = 3000 - payload = 1500 - 20 = 1480
offset = 0 - more-fragment = 1
2˚ Frammento:
identificativo = 1 - total length = 3000 - payload = 1480
offset = 185 - more-fragment = 1
3˚ Frammento:
identificativo = 1- total length = 3000- payload = 3000 - 1480 - 1480 = 40
offset = 370 - more-fragment = 0 |
3) Supponiamo che una stazione CSMA/CD non rispetti la dimensione minima di frame in fase di trasmissione. Quali conseguenze potrà subire nell˙accesso al canale
condiviso? | se le frame fossero troppo corte potrebbe verificarsi una situazione del genere:
- A e B fanno carrier sense e trovano il canale libero
- A e B trasmettono contemporaneamente una frame
- A e B finiscono di trasmettere la frame senza rilevare errori dato che il segnale non fa in tempo a tornare indietro
- finita la trasmissione A e B vengono notificati con un errore di collisione da loro non spiegabile dato che la loro trasmissione non ha avuto errori |
5) La tecnica di routing Link State supera alcuni limiti della tecnica Distance Vector. Quali? | Link state supera i problemi di count to infinity e bouncing effect, attraverso l'uso di vettori link state che vengono propagati in flooding.
Inoltre usando distance vector i nodi non conoscono la topologia della rete: con link state invece la conoscono. |
6) Descrivere la tecnica di slow start di TCP. | la tecnica di slow start è un algoritmo utilizzato dal protocollo TCP per aumentare gradualmente la velocità di trasmissione dei dati.
la finestra inizia con una dimensione di 1
ogni volta che viene ricevuto l'ack relativo alla finestra questa viene raddoppiata
la tecnica di slow start ha fine una volta che si arriva ad una determinata treshold o prima se vengono rilevati problemi con gli ack |
7) Evidenziare le differenze fra Label switching e Packet routing. | Label Switching: Opera al livello 2, Utilizza etichette preassegnate (labels) per commutare rapidamente i pacchetti
Packet Routing: Opera al livello 3, Analizza l'indirizzo IP di destinazione in ogni pacchetto e utilizza tabelle di routing per determinare il miglior percorso verso la destinazione |
8) Come funziona il sistema di cache dei nomi studiato per il DNS? | non ancora risposta |
9) Frame di 2Kb sono trasmesse tra due calcolatori connessi da un canale di comunicazione in fibra lungo 100Km e capace di trasmettere 100Mbps. Calcolare
l’utilizzo del canale se il livello data-linh usa un protocollo Selective Repeat con numeri di sequenza rappresentati con 4bit.
Usare 2x10^8 m/sec come dato di velocità di propagazione nel mezzo. | non ancora risposta |
10) L’attuale finestra di congestion (CW) TCP è pari a 48KB, MSS di 1KB e SST pari a 30KB. Stabilire i nuovi valori di SST e CW nella ipotesi di aver rilevato una situazione di fast retransmit. | non ancora risposta |
1) Descrivere le differenze algoritmiche fra Go-bach-n e Selective repeat e specificare l˙impatto che hanno sulla numerazione della sequenza all˙interno della
finestra di trasmissione a livello 2. | In caso di politica Go-back-n si dovrà utilizzare una numerazione di sequenza pari a k+1 (dove k è la dimensione della finestra), per riuscire a disambiguare due
finestre di trasmissione in caso di errori o perdita di eventuali ack.
In caso di politica Selective repeat invece sarà pari a 2k, in quanto usandone k+1 come nel caso di Go-back-n avremmo dei problemi. Nel caso di quest'ultima politica
si va ad utilizzare più memoria quindi è leggermente più dispendioso. |
2) ARP risolve un indirizzo IP nell'indirizzo corrispondente di livello 2. Come si comporta nel caso la macchina destinazione non appartenga alla stessa network della sorgente? | Viene utilizzato un Proxy ARP: se ricordo bene il router funge da "sostituto" per la macchina nell'altra rete.
In caso A e B vogliano comunicare, e A mandi una arp request a B che si trova nell'altra rete, il router che collega le due reti inoltrerà la richiesta a B fungendo
appunto da PROXY ARP. Ogni volta che A vorrà mandare un messaggio a B starà in realtà comunicando con il router che funge da sostituto. |
3) Volendo portare lo schema CSMA/CD ad operare a 1Gbit/sec è necessario modificare alcuni parametri del protocollo. Descrivere cosa viene modificato e
perché. | Bisogna modificare dimensione minima delle frame e lunghezza del canale.
Basterebbe una delle due ma lasciando il canale lungo 2.5km come nella ethernet a 10mbps risulterebbe in una frame minima enorme.
Si è quindi deciso di accorciare la lunghezza massima del canale a 100m con dimensione minima dei frame di 512Byte. |
4) Perché un sistema NAT, pur operando a livello 3, genera una propria numerazione di porta TCP sostituendo quella generata dalla stazione interna sorgente del traffico? | Perché due macchine all'interno della rete possono avere la stessa numerazione di porta, e il NAT deve riuscire a capire a quale macchina è realmente destinato un messaggio: per farlo utilizza una propria numerazione di porta, che permette di disambiguare. |
5) Descrivere una sequenza di eventi che può generare un count-to-infinity in una rete distance vector. | in una rete abc se salta la connessione bc
a invia il proprio distance vector prima che b invii il suo
b vede che a riesce a raggiungere c allora pensa di raggiungere c tramite a... |
6) Per quale ragione TCP utilizza lo slow start su una connessione appena aperta? | Dato che la componente di livello 4 non conosce niente della componente di rete, è costretta ad aprire la connessione in modo "cauto".
Vengono mandate delle finestre di messaggi che vengono raddoppiate di volta in volta per testare le capacità della rete, finchè non viene raggiunta una Slow Start Threshold (SST), ovvero la soglia massima configurata. |
7) Sintetizzare le differenze tra routing e switching. | Lo switching è un'operazione che viene a livello 2 e tratta essenzialmente lo store and forward: viene svolta da dispositivi come gli switch.
E' "store and forward" in quanto vengono bufferizzate le frame e mandate all'eventuale destinatario. Per fare questa operazione vengono utilizzati gli indirizzi mac e
consultate le relative tabelle.
Il routing invece è un'operazione svolta a livello 3, e utilizza per l'appunto indirizzi ip. |
8) Una frame di 4Kbit deve essere trasmessa tra due calcolatori connessi da un canale di comunicazione in fibra lungo 100Km e avente banda di 100Mbps
(usare Vp= 3* 10^8 nei calcoli). Calcolare l˙utilizzo del canale ipotizzando a livello data-linh un protocollo Go-bach-n con numeri di sequenza rappresentati
con 3 bit. | L = 100Km
Ch = 100Mbps
Vp = 3 * 10^8
F = 4Kbit
tx = 4 * 10^3 / 100 * 10^6 = 0,05ms
tp = 100 * 10^3 / 2 * 10^8 = 0,5ms
U = k * (0,05 / 1,05) = 7 * 0,04 = 0,28
U = 28% |
9) Su una connessione TCP il segmento S5 è trasmesso con i valori di RTO e D rispettivamente di 32msec e 2. Alla ricezione dell˙ACK per il segmento S5 il
sender rileva la misura M=20msec. Indicare il nuovo valore di RTO usato per la trasmissione del segmento successivo S6. | RTO_old = 32msec
D_old = 2
M = 20msec
Alpha = 0.9
... RTO0 ..
RTO1 =. ...
RTO2 = ...
...
RTO_old = 32msec
D_old = 2
M = 20msec
Alpha = 0.9 |
10) Dato il seguente schema del ciclo di vita degli stream del protocollo HTTP2, considerare gli stati OPEN, HALF CLOSED LOCAL e HALF CLOSED REMOTE dal
punto di vista del client di una connessione HTTP2. Per ognuno dei tre stati specificare in particolare:
quale dei due end-point può creare lo stream;
quale dei due end-point può trasmettere frame su quello stream;
quale dei due end-point può ricevere frame su quello stream. | OPEN: si raggiunge dopo la ricezione o trasmissione di uno header, entrambe le macchine possono comunicare, la comunicazione termina una volta ricevuto o inviato un frame con il flag RESET
HALF CLOSED LOCAL: raggiunta dal reserved remote una volta che viene ricevuto uno header
solo il local puè trasmettere
HALF CLOSED REMOTE: raggiungibile dal reserved local se viene inviato uno header, solo l'endpoint può parlare con la macchina in questione |
1) Descrivere la procedura di chiusura connessione in TCP specificando perché si parla di chiusura asimmetrica e definendo il ruolo dei timer usati dai due end-systems. | C'è una connessione aperta; ipotizzando client e server:
1) Il client invia un messaggio di fin = 1 ed entra nello stato di fin wait, dove aspetterà l'ack del server. In caso non lo riceva manderà nuovamente il messaggio di fin.
2) Il server manda l'ack ed entra in fase di close wait.
3) Il client riceve l'ack ed entra in stato di fin wait 2, e aspetta che il server mandi a sua volta il suo fin.
4) Il server può continuare a trasmettere e quando è pronto per chiudere la connessione manda il suo fin ed entra in stato di last_ack, ovvero aspetterà l'ultimo ack da parte del client. In caso non lo riceva rimanda il fin.
5) Il client riceve il fin del server e manda l'ultimo ack; nel frattempo avvia l'ultimo timer che permette di ricevere nuovamente il fin dal server nel caso venga perso e ci sia bisogno di rimandare l'ack (il client deve assicurarsi che il server abbia ricevuto l'ack).
6) Il server, ricevendo l'ack, chiude la pipe, che poi verrà chiusa anche dal client una volta scaduto l'ultimo timer. |
2) Descrivere le funzioni svolte da un mail server quando riceve una mail dal client su canale IMAP. | il messaggio spedito dal client arriva all'user agent del server che lo posiziona in una queue del message transfer agent del client
tramite un resolver viene trovato l'indirizzo del destinatario e viene spedito tramite tcp con protocollo smtp
il messaggio viene ricevuto dal transfer agent del server che lo posiziona nella inbox queue per l'user agent del server da spedire al client |
3) Descrivere la struttura della tabella usata dal NAT per eseguire la traduzione degli indirizzi. | tabella sul pdf 28 febbraio 2020 |
4) Ricorrendo ad un esempio, spiegare perché lo split horizon risolve, solo in parte, il problema del count to infinity. | nel caso in esempio C nota che può raggiungere A passando da D e propaga prima di B il suo distance vector a B,
alla fine tutti pensano di poter raggiungere A attraverso D... |
5) Perché il pacchetto IPv6 ha un campo ”next header”? | Il campo next header ha il compito di distribuire le informazioni, prima contenute in ogni header, su più pacchetti.
Quando non ci sono funzionalità aggiuntive, nel campo next header si mette l'identificatore dell'header TCP. |
6) Dato un canale in fibra di 12Km a 100Mbps, determinare la dimensione di frame che garantisce almeno il 60% di utilizzo del canale se a livello 2 viene usata una
tecnica Idle-RQ. | 12000 |
7) Come viene dimensionata la congestion window in una connessione TCP? | Dato che non sappiamo lo stato attuale della rete nel livello sottostante, c'è bisogno di partire con cautela tramite la tecnica di slow start.
La finestra di congestione viene inizializzata a 1MSS per poi crescere in modo esponenziale fino alla slow start threshold. Successivamente crescerà in modo lineare (fase di congestion avoidance) fino a raggiungere la dimensione del buffer di ricezione che è la soglia massima.
In caso di errore abbiamo un sintomo di congestione della rete sottostante.
dimensione della finestra = min(finestra di congestione, buffer di ricezione)
Si possono distinguere due differenti situazioni di congestione: congestione "lieve", in cui vengono quindi ricevuti tre ack consecutivi fuori sequenza. Il fatto di aver ricevuto gli ack consente di assumere che la congestione sia lieve. Viene quindi adottata la tecnica di fast retransmit, che dimezza la finestra di trasmissione attuale (flightsize) e riparte con congestion avoidance.
In caso di congestione "grave", in cui il timer di ritrasmissione scade, si reagisce in modo più conservativo impostando la slow start threshold alla metà della flightsize al momento del timeout e abbattendo l'attuale dimensione della finestra a 1MSS, ripartendo con slow start. |
8) Come può essere implementato OSPF per ridurre l’impatto negativo della politica di flooding? | E' possibile usare un designated router che calcola lo shortest path per tutte le destinazioni di tutti i router della rete: verranno usati appositi segnali di controllo (link state
update, ack, e request). Il designated router è un nodo della rete particolarmente attrezzato che permette di evitare il continuo flooding tra i nodi. |
9) Spiegare l’impatto del tempo di propagazione sul protocollo CSMA/CD. | In CSMA/CD, il tempo di trasmissione tx è strettamente legato al tempo di propagazione dalla relazione:
tx >= 2tp.
Se questa condizione non viene rispettata, si hanno problemi nella rilevazione di una collisione. |
10) Sia data una connessione TCP su cui si rileva la prima misura di RTT pari a 20 msec. Determinare il valore di RTO associato alla trasmissione del prossimo
segmento, S1. Stimare anche il valore di RTO associato a S2, se S1 viene validato da un ACK dopo 24 msec. (ipotizzando i parametri a e þ uguali a 0.9). | non ancora risposta |
11) Domanda Pachet Tracer
La rete A, di indirizzo 132.56.73.0/23, contiene 3 sottoreti tutte collegate al medesimo switch, collegato a
propria volta ad un router che permette la comunicazione con il resto di Internet, secondo il seguente schema:
A ---switch 1 --- router 1 --- router 2 --- switch I --- Internet. | immagine 28 febbraio 2020 |
1) Descrivere la procedura di chiusura connessione in TCP specificando perché si parla di chiusura asimmetrica e definendo il ruolo dei timer usati dai due end-points
della connessione. | C'è una connessione aperta; ipotizzando client e server:
1) Il client invia un messaggio di fin = 1 ed entra nello stato di fin wait, dove aspetterà l'ack del server. In caso non lo riceva manderà nuovamente il messaggio di fin.
2) Il server manda l'ack ed entra in fase di close wait.
3) Il client riceve l'ack ed entra in stato di fin wait 2, e aspetta che il server mandi a sua volta il suo fin.
4) Il server può continuare a trasmettere e quando è pronto per chiudere la connessione manda il suo fin ed entra in stato di last_ack, ovvero aspetterà l'ultimo ack da parte
del client. In caso non lo riceva rimanda il fin.
5) Il client riceve il fin del server e manda l'ultimo ack; nel frattempo avvia l'ultimo timer che permette di ricevere nuovamente il fin dal server nel caso venga perso e ci sia
bisogno di rimandare l'ack (il client deve assicurarsi che il server abbia ricevuto l'ack).
6) Il server, ricevendo l'ack, chiude la pipe, che poi verrà chiusa anche dal client una volta scaduto l'ultimo timer. |
2) Descrivere le funzioni svolte da un SMTP server quando riceve una mail da un proprio client su canale IMAP. | non ancora risposta |
3) Un dispositivo NAT per eseguire la traduzione degli indirizzi opera solo su informazioni di livello 3. Perché? | perchè lo scoppo del NAT è quello di mascherare gli indirizzi ip delle macchine dentro la rete utilizzando un suo indirizzo IP |
4) Il protocollo RIP adotta una tecnica detta Triggered Update volta a limitare l˙impatto di un problema tipico del Distance Vector. Quale problema e perché non è | il problema consiste nella bouncing effect, questo si verifica quando una connessione con un nodo della rete viene persa è probabile che nodi differenti finiscano in un loop di update che genera molto traffico inutile |
5) Perché il pacchetto IPv6 ha un campo ”next header”? | non ancora risposta |
6) Dato un canale in fibra di 10Km a 100Mbps, determinare la dimensione di frame che garantisce almeno il 50% di utilizzo del canale se a livello 2 viene usata una
tecnica Idle-RQ. | non ancora risposta |
7) Specificare le regole di crescita della congestion window nelle diverse fasi di una connessione tcp. | non ancora risposta |
8) Perché si dice che le tabelle link state convergono più rapidamente di quelle distance vector? | Perchè i link state vengono propagati in flooding su tutta la rete. |
9) Spiegare la politica Binary Exponential Backoff in CSMA/CD e come questa si adatta alle condizioni di traffico cercando di minimizzare il tempo di accesso al
canale. | Al momento del rilevamento della collisione, CSMA/CD genera un ritardo random prima riprovare la trasmissione: questo ritardo è dato da una funzione di BEB che va da 0 a 2^i -1 * slot time, dove i è il numero di collisioni consecutive già verificate. |
10) Sia data una connessione TCP su cui si rileva la prima misura di RTT pari a 20 msec. Determinare il valore di RTO associato alla trasmissione del prossimo
segmento, S1. Stimare anche il valore di RTO associato a S2, se S1 viene validato da un ACK dopo 25 msec. (ipotizzando i parametri a e þ uguali a 0.9). | non ancora risposta |
1) Descrivere le differenze fra forwarding e routing indicando anche, per ciascuna delle due tecniche, un protocollo che l˙adotta. | Forwarding è un'operazione che viene fatta quando si inoltra un'unità dati.
Un esempio di forwarding è quello che fanno gli switch quando spostano una frame da una porta all'altra (store and forward).
Un esempio di routing è quello di livello 3 OSPF, RIP. |
2) Si supponga che la finestra di congestione di TCP sia di 4KByte quando si verifica l˙arrivo di 3 duplicate ach. Si assuma che la MSS sia 1KB e la SST sia 32KB. Quali
sono i due nuovi valori di SST e Congestion Window? | non ancora risposta |
3) Su una connessione TCP caratterizzata da un produttore molto più lento del consumatore, spiegare come opera il protocollo se viene adottato l˙algoritmo di Nagle. | è una possibile soluzione al problema della Silly Window Syndrome,
il problema che cerca di risolvere è rappresentato da un produttore lento.
l'algoritmo consente al trasmettitore di poter aggregare più frame per poi poter ricevere un solo ack |
4) Descrivere le funzioni dell˙extended header di IPV6 confrontandolo con l˙approccio usato da IPV4. | non ancora risposta |
5) Sia data una stringa binaria di ingresso di 54 bit e l˙ipotesi di usare la codifica Base64 per il trasferimento fra due entità di protocollo di livello 7. Descrivere con uno
schema a blocchi i passi eseguiti per la codifica e per generare il corrispondente formato NVT in trasmissione. | non ancora risposta |
6) nel protocollo DHCP, come è possibile evitare di assegnare lo stesso IP dinamico a più client? | prima di assegnare un indirizzo viene fatta una arp request nella rete per verificare che l'indirizzo ip proposto non sia già stato assegnato a qualche altro client.
gli indirizzi assegnati da un dhcp server non sono assegnati permanentemente alla macchina per evitare che finiscano. al contrario vengono concessi in prestito per un tot di tempo.
allo scadere del tempo se un end system si è scollegato dalla rete allora viene recuperato il suo ip address e reso di nuovo disponibile, se invece risulta ancora collegato e necessita dell'indirizzo allora manderà una richiesta di proroga al DHCP server |
7) Host e router collegati tramite una rete Ethernet usano IP per essere indirizzati ed indirizzare altre stazioni a loro volta connesse tramite una diversa LAN Ethernet.
Per collegare le due LAN è sufficiente un bridge o serve altro? Motivare la risposta. | un bridge collega per definizione due LAN, non vedo perchè non dovrebbe funzionare |
8) K è la dimensione della finestra che massimizza l˙utilizzo del canale in un protocollo affidabile di livello 2. Qual è il maximum sequence number applicabile per go
bach n e selective repeat? | non ancora risposta |
9) Descrivere mediante uno schema a blocchi funzionali la struttura del message transfer agent di un sistema di posta elettronica. | non ancora risposta |
10) L˙amministratore di una rete ethernet a 10Mbit rileva un elevato numero di stazioni che tentano di accedere al canale in un dato intervallo di tempo di osservazione.
Dire che effetto produce questo numero sulle prestazioni della rete e quali soluzioni può attivare l˙amministratore per risolverle. | non ancora risposta |
1) Data una rete MPLS costruire le tabelle di switching di un Label Switching Router per consetire ai pacchetti ricevuti con etichetta 20 siano ruotati in uscita con
etichetta 70. | +------------+----------------+---------------+------------------+
| Ingresso | Etichetta In | Etichetta Out | Interfaccia Out |
+------------+----------------+---------------+------------------+
| MPLS ____ | 20_____ |70 ______ | Interfaccia 1 |
+------------+----------------+---------------+------------------+ |
2) Su una connessione TCP il valore corrente di RTT è uguale a 20 msec, e RTO = 24msec. Calcolare il nuovo RTO nel caso la trasmissione del segmento successivo generi un timeout. | non ancora risposta |
3) Frame da 1000 bit sono trasmesse su un canale satellitare da 1Mbps lungo 200Km. Stabilire la dimensione della finestra di trasmissione che massimizza l˙utilizzo del canale ipotizzando che sia usata una tecnica di ritrasmissione go-back-n. | non ancora risposta |
4) Motivare l˙uso di cookies nelle interazioni client-server su HTTP e usare uno schema per spiegare come vengono installati. | i server http sono server stateless quindi per implementare un concetto di stato per ogni client si utilizzano i cookies(piccoli file)
1) i cookies vengono richiesti dal server al client,
2) inviati dal client i propri cookies e ricevuti dal server
3) viene controllato il database dei cookies per poter fornire un servizio personalizzato per il client |
5) Lo standard IEEE 802.3 prevede che ogni frame sia preceduta da 7 byte, ciascuno con questa configurazione: 10101010. Ricordando che a livello di canale vienie utilizzata la codifica manchester, motivare la scelta di questa specifica configurazione per il preambolo, contro ad esempio la sequenza 11100111. | la sequenza indicata mira a fornire una quantità sufficientemente lunga per far sincronizzare il clock della macchina ricevente con il clock della trasmissione di dati, misurando la differenza di tempo fra un 1 e uno 0 |
6) Per quale ragione lo schema Weighted Fair Queuing si presta ad essere usato nella gestione delle code di output di un router? | Perché consente di evitare lo starvation che si crea se una coda ha priorità più elevata di un'altra, pesando la priorità sulla somma delle priorità totali. |
7) Spiegare la tecnica split horizon adottata nel routing distance vector. con un esempio | la tecnica split horizon prevede una parziale conoscenza della rete dei nodi poichè riusciranno a distinguere i vari nodi raggiunti dalle varie interfacce,
nella direzione del nodo a il nodo c non afferma di saper raggiungere a in questo modo b non riesce ad essere tratto in inganno.
il problema rimane nel caso il distance vector venga perso |
8) IP deve trasferire payload di 10Kbyte attraverso una sottorete capace di trasferire unità dati di 3000 Byte. Descrivere come vengono frammentati i pacchetti IP e
la struttura corrispondente dell˙header dei frammenti. | non ancora risposta |
9) DHCP, per richiedere ed ottenere un IP temporaneo utilizza un protocollo che scambia 4 messaggi di controllo invece di un tradizionale schema request-reply.
Perché? | per potersi assicurare che l'indirizzo venga accettato dalla macchina in oggetto
per garantire la collaborazione fra più server dhcp che possono fare più offerte allo stesso tempo di cui la macchina ne accetterà soltanto una |
10) Calcolare la dimensione minima di frame spedite su una rete CSMA/CD 1-persistente da 4Mbps, su cavo coassiale, lunga 4Km e con 2 repeater che introducono un ritardo di 5us ciascuno. | non ancora risposta |
1) Data una rete MPLS costruire le tabelle di switching di un Label Switching Router per consetire ai pacchetti ricevuti con etichetta 38 siano ruotati in uscita con
etichetta 79. | ingresso tag | In tag | Out tag | Out port
1 __ | __ 38 | __ 79 | __ 2 |
2) Su una connessione TCP il valore corrente di RTT è uguale a 30 msec, e RTO = 34msec. Calcolare (1) i nuovi valori nel caso il prossimo segmento S1 riporta una misura M di RTT di 32msec | Dattuale = (RTO - RTT) /4
cioè : Dattuale = 34 +30 / 4 = 1
Dnuovo = alfa * Dnew + (1-alfa) |RTTprec - RTTmisurato|
cioè: .9*1 + .1*|30 -32| = 1.1
RTTnew = alfa * RTTprec + (1-alfa) RTTmisurato
cioè : 0.9 * 30 + 0.1 * 32 = 30.2
RTOnew = RTTnew + 4Dnuovo
cioè : 30.2 + 4*1.1 = 34.8 |
3) Frame da 1000 bit sono trasmesse su un canale satellitare da 1Mbps lungo 200Km. Stabilire la dimensione della finestra di trasmissione che massimizza l˙utilizzo
del canale ipotizzando che sia usata una tecnica di ritrasmissione selective-repeat. | non ancora risposta |
4) Un host nel dominio di.unimi.it spedisce un˙email a if@ucla.cs.edu. Calcolare quanti passi esegue il DNS per risolvere il nome ucla.cs.edu in modalità ricorsiva e
ipotizzando tutte le cache vuote. | dipende se la chiamata segue un approccio ricorsivo o iterativo , nel caso iterativo ci impiega 4(root, ucla, cs, edu) |
7) Si consideri una topologia di 4 nodi: A collegato con B, B con C, C con D, D con A. Si preveda inltre un linh fra i nodi A e C. Dopo aver assegnato i costi ai linh a
vostra scelta ed ipotizzando uno schema Distance Vector, determinare in quanti passi il nodo B viene a conoscenza della topologia della rete, in base a quali
tabelle e quale sarà la sua tabella di routing al termine di questi passi. | non anocra risposta |
8) IP deve trasferire payload di 10Kbyte attraverso una sottorete capace di trasferire unità dati di 1500 Byte. Descrivere come vengono frammentati i pacchetti IP e la struttura corrispondente dell˙header dei frammenti. | non ancora risposta |
9) Indicare i principali campi di una DHCP Discover e di una DHCP Offer. | non ancora risposta |
10) Calcolare la dimensione minima di frame spedite su una rete CSMA/CD 1-persistente da 1Mbps, su cavo coassiale, lunga 4Km e con 2 repeater che introducono un
ritardo di 5us ciascuno. | non ancora risposta |
1) Come fa HTTP2 a risolvere il problema della head of line blocking? | hol blocking (di livello 7) si verifica in http 1.1 siccome con il pipelining introdotto la sequenza delle risposte deve seguire l'ordine delle richieste, se una risposta è particolarmente lenta da generare allora bloccherà anche quelle successive.
http2 risolve questo problema introducendo l'utilizzo di stream TCP differenti |