Esercizio 1

In una rete con un valore fisso m > 1, è possibile utilizzare entrambi i meccanismi Go-Back-N e Selective-Repeat.

Domanda 1: Indicare i vantaggi e gli svantaggi dell’impiego di ciascuno di essi.

Domanda 2: Quali altre considerazioni si devono fare per decidere quale meccanismo utilizzare?

Esercizio 2

Un server TCP ha ricevuto e riscontrato all’interno di una connessione i byte fino al 4000. Dire quale azione esegue il server dopo i seguenti eventi:

  1. Il server riceve un segmento di 1000 byte con numero di sequenza pari a 3001
  2. In seguito all’evento 1 il server riceve un segmento di 1000 byte con numero di sequenza pari a 6001
  3. In seguito all’evento 2 il server riceve un segmento di 1000 byte con numero di sequenza pari a 5001
  4. In seguito all’evento 3 il server riceve un segmento di 1000 byte con numero di sequenza pari a 4001

Risposta:

  1. riceve 3001, invia ACK dup 4001
  2. riceve 6001, invia ACK dup 4001
  3. riceve 5001, invia ACK dup 4001
  4. riceve 4001, invia ACK cum 7001

Esercizio 3

Un server TCP ha ricevuto e riscontrato all’interno di una connessione i byte fino al 4000. Dire quale azione esegue il server dopo i seguenti eventi:

  1. Il server riceve un segmento di 1000 byte con numero di sequenza pari a 5001
  2. In seguito all’evento 1 il server riceve un segmento di 1000 byte con numero di sequenza pari a 4001
  3. In seguito all’evento 2 il server riceve un segmento di 1000 byte con numero di sequenza pari a 6001
  4. In seguito all’evento 3 il server riceve un segmento di 1000 byte con numero di sequenza pari a 7001

delay = 500ms

Risposta:

  1. riceve 5001, invia ACK dup 4001
  2. riceve 4001, invia ACK cum 6001
  3. riceve 6001, aspettiamo 500ms ma non arriva 7001 quindi inviamo ACK post 7001
  4. riceve 7001, se entro 500 ms arriva sequenza 8001 allora ACK cum 9001, altrimenti ACK post 8001

Esercizio 4

Domanda: Nel protocollo TCP la finestra di invio può essere più piccola, più grande o della stessa dimensione della finestra di ricezione?

Esercizio 5

Domanda: L’utente A utilizza il proprio browser per aprire due connessioni con il server HTTP in esecuzione sull’host B. Come può il protocollo TCP distinguere queste due connessioni?

Esercizio 6

In una rete basata su Go-Back-N con m=3 e dimensione della finestra di invio uguale a 7, i valori delle variabili sono: Sf=62, Sn=66 e Rn=64.

Si ipotizzi che la rete non duplichi e non alteri l’ordine dei pacchetti.

  1. Qual è il numero di sequenza dei pacchetti in transito?
  2. Qual è il numero di riscontro dei pacchetti ack in transito?

Riposta:

  • Sono stati inviati 62 63 64 65 ma ancora non è stato ricevuto il riscontro
  • Gli ack in transito sono di 62 e 63

Esercizio 7

Domanda: Si può definire il prodotto rate-ritardo come il numero di pacchetti che possono essere in transito nella rete durante un tempo pari a RTT.

Calcolare il prodotto rate-ritardo nel caso in cui:

Risposta Mia:

Risposta Prof:

Esercizio 8

Vogliamo calcolare il numero di pacchetti che possono essere nella rete in un determinato istante, per fare ciò calcoliamo il rate-ritardo che rappresenta il numero di bit massimo nella rete in un determinato istante e poi da esso possiamo ottenere il numero di pacchetti massimo possibile nella rete.

Con rate-ritardo otteniamo il numero di bit massimo nella rete in un determinato istante:

Ora possiamo calcolare il numero massimo di pacchetti:

Quindi la dimensione massima della finestra di invio quindi deve essere di 1000 pacchetti (), questo perché non possiamo inviare più pacchetti di quelli supportati dalla rete.

oss: in selective repeat la finestra non deve superate , invece in go back n non deve superate .

Quindi abbiamo finestra da 1000, quindi dobbiamo trovare un m tale che sia il più piccolo numero superiore a 1000.

  • Per ottenere ciò pendiamo m = 11 infatti
  • I numeri di sequenza vanno da a ovvero da 0 a 2047 ().

Scala grandezze

  • Pico =
  • Nano =
  • Micro =
  • Milli =

  • Kilo =
  • Mega =
  • Giga =
  • Tera =

Timeout:

  • SlowStart
  • Tr = cwnd/2
  • Cwnd = 1

3ACK:

  • FastRecovery
  • Tr = cwnd/2
  • cwnd = tr + 3