Deetecção de erros
549 palavras
3 páginas
Detecção de ErrosAndré Moreira (andre@dei.isep.ipp.pt)
Professor Adjunto do Departamento de Engenharia Informática do ISEP
Durante a transmissão de uma trama é normal surgirem erros, em grande parte devidos a ruído existente na linha de transmissão.
Quando uma trama é recebida é importante saber se existem erros, se um erro não é detectado essa trama será utilizada pelos níveis superiores originando problemas diversos que se podem estender até às aplicações.
Não só é importante detectar os erros nas tramas como também devem existir mecanismos que permitam a sua correcção. Uma solução é utilizar um mecanismo de detecção de erros dito auto-corrector (“error-correcting code”). A outra solução é pedir ao emissor que efectue a retransmissão da trama (“backward error correction”), é o caso do ARQ ("Automatic Repeat Request").
Os mecanismos auto-correctores também conhecidos por “forward error correction” obrigam a um aumento muito grande da informação de controlo, no limite igual ao comprimento de dado. Por esta razão só é utilizada em situações muito especificas em que não há alternativa, por exemplo numa transmissão “simplex” (unidireccional).
Seja qual for o mecanismo pelo qual se efectua a detecção de erros envolve geralmente a inclusão na trama de um campo contendo informação calculada a partir dos dados ou de toda a trama. Quando o receptor recebe a trama executa o mesmo calculo e compara o valor obtido com o que foi colocado pelo emissor. Se são iguais supõe que não contém erros.
A verificação de paridade é um dos mecanismos mais simples para detecção de erros (“parity check”): a cada caractere transmitido é acrescentado um bit de tal modo que o total de bits 1 seja par (“even parity”) ou impar (“odd parity”). É habitual a utilização de paridade par para comunicações assíncronas e a paridade impar para comunicações síncronas.
Exemplo: usando a paridade par, ao transmitir o byte 01100111, será acrescentado um bit com o valor 1 (para tornar par, o número