21
Camada de Enlace - LLC

Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

Embed Size (px)

Citation preview

Page 1: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

Camada de Enlace - LLC

Page 2: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

Controle de Erros

Refere-se ao processo de garantir a entrega confiável dos dados

Dados recebidos na camada de rede são idênticos aos transmitidos

Duas estratégias: Correção de erros por retransmissão Correção autônoma de erros

Page 3: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

Correção de Erros por Retransmissão Requer informação apenas suficiente no fluxo de dados para que o nó receptor possa detectar um erro durante a transmissão

Tendo detectado um erro o destino solicita a origem retransmissão do quadro

Page 4: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

Correção Autônoma de Erros Requer informação redundante no fluxo de dados para que o destino possa detectar e corrigir os erros de forma autônoma

Não se baseia em retransmissão O destino ao detectar um quadro com erro, corrigi os erros por conta própria

Troca retransmissão por informação redundante

Page 5: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

Correção Autônoma de Erros

Custosa de implementar Diversos bits extras são necessários para a

informação redundante e para localizar o bit com erro

Implementada usualmente em canais simplex Não se pode requisitar retransmissão Na maioria das situações o método para

corrigir erros é a retransmissão

Page 6: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

Correção de Erros

Redes locais Ethernet e 802.3 usam retransmissão como correção de erros

Feito usando o CRC

Page 7: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

Checagem de Soma

CRC - Checagem de Redundância Cíclica Para checar uma série de bits o CRC constrói

um polinômio algébrico cujos coeficientes dos termos são os valores dos bits

Um conjunto de dados com n bits corresponde a um polinômio de grau n-1

O bit mais à esquerda é o coeficiente do termo xn-1

Page 8: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

Checagem de Soma Exemplo:

10111101 1x7 + 0x6 + 1x5 + 1x4 + 1x3 + 1x2 + 0x1 + 1

x7 + x5 + x4 + x3 + x2 + 1 A seguir o polinômio é dividido por um polinômio gerador pré-determinado

O conjunto de dados fica sendo o dividendo e polinômio gerador o divisor

Page 9: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

Checagem de Soma

O resto da divisão é a checagem de soma (CRC) que é incluída no quadro

O destino executa um procedimento análogo Se o CRC calculada pelo destino for igual à

do emissor, a divisão dá resto 0. Quadro correto

Se CRC não casam, a origem é notificada e o quadro retransmitido

Page 10: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

Polinômios Geradores

CRC-16 Checagem de soma de 16 bits X16 + x15 + x2 + 1

CRC-CCITT Também de 16 bits X16 + x12 + x5 + 1

Page 11: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

Polinômios Geradores

CRC-32 Checagem de soma de 32 bits Usada na maioria dos protocolos para redes locais

x32 + x26 + x23 + x22 + x16 + x12 + x11 + x10 + x8 + x7 + x5 + x4 + x2 + x

Ethernet, 802.3 e Token Ring

Page 12: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

CRC - Eficiência

A eficiência do CRC é função do polinômio gerador usado

CRC-16 e CRC-CCITT detectam: 100% dos erros únicos e duplos Todos os erros em um número ímpar de bits Falhas em 16 ou menos de 16 bits 99,997% das falhas em 17 bits 99,998% das falhas em 18 ou mais bits

Page 13: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

CRC - Eficiência

CRC-32 A chance de termos dados ruins recebidos e não

detectados é aproximadamente 1 em 4.3 bilhões

Page 14: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

CRC - Exemplo

Origem Divide um quadro Tb por um divisor específico D O resto R é incluído no campo de checagem de

soma do quadro Ta representa o quadro completo, após cálculo de

CRC

Destino Divide Ta por D Se R = 0 --> não possui erros Se R 0 --> erros, retransmissão do quadro

Page 15: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

CRC - Exemplo

Polinômio gerador X5 + x4 + x2 + x + 1 Ou seja D = 110111 Tb = 111000111000

Passo 1 Como polinômio gerador é de grau 5, acrescenta-

se 5 zeros em Tb

11100011100000000

Page 16: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

CRC - Exemplo

Passo 2 Dividimos a cadeia do passo 1 por D Lembre estamos usando binário, mod 2 Não existe vai-um nem empresta-um Adição e subtração correspondem a XOR:

101101

-110011

011110

Page 17: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

CRC - Exemplo

11100011’10’0’0’00’000 / 110111 110111 111111 110111

100010 110111 101010 110111 111010

110111 110100 110111 11000 Resto

Page 18: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

CRC - Exemplo

Passo 3 Junte o Resto aos bits originais Ta = 11100011100011000

Passo 4 Destino recebe Ta e efetua a divisão

Page 19: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

CRC - Exemplo

11100011’10’0’0’11’000’ / 110111

110111

111111

110111

100010

110111

101010

110111

111010

110111

110111

110111

000000000 --> Resto

Page 20: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

CRC - Exemplo Como R = 0, não houve erros na transmissão do

quadro Caso R 0, erro e retransmissão é necessária

Page 21: Camada de Enlace - LLC. Controle de Erros Refere-se ao processo de garantir a entrega confiável dos dados Dados recebidos na camada de rede são idênticos

CRC - Exercício

Polinômio gerador X6 + x5 + x3 + 1 Tb = 111100001101

Calcule Ta e o Resto no destino