Top Banner
Redes de Computadores Camada de Enlace
41

Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Jan 24, 2019

Download

Documents

Lam Huong
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Redes de Computadores

Camada de Enlace

Page 2: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 2

Serviços Detecção de Erros Protocolos Elementares Protocolos de Janela Deslizante Exemplo de Protocolo Subcamada de Acesso ao Meio (MAC)

Camada de Enlace

Page 3: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

5: Camada de Enlace Camada de Enlace

3

Protocolos da Camada de Enlace

Page 4: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 4

Serviços da Camada de Enlace

Enquadramento e acesso ao enlace: encapsula datagrama num quadro incluindo cabeçalho e

cauda, implementa acesso ao canal se meio for compartilhado, ‘endereços físicos’ são usados em cabeçalhos de quadros

para identificar origem e destino de quadros em enlaces multiponto

Entrega confiável: Pouco usada em fibra óptica, cabo coaxial e alguns tipos

de pares trançados devido a taxas de erro de bit muito baixas.

Usada em enlaces de rádio, onde a meta é reduzir erros evitando assim a retransmissão fim a fim.

Page 5: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 5

Serviços da Camada de Enlace (mais)

Controle de Fluxo: compatibilizar taxas de produção e consumo de quadros entre

remetentes e receptores Detecção de Erros:

erros são causados por atenuação do sinal e por ruído receptor detecta presença de erros receptor sinaliza ao remetente para retransmissão, ou

simplesmente descarta o quadro em erro Correção de Erros:

mecanismo que permite que o receptor localize e corrija o erro sem precisar da retransmissão

Page 6: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 6

Implementação de Protocolo da Camada de Enlace

Protocolo da camada de enlace é implementado totalmente no adaptador (p.ex., cartão PCMCIA). Adaptador tipicamente inclui: RAM, circuitos de processamento digital de sinais, interface do barramento do computador, e interface do enlace

Operações de transmissão do adaptador: encapsula (coloca número de seqüência, info de realimentação, etc.), inclui bits de detecção de erros, implementa acesso ao canal para meios compartilhados, coloca no enlace

Operações de recepção do adaptador: verificação e correção de erros, interrompe computador para enviar quadro para a camada superior, atualiza info de estado a respeito de realimentação para o remetente, número de seqüência, etc.

Page 7: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 7

Delimitação dos Quadros

Contador de caracteres

Page 8: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 8

Delimitação dos Quadros Caracteres de inicialização e finalização, com

caracter de enchimento

Page 9: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 9

Delimitação dos Quadros Flags de inicialização e finalização, com caracter de

enchimento

Violação de código no nível físico

Page 10: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 10

Detecção de ErrosEDC= bits de Detecção e Correção de Erros (redundância)D = Dados protegidos por verificação de erros, podem incluir alguns campos do cabeçalho

• detecção de erros não é 100% perfeita;• protocolo pode não identificar alguns erros, mas é raro• maior campo de EDC permite melhorar detecção e correção

Page 11: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 11

Uso de Bits de Paridade

Paridade de 1 Bit:Detecta erros em um único bit Paridade de Bit Bidimensional:

Detecta e corrige em um único bit

Page 12: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 12

Métodos de “Checksum” Checksum “Internet”: Remetente considera dados como

compostos de inteiros de 16 bits; soma todos os campos de 16 bits (usando aritmética de complemento de um) e acrescenta a soma ao quadro; o receptor repete a mesma operação e compara o resultado com o checksum enviado com o quadro.

Códigos de Redundância Cíclica (Cyclic Redundancy Codes): Dados considerados como a seqüência de coeficientes de um polinômio

(D) É escolhido um polinômio Gerador, (G), (=> r+1 bits) Divide-se (módulo 2) o polinômio D*2r por G. Acrescenta-se o resto

(R) a D. Observa-se que, por construção, a nova seqüência <D,R> agora é exatamente divisível por G

Page 13: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 13

Exemplo de CRC

Page 14: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 14

Implementação de CRC (cont)

Remetente realiza em tempo real por hardware a divisão da seqüência D pelo polinômio G e acrescenta o resto R a D

O receptor divide <D,R> por G; se o resto for diferente de zero, a transmissão teve erro

Padrões internacionais de polinômios G de graus 8, 12, 15 e 32 já foram definidos

A ARPANET utilizava um CRC de 24 bits no protocolo de enlace de bit alternado

ATM utiliza um CRC de 32 bits em AAL5 HDLC utiliza um CRC de 16 bits

Page 15: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 15

Protocolos Elementares

Protocolo Simplex sem restrições Protocolo Simplex Pare-e-Espere (Stop-

and-wait) Protocolo Simplex para um canal com ruído

Page 16: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 16

Protocolo Simplex sem restrições Transmissão num único sentido O nível de rede está sempre pronto para

transmitir e receber O tempo de processamento é ignorado Buffers infinitos Canal de comunicação perfeito

Page 17: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 17

Protocolo Simplex sem restrições

Transmissor ReceptorEnlace

Page 18: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 18

Protocolo Simplex Pare-e-Espere (Stop-and-wait) Os buffers não são infinitos O tempo de processamento não é ignorado O transmissor não envia outra mensagem

até que a anterior tenha sido aceita como correta pelo receptor

Embora o tráfego de dados seja simplex, há fluxo de quadros em ambos os sentidos

Page 19: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 19

Protocolo Simplex Pare-e-Espere

Transmissor ReceptorEnlace

Page 20: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 20

Protocolo Simplex para um Canal com Ruído (I)

Transmissor ReceptorEnlace

X(erro)

Detectado erro.Quadro ignorado

Liga timer

Estoura timer

Desliga timer

Religa timer

Page 21: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 21

Protocolo Simplex para um Canal com Ruído (II)

Transmissor ReceptorEnlace

Liga timer

Estoura timer

X(erro)

DUPLICATA!Desliga timer

Religa timer

SOLUÇÃO: Números deSeqüência

Page 22: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 22

Protocolo Simplex para um Canal com Ruído (III)

Os quadros são numerados seqüencialmente O tx transmite um quadro O rx envia uma quadro de reconhecimento

se o quadro for recebido corretamente, caso contrário, há um descarte e é aguardada uma retransmissão

Quadros não reconhecidos são retransmitidos (temporização)

Page 23: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 23

Protocolos de Janela Deslizante

Transmissão de dados em ambos sentidos Utilizam a técnica de carona (piggybacking) Possui janelas para transmissão e recepção

Janela de transmissão• números de seqüência habilitados para transmissão

Janela de recepção• números de seqüência habilitados para recepção

Os quadros são mantidos na memória para possível retransmissão

Page 24: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 24

Janela Deslizante de tamanho 1

Inicialmente Após a tx do1o. quadro

Após a rx do1o. quadro

Após a rx do1o. Reconhe-

cimento

Page 25: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 25

Protocolos com Pipelining

A janela de tamanho 1 compromete a eficiência para longo tempo de trânsito (ida e volta) alta largura de banda comprimento de quadro curto

Page 26: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 26

Protocolos com Pipelining

Solução: Deixar o transmissor transmitir até w quadros

(sem receber o reconhecimento do primeiro) antes de ser bloqueado.

Devemos escolher w de modo que o transmissor possa transmitir quadros por um tempo igual ao de trânsito, antes de encher a janela

Page 27: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 27

Protocolos com Pipelining

O que fazer se um quadro no meio da janela for danificado ou perdido?

Abordagens: Volte a n (Go Back n) Retransmissão Seletiva (Selective Reject)

Page 28: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 28

Protocolos com Pipelining

Volte a n O receptor descarta os quadros seguintes ao

errado O transmissor identifica que houve erro, com

estouro da temporização sem que tenha recebido um reconhecimento

Ineficiente se a taxa de erros for altaJanela de recepção 1

Page 29: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 29

Protocolos com Pipelining

Retransmissão seletiva O nó armazena os quadros corretos que

chegarem após o com erro. O transmissor retransmite apenas o com erro.

Ao receber o quadro que faltava, o nó entrega os diversos quadros já recebidos rapidamente e envia um reconhecimento do quadro de ordem mais alta

Necessita de maior quantidade de memória no nó

Janela de recepção maior que 1

Page 30: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 30

Protocolo Volte a n

Alternativa: quadro correto fora da seqüência dispara atransmissão de um quadro de NAK antecipando o inícioda retransmissão dos quadros.

Page 31: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 31

Protocolo com Retransmissão Seletiva

Page 32: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 32

Exemplo de Protocolo de Enlace

HDLC (High-level Data link Control) É uma evolução do protocolo SDLC (Synchronous

Data Link Control) desenvolvido pela IBM Padronizado pela ISO O ITU-T modificou o HDLC para o seu LAPB

(Link Access Procedure Balanced) utilizado no X.25

Page 33: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 33

Formato do Quadro para Protocolos Orientados a Bits

Flags

Endereço: usado paraidentificar terminais emcanais multiponto ou para distinguir comandosde respostas.

Controle: inclui nos. de seqüência,reconhecimentos, etc.

Dados: de comprimentovariável.

CRC-CCITT

Page 34: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 34

Campo de Controle

Quadro de Informação:

Quadro de Supervisão:

Quadro Não Numerado:

Page 35: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 35

Quadros de Supervisão

Tipo 0: quadro de reconhecimento positivo (RR - Receive Ready)

Tipo 1: quadro de reconhecimento negativo (REJ - REJect)

Tipo 2: quadro de reconhecimento (RNR - Receive Not Ready)

Tipo 3: quadro de rejeição seletiva (SREJ - Selective Reject)

Page 36: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 36

Quadros Não Numerados

DISC (DISConnect) SNRM (Set Normal Response Mode) SABM (Set Asynchronous Balanced Mode) FRMR (FRaMe Reject) UA (Unnumbered Acknowledgment)

Page 37: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 37

Subcamada de Acesso ao Meio

Controle de acesso a um meio físico compartilhado entre múltiplas estações

Será estudada no módulo de Redes Locais.

Page 38: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 38

Problemas (I)

Num canal com ruído poderíamos utilizar um protocolo que possuísse apenas reconhecimentos negativos (NAKs)? Quais seriam as suas vantagens e desvantagens?

Queremos utilizar um canal E1 de 3.000 km para transmitir quadros de 64 bytes utilizando um protocolo do tipo “Volte a n”. Se a velocidade de propagação do sinal for de 6 seg/km, quantos bits deveríamos utilizar para o número de seqüência dos quadros?

Page 39: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

Camada de Enlace 39

Problemas (II) Assumindo que o protocolo de enlace utilizado seja

o LAPB, com apenas 3 bits para os números de seqüência, e onde BI corresponde à Borda Inferior da janela de transmissão, V(S) corresponde ao número de seqüência do próximo quadro a ser transmitido e V(R) corresponde à variável que indica o número de seqüência do próximo quadro esperado.Complete o cenário abaixo, indicando claramente a troca de mensagens nas interfaces entre as camadas de enlace e de rede, assim como os instantes em que são liberados os buffers de transmissão correspondentes a que mensagens.

Page 40: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

BI V(S) V(R) BI V(S) V(R)

I= N(S)= N(R)=

I= N(S)= N(R)=

I= N(S)= N(R)= I= N(S)= N(R)=

I= N(S)= N(R)=

Tipo= N(R)=

I= N(S)= N(R)=

I= N(S)= N(R)=

I= N(S)= N(R)=

I= N(S)= N(R)=

I= N(S)= N(R)=

RR N(R)=

7 7 3 3 3 7

I= N(S)= N(R)=

I= N(S)= N(R)=

I= N(S)= N(R)=

I= N(S)= N(R)=

Page 41: Redes de Computadores - professor.unisinos.brprofessor.unisinos.br/jcgluz/fund-redes/enlace.pdf · Redes de Computadores Camada de Enlace. Camada de Enlace 2 ... ATM utiliza um CRC

BI V(S) V(R) BI V(S) V(R)

I=A N(S)= 7 N(R)= 3

I= C N(S)=1 N(R)= 4

I=Y N(S)= 4 N(R)= 1I= D N(S)=2 N(R)= 5

I= F N(S)= 4 N(R)= 5

Tipo= REJ N(R)= 1

I= C N(S)= 1 N(R)= 5

I= D N(S)= 2 N(R)= 6

I= E N(S)= 3 N(R)= 6

I= Z N(S)= 5 N(R)= 1

I= W N(S)= 6 N(R)=5

RR N(R)=7

7 7 3 3 3 7

I= X N(S)= 3 N(R)= 0

I= B N(S)= 0 N(R)= 3

I= E N(S)= 3 N(R)= 5

I= F N(S)= 4 N(R)= 6

Aliga temp.

7 0 3 3 3 0 AB.

7 1 3

X

3 4 0 Liga temp.X

Libera Buffer AReliga temporizador 0 1 4

B 3 4 1

C

0 2 4

1 2 5

Y

3 5 1Y

Libera Buffer BReliga temporizador D

1 3 5E

1 4 5 5 5 1 Libera Buffers X e YDeslliga temporizador

5 5 1 Liga temp.p/ REJ

F

1 5 5 5 5 1

1 1 5

1 2 5

Z

Liga temp. 5 6 1

5 6 2C

Religa temporizadorZ

1 2 6

1 3 6

1 4 6

1 5 6

6 6 3 D Libera Buffer ZDeslliga temporizador

Desliga temp.p/ REJ

WLiga temp.

6 6 4

6 6 5

EF

6 7 5 5 5 7Libera Buffers C a F

Desliga temporizador

W

5 5 7

7 7 5 Libera Buffer WDeslliga temporizador