Differenza tra controllo del flusso e controllo degli errori
In telecomunicazioni, il controllo del flusso e il controllo degli errori (in inglese Flow control e Error control) sono il meccanismo di controllo a livello di collegamento dati e livello di trasporto. Ogni volta che invia i dati al ricevitore, questi due meccanismi aiutano nella corretta consegna dei dati affidabili al ricevitore. La principale differenza tra il controllo del flusso e il controllo degli errori è che il controllo del flusso osserva il flusso corretto dei dati dal mittente al ricevitore, d’altra parte, il controllo degli errori osserva che i dati forniti al ricevitore sono privi di errori e affidabili.
Definizione di controllo del flusso
Il controllo del flusso è un problema di progettazione a livello di collegamento dati e livello di trasporto. Un mittente invia i frame di dati più velocemente di quanto il destinatario possa accettare. Il motivo può essere che un mittente è in esecuzione su una macchina potente. In questo caso anche i dati vengono ricevuti senza alcun errore; il ricevitore non è in grado di ricevere il frame a questa velocità e perde alcuni frame.
Esistono due metodi di controllo per prevenire la perdita di frame: il controllo del flusso basato sul feedback e il controllo del flusso basato sulla velocità.
Controllo basato sul feedback
Nel controllo basato sul feedback ogni volta che il mittente invia i dati al destinatario, il destinatario invia quindi le informazioni al mittente e consente al mittente di inviare più dati o informare il mittente su come sta facendo il destinatario. I protocolli di controllo basato sul feedback sono il protocollo finestra scorrevole, il protocollo stop-and-wait.
Controllo del flusso basato sulla velocità
Nel controllo del flusso basato sulla velocità, quando un mittente trasmette i dati più velocemente al ricevitore e il ricevitore non è in grado di ricevere i dati a quella velocità, il meccanismo integrato nel protocollo limiterà la velocità con cui i dati vengono trasmessi dal mittente senza alcun feedback da parte del destinatario.
Definizione di controllo degli errori
Il controllo degli errori è il problema che si verifica anche a livello di collegamento dati e di trasporto. Error Control è un meccanismo per rilevare e correggere l’errore che si è verificato nei frame inviati dal mittente al destinatario. L’errore che si è verificato nel frame può essere un errore di bit singolo o un errore di burst. L’errore a bit singolo è l’errore che si verifica solo nell’unità di dati a un bit del frame, dove 1 viene modificato in 0 o 0 viene modificato in 1.
In burst error si verifica quando si cambia più di un bit nel frame; si riferisce anche all’errore a livello di pacchetto. Nell’errore burst, possono verificarsi anche errori come perdita di pacchetti, duplicazione del frame, perdita del pacchetto di riconoscimento, ecc. I metodi per rilevare l’errore nel frame sono il controllo della parità, il codice di ridondanza ciclico (CRC) e il checksum.
Controllo di parità
Nel controllo di parità, viene aggiunto un singolo bit al frame che indica se il numero di bit “1” contenuto nel frame è pari o dispari. Durante la trasmissione, se un singolo bit viene modificato, viene modificato anche il bit di parità che riflette l’errore nel frame. Ma il metodo di controllo della parità non è affidabile poiché se il numero pari di bit viene modificato, il bit di parità non rifletterà alcun errore nel frame. Tuttavia, è meglio per l’errore di bit singolo.
Codice di ridondanza ciclico (CRC)
In Cyclic Redundancy Code i dati subiscono una divisione binaria qualunque sia il resto ottenuto viene allegato ai dati e inviato al ricevitore. Il destinatario divide quindi i dati ottenuti con lo stesso divisore con cui il mittente ha diviso i dati. Se il resto ottenuto è zero, i dati vengono accettati. Altrimenti i dati vengono rifiutati e il mittente deve ritrasmettere nuovamente i dati.
Checksum
Nel metodo checksum, i dati da inviare sono divisi in frammenti uguali ogni frammento contenente n bit. Tutti i frammenti vengono aggiunti utilizzando il complemento di 1. Il risultato è ancora una volta completato, e ora la serie di bit ottenuta è chiamata checksum che è allegata ai dati originali da inviare e inviare al destinatario.
Quando il destinatario riceve i dati, divide anche i dati in un frammento uguale, quindi aggiunge tutto il frammento utilizzando il complemento di 1; il risultato è ancora una volta completato. Se il risultato risulta essere zero, i dati vengono accettati, altrimenti vengono rifiutati e il mittente deve ritrasmettere i dati.
L’errore ottenuto nei dati può essere corretto utilizzando metodi che sono il codice di Hamming, i codici di convoluzione binaria, il codice Reed-Solomon, i codici di controllo della parità a bassa densità.
Differenza tra controllo del flusso e controllo degli errori
- Il controllo del flusso serve a monitorare la corretta trasmissione dei dati dal mittente al destinatario. D’altra parte, Error Control monitora la consegna senza errori di dati dal mittente al destinatario.
- Il controllo del flusso può essere ottenuto mediante il controllo del flusso basato sul feedback e l’approccio del controllo del flusso basato sulla velocità mentre, per rilevare l’errore, gli approcci utilizzati sono il controllo della parità, il codice di ridondanza ciclica (CRC) e il checksum e per correggere l’errore gli approcci utilizzati sono Hamming codice, codici di convoluzione binaria, codice Reed-Solomon, codici di controllo di parità a bassa densità.
- Il controllo del flusso impedisce il sovraccarico del buffer del ricevitore e previene anche la perdita di dati. D’altra parte, il controllo degli errori rileva e corregge gli errori nei dati.
Conclusioni
Infine, entrambi i meccanismi di controllo, ovvero il controllo del flusso e il controllo degli errori, sono il meccanismo inevitabile per fornire dati completi e affidabili.