Pontifícia Universidade Católica de São Paulo - PUC
PACOTES, QUADROS E
DETECÇÃO DE ERRO.
Aula de Redes - Prof. Victor
Fabiana Bernardes e Karen Niglio
PACOTES
* A maioria das redes de computadores, não
transfere dados como uma string arbitrária e sim,
divide-se em blocos pequenos denominados
“pacotes”, que são enviados individualmente.
* Utilizam a rede de pacotes para assegurar a correta
transmissão dos dados.
* A Transmissão de pacotes, é feita individualmente,
ou seja, a rede permite que envie um pacote e logo
que termine, impede que o mesmo envie novamente,
deixando outro computador enviar e assim por
diante, em outras palavras é um recurso
compartilhado justo.
PACOTES
* O tamanho dos pacotes, típico de longa distância,
são divididos em 1.000 bytes e o hardware pode
transferir dados a 56.000 bits por segundo. Isto evita
atrasos longos para outros computadores no aguardo
da sua vez.
PACOTES
QUADROS
* Quadro é um termo utilizado para distinguir
pacotes no conceito geral e de tecnologia
específica de hardware.
* Enviando um bloco de dados para outro
computador, usando um esquema de
transmissão orientado a caractere como RS232(capítulo 4), têm de haver concordância
entre o remetente e o receptor, ou seja, os
computadores transmissor e receptor devem
concordar em como especificarão o início e o
fim de cada quadro, usando “soh”(star of
headed) e “eot”(end of transmission).
QUADROS
QUADROS
* Vantagem do Enquadramento: Quando há
atrasos ou falhas nos computadores e o transmissor
falhar ao enviar um quadro completo e o “eot”não
chegar, o receptor imediatamente perceberá que o
quadro está incompleto. E quando o remetente
reinicializar e enviar um novo quadro, ele começará
com um “soh”, permitindo o receptor descobrir o
problema.
*Desvantagem do Enquadramento: A Sobrecarga,
quando remetente envia dois quadros sem atrasos
entre eles, no fim do 1º quadro transmite “eot” e
sem atraso, no começo de outro envia “soh”, é
necessário só um caractere para delimitar um
quadro do outro.Sem excessos de caractere.
QUADROS
BYTE STTUFING:
*O byte stuffing permite que um aplicativo possa
escolher enviar dados que contenham uma ou mais
ocorrências de caractere como “soh”e “eot” que são
usados no enquadramento.
* Para distinguir dados enviados e informações
delimitadoras de quadro, os sistemas da rede fazem
com que o lado do remetente mude ligeiramente os
dados antes do envio e preparam o lado do receptor
para restaurar os dados originais antes de passar os
mesmos para o aplicativo receptor, assim o sistema
nunca confunde com informações de controle.
QUADROS
* Para implementar o byte stuffing, o remetente
varre o bloco de dados inteiro e executa o
mapeamento antes de enviar, em seguida, substitui
cada ocorrência do “soh” pelo caractere “esc” e
“x”, de “eot” por “esc” e “y” e cada ocorrência de
“esc” por “x, y ou z”.
QUADROS – BYTE STUFFING
DETECÇÃO DE ERRO
* Durante a transmissão é normal surgirem erros,
na maioria das vezes, devidos aos ruídos existentes
na linha de transmissão.
* Seja qual for o mecanismo usado, a detecção ,
inclui no geral, um campo contendo informação
calculada a partir dos dados.
•Formas de detectar erros: Bits de paridade e
verificação de paridade:
A verificação de paridade é uns dos mecanismos
mais simples, ele acrescenta 1 bit a cada caractere
transmitido, de modo que o total de bits 1 seja par
(“even parity”) ou ímpar (“ odd parity”).
DETECÇÃO DE ERRO
*A paridade par para comunicações assíncronas e e
paridade ímpar para as síncronas.
*A verificação de paridade funciona devido à
ocorrência de erros, um número ímpar de bits é
invertido, se esse número é par, então o erro não é
detectado.
*Checksums: O remetente trata os dados como uma
seqüência de inteiros binários e computa sua soma.
Vantagem: o tamanho e a facilidade de computação
e só exigir adição.
Desvantagem: Não detecta todos os erros comuns.
DETECÇÃO DE ERRO
DETECÇÃO DE ERRO
* CRC ( Cyclic Redudancy Check), é um
mecanismo muito eficiente, pois não utiliza bits de
paridade, os quadros transportam uma seqüência
conhecida de bits por FCS (Frame Check
Sequence). Os FCS é calculado pelo remetente de
tal modo que o quadro concatenado aos bits de
dados, o resultado final seja divisível por um
número pré-determinado.
* Para calcular uma CRC, os valores em todos os
registradores de deslocamentos são inicializados
com zero bits e os bits de uma mensagem são
deslocados para dentro de uma posição cada vez.
Ou seja, um bit da mensagem é aplicado à entrada
da unidade de ou exclusivo mais à direita,
DETECÇÃO DE ERRO
DETECÇÃO DE ERRO – cont.
•No ponto identificado como entrada, e todos os 3
registradores de deslocamentos são instruídos para
executar uma operação de deslocamento
simultaneamente.
•O hardware repete o procedimento para cada bit da
mensagem.
* Há duas categorias que fazem os CRC’s se
tornarem muito úteis. Falhas de hardwares,
exemplo: um dispositivo E/S orientado a caractere,
geralmente se danificam em colunas verticais e em
organizados em fila, os chamados “erros verticais”.
DETECÇÃO DE ERRO
* É também muito útil, quando se trata de erros que
envolvam mudanças em um pequeno conjunto de
bits próximos a uma localização única, os
chamados “erros de ruptura”, acontece geralmente
depois de uma interferência elétrica, como raios,
por exemplo.
* É normal a rede associar informações de detecção
de erro com cada quadro. O quadro(fig. no slide
seguinte) usa um byte stuffing para substituir
ocorrências dos caracteres “soh” , “eot” e “esc” nos
dados.
* O byte stuffing da CRC pode aumentar a
confiabilidade
PERGUNTAS:
1 - Porque a maioria das redes utilizamo sistema de
pacotes para envio de dados?
2 - Para que serve os caracteres soh e eoh na
transmissao de um quadro?
3 - O que significa o termo Byte Stuffing?
4 - Como posso implementar o Byte Stuffing?
5 - Quais são os 3 mecanismos utilizados para
detecçao de erro?
6 - Qual a tecnica utilizada para calcular o
Checksum?Quais são suas vantagens e
desvantagens?
7 - Como um sistema de rede pode descobrir mais
erros sem aumentar a quantidade de informaçoes
adicionais em cada pacote?
.
RESPOSTAS:
1 - A maioria das redes nao transfere dados como
uma string arbitraria de bits contínuos.
Em vez disso, o sistema de rede divide dados em
blocos pequenos chamados de pacotes que ele envia
individualmente.O uso de pacotes pequenos ajuda a
assegurar justiça no acesso.Para evitar que um
computador detenha uma rede por tempo arbitrario,
as redes modernas obrigam o uso de pacotes.
2 - O caractere soh serve par amarcar o inicio de um
quadro a ser enviado, e o eot para marcar o
fim.Assim um receptor pode dizer quando o quadro
inteiro chegou, ainda que existam atrasos entre
caracteres.
3 - O termo Byte Stuffing significa "enxerto de
dados" usado com hardware orientado a caractere.
4 - Para implementar o Byte Stuffing, um remetente
deve varrer um bloco de dados inteiro e executar o
mapeamento antes que quaisquer dados possam ser
enviados.Assim com o mapeamento
cuidadosamente escolhido é garantido que um
remetente apos terminar o byte stuffing, o caractere
soh e eot nao aparecem na seçao de dados de um
quadro.Deste modo, um receptor pode estar certo
que um soh sempre delimita o ínicio de quadro e
um eot, o fim de um quadro
5 - Os tres mecanismos mais utilizados para
detecçao de sao : Bits de Paridade, Checksums e
Redundancia Ciclica.
6 - Para calcular um checksum, o remetente trata os
dados como uma sequencia de inteiros binários e
computa a soma.Os dados nao sao restritos a
valores inteiros, podem conter caracteres, números
em ponto flutuante ou uma imagem.
7 -A resposta reside em técnicas de Verificaçao de
Redundancia Ciclica que podem descobrir mais
erros que um checksum.Emboras essa técnicas
possam ser analisadas matematicamente, a sua
simplicidade e elegancia podem apenas ser
apreciadas entendendo o hardware utilizado para
implementá-las.
Download

Pacotes, Quadros e Deteccao de erro