Esercizi di teoria.
Lista di formule generali per risolvere gli esercizi.
Un protocollo stop-and-wait è un protocollo di comunicazione che prevede che il mittente invii un pacchetto e attenda la ricezione di un ACK prima di inviare il pacchetto successivo.
Loading diagram...
Un protocollo go back n è un protocollo di comunicazione che prevede che il mittente invii un pacchetto certo numero di pacchetti e attenda la ricezione di un ACK prima di inviarne un altro. In caso di perdita di un pacchetto, il mittente invia nuovamente tutti i pacchetti successivi a quello perso.
Loading diagram...
Poiché il numero di frame che sarebbe possibile inviare nell'RTT è maggiore o uguale alla finestra massima stabilita, prendiamo in considerazione quella: 20.
BWeBWeBWe=TtP⋅W=2⋅10−2+8.8⋅10−5+8⋅10−68000⋅20≈8⋅106 bps=2⋅Tp+Ttf+TtaP⋅W=8 MbpsPoiché il numero di frame che è possibile inviare nell'RTT è minore della finestra massima stabilita, prendiamo in considerazione il più piccolo: 1.
BWeBWeBWe=TtP⋅1=1.66⋅10−37200⋅1≈4.33⋅106 bps=4.33 MbpsCon la condizione che la banda minima a livello superiore sia maggiore di 500 Kbps (500000 bps), calcolare la finestra di trasmissione.
Window(W)= ?Il CRC è un codice di controllo a ridondanza ciclica che permette di rilevare errori di trasmissione.
Il CRC viene calcolato dal mittente e viene inviato insieme al messaggio.
Il destinatario calcola il CRC del messaggio ricevuto e lo confronta con quello ricevuto.
Se i due CRC coincidono, il messaggio è stato trasmesso correttamente.
M=101101G=1101∣G∣−1=4−1=3
Calcolare il CRC.
M=1101101G=11010∣G∣−1=4
Calcolare il CRC.
M=101001 011G=1001∣G∣−1=3
Verificare se il messaggio è stato trasmesso correttamente.
101001 0111001001101 011 1001000100 011 100 1000000 111=0→erroreM=101101 0000G=11011∣G∣−1=4
Verificare se il messaggio è stato trasmesso correttamente.
101101 000011011011011 0000 11011000000 0000=0→correttoM=1001 110G=1011∣G∣−1=3
Verificare se il messaggio è stato trasmesso correttamente.
1001 11010110010 110 10 110000 000=0→correttoLa codifica di Hamming è un codice di correzione degli errori che permette di correggere errori su un singolo bit e di rilevare quelli su due.
Sia data la seguente word:
10001011010111101Sapendo che vi sono state aggiunte la ridondanza CRC4 e successivamente la ridondanza della codifica di Hamming per la correzione di un singolo bit, descrivere l’operazione che il ricevente andrà fare per determinare se la word ricevuta sia corretta o, in caso di un singolo errore, correggerlo.
Il generatore utilizzato è x4+x3+1.
Per la codifica di Hamming i bit vanno considerati da sinistra verso destra.
Il codice di hamming indica che è avvenuto un errore nel bit 16, che però è un bit di ridondanza.
L'errore non può essere il bit 17 in quanto è "coperto" anche dal bit di controllo 1.
Rimuoviamo quindi tutti i bit aggiunti dalla codifica.
Rimane la word:
Applichiamo quindi il CRC4 per verificare se ci sono stati errori di trasmissione con il generatore x4+x3+1.
11001M=01010101 1111G=11001∣G∣−1=4
01010101 1111 1100100110001 1111 1100100000011 1111 11 00100000000 1101=0→erroreLa distanza di Hamming è la distanza tra due parole di uguale lunghezza, definita come il numero di posizioni in cui le due parole differiscono.
Fanno parte del dizionario tutte le parole di 3 bit dove i primi 2 vengono usati per trasferire i dati e l'ultimo viene usato per il controllo di parità.
Parole valide000011101110Parole non valide001010100111La distanza minima è la distanza più piccola tra tutte le coppie di parole diverse del dizionario.
0000111011100000222011202210122021102220La distanza più piccola fra parole diverse è 2, quindi la distanza minima è 2.