Rilevazione e correzione degli errori

Esamineremo in questa argomentazione le tecniche più semplici utilizzabili per il trattamento degli errori sui bit.
Pasted image 20230331182030.png
La figura sopra schematizza lo scenario di riferimento.
Dati del nodo trasmittente: D
Dati del nodo ricevente: D'
I dati di D devono essere protetti da errori, quindi vengono aggiungi dei bit detti EDC (error detection and correction). Generalmente i dati del trasmittente non includono solo i datagrammi proveniente dal livello superiore, ma anche informazioni relative agli indirizzi del livello di collegamento, i numeri di sequenza e altri campi nell'intestazione del frame. I dati D e i bit EDC sono inviati in un frame al ricevente.

Il cilindro nel canale di comunicazione tra i due nodi (vedi immagine) indica che si possono verificare degli errori sui bit.

Il ricevente riceve la sequenza di bit D' (che può essere diversa da D) e EDC' (che può essere diversa da EDC).
Il nodo ricevente deve determinare se D' coincide con D, potendo contare soltanto su ciò che ha ricevuto: D' e EDC'. Importante è la terminologia: ci chiediamo se si è rilevato un errore, non se si è verificato.

Le attuali tecniche non consento sempre di rilevare degli errori, anche perché i bit di di rilevazione degli errori possono essere corrotti e il destinatario potrebbe non accorgersene, consegnando, di fatto, dei datagrammi non corretti.
L'obiettivo è di sviluppare un sistema che possa ridurre al minimo la probabilità di questo evento.

Vediamo tre tecniche: