Buscar

Aula 2 - Serv da camada de enlace

Prévia do material em texto

17/09/2018 Disciplina Portal
http://estacio.webaula.com.br/Classroom/index.html?id=2358577&classId=996564&topicId=2768762&p0=03c7c0ace395d80182db07ae2c30f03… 1/11
Arquitetura de Redes
(Infraestrutura de Redes)
Aula 2 - Serviços da camada de enlace
INTRODUÇÃO
Nesta aula estudaremos os serviços oferecidos pela camada de enlace. Descreveremos em detalhes as funções de
enquadramento de dados e de detecção de erros de transmissão, incluindo os algoritmos paridade, CRC e Checksum.
Vamos lá!
OBJETIVOS
17/09/2018 Disciplina Portal
http://estacio.webaula.com.br/Classroom/index.html?id=2358577&classId=996564&topicId=2768762&p0=03c7c0ace395d80182db07ae2c30f03… 2/11
Reconhecer, em detalhes, o enquadramento de dados;
Identi�car métodos simples de detecção: bit de paridade;
Analisar métodos mais avançados de detecção de erros: Checksum e CRC.
17/09/2018 Disciplina Portal
http://estacio.webaula.com.br/Classroom/index.html?id=2358577&classId=996564&topicId=2768762&p0=03c7c0ace395d80182db07ae2c30f03… 3/11
ERROS DE TRANSMISSÃO
Fonte da Imagem: alexskopje / Shutterstock
Uma questão de fundamental importância na camada de enlace é que os meios de transmissão de dados di�cilmente
oferecem um ambiente aprazível para os bits que por ali passam. Quando os bits viajam pelo meio de transmissão,
enfrentam diversos obstáculos até chegarem ao outro lado. Esses obstáculos podem aparecer na forma de atenuação
de sinal ou de interferência eletromagnética, por exemplo.
Eventualmente, eles fazem com que um bit chegue ao outro lado trocado (por exemplo, um bit 1 chega ao destino
como bit 0). Essa troca acidental de bits que ocorre nos meios de transmissão é denominada, no contexto de redes de
computadores, erros de transmissão.
Para contornar esse problema, protocolos da camada de enlace empregam técnicas de detecção de erros de
transmissão. O objetivo é permitir que um receptor possa conferir se uma unidade de dados recebida chegou com os
bits idênticos aos que foram transmitidos pelo vizinho.
O ENQUADRAMENTO DE DADOS
Fukurou / Shutterstock
CONTAGEM DE CARACTERES
Segundo a técnica de contagem de caracteres, cada quadro recebe um campo de cabeçalho informando quantos bytes
(caracteres) possuem o quadro atual. Ao ler esse valor, o receptor segue contando os bytes totais do quadro, e, quando
se igualar ao número indicado no campo de cabeçalho, teremos o �nal do quadro.
17/09/2018 Disciplina Portal
http://estacio.webaula.com.br/Classroom/index.html?id=2358577&classId=996564&topicId=2768762&p0=03c7c0ace395d80182db07ae2c30f03… 4/11
O método de contagem de caracteres tem a vantagem de ser simples e requerer pouca informação de controle.
Entretanto, se houver erro de transmissão (troca de bits) que afete o byte de controle, o receptor perderá a capacidade
de seguir delimitando tanto o quadro atual quanto os quadros seguintes.
Para evitar problemas como esse, outras técnicas foram sendo propostas. Um exemplo é a técnica de marcação com
caracteres mostrada na tabela a seguir.
Embora seja uma solução mais elaborada do que a contagem de bits, a marcação com caracteres também tem suas
desvantagens. A primeira é que esse método requer mais bits de controle do que o método de contagem de caracteres.
A segunda questão é que, se, por coincidência, a área de dados do quadro tiver uma sequência de bytes idêntica aos
bytes usados nos marcadores, o receptor poderá se confundir. Para contornar o problema, existe uma variação desse
método, chamada de marcação com caracteres e preenchimento de caracteres. Observe, abaixo:
MÉTODOS SIMPLES DE DETECÇÃO DE ERROS DE TRANSMISSÃO: BIT
DE PARIDADE
17/09/2018 Disciplina Portal
http://estacio.webaula.com.br/Classroom/index.html?id=2358577&classId=996564&topicId=2768762&p0=03c7c0ace395d80182db07ae2c30f03… 5/11
No contexto de redes de computadores, o termo “erros de transmissão” se refere à ocorrência de troca de bits no meio
de transmissão. Você não deve confundir erros de transmissão com perda de pacotes. Para pro�ssionais da área de
redes de computadores, esses são problemas completamente distintos e tratados por técnicas muito diferentes.
Todo método de detecção de erros de transmissão é baseado na mesma ideia fundamental, como visto a seguir.
O transmissor interessado em usar algum método de detecção de erros de transmissão recebe uma unidade de dados
(datagrama) da camada de rede. Do ponto de vista da camada de enlace, um datagrama é, na verdade, o conjunto de
dados a serem enviados. Os dados são representados pela letra D na parte esquerda da �gura.
O transmissor, então, trata bits de dados como se fossem números (não importando se o que está sendo enviado é um
texto, por exemplo, um código html), e realiza uma ou duas sequências de operações aritméticas/algébricas. O
resultado dessas operações é chamado de Código de Detecção de Erros (EDC – Error Detection Code). 
O EDC é adicionado como um campo de cabeçalho aos dados a serem enviados, e o quadro da camada de enlace,
formado pela concatenação D,EDC, é transmitido usando o meio de transmissão subjacente.
17/09/2018 Disciplina Portal
http://estacio.webaula.com.br/Classroom/index.html?id=2358577&classId=996564&topicId=2768762&p0=03c7c0ace395d80182db07ae2c30f03… 6/11
O receptor, por sua vez, recebe um conjunto de bits designado na imagem por D´,EDC´. Os dados recebidos são
marcados com um (´), pois podem ter sido alterados durante sua viagem pelo meio de transmissão devido, por
exemplo, a interferência eletromagnética. 
Após receber os dados, o receptor realiza, em D´, o mesmo conjunto de operações que o transmissor efetuou em D
antes da transmissão. Após obter o resultado, o receptor o compara com o valor EDC´ recebido junto com o quadro.
Se os dois valores forem iguais, o receptor irá considerar que o quadro foi recebido livre de erros de transmissão. Se
forem diferentes, o receptor entenderá que houve erro de transmissão.
LHF Graphics / Shutterstock
O exemplo a seguir ilustra um esquema com paridade par, ou seja, um bit de paridade é adicionado ao �nal da
sequência de bits de dados antes do quadro ser transmitido para garantir que o número de bits 1 do quadro seja par.
Como a área de dados contem 6 bits iguais a 1, o bit foi con�gurado para 0, já que o número total de bits iguais a 1 já
era par.
17/09/2018 Disciplina Portal
http://estacio.webaula.com.br/Classroom/index.html?id=2358577&classId=996564&topicId=2768762&p0=03c7c0ace395d80182db07ae2c30f03… 7/11
No exemplo seguinte, a área de dados contém apenas 3 bits iguais a 1. Esse número é, portanto, ímpar, e o bit de
paridade teve que ser con�gurado para 1. Com isso, o número total de bits iguais a 1 do quadro �cou em 4, um número
par. A paridade combinada foi, pois, respeitada.
Você pode imaginar cenários de erros de transmissão (trocas de bits) que não são detectados pelo método de bit de
paridade? Fácil, não é? Qualquer erro que afete um número par de bits durante a transmissão dos quadros fará com
que o receptor, inadvertidamente, ache que o quadro recebido está livre de erros de transmissão.
O método de bit de paridade certamente não é muito robusto, pois deixa passar cerca de 50% dos possíveis erros que
podem ocorrer (lembre-se: erros que afetem um número par de bits).
Entretanto, esse método é interessante, pois o código de detecção de erros (EDC) é composto por um único bit. Isso
quer dizer que pouco recurso da rede é usado para transmitir informação de controle em vez de dados (que vem a ser o
desejo do usuário).
Então, o método tem vantagens e desvantagens. Mas você saberia dizer em que cenário prático ele deve ser usado?
Resposta Correta
Segundo a técnica de bit de paridade bidimensional, os dados a serem transmitidos são organizados em várias linhas
de modo que o emissor possa con�gurar um bit de paridade para cada linha e um bit de paridade para cada coluna,
conforme indicado a seguir.
Para cada linha de dados, um bit de paridade foi con�gurado com o objetivo de manter o número de bits 1 sempre par.
O mesmo é feito a cada coluna. OEDC, nesse caso, é formado por todos os bits em vermelho.
Agora, suponha que um dos bits da área de dados tenha sido trocado (erro de transmissão), conforme indicado
adiante. O receptor será capaz de notar que a paridade da quarta coluna está inválida (número ímpar de bits 1,
marcado em azul), e que a paridade da terceira linha também está inválida (número ímpar de bits 1, marcado em azul
no diagrama).
17/09/2018 Disciplina Portal
http://estacio.webaula.com.br/Classroom/index.html?id=2358577&classId=996564&topicId=2768762&p0=03c7c0ace395d80182db07ae2c30f03… 8/11
Essa coordenada indica ao receptor exatamente qual foi o bit trocado (linha 3, coluna 4). Logo, o receptor é capaz de
alternar o valor do bit, corrigindo o erro de transmissão.
O bit de paridade bidimensional, por ter um EDC maior e um método mais elaborado de geração de EDC, é capaz de
detectar maior quantidade de erros quando comparado ao método do bit de paridade.
Além disso, esse método é capaz de corrigir erros de transmissão que troquem o valor de um único bit. Entretanto, para
que seja mais robusto, o método requer que mais bits de controle sejam transmitidos pelo meio, ou seja, consome
mais recursos.
MÉTODOS AVANÇADOS DE DETECÇÃO DE ERROS: CHECKSUM E CRC
O termo checksum, em inglês, pode ser traduzido como “soma de veri�cação”. É um método de detecção de erro muito
importante, pois é usado em duas camadas do modelo TCP/IP: rede e transporte.
Segundo o método, o emissor trata os dados a serem enviados como uma sequência de números inteiros de 16 bits.
Os dados são, então, agrupados em linhas de 16 bits, conforme mostrado no esquema a seguir.
Ao receber o quadro, o receptor realiza um procedimento análogo e calcula a soma dos bits da área de dados dividida
em linhas de 16 bits. O receptor, então, possui dois valores em mãos:
A soma dos bits de dados calculados pelo próprio receptor;
O complemento da soma calculado pelo transmissor (EDC), que veio registrado no cabeçalho do quadro.
17/09/2018 Disciplina Portal
http://estacio.webaula.com.br/Classroom/index.html?id=2358577&classId=996564&topicId=2768762&p0=03c7c0ace395d80182db07ae2c30f03… 9/11
Se não tiver ocorrido erro de transmissão, e o quadro recebido estiver exatamente igual ao quadro transmitido, a soma
calculada pelo receptor deverá equivaler ao complemento binário do EDC (complemento da soma) registrado no
pacote.
Para checar se isso é verdade, o receptor realiza uma operação lógica XOR (glossário) entre a soma que calculou e o
complemento da soma (EDC) registrado no pacote.
CRC – CYCLIC REDUNDANCY CHECK
O último método de detecção de erro a ser abordado nesta aula é denominado CRC – Cyclic Redundancy Check. Uma
tradução possível para o termo é “Veri�cação de Redundância Cíclica”. É um método de detecção de erros de muita
importância, pois é usado na camada de enlace de redes locais (LAN – Protocolo Ethernet e Protocolo 802.11 Wi-�),
em redes ATM, e também pelo software de compactação de arquivos ZIP.
A intuição (e a matemática) por trás do método CRC é a seguinte:
Uma chave binária “G” de r+1 bits de comprimento é pré-combinada entre o transmissor e o receptor. Por exemplo,
combina-se uma chave de 4 bits G=1001;
O transmissor calcula o resto “R” da divisão binária (módulo 2) dos dados a serem enviados concatenados a uma
sequência de r bits iguais a zero pela chave G pré-combinada entre os pares. Suponha que os dados “D” a serem
transmitidos sejam a sequência binária D=101110, então, “R” seria calculado como resto da seguinte divisão:
Esse processo intuitivo de concatenar “r bits iguais a zero” aos dados “D” é implementado na forma de algoritmo pelos
transmissores através da parte à esquerda da seguinte formula matemática:
O destinatário, ao receber o quadro contendo dados e o EDC (“R”), recalcula seu próprio resto da divisão e o compara
com o “R” que veio registrado no campo de veri�cação de erros do quadro. Se os valores forem iguais, o receptor
entenderá que o quadro está certo. Caso contrário, um erro de transmissão será detectado.
17/09/2018 Disciplina Portal
http://estacio.webaula.com.br/Classroom/index.html?id=2358577&classId=996564&topicId=2768762&p0=03c7c0ace395d80182db07ae2c30f0… 10/11
Entre os métodos de detecção de erros discutidos nesta aula, o CRC é considerado o mais robusto. Ele também é o
mais complexo, e o que requer mais bits de controle (EDC) a serem enviados através do meio de transmissão.
Esse é mais um exemplo do compromisso/balanceamento discutido anteriormente nesta aula, quando argumentamos
que métodos de detecção menos robustos (por exemplo, bit de paridade) são mais simples e métodos mais fortes têm
maior nível de complexidade.
Então, cabe aos engenheiros que projetam um padrão de nível de enlace escolher qual será o método de detecção de
erros adotado conforme a probabilidade de erros de transmissão do meio de transmissão.
Glossário
OPERAÇÃO LÓGICA XOR
Se o resultado for uma sequência de 16 bits iguais a 1 (ou seja, o valor inteiro 65535), o receptor entenderá que o quadro foi
corretamente recebido.
17/09/2018 Disciplina Portal
http://estacio.webaula.com.br/Classroom/index.html?id=2358577&classId=996564&topicId=2768762&p0=03c7c0ace395d80182db07ae2c30f0… 11/11
Caso o resultado seja um valor menor do que 65535 (ou seja, havendo, pelo menos, um bit igual a zero entre os 16 bits resultantes
da operação lógica XOR), o receptor entenderá que houve um erro de transmissão.

Continue navegando