Controle de erro
Devido às imperfeições e ruído no canal, toda comunicação está sujeita a erros. Sendo assim, uma determinada sequência de dados pode ser enviada pelo transmissor e outra ser recebida pelo receptor. A Figura 7.1 ilustra a ocorrência de um erro no processo de comunicação: a parte de cima da figura representa os bits transmitidos e a de baixo, os bits recebidos. Os bits em destaque, na parte de baixo, indicam os erros ocorridos.
[pic]
Figura 7.1 - Erros no processo de comunicação causados por ruídos e imperfeições do canal.
A codificação de canal tem por objetivo corrigir os erros de transmissão, por meio de códigos especiais denominados de códigos de detecção e/ou correção de erros. Basicamente, há duas formas de corrigir os erros: detecção do erro no receptor e correção por retransmissão, denominado de sistemas ARQ (Automatic Repeat Request), e correção automática no receptor, denominado de sistemas FEC (Forward Error Correction). Em ambas as soluções, há necessidade de se transmitir, em adição à mensagem, bits de redundância que serão utilizados no receptor para detectar ou corrigir os eventuais erros.
A forma como reagir aos erros depende do tipo de aplicação. Na grande maioria das aplicações de comunicação de dados, eles são intoleráveis e devem ser corrigidos (por exemplo, imagine um erro ocorrendo em uma transação de automação bancária de transferência de fundos). A forma mais segura de fazer isso é utilizar um sistema ARQ. Em alguns sistemas de comunicação de voz e vídeo em tempo real, é melhor conviver com o erro do que gastar tempo tentando corrigi-lo. Logo, nestes sistemas, a utilização de ARQ pode ser um problema e a solução mais comum é utilizar FEC para correção ou simplesmente conviver com os erros que porventura ocorrerem. O uso de FEC também é comum em sistemas em que o tempo de propagação é muito alto, como os sistemas de comunicação por satélite geoestacionário, e em sistemas com taxa