Limiti al trasferimento di informazione u Il tempo necessario per trasmettere dellinformazione dipende da: –la velocita di segnalazione (cioe quanto velocemente puo cambiare stato il mezzo trasmissivo –il metodo di codifica usato u La velocita di segnalazione si misura in baud (numero di variazioni di stato per secondo) –Una linea di trasmissione da X baud non trasmette necessariamente X bit al secondo. Ad esempio, se il metodo di codifica permette di rappresentare otto valori diversi, la velocita di trasmissione sara di 3X bit/sec.
Bit singolo e burst u un canale telefonico tollera meglio gli errori distribuiti uniformemente –perche errori singoli hanno effetti simili al rumore di fondo u un canale dati tollera meglio gli errori burst –perche impediscono la trasmissione corretta di una quantita limitata di frame u i burst sono piu difficili da individuare e correggere
Cause di errore u rumore termico u rumore causato da interferenze u perdita di sincronizzazione
Error detection e error correction u lidea base di tutte le tecniche e di aggiungere ridondanza ai dati u Detection significa accorgersi dellerrore di uno o piu bit e segnalarlo allapplicazione u Correction significa poter correggere in tempo reale uno o piu bit senza che lapplicazione se ne accorga
Codifiche u La ridondanza e aggiunta codificando i dati da trasmettere e decodificandoli allarrivo –codifica puo significare sia aggiungere dei bit che completamente cambiare i dati
Block code u i block code aggiungono a ogni frame o parte di frame, es. ad ogni carattere, dei bit di ridondanza –terminologia coerente con il testo: m bit di dati, r bit di ridondanza (check bit), n bit totali, i dati codificati, di lunghezza n=r+m bit, si chiamano codeword
Parita (esempio di block code) u il codice piu semplice e meno costoso –aggiunge un bit che rende la sequenza di bit pari (o dispari), cioe richiede solo un bit in piu u error detection, niente correction u se il numero degli errori e pari non funziona correttamente –non funziona bene con burst u usa un semplicissimo circuito di generazione e controllo che non richiede buffering
Distanza di Hamming: u numero di bit diversi tra due codeword (ovviamente di dimensioni identiche) u si calcola facendo X-OR bit a bit e contando il numero di 1 nel risultato u se la Hamming distance e d occorrono d errori per trasformare un codice in unaltro
Spazio dei codeword u Dato un codeword di n bit vi saranno ovviamente 2 n possibili codeword u Di questi 2 m saranno legali (cioe i codeword che si possono trasmettere) e gli altri indicheranno la presenza di errori u Meno sono i codeword legali rispetto allinsieme dei codeword, piu e possibile riconoscere e correggere errori –la semplice parita aggiunge solamente un codice illegale per ciascun codice legale, quindi molti errori multipli vanno a cadere su codici legali
Correzione di errore, esempio u rappresentiamo 1 con 111 e 0 con 000 –n=3, m=1, r=2 –Hamming distance=3 u se trasmettiamo 000 e la linea introduce 1 bit di errore i codici possibili sono tre: –ciascuno di questi codici e a distanza 1 dal codice corretto e a distanza 2 dal codice legale non corretto –SE assumiamo che ci sia stato un bit di errore possiamo correggere ciascuno di questi codeword a 000 –MA se ci sono due bit di errore la correzione e sbagliata!
Correzione di errore, esempio cont. u se trasmettiamo 000 e la linea introduce 2 bit di errore i codici possibili sono tre: –questi codici illegali sono piu vicini al codice sbagliato che a quello giusto –sappiamo che ce stato un errore (di uno o due bit) ma non possiamo correggerlo correttamente a meno di essere sicuri che un errore di 2 bit ha probabilita bassa
In generale... u per riconoscere d errori ci vuole un codice con le configurazioni legali a distanza d+1 u per correggere d errori ci vuole un codice con le configurazioni legali a distanza 2d+1 –nellesempio precedente la distanza e 3 e quindi si possono riconoscere 2 errori o correggere 1 errore
CRC u Error detecting –bit singolo –quasi tutti gli errori doppi –un numero dispari qualunque di errori –burst al massimo lunghi quanto il grado del generatore, tipicamente –burst molto lunghi se distribuiti casualmente u facile da calcolare