Reti di calcolatore e Applicazioni Telematiche – Livello DatiLezioni di supporto al corso teledidattico
E.Mumolo. [email protected]
Funzioni del livello dati
• Fornisce una interfaccia al livello di rete• Divisione in trame• Controllo d’errore• Controlle di flusso
Funzioni del livello dati
Relazione tra pacchetti e frame.
Divisione in frame mediante conteggio
Trasmissione di una stringa di caratteri
(a) Senza errori (b) Con un errore
Divisione in frame con flag byte
Flag byte: sequenza di 8 bit: 01111110
Se nei dati c’è una sequenza di cinque “1” consecutivi, il trasmettitore inserisce uno zero
Il ricevitore, se vede cinque “1” sequiti da “0”, toglie lo zero
Divisione in frame con flag byte
(a) Dati(b) Trasmesso(c) Ricostruito
Divisione in frame con violazione codifica Alcune codifiche di bit richiedono una alternanza
di livelli positivo e negativo Manchester Violando questa regola si ottiene una sicura
delimitazione di frame
Codifiche di bit
NRZ
NRZ
RZ
RZ
Manchester
Codifiche di bit
Manchester/Manchester differenziale
4B/5B ogni sequenza di bit ha almeno due transizioni
Trattamento degli errori
• Codici correttori• Hamming• Reed/Solomon
• Codici di rilevazione• CRC• Parità• Checksum
Codici per rilevare errori: CRC Stringhe binarie polinomi M(x) con
coefficienti binari Polinomio generatore G(x) di grado r Divisione xrM(x)=Q(x)G(x)+R(x) Calcolo T(x)=xrM(x)-R(x) Trasmissione T(x)…ricezione T(x)+E(x) Il ricevitore divide [T(x)+E(x)]/G(x) Se il resto è diverso da zero errore
Controllo di flusso
Continua
Semplice protocollo per canale senza errori
Stop-and-Wait
Continua
Protocollo per un canale rumoroso