logo
  • userLoginStatus

Welcome

Our website is made possible by displaying online advertisements to our visitors.
Please disable your ad blocker to continue.

Current View

Computer Engineering - Fondamenti di Internet e Reti

Esercizi livello trasporto

Divided by topic

Fondamenti di Internet e Reti 097246 Esercizi 1 1. Esercizi sul Livello di Trasporto 3-1. Esercizio Si consideri un canale via satellite della capacità di 1 [Mb/s ]. Considerando che il tempo di propagazione attraverso un satellite geostazionario richiede 250 [ms ], si chiede di dimensionare la minima finestra di trasmissione di un protocollo Go -BACK -N ( con time -out) in modo che sia consentita la massima efficienza temporale del canale quando vengano trasmesse trame di 2000 [bit ] in assenza di errori. Si suppongano gli ACK trascurabili. Si calcoli poi la massima efficienza trasmissiva che si avrebbe nel caso in cui il meccanismo ARQ fosse di tipo STOP and WAIT. Soluzi one L’efficienza del meccanismo Go -BACK -N dipende dal rapporto tra RTT e lunghezza della finestra. Per avere la massima efficienza il numero di pacchetti N nella finestra deve essere tale che il loro tempo di trasmissione copra il tempo di andata e ritorno del primo pacchetto. Detti: • � = 2 [�� ] = 2000 [�������� ] / 1 [�� /�], il tempo di trasmissione di un pacchetto • � = 250 [�� ], il tempo di propagazione allora deve essere: �� ≥ �+ 2� ➔ � ≥ 1 + 2� � = 1 + 2⋅ 250 /2 = 251 Per finestre N ≥ 251, la trasmissione risulta continua, dunque l’efficienza del meccanismo è 1 . Nel caso di meccanismo STOP&WAIT abbiamo: L’efficienza del meccanismo STOP&WAIT si calcola considerando che il meccanismo trasmette 1 pacchetto (durata T = 2 [ms ]) ogni T + 2t, dunque l’efficienza:  = �/(�+ 2�) = 1/251 . 1 2 3 N N+ 1 N+ 2 τ Tr asm issio ne Inefficie nte RT T >N T 1 2 3 N N+ 1 N+ 2 τ Tr asm issio ne C o n tinu a RT T ��� , quindi ������ > ��� /�1 Quindi: ��� = �1 + �2 + 4������ = 20 [������� ]+ 10 [������� ]+ 4 [������� ]= 34 [������� ] �1= 100  8 [�������� ] / 40 [�� /�] = 20 [������� ] E dunque ������ > ��� /�1 = 1.7 La trasmissione ri sulta continua sul link 1 dopo un RTT , infatti dopo un RTT W = 2 . Il file è composto da 1 [���������� ] / 100 [��������� ] = 10 ��� Dunque il tempo totale di trasferimento è: ��� (���������� ��� )+ 8 �1 (������������������ ������� ���������������������� ������������� ) + ��� (����������� ���� ℎ���� � ������������ ���� ’�������� )= 228 [������� ] R A B C 1= 40 M b/ s t1= 1 us C 2= 80 M b/ s t2= 1 us 1 1 TX continua sul link 1 RTT RTT 2 3 2 4 5 6 7 8 9 10 1 1 1 TX continua sul link 1 RTT RTT 2 3 2 4 5 6 7 8 9 10 1 Fondamenti di Internet e Reti 097246 Esercizi 20 3-15. Esercizio Si consideri il collegamento in figura tra i due host A e B. A deve trasferire una sequenza di 100 segmenti di lunghezza massima usando TCP. Si calcoli il tempo necess ario supponendo : • MSS = 1000 [bit ] • lunghezza degli header di tutti i livelli trascurabile • la connessione venga aperta da A e la lunghezza dei segmenti di apertura della connessione sia trascurabile • la lunghezza degli ACK sia trascurabile • SSTHRESH sia pari a 5 MSS Soluzione Il tempo di ���������������������� � = 1000 [�������� ] / 1 [�� /�] = 1 [�� ], mentre ��� = 6.2 [�� ]+ � = 7.2 [�� ] La trasmissione è dunque discontinua fino a che WT < RTT, cioè fino a che W = 8. Il tempo totale di trasferimento è pari a: 2  (����� ���������������� )+ 6 ��� (��������������� 25 ��� ) + 75 � (75 ��� ������� ���������������������� ������������� ) + 2  (������������ �������� ���� ’����������� ��� )= 130 .6 [�� ] 1 M S S 2 M S S 4 M S S 5 M S S 6 M S S 7 M S S T X co ntinu a Fondamenti di Internet e Reti 097246 Esercizi 21 3-16. Esercizio All’istante 0 viene attivata una connessione TCP tra l’host A e l’host B. Si calcoli l’istante di tempo oltre il quale la trasmissione sul link 1 risulta continua, supponendo • header trascurabili • link bidirezionali e simmetrici • RCWND = 4000 [byte ] e SSTHRESH = 400 [byte ] • dimensione segmenti MSS = 200 [byte ] • dimensione ACK = dimensione segmenti per apertura della connessione = 20 [byte ] • connessione aperta dal terminale A Quanto tempo occorre per trasferire un file da 2 [kbyte ] (dall’istante di tras missione del primo segmento all’istante di ricezione dell’ACK dell’ultimo segmento)? Soluzione Cominciamo calcolando i tempi di trasmissione sui vari link, il RTT end -to-end ed il tempo di setup: �1= 200 · 8 [�������� ] / 25 [�� /�] = 64 �� �2 = ½ �1 = 32 �� �3 = ½ �2 = 16 �� ��� = �1 + �2 + �3 + 2(2 + 1 + 3)+ (��� �1 + ��� �2 + ��� �3)= 213 .2 [�� ] ������ = 2(��� �1 + ��� �2 + ��� �3)+ 2(2+ 1+ 3)= 112 .4 [�� ] Il link più lento è il link 1, che sarà il collo di bottiglia, cioè il primo a saturarsi. Dunque la trasmissione è continua sul link 1 quando: WT 1 > RTT . Vale a dire ������ > ��� /�1 = 3.3 L’istante in cui la trasmissione diventa continua è quando la fines tra vale 4 MSS, cioè ��= ������ + 3 ��� = 112 .4 [�� ]+ 649 .6 [�� ]= 752 [�� ] Il file da trasferire è di 2 [kbyte], equivalenti a 10 MSS. Il tempo per trasferire 10 MSS è : ���� = ������ + 4 ��� + 3 �1 = 1.15 [�] R1 A B C 1= 25 K b/ s t1= 15m s C 2= 50 K b/ s t2= 15m s R2 C 3= 100 K b/ s t3= 15m s Fondamenti di Internet e Reti 097246 Esercizi 22 3-17. Esercizio Si consideri il collegamento in figura A vuole conoscere la capacità e il ritardo di propagazione del link 2 e allo scopo invia a B due messaggi di echo: M 1 di lunghezza l1 = 1000 [byte ], ed M 2 di lunghezza l2=1500 [byte ]; per ognuno di essi misura un Round -Trip -Time (RTT) pari a 780 [ms ] e 1130 [m]s, rispettivamente. Nella risposta, B utilizza messaggi con le stesse lunghezze. Calcolare C2 e 2 nell’ipotesi che le lunghezze degli header siano trascurabili. Soluzione Secondo lo scambio in figura, impostiamo un sistema di due equazioni (una per pacchetto) in due incognite ( C2 e 2) Inserendo i valori numerici abbiamo E risolvendo R1 A B C 1= 80 k bi t/s t 1= 10 m s C 2=? t 2=? ÷ ÷ ø ö ç ç è æ + + + = ÷ ÷ ø ö ç ç è æ + + + = 2 2 2 1 1 2 2 2 2 1 1 1 1 1 2 2 t t t t C m C m RT T C m C m RT T 2 2 2 2 2 2 2 2 2 24 00 0 32 0 12 00 0 10 80 12 00 0 2 11 30 2 16 00 0 22 0 80 00 10 80 80 00 2 78 0 t t t t + + = ÷ ÷ ø ö ç ç è æ + + + = + + = ÷ ÷ ø ö ç ç è æ + + + = C C C C Fondamenti di Internet e Reti 097246 Esercizi 23 ms kb it/s 30 32 80 00 28 0 32 25 0 80 00 C ; 56 0 C 80 00 C 80 00 28 0 2 C 24 00 0 81 0 C 80 00 28 0 2 2 2 2 2 2 2 = - = = = + = ÷ ÷ ø ö ç ç è æ - + = - = t t Fondamenti di Internet e Reti 097246 Esercizi 24 3-18. Esercizio Si consideri il collegamento in figura Tra A e B è attiva una connessione TCP già a regime con MSS = 250 [byte ]. Definiti: • Lunghezza Header IP: HIP • Lunghezza Header TCP: HTCP • Lunghezza Header livelli inferiori: HLL In caso di: • RCVWND sia minore della CWND e pari a 4 segmenti. • Assenza di errori • Lunghezza degli ACK trascurabile Si calcoli il tempo necessario a trasferire una sequenza di byte in arrivo dal livello applicativo lunga 104 [kbit ] (dall’istante di trasmissione del primo segmento alla ricezione dell’ACK dell’ultimo ). Qual è il valore della finestra che consentirebbe di avere una trasmissione continua di pacchetti sul link 1? Soluzione Una sequenza di 104 [kbit] equivale a 13000 [byte] che possono essere inviati in 52 seg menti da 250 [byte] (MSS) . Ciascun pacchetto (sul link) ha una lunghezza complessiva di L = MSS+ HIP + HTCP + HLL . Abbiamo due casi , a seconda della durata del RTT rispetto al tempo di trasmissione sul primo link Se RTT > 4 L / C 1 la trasmissione non è continua altrimenti la trasmissione è continua R1 R2 A B 3 2 1 C C C £ £ C 1 t 1 C 2 t 2 C 3 t 3 3 3 2 2 1 1 2 C L 2 C L 2 C L RT T t t t + + + + + = T to t = (5 2 / 4 ) × R T T + (4 - 1 ) L C 1 = 1 3 R T T + 3 L C 1 … 1 2 51 52 Fondamenti di Internet e Reti 097246 Esercizi 25 Il valore minimo della finestra che consente una trasmissione continua si calcola imponendo che il tempo RTT sia minore o uguale del tempo di trasmissione dei segmenti della fines tra: RT T C L 51 Tt o t 1 + = 1 C L w RT T £ ú ú ù ê ê é ÷ ÷ ø ö ç ç è æ + + + + + = 3 3 2 2 1 1 1 2 2 2 t t t C L C L C L L C w Fondamenti di Internet e Reti 097246 Esercizi 26 3-19. Esercizio Una connessione TCP è usata per trasmettere un file da 39.5 [kbyte ] utilizzando i seguenti parametri: • MSS = 500 [byte ] • RTT = 500 [ms ] • timeout pari a 2 RTT. Si assuma che le condizioni iniziali delle finestre siano: • RCWND = 12 [kbyte ] • SSTHRESH = 8 [kbyte ] • CWND = 500 [byte ] E che inoltre: • si verifichi un errore sulla connessione all’istante 3 s (tutti i segmenti in trasmissione vengano persi) • al tempo 4.5 [s] il ricevitore segnali RCWND = 2 [kbyte ] Si tracci l’andamento nel tempo di: • CWND • SSTHRESH • RCWND Si calcoli il tempo di trasmissione del file utilizzando multipli di RTT come base temporale Soluzione Conviene ragionare in numero di segmenti trasmessi Dimensione File (in MSS) = 39 .5 [���������� ] / 500 [��������� ] = 79 ��� Dobbiamo trovare il tempo necessario per trasferire 79 MSS, possiamo farlo utilizzando il seguente grafico ���������� = 12 [���������� ] / 500 [��������� ] = 24 ��� ������������������ = 8 [���������� ] / 500 [��������� ] = 16 ��� ������������ = 1 [�] Il tempo di trasferimento del file è T = 8.5 [s], alle fine dell’RTT che inizia a 8 [s] . 0 5 10 15 20 25 30 0 1 2 3 4 5 6 7 8 9 Se condi MSS RCW ND SSTHRESH CW ND 4 4 2 1 1 2 4 8 16 17 18 4 4 4 4 4 Fondamenti di Internet e Reti 097246 Esercizi 27 3-20. Esercizio Si consideri il collegamento in figura A deve trasferire un messaggio applicativo di M [byte ] verso B utilizzando UDP. Supponendo che la lunghezza massima dei segmenti UDP sia di m [byte ] (dati), e indicando con HLL , HIP , HUDP gli header dei livelli inferiori, IP e UDP rispettivamente, si calcoli: 1. il tempo necessario a trasferire il messaggio. 2. il tempo necessario a trasferire il messaggio, ipotizzando che sul link 2 sia attivo un meccanismo ARQ di tipo Stop -and -W ait (lunghezza degli ACK trascurabile) Soluzione Il sistema deve trasferire � = ⌊� �⁄ ⌋ pacchetti di lunghezza massima, mentre l’ultimo pacchetto è lungo �= � − �� Punto 1 Abbiamo due casi Invece Punto 2 Anche qui abbiamo due casi R1 A B 2 1 C C £ C 1 t 1 C 2 t 2 2 1 se C h m C h l + ³ + 2 2 1 1 1 t t + + + + + + + C h l C h l C h m n 2 1 se C h m C h l + £ + 2 2 2 1 1 t t + + + + + + + C h l C h m C h m n Fondamenti di Internet e Reti 097246 Esercizi 28 Invece se � +ℎ �1 ≥ 2������2 + � +ℎ �2 e �+ℎ �1 ≥ 2������2 + � +ℎ �2 mentre se � +ℎ �1 ≥ 2������2 + � +ℎ �2 e �+ℎ �1 < 2������2 + � +ℎ �2 2 2 1 2 se C h m C h m + + £ + t 2 2 2 2 1 1 2 t t t + + + ÷ ÷ ø ö ç ç è æ + + + + + C h l C h m n C h m 2 2 1 1 1 t t + + + + + + + C h l C h l C h m n Fondamenti di Internet e Reti 097246 Esercizi 29 �� + ℎ �1 + ������1+ � + ℎ �2 + 2������2+ �+ ℎ �2 + ������2 Fondamenti di Internet e Reti 097246 Esercizi 30 3-21. Esercizio Attraverso il collegamento in figura si vuole aprire una connessione TCP e trasferire un file da 60850 [byte ]. La connessione è caratterizzata dai seguenti parametri: • MSS = 1200 [byte ] • Lunghezza header TCP, H TCP = 40 [byte ] • Lunghezza totale header inferior i a TCP, H INF = 160 [byte ] • Lunghezza ACK, L A = 350 [byte ] (inclusi tutti gli header) • SSTHRESH = 60000 [byte ], RCWND molto grande Si chiede di indicare: 1. Se la trasmissione diventerà mai continua. Se sì, a partire da quale istante? 2. Il tempo totale di trasferimento del file in assenza di errori (fino alla ricezione dell’ultimo ACK alla sorgente). 3. Il tempo totale di trasferimento del file in assenza di errori, nel caso in cui il ricevitore comunichi RCWND = 6000 [byte ] all’istante 882 [ms ] della sorgente . 4. Come al punto 3, ma con errore di trasmissione di entrambi gli ultimi due segmenti e timeout minimo. Soluzione Punto 1 Il file è composto da 50 MSS + 850 byte, dunque i segmenti di lunghezza massima sono lunghi � = 1200 + 40 + 160 = 1400 [��������� ]= 11200 [�������� ] mentre l’ultimo segmento è lungo �’ = 850 + 40 + 160 = 1050 [��������� ]= 8400 [�������� ] I tempi di trasmissione sono �1 = � �1 = 20 [�� ] �2 = � �2 = 4 [�� ] �������� �1 = �������� �1 = 5 �� �������� �2 = �������� �2 = 1 [�� ] �’1 = �′ �1 = 15 [�� ] �’2 = �′ �2 = 3 [�� ] Abbiamo dunque ��� = �1 + �2 + �������� �1 + �������� �2 + 4  = 150 [�� ] La trasmissione è continua quando ������� = ��� �1 = 7.5 ==> 8 ��� (W=1, W=2, W=4, continua) Considerando il tempo di setup ����� = 2 �������� �1 + 2 �������� �2 + 4  = 132 [�� ] Fondamenti di Internet e Reti 097246 Esercizi 31 L’instante in cui la trasmissione è continua �������������� = ����� + 3��� = 582 [�� ] Punto 2 Vengono inviati 7 MSS prima che la trasmissione diventi co nti nua, dunque abbiamo 50 - 7 = 43 MSS in trasmissione continua + ultimo segmento più corto Il RTT del segmento più corto è diverso dagli altri ��� ’ = �’1 + �’2 + �������� �1 + �������� �2 + 4  = 144 [�� ] Dunque il tempo totale è ���� = �������������� + 43 �1 + ��� ’ = 1586 [�� ] Fondamenti di Internet e Reti 097246 Esercizi 32 Punto 3 Vediamo la perdita dei segmenti sui diagrammi temporali ������������������������ = 60000 [��������� ] / 1200 [��������� ] = 50 ��� Quindi il tempo totale è ���� = ����� + 3��� + 15 �1 + 2.5�1 + 5��� + 3�1 + ��� ’ = = 882 [�� ]+ 2.5�1 + 5��� + 3�1 + ��� ’ = 1886 [�� ] Punto 4 Fondamenti di Internet e Reti 097246 Esercizi 33 ���� = 882 [�� ]+ 2.5�1 + 5��� + 2�1 + ��� + ��� + ��� ’ = 2166 [�� ] Fondamenti di Internet e Reti 097246 Esercizi 34 3-22. Esercizio Una connessione TCP tra l’host A e l’host B è caratterizzata dai seguenti parametri: • Lunghezza di header, ack e segmenti di apertura trascurabile; • link bidirezionali; • RCWND = 16 MSS • SSTHRESH = 8 MSS • MSS = 1 [kbyte] • Ritardo di propagazione , τ = 5 [ms ] • Valore iniziale del Ti me -Out= 3 [s] Supponendo che il 6° segmento inviato da A venga perso e che occorra trasferire un file di 80 [kbyte] da A a B : a) dire se la trasmissione sul link diventa mai continua; in caso affermativo, trovare il tempo oltre cui la trasmissione sul link diventa continua; b) trovare il tempo di t rasferimento del file (dall’apertura della connessione alla ricezione dell’ultimo ACK) ; c) dire quanti segmenti vengono trasmessi inutilmente (errati o ricevuti corretti ma fuori sequenza). Soluzione Il tempo di trasmissione di un MSS è pari a � = 1000 ⋅ 8 [�������� ] / 8 [��������� /�] = 1 [�� ]. Il RTT è pari a ��� = � + 2 ������ = 1 + 2⋅5 = 11 [�� ] Punto a) La dimensione di finestra continua è ������� = ��� /� = 11 / 1 = 11 � �� 1 2 3 4 5 6 7 8 9 1 0 (5-9) (6-11) 1 1 R N = 5 R N = 6 R N = 6 R N = 6 R N = 6 R N = 6 Fondamenti di Internet e Reti 097246 Esercizi 35 Diventa continua dopo l’istante ����� = ������ + 2 ��� + 2� + ������������ + 10 ��� = 2 ������ + ������������ + 12 ��� = 10 + 3000 + 12 ⋅11 = 3.144 [�] Punto b) Il tempo di trasferimento � = ����� + 14 � + ��� = 3144 + 14 + 11 = 3.169 [�] Punto c) Viene ritrasmesso il solo sesto segmento perché TCP accetta segmenti fuori ordine. 4 5 6 7 8 9 1 0 (5-9) (6-11) 1 1 R N = 5 R N = 6 R N = 6 R N = 6 R N = 6 R N = 6 6 … C W N D = 1 SSTH RESH = 3 M SS R N = 1 2 1 2 1 3 1 4 1 5 1 6 1 4 1 5 1 6 1 7 1 8 1 9 2 0 6 8 6 9 7 0 7 1 7 2 7 3 7 4 7 5 7 6 7 7 7 8 7 9 … 8 0 6 6 6 7 TX continua Fondamenti di Internet e Reti 097246 Esercizi 36 3-23. Domanda Si calcoli il checksum secondo la modalità del protocollo UDP della seguente sequenza di bit: 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 0 0 0 0 1 0 0 0 1 0 0 0 1 0 1 Soluzione Il primo passo consiste nello spezzare la sequenza in blocchi da 16 bit 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 0 0 0 0 1 0 0 0 1 0 0 0 1 0 1 Sommiamo i primi due blocchi 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 + 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 = 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 Il riporto viene aggiunto al risultato come bit meno significativo 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 + 1 = 1 0 1 1 1 0 1 1 1 0 1 1 1 1 0 0 Sommiamo il terzo blocco 1 0 1 1 1 0 1 1 1 0 1 1 1 1 0 0 + 1 0 0 0 0 1 0 0 0 1 0 0 0 1 0 1 = 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 Il riporto viene aggiunto al risultato come bit meno significativo 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 + 1 = 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 Eseguiamo il complemento a 1 e troviamo il valore del checksum 1 0 1 1 1 1 1 1 1 1 1 1 0 1 Fondamenti di Internet e Reti 097246 Esercizi 37 3-24. Esercizio (Esempio Prova in Itinere AA 2015/16) Una connessione TCP tra l’ host A e l’ host B è caratterizzata dai seguenti parametri: • Lunghezze di header e ack trascurabili; • link bidirezionali; • RCWND = 16 MSS • SSTHRESH = 8 MSS • MSS = 1 [kbyte] • Ritardo di propagazione, τ = 5 [ms] • Valore iniziale del Time -Out= 3 [s] Si risponda ai seguenti quesiti: a) Dire se la trasmissione sul link diventa mai continua; in caso affermativo, trovare il tempo oltre cui la trasmissione sul link diventa continua; b) Trovare il tempo di trasferimento di un file di 80 [kbyte] da A a B; c) Ipotizzando che l’ultimo segmento in trasmissione venga perso, ripetere i l punto b) Soluzione � = ��� � = 8 ∙ 10 3 [�������� ] 8∙10 6 [�/�]= 1 [�� ] ��� = � + 2������= 11 �� Finestra tx continua: �������= ��� � = 11 MSS a) - Apertura connessione: 2������ - Slow start: (1) – (2) – (4) – (8): 4��� - Congestion avoidance: (9) – (10): 2��� Poi trasmissione continua �������������� = 2������+ 6��� = 76 [�� ] Fondamenti di Internet e Reti 097246 Esercizi 38 b) File = 80 MSS - Apertura connessione: 2������ - Slow start: (1) – (2) – (4) – (8): 4��� - Congestion avoidance: (9) – (10): 2��� In totale 34 segmenti - Trasmissione continua dei restanti 46 segmenti: 46 �+ 2������ Tempo totale: ���� = 2������+ 6��� + 46 �+ 2������= 132 [�� ] c) L’ultimo segmento viene ritrasmesso dopo lo scadere del timeout. e quindi ���� = 2������+ 6��� + 45 �+ ���� + �+ 2������= 3.132 [�] 3 5 7 9 8 0 … 8 0 tim e o u t = 3s 4 6 M S S Fondamenti di Internet e Reti 097246 Esercizi 39 3-25. Esercizio (Prova in Itinere 4 Maggio 2016) a) Una connessione TCP tra l’host A e l’host B nella rete in figura è caratterizzata dai seguenti parametri: • Link bidirezionali e simmetrici • MSS = 200 [byte] • Lunghezza header complessivo (tutti i livelli), H = 50 [byte] • Lunghezza ACK e segmenti di apertura, L ACK = 250 [byte] • RCWND = 1000 byte, SSTHR ESH = 1600 [byte] a.1) Si calcoli il tempo necessario a trasferire un file di dimensione F = 5 [kbyte ] (dall’apertura della connessione alla ricezione dell’ultimo ACK) a.2) Si indichi il rate medio di trasferimento del file da A a B Soluzione ���������� = 1000 [��������� ] / 200 [��������� ] = 5 ��� ������������������ = 1600 [��������� ] / 200 [��������� ] = 8 ��� ��������� = 5000 [��������� ] / 200 [��������� ] = 25 ��� � = ��� + ������ = 250 [��������� ] �1 = � �1 = 250 ⋅ 8 / 200000 = 10 [�� ] �2 = � �2 = 250 ⋅ 8 / 400000 = 5 [�� ] �1��� = �1; �2��� = �2 ��� = 2(�1+ ������1+ �2+ ������2)= 110 [�� ] ������� = ��� /�1 = 11 ��� ������ = ��� = 110 [�� ] R 1 R 3 R 2 F B D C C 1 = 2 00 kb /s t1= 2 0 m s C 2 = 4 00 kb /s t2= 2 0 m s C 3 = 250 kb /s t3= 10 m s C 4 = 1 M b /s t4= 50 m s C 5 = 1 M b /s t5= 1 m s C 6 = 1 0 0 kb /s t6= 5 m s C 7 = 20 0 kb /s t7= 1 m s A E C 8 = 2 0 0 kb /s t8= 1 m s Fondamenti di Internet e Reti 097246 Esercizi 40 Dopo i segmenti di apertura della connessione, il TCP parte in modalità Slow Start. Tuttavia, prima di raggiungere la SSTHRESH, la finestra è limitata dalla RCWND a 5MSS. Quindi, una volta raggiunto tale valore, la finestra non aumenterà. Inoltre, dato ch e Wc > RCWND, la trasmissione non sarà mai continua. Il tempo totale di trasferimento è dato da: ���� = ������ + 6��� + 2�1+ ��� = 8��� + 2�1= 900 [�� ] Il rate medio di trasferimento è dato da: ����������� = � ���� = 5000 ∗ 8 0.9 = 44 ,44 [�� /�] S YN S Y N S / A S/ A 1 2 4 3 7 6 5 8 1 1 1 0 9 1 2 2 3 2 5 2 4 . . . Fondamenti di Internet e Reti 097246 Esercizi 41 3-26. Domanda (Prova in Itinere 4 Maggio 2016) Si completi la figura in cui è rappresentato un colloquio governato dai meccanismi Go -Back -N e controllo di flusso con il campo W. Il buffer in ricezione ha una capacità massima di 2 pacchetti, l’applicazione svuota il buffer ad ogni lettura ed invia un ACK. Si assuma una finestra iniziale al trasmettitore di 5 pacchetti. Nel completamento si indichino con chiarezza: • i valori corretti di SN, RN e W, • gli estremi della finestra al trasmettitore, pre cisando gli instanti in cui essi cambiano sulla linea tratteggiata, • i pacchetti accettati ed eventuali pacchetti scartati Soluzione B A SN = RN= W = RN= W = SN = SN = SN = SN = SN = SN = SN = SN = RN= W = (0 ,4) SN = F in . B A SN = 0 RN= 1 W = 2 RN= 3 W = 2 SN = 1 SN = 2 SN = 3 SN = 4 SN = 3 SN = 4 0 2 SN = 3 SN = 4 RN= 4 W = 2 3 (0 ,4) (1 ,2) (3 ,4) (4 ,5) SN = 5 1 4 Fondamenti di Internet e Reti 097246 Esercizi 42 3-27. Esercizio (Prova in Itinere 5 Maggio 2016) Una connessione TCP tra l’ host A e l’ host B nelle rete in figura è caratterizzata dai seguenti parametri: lunghezze di header e ack trascurabili, link bidirezionali simmetrici, MSS = 1250 [byte] , RCWND >> CWND, SSTHRESH = 8 MSS. Si calcoli il tempo necessario a trasferire un file di 30 kbyte . Si ripeta il calcolo assumendo un file di 55 kbyte . (nota la soluzione è la stessa se si scambiano di posto il link 1 con il link 2) Soluzione ��� = 1250 ∙8 [�������� ]= 10 .000 [�������� ] �1= 1 [�� ],�2= 5 [�� ],�3= 0.5 [�� ] ��� = �1+ �2+ �3+ 2������1+ 2������2+ 2������3= 46 .5 [�� ] ������ ���� = ⌈��� �2 ⌉= ⌈46 .5 5 ⌉= 10 caso 1) � = 30 [���������� ] 1.25 [���������� ]= 24 ��� slow start: (1) – (2) – (4) – (8) cong. avoidance: (9) ���� = ����� + 5 ��� + 8�2= 40 [�� ]+ 5∙46 .6[�� ]= 312 .5 [�� ] caso 2) � = 55 [���������� ] 1.25 [���������� ]= 44 ��� slow start: (1) – (2) – (4) – (8) cong. avoidance: (9) continua (link 2): (20) ���� = ����� + 5 ��� + �1+ 2������1+ 20 �2+ 2������2+ �3+ 2������3= 414 �� Fondamenti di Internet e Reti 097246 Esercizi 43 3-28. Domanda (Prova in Itinere 5 Maggio 2016) Si completi la figu ra in accordo alle regole del protocollo Go -back -N. Si inseriscano i valori di SN ed RN, si indichino gli istati di accettazione delle trame corrette e in sequenza. Soluzione Fondamenti di Internet e Reti 097246 Esercizi 44 3-29. Esercizio (Appello 8 Luglio 2016) Nella rete sotto, il terminale A vuole stabilire una connessione TCP con il terminale B. Sapendo che: (i) gli header sono trascurabili ed i link sono bidirezionali (ii) I riscontri sono di dimensione trascurabile (iii) MSS = 100 [byte] , (iv) RCWND = 1200 [byte] (v) SSTHRESH = 400 [byte] (vi) Il terzo segmento in trasmissione viene perso. Si assuma un valore di time -out pari a 3 RTT . Rispondere ai seguenti quesiti: 1. La trasmissione diventa mai continua sul link 1? Se sì, trovare il tempo dopo cui la tr asmissione diventa continua. 2. Trovare il tempo totale di trasferimento da A a B di un file di 10 [kbyte] . 3. Disegnare un grafico che rappresenti l’andamento nel tempo del data rate della connessione TCP (usare l’RTT come unità di misura temporale) 4. Trovare il data rate medio di trasferimento dell’informazione da A a B (1 [byte] = 8 [bit], 1 [kbyte] = 1000 [byte] = 8000 [bit] , 1[kb]=1000[bit]) Soluzione Troviamo prima di tutto il RTT. ��� = ��� /�1 + ��� /�2 + 4������ = 0.16 + 0.04 + 4 = 4.24 [�� ] Il collegamento collo di bottiglia è il primo. La trasmissione diventa continua sul primo collegamento quando: ������ ⋅��� /�1 > ��� , da cui ������ > 26 .5 [��� ]. La connessione TCP, in realtà, è limitata dalla RCWND = 12 [MSS], quindi la trasmissione non sarà mai continua sul primo collegamento. L’andamento temporale del trasferimento dati sulla connessione TCP è rappresentato in figura. Fondamenti di Internet e Reti 097246 Esercizi 45 Il tempo complessivo per trasferire i 100 MSS del file è: ���� = ������ + ��� + ��� /�1 + ������������ + 11 ��� + 2 ��� + 5 ��� /�1 + ��� = 4[�� ] + 4.24 [�� ] + 0.16 [�� ] + 12 .72 [�� ] + 46 .64 [�� ] + 8.48 [�� ] + 0.8 [�� ] + 4.24 [�� ]= 81 .28 [�� ] L’andamento del data rate è rappresentato nella seguente figura Il data rate medio durante il trasferimento del file è: � = 100 [��� ]/���� = 984 .25 [�� /�] 0 500 1000 1500 2000 2500 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 Data Rate [kbit/s] RTT1 2 3 4 5 Tim e out = 3RTT 3 6 7 SSTH RESH =2M SS 8 9 1 0 1 1 1 2 1 3 1 4 12 M SS 12 M SS 11 M SS … ............... Set up R TT TCP accetta pkt fuori ordine W =(1,1) W =(2,3) W =(3,5) 9 5 9 6 9 7 9 8 9 9 1 0 0 Fondamenti di Internet e Reti 097246 Esercizi 46 3-30. Esercizio (Appello 27 Settembre 2016) Considerate la rete in figura in cui è presente unicamente la connessione a livello applicativo tra A ed S1. Si consideri il solo trasferimento di una pagina HTML (di dimensione LHTML =600 [byte] ) dal server S1 al client A. a) Si assuma che il trasferimento del file avvenga utilizzando UDP e in ciascun segmento vengano trasportati LS = 100 [byte] . Trascurate qualunque overhead introdotto ai livelli di trasporto, rete e data -link. Rappresentare il trasferimento in un diagramma temporale. b) Scrivere l’espressione del tempo totale di trasferimento del file di cui al punto a) in modo simbolico e calcolare quindi il valore numerico c) Qu anto sarebbe il ritardo di trasferimento se il file HTML intero venisse trasferito in un unico segmento? d) Si assuma ora che il trasferimento del file avvenga come al punto a) ma in presenza di un controllo di flusso end -to-end tra S1 e A di tipo sliding win dow con dimensione della finestra fissa W=4 e in operante in modalità Go -Back -n con timeout minimo. Rappresentare il trasferimento in un diagramma temporale e calcolare il tempo totale di trasferimento (dall’invio del primo byte alla ricezione dell’ultimo ack). Si assuma che i riscontri viaggino in pacchetti di dimensione nulla. Soluzione Punto a) L’esercizio richiede di descrivere la propagazione di pacchetti attraverso i link S1 -R2, R2 -R1, R1 - A. Denotiamo 1, 2, 3 le interfacce di uscita rispettivamente dei nodi R1 (verso A), R2 (verso R1), S1 (verso R2). �� = 100 [��������� ] = 800 [�������� ] → Dato che ���������� = 600 [��������� ], il trasferimento avviene con 6 pacchetti. ������� = ��/������� �1 = 40 [�� ]; �2 = 44 .4 [�� ]; �3 = 8 [�� ]; 1 = 5 [�� ];������2 = 25 [�� ]; 3 = 10 [�� ] Diagramma temporale: Fondamenti di Internet e Reti 097246 Esercizi 47 Punto b) � = 1 + �1 + 2 + 6 �2 + 3 + �3 = 354 .4 [�� ] Punto c) � = 1 + 2 + 3 + 6 (�1 + �2 + �3) = (40 + 554 .4) [�� ] = 594 .4 [�� ] Punto d) Diagramma temporale: S1 R 2 R1 A 1234 5 6 1 2 3 4 5 6 1 2 3 4 5 6 Fondamenti di Internet e Reti 097246 Esercizi 48 Ritardo di propagazione totale del riscontro: � = 1 + 2 + 3 = 40 [�� ] � = ��� ����� � + �� = 394 .4 [�� ] Fondamenti di Internet e Reti 097246 Esercizi 49 3-31. Esercizio (Appello 13 Febbraio 2016) Una connessione TCP tra l’ host A e l’ host B è caratterizzata dai seguenti parametri: • Lunghezze di header e ack trascurabili; • link bidirezionali; • RCWND = 9 MSS • SSTHRESH = 8 MSS • MSS = 1 [kbyte] • Ritardo di propagazione, τ = 5 [ms] • Valore del Time -Out= 2RTT Si risponda ai seguenti quesiti: d) Dire se la trasmissione sul link diventa mai continua; in caso affermativo, trovare il tempo oltre cui la trasmissione sul link diventa continua; e) Trovare il tempo di trasferimento di un file di 60 [kbyte] da A a B; f) Ipotizzando che il penultimo segmento in trasmissione venga perso, ripetere il punto b) Soluzione �) ��� = �+ 2������= 8000 [�������� ] 8 [�� � ] + 10 [�� ]= 11 [�� ] ���������� = ��� � = 11 1 = 11 ��� Ma abbiamo una RCWND di 9 MSS, dunque la trasmissione non sarà mai continua. b) ������ = 2������= 10 [�� ] ���� = 60 [�� ] 1 [�� ] = 60 ���� = ������ + 8 ��� (�− �− ������− �− �− �− � − �− �)+ 8 � = 117 [�� ] Tempo dall’apertura della connessione alla ricezione dell’ultimo ACK c) Il TCP accetta i segmenti fuori sequenza, dunque solo il penultimo viene ritrasmetto. ���� = ������ + 8 ��� + 7 �+ ������������ + ��� = ������ + 11 ��� + 7 � = 138 [�� ]