Você está na página 1de 10

FACULDADE DE TECNOLOGIA PROF.

JESSEN VIDAL

ARIOVALDO DE SOUZA JUNIOR DANIEL ANTONIO TORRES CESARIO LUIS GUILHERME UCHOAS UNGUR RICARDO KRAMER DE OLIVEIRA BARROS

ENQUADRAMENTO DE DADOS E CDIGOS DE VERIFICAO DE ERROS DE TRANSMISSO

SO JOS DOS CAMPOS 2011

Sumrio

Sumrio................................................................................................................................... 2 Introduo ............................................................................................................................... 3 1. Tcnicas de enquadramento de dados ............................................................................. 4 1.1 Contagem de Caracteres ............................................................................................... 4 1.2 Insero de bits e byte de flag ...................................................................................... 5 2. Algoritmos de deteco e correo de erros. ................................................................... 6 2.1 Cdigo de Hamming..................................................................................................... 6 2.2 CRC Cdigo de Redundncia Cclica ....................................................................... 8 Concluso ............................................................................................................................... 9 Referncias ........................................................................................................................... 10

Introduo

Na preparao dos dados para envio pela rede, estes sofrem uma diviso em frames que so rotulados e enviados para a camada fsica. Sero analisados neste trabalho duas tcnicas de enquadramento de dados: Contagem de Caracteres e Insero de Bits, Byte de Flag. Ao enviar estes dados pela rede ns precisamos nos certificar de que estes esto chegando ao ponto receptor de forma correta. Para isto existem cdigos de verificao de erros. Analisaremos dois destes: Cdigo de Hamming e Cdigo de Redundncia Cclica.

1.

Tcnicas de enquadramento de dados

A camada de enlace precisa enviar os dados recebidos por ela atravs de um stream de bits brutos atravs da camada fsica, que ir entreg-los ao seu destino. H a possibilidade, entretanto, de que este stream de bits, ao serem transmitidos, sofram alteraes, e estas podem causar erros. A camada de enlace, ento, divide o stream de bits em framese para cada um calculado um total de verificao (checksum). Este clculo refeito no destino e se este clculo for diferente do original saber-se- que houve erro na transmisso e as devidas providncias sero tomadas, como por exemplo, o frame seria descartado.

1.1 Contagem de Caracteres

Este mtodo de enquadramento utiliza um campo no cabealho do frame para especificar o nmero de caracteres deste (). A figura abaixo ilustra este enquadramento para quatro frames de tamanhos 5, 5, 8, e 8 respectivamente:

Figura 1 Frame de contagem de caracteres Uma desvantagem deste tipo de enquadramento que a contagem pode ser mudada por um erro de transmisso. Se, por exemplo, uma contagem de caracteres de 5 no segundo frame se tornar 7, o destino sair de sincronismo e no haver como saber o incio do frame seguinte. Nem mesmo ser possvel descartar o frame porque no se saberia exatamente a quantidade de caracteres que devero ser ignorados. Devido a este problema este mtodo no mais utilizado.

1.2 Insero de bits e byte de flag

O processo de enquadramento chamado Insero de bits refere-se insero de um ou mais bits em uma unidade de transmisso como forma de prover informao de sinalizao ao receptor (TECHTARGET, 2011). O receptor detecta e remove (descarta) os bits inseridos e aproveita apenas a informao til. A insero de bits permite aos frames possuir um nmero aleatrio de bits e eles no esto limitados a unidade de byte (PAHLAVAN e KRISHNAMURTHY, 2009). Por esta abordagem cada frame inicia e termina com um byte especial, 01111110. Entretanto, o protocolo DLL utilizando a insero de bits insere um 0 cada vez que encontrar cinco bits 1 consecutivos encontrados no frame. Desta forma, o byte especial 01111110 no pode ocorrer no frame de dados e o receptor pode ento identificar o inicio e o fim de cada frame e decodific-lo corretamente. Utilizando esta abordagem no h como haver uma sequencia de byte de escape, pois o protocolo iria inserir um zero no meio da sequencia e enviaria ento um stream de 011111010. Do lado receptor, aps a deteco de 011111010, o protocolo deleta o 0 extra e passa 01111110 para as camadas superiores. Observando o exemplo abaixo (): a) 011011111111111111110010 b) 0111111001101111101111101111101001001111110 c) 011011111111111111110010 Onde a representa a o stream de bits original, b representa o stream de bits j com os bits inseridos (em vermelho) para diferir das flags (em verde) e c representa o stream de bits j decodificado pelo receptor e restaurado sua condio inicial.

2.

Algoritmos de deteco e correo de erros.

Quando uma informao transmitida de um local para outro h sempre a possibilidade de ocorrer um erro. H um nmero de cdigos confiveis que podem ser utilizados para codificar a informao de forma que o erro possa ser detectado e corrigido. Exploraremos dois destes cdigos, o Cdigo de Hamming e o CRC (Cdigo de Redundncia Cclica) que identifica erros em sequencias de bits.

2.1 Cdigo de Hamming

O Cdigo de Hamming pode ser utilizado para detectar e corrigir mudanas de um bit, fornecendo tambm a sua localizao (referencia). Esta abordagem pode ser til uma vez que a mudana em um nico bit bem mais provvel que uma mudana em dois ou mais bits (). Abaixo segue um exemplo de como este processo funciona. Considere a Figura 2 a seguir que contem 15 posies. A informao est representada (armazenada) em cada posio, exceto 1, 2, 4 e 8. Estas posies (que so potncias de 2) so utilizadas para armazenar bits de paridade. 1 2 3 1 4 5 2 6 3 7 4 8 9 5 10 6 11 7 12 8 13 9 14 10 15 11

Figura 2 Informao armazenada em 15 posies

Usando as quatro posies de paridade (bits de correo de erro) podemos representar 15 valores. Estes valores e a sua representao binria esto mostrados na Tabela 1 a seguir:

POS 1 2 3 4 5 6 7

20 = 1 21 = 2 22 = 4 23 = 8 1 0 0 0 0 1 0 0 1 1 0 0 0 0 1 0 1 0 1 0 0 1 1 0 1 1 1 0

8 9 10 11 12 13 14 15

0 1 0 1 0 1 0 1

0 0 1 1 0 0 1 1

0 0 0 0 1 1 1 1

1 1 1 1 1 1 1 1

Tabela 1 Posies de paridade Usando o formato dado, a informao est representada por 11 bits de no-paridade. Caso tenha-se, por exemplo, o seguinte dado para ser codificado: 10101101011 (Figura 3). 1 2 3 1 4 5 0 6 1 7 1 8 9 1 10 1 11 0 12 1 13 0 14 1 15 1

Figura 3 Dado 10101101011 alocado Aps alocar a informao na tabela, verifica-se que nas posies 3, 6, 9, 10, 12, 14 e 15 ns temos 1. Utilizando nossa tabela de converso prvia, obtm-se a representao binria para cada um destes valores. Ento efetua-se a disjuno exclusiva dos valores resultantes. Obtm-se o seguinte resultado: 1 0 1 0 0 0 1 1 1 1 0 1 0 1 1 1 0 1 0 0 1 1 1 0 0 0 1 1 1 1 1 1 3 6 9 10 12 14 15 (11)

XOR

Os bits de paridade so ento alocados nos locais adequados, gerando o seguinte resultado (Figura 4): 1 1 2 1 3 1 4 0 5 0 6 1 7 1 8 1 9 1 10 1 11 0 12 1 13 0 14 1 15 1

Figura 4 Resultado da alocao dos dados

Esta a palavra codificada que seria enviada. O lado receptor re-calcularia os bits de paridade e compararia com os que foram recebidos. Se forem iguais, nenhum erro ocorreu, mas caso fossem diferentes, a posio do bit trocado ento determinada. Assumindo que o bit da posio 14 tenha sido invertido, o receptor receberia a seguinte seqncia (Figura 5): 1 1 2 1 3 1 4 0 5 0 6 1 7 1 8 1 9 1 10 1 11 0 12 1 13 0 14 0 15 1

Figura 5 Sequncia errada

Quando o clculo do ponto receptor fosse comparado com o enviado, caso estivesse correto, o resultado seria 0 para todos. Entretanto, como o bit da posio 14 est invertido, o resultado da disjuno apontar exatamente a posio onde ocorreu o erro: 1 0 1 0 0 1 XOR 1 1 1 0 1 0 1 0 0 1 0 0 1 1 1 0 0 1 1 1 1 0 3 6 9 10 12 15 1 1 XOR 0 1 0 1 0 1 1 1 0 1 Enviado / recebido Novo clculo O bit invertido identificado o 14.

2.2 CRC Cdigo de Redundncia Cclica

CRC um mtodo de deteco e correo de erros bastante difundido, que identifica erros em sequencias de bits e ento pode ser aplicado tanto na transmisso de dados com no armazenamento destes a fim de proteg-los de erros. O CRC utilizado em muitas aplicaes e padres, e facilmente integrado ao hardware (). O mtodo pode ser descrito por diviso polinomial. Os dados so armazenados em bytes, que consistem de 8 bits cada. Ento, qualquer bloco de dados pode ser considerado uma sequencia de bytes ou bits. Na comunicao entre computadores geralmente os bits so considerados como sendo independentes e uma

sequencia de bits limitada pelo tamanho dos blocos de informao (ou frames, pacotes, etc.). O teste ento consiste na anlise de uma sequencia finita de bits a fim de saber se esta foi alteranda de forma no intencional, atravs de, por exemplo, erros de transmisso ou memrias danificadas. Para corrigir este problema (ou seja, proteger as informaes de erros no intencionais) adiciona-se algumas informaes redundantes sequencia de bits (que representa a informao). Para chegar esta informao redundante executa-se algumas operaes na sequencia de bits e o resultado destas operaes armazenado como sendo informao redundante. O receptor da mensagem, ou o leitor da entrada da memria pode refazer as mesmas operaes e comparar com a informao redundante armazenada. Se ambas so iguais, h uma grande chance de que no ocorreu erro algum. Se ambas diferem entre si, com certeza ocorreu algum erro, entretanto este pode estar tanto na informao redundante como na informao em si. O cdigo de redundncia cclica executa uma operao especial que pode ser interpretada como sendo uma diviso polinomial. O resto desta diviso utilizado como informao redundante.

Concluso

A transmisso de dados para os mais diversos tipos de dispositivos algo que acontece em uma quantidade assombrosa, 24 horas por dia, sete dias por semana em todos os lugares do mundo. A definio de estruturas para diviso e enquadramento destes dados, assim como assegurar que tais dados sejam confiveis, e que, portanto, no possuam erros em sua estrutura algo de extrema importncia. Foi possvel ento compreender como funcionam as tcnicas de enquadramento por insero de caractere e insero de bits / bytes e tambm como atuam os cdigos de verificao e correo de erros, Hamming e CRC. Tais mtodos contribuem para assegurar que a transmisso de dados se d de maneira confivel e ajuda a descartar dados corrompidos, para que estes ou sejam corrigidos ou reenviados.

10

Referncias

BAGAD, I., A., D., V., S.. Computer Communication Network. Nova Iorque: Technical Publications, 2006.

PAHLAVAN, K.; KRISHNAMURTHY, P. Networking Fundamentals. Nova Iorque: John Wiley and Sons, 2009.

TECHTARGET. Disponvel em < http://searchnetworking.techtarget.com/definition/bitstuffing>. Acesso em: 29 out. 2011.

TANENBAUM, A. S. Redes de Computadores. 4. ed. Rio de Janeiro: Editora Campus (Elsevier), 2010

Você também pode gostar