Escolar Documentos
Profissional Documentos
Cultura Documentos
A Camada de Enlace
Servios prestados
Encapsulamento
Endereamento
Controle de erros
Controle de fluxo
Controle de acesso
Tipos de Erros
Entendendo a importncia do tratamento de erros
Se ocorre um erro de 0,1s em uma transmisso de 56Kbps isso implica em 5,6K bits afetados
Tipos de Erros
Erros Simples
Corresponde a um erro isolado
Rajada de erros
Quando uma sequncia de bits so corrompidos
Se numa transmisso de uma seqncia de 8bits e um deles chega corrompido, como descobrir?
Deteco de Erros
Redundncia
Receptor
Transmissor
Dados rejeitados no
sim
Dados
Dados
Deteco de Erros
Tcnicas
Mtodos de deteco
Teste de paridade
Checksum
Deteco de Erros
Paridade
N receptor
Remove o bit de paridade e aceita os dados
Transmissor
sim
Dados
Rejeita dados
Paridade OK?
no
Contagem de bits Bits Clculo do bit de paridade
Meio de transmisso
Deteco de Erros
Paridade
Como fazer um verificador de paridade? Que porta lgica faz isso?
Deteco de Erros
Paridade
O que acontece se a quantidade de erros for par? 10010011 (transmitido) 10010101 (recebido) Como resolver isso?
Deteco de Erros
Paridade Combinada
Dados originais
Deteco de Erros
Paridade Combinada resolve tudo?
Deteco de Erros
Paridade Combinada resolve tudo?
Deteco de Erros
Paridade Combinada resolve tudo?
Dados originais
0 0
0 1
Deteco de Erros
Paridade Combinada resolve tudo?
Dados originais
0 0
0 1
Deteco de Erros
CRC
Dados
Dados
Dados
Divisor CRC
Transmissor
Deteco de Erros
Gerador de CRC (Transmissor)
Dados mais zeros extras Divisor
Quociente
Quando o bit mais esquerda for zero, devemos usar 0000 no lugar do divisor original. Resto
Deteco de Erros
Verificador de CRC (Receptor)
Dados + CRC
Divisor
Quociente
Quando o bit mais esquerda for zero, devemos usar 0000 no lugar do divisor original. Se Resto = 0, OK!
Deteco de Erros
Verificador de CRC (Receptor)
Dados + CRC
Divisor
Quociente
Quando o bit mais esquerda for zero, devemos usar 0000 no lugar do divisor original. Se Resto = 0, OK!
Deteco de Erros
Exemplo de descarte
Deteco de Erros
CRC
Polinmio gerador de CRC o nome dado para a representao polinomial do divisor, por exemplo... 1101 X3 + X2 + 1 Porque isso importante
No deve ser dividido por x
Garante que so detectaras rajadas de erros de comprimento igual a do polinmio
Deteco de Erros
CRC
Polinmio
Divisor
Deteco de Erros
CRC
Deteco de Erros
Checksum
Tambm se baseia em redundncia Conceito simples
Transmissor
Segmenta o bloco de dados em k blocos de n bits Soma os K segmentos Soma complementada para gerar o checksum Checksum enviado com os dados
Deteco de Erros
Funcionamento do Transmissor
1010100100111001 10101001 00111001 10101001+00111001 11100010 (sum) 00011101 (checksum a ser enviado) 10101001 00111001 00011101
Deteco de Erros
Receptor
Divide o bloco em k segmentos de dados de n bits Faz a soma dos segmentos Gera o checksum Se dados forem iguais a zero, dados aceitos!
Deteco de Erros
Funcionamento do Receptor
101010010011100100011101 10101001 00111001 00011101 10101001+0111001+00011101 11111111 (sum) 00000000 (checksum)
Correo de Erros
Mas como corrigir erros?
Correo por Retransmisso Correo Antecipada
Quando os dados so recebidos e verificado que existiu um erro na transmisso, seria necessrio corrigi-lo!
Correo de Erros
Cdigo de Hamming
Escalar bits de redundncia segundo seu cdigo Para 7 bits seria necessrio escalar 4 bits
1 2 3 4 5 6 7
Correo de Erros
Cdigo de Hamming
Mas como feito?
R1: 1,3,5,7,9,11 R2: 2,3,6,7,10,11 R4: 4,5,6,7 R8: 8,9,10,11
Correo de Erros
Cdigo de Hamming
r1 cuidar destes bits.
Correo de Erros
Cdigo de Hamming
Corrompido
Perguntas finais
Qual a vantagem e desvantagem de cada cdigo? Onde este cdigos so utilizados?