Você está na página 1de 64

UNEMAT-FACIEX

Camada de Enlace
Dr. Jos Ral Vento 2005

CAMADA DE ENLACE

CAMADA DE ENLACE ROTEIRO


Servios Deteco de Erros Protocolos Elementares Protocolos de Janela Deslizante Exemplo de Protocolo Subcamada de Acesso ao Meio (MAC)
CAMADA DE ENLACE

CAMADA DE ENLACE

Protocolos da Camada de Enlace

CAMADA DE ENLACE

CAMADA DE ENLACE
H dois tipos de canais em camada de enlace, completamente diferente : Broadcast Redes locais (Lans), Lans sem fio, redes por satlite e redes de acesso hbrido de cabo coaxial e de fibra. Ponto-a-ponto Conexo entre dois roteadores, um modem residencial e um roteador ISP (PPP)

Tipos de canais em camada 2

CAMADA DE ENLACE

CAMADA DE ENLACE

Funes da Camada de Enlace

Conexo de Enlace Sequenciao Notificao de Erros Ack/ Nack, time out, Paridade, FCS (Frame Check sequence), CR Controle de Fluxo Stop and wait Sliding window
CAMADA DE ENLACE

CAMADA DE ENLACE

Funes da Camada de Enlace

unes Internas Estabelecimento e liberao de conexes Compartilhamento do meio fsico - sub-camada MAC Receber dados do nvel de rede e dividi-los em fram Receber bits do nvel fsico agrup-los em frames

Delimitao e sincronizao de quadros Character stuffing Bit stuffing

CAMADA DE ENLACE

CAMADA DE ENLACE
Enquadramento e acesso ao enlace:
encapsula datagrama num quadro incluindo cabealho e cauda, implementa acesso ao canal se meio for compartilhado, endereos fsicos so usados em cabealhos de quadros para identificar origem e destino de quadros em enlaces multiponto

Funes da Camada de Enlace

Entrega confivel:
Pouco usada em fibra ptica, cabo coaxial e alguns tipos de pares tranados devido a taxas de erro de bit muito baixas. Usada em enlaces de rdio, onde a meta reduzir erros evitando assim a retransmisso fim a fim. CAMADA DE ENLACE

CAMADA DE ENLACE
Controle de Fluxo:
compatibilizar taxas de produo e consumo de quadros entre remetentes e receptores

Funes da Camada de Enlace

Deteco de Erros:
erros so causados por atenuao do sinal e por rudo receptor detecta presena de erros receptor sinaliza ao remetente para retransmisso, ou simplesmente descarta o quadro em erro

Correo de Erros:
mecanismo que permite que o receptor localize e corrija o erro sem precisar da retransmisso CAMADA DE ENLACE

CAMADA DE ENLACE Quadros (FRAME)

CAMADA DE ENLACE

CAMADA DE ENLACE Quadros (FRAME)

CAMADA DE ENLACE

CAMADA DE ENLACE Delimitao dos Quadros


Contador de caracteres

CAMADA DE ENLACE

Caracteres de inicializao e finalizao, com caracter de enchimento

CAMADA DE ENLACE Delimitao dos Quadros

CAMADA DE ENLACE

CAMADA DE ENLACE Delimitao dos Quadros


flag byte pattern in data to send

flag byte pattern plus stuffed byte in transmitted data

CAMADA DE ENLACE

CAMADA DE ENLACE Delimitao dos Quadros

CAMADA DE ENLACE

Flags de inicializao e finalizao, com caracter de enchimento

CAMADA DE ENLACE Delimitao dos Quadros

CAMADA DE ENLACE

Flags de inicializao e finalizao, com caracter de enchimento

CAMADA DE ENLACE Delimitao dos Quadros

CAMADA DE ENLACE

CAMADA DE ENLACE Delimitao dos Quadros


Violao de cdigo no nvel fsico (RDSI- Interfaz ST)

CAMADA DE ENLACE

CAMADA DE ENLACE

Deteco de Erros
CAMADA REDE CAMADA ENLACE CAMADA FISICA

EDC= bits de Deteco e Correo de Erros (redundncia) D = Dados protegidos por verificao de erros, podem incluir alguns campos do cabealho

CAMADA DE ENLACE

CAMADA DE ENLACE

Deteco de Erros
Deteco de erros no 100% perfeita; Protocolo pode no identificar alguns erros, mas raro Maior campo de EDC permite melhorar deteco e correo

CAMADA DE ENLACE

Uso de Bits de Paridade

Deteco de Erros

Paridade de 1 Bit:
Detecta erros em um nico bit

Paridade de Bit Bidimensional:


Detecta e corrige em um nico bit

CAMADA DE ENLACE

Mtodos de Checksum Checksum Internet: Remetente

Deteco de Erros

considera dados como compostos de inteiros de 16 bits; soma todos os campos de 16 bits (usando aritmtica de complemento de um) e acrescenta a soma ao quadro; o receptor repete a mesma operao e compara o resultado com o checksum enviado com o quadro.

CAMADA DE ENLACE

Deteco de Erros
Cdigos de Redundncia Cclica (Cyclic Redundancy Codes):

Mtodos de CRC

Dados considerados como a seqncia de coeficientes de um polinmio (D) escolhido um polinmio Gerador, (G), (=> r+1 bits) Divide-se (mdulo 2) o polinmio D*2r por G. Acrescenta-se o resto (R) a D. Observa-se que, por construo, a nova seqncia <D,R> agora exatamente divisvel por G

CAMADA DE ENLACE

Deteco de Erros
Cdigos de Redundncia Cclica (Cyclic Redundancy Codes):

Mtodos de CRC

Implementao de CRC

Exemplo de CRC

CAMADA DE ENLACE

Deteco de Erros
Cdigos de Redundncia Cclica (Cyclic Redundancy Codes):
Remetente realiza em tempo real por hardware a

Mtodos de CRC

diviso da seqncia D pelo polinmio G e acrescenta o resto R a D O receptor divide <D,R> por G; se o resto for diferente de zero, a transmisso teve erro Padres internacionais de polinmios 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

Implementao de CRC (cont)

CAMADA DE ENLACE

Mtodos de CRC em Ethernet


EXEMPLO CRC ETHERNET

Deteco de Erros

Cdigos de Redundncia Cclica (Cyclic Redundancy Codes):

CAMADA DE ENLACE

Mtodos de CRC em Ethernet


EXEMPLO CRC ETHERNET

Deteco de Erros

Cdigos de Redundncia Cclica (Cyclic Redundancy Codes):

CAMADA DE ENLACE

Mtodos de CRC em Ethernet


EXEMPLO CRC ETHERNET

Deteco de Erros

Cdigos de Redundncia Cclica (Cyclic Redundancy Codes):

CAMADA DE ENLACE

CAMADA DE ENLACE

Protocolos da Camada de Enlace

CAMADA DE ENLACE

CAMADA DE ENLACE

Protocolos da Camada de Enlace

CAMADA DE ENLACE

CAMADA DE ENLACE
Protocolo da camada de enlace implementado totalmente no adaptador (p.ex., carto PCMCIA). Adaptador tipicamente inclui: RAM, circuitos de processamento digital de sinais, interface do barramento do computador, e interface do enlace Operaes de transmisso do adaptador: encapsula (coloca nmero de seqncia, info de realimentao, etc.), inclui bits de deteco de erros, implementa acesso ao canal para meios compartilhados, coloca no enlace Operaes de recepo do adaptador: verificao e correo de erros, interrompe computador para enviar quadro para a camada superior, atualiza info de estado a respeito de realimentao para o remetente, CAMADA DE ENLACE nmero de seqncia, etc.

Protocolos da Camada de Enlace

CAMADA DE ENLACE
Protocolo Simplex sem restries Protocolo Simplex Pare-e-Espere

Protocolos da Camada de Enlace

(Stop-and-wait) Protocolo Simplex para um canal com rudo

CAMADA DE ENLACE

CAMADA DE ENLACE
Protocolo Simplex sem restries
Transmisso num nico sentido O nvel de rede est sempre pronto para

Protocolos da Camada de Enlace

transmitir e receber O tempo de processamento ignorado Buffers infinitos Canal de comunicao perfeito
CAMADA DE ENLACE

CAMADA DE ENLACE
Transmissor Enlace Receptor

Protocolos da Camada de Enlace Protocolo Simplex sem restrie

CAMADA DE ENLACE

CAMADA DE ENLACE

Protocolos da Camada de Enlace Protocolo Simplex Pare-e-Espere (Stop-and-wait)


Os buffers no so infinitos O tempo de processamento no ignorado O transmissor no envia outra mensagem

at que a anterior tenha sido aceita como correta pelo receptor Embora o trfego de dados seja simplex, h fluxo de quadros em ambos os sentidos
CAMADA DE ENLACE

Transmissor

Protocolo Simplex Pare-eEspere (Stop-and-wait)


Enlace Receptor

CAMADA DE ENLACE

CAMADA DE ENLACE

CAMADA DE ENLACE
Protocolo Simplex Pare-e-Espere (Stop-and-wait)

CAMADA DE ENLACE

Transmissor Liga timer

Protocolo Simplex para um Canal com Rudo (I)


Enlace Receptor

CAMADA DE ENLACE

X
(erro)

Detectado erro. Quadro ignorado

Estoura timer Religa timer Desliga timer


CAMADA DE ENLACE

Protocolo Simplex para um Canal com Rudo (II) Transmissor Enlace Receptor
Liga timer

CAMADA DE ENLACE

X
(erro) Estoura timer Religa timer Desliga timer
CAMADA DE ENLACE

DUPLICATA! de SOLUONmeros : Seqncia

CAMADA DE ENLACE

Protocolos de Janela deslizante ou Sliding Windows um mecanismo de controle de fluxo e otimizao Quem transmite tem um limite de quadros para enviar segundo um parmetro L que estabelece sua janela de Transmisso Aps o envio de L quadros sem receber nenhum ACK o transmissor interrompe o envio de quadros

Protocolos de Janela Deslizante

CAMADA DE ENLACE

Os quadros so numerados seqencialmente O tx transmite um quadro O rx envia uma quadro de reconhecimento

Protocolo Simplex para um Canal com Rudo (III)

CAMADA DE ENLACE

se o quadro for recebido corretamente, caso contrrio, h um descarte e aguardada uma retransmisso Quadros no reconhecidos so retransmitidos (temporizao)
CAMADA DE ENLACE

Transmisso de dados em ambos sentidos Utilizam a tcnica de carona (piggybacking) Possui janelas para transmisso e recepo
Janela de transmisso
nmeros de seqncia habilitados para transmisso

Protocolos de Janela Deslizante

CAMADA DE ENLACE

Janela de recepo
nmeros de seqncia habilitados para recepo

Os quadros so mantidos na memria para possvel retransmisso


CAMADA DE ENLACE

CAMADA DE ENLACE
Protocolos de Janela Deslizante

CAMADA DE ENLACE

CAMADA DE ENLACE
Protocolos de Janela Deslizante

CAMADA DE ENLACE

CAMADA DE ENLACE
Protocolos de Janela Deslizante tamanho 1

Inicialmente Aps a tx do Aps a rx do Aps a rx do 1o. quadro 1o. quadro 1o. Reconhecimento

CAMADA DE ENLACE

CAMADA DE ENLACE
Protocolos de Janela Deslizante tamanho 1

A janela de tamanho 1 compromete a eficincia para


longo tempo de trnsito (ida e volta) alta largura de banda comprimento de quadro curto

Soluo: Pipelining CAMADA DE ENLACE

Protocolos

com

CAMADA DE ENLACE Protocolos com Pipelinin


Soluo:
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 trnsito, antes de encher a janela
CAMADA DE ENLACE

CAMADA DE ENLACE Protocolos com Pipelinin


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

Abordagens:

Volte a n (Go Back n) Retransmisso Seletiva (Selective Reject)

CAMADA DE ENLACE

CAMADA DE ENLACE Protocolos com Pipelinin


Volte a n
O receptor descarta os quadros seguintes ao errado O transmissor identifica que houve erro, com estouro da temporizao sem que tenha recebido um reconhecimento Ineficiente se a taxa de erros for alta Janela de recepo 1
CAMADA DE ENLACE

Protocolo Volte a n

CAMADA DE ENLACE Protocolos com Pipelinin

Alternativa: quadro correto fora da seqncia dispara a transmisso de um quadro de NAK antecipando o incio da retransmisso dos quadros.
CAMADA DE ENLACE

CAMADA DE ENLACE Protocolos com Pipelining


Protocolo Volte a n

CAMADA DE ENLACE

CAMADA DE ENLACE Protocolos com Pipelinin


Retransmisso seletiva
O n armazena os quadros corretos que chegarem aps 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 Janela de recepo maior que 1

Necessita de maior quantidade de memria CAMADAno DE n ENLACE

CAMADA DE ENLACE Protocolos com Pipelinin


Retransmisso seletiva

CAMADA DE ENLACE

CAMADA DE ENLACE

Protocolos da Camada de Enlace (HDLC)


HDLC (High-level Data link Control)
uma evoluo 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

EXEMPL O

CAMADA DE ENLACE

Protocolos Orientados a Bits Formato do Quadro HDLC


O High Level Data Link Control (HDLC) foi padronizado pela ISO em 1979, ele considerado o pai de todos os protocolos de nvel 2. Orientado a bit, incio e fim de frame 01111110 Numero de seqncia CRC A partir de sua generalidade foram definidos diversos protocolos de nvel 2 para algumas arquiteturas de redes especficas, baseados em subconjuntos funcionais do HDLC. LAP-B de redes X.25 (ex.: RENPAC), LAP-D para redes ISDN, LAP-M para modens inteligentes, LLC (Logical Link Control ) do IEEE-802.2 para redes CAMADA DE ENLACE locais

CAMADA DE ENLACE

EXEMPL O

Protocolos Orientados a Bits Formato do Quadro HDLC

CAMADA DE ENLACE

EXEMPL O
CAMADA DE ENLACE

Protocolos Orientados a Bits Formato do Quadro HDLC

CAMADA DE ENLACE

Flags

CRC-CCITT

Endereo: usado para Dados: de comprimento identificar terminais em varivel. canais multiponto ou para distinguir comandos Controle: inclui nos. de seqncia, de respostas. reconhecimentos, etc. CAMADA DE ENLACE

Protocolos Orientados a Bits Quadro HDLC Campo de Controle Quadro de Informao:


Quadro de Superviso:

CAMADA DE ENLACE

Quadro No Numerado:

CAMADA DE ENLACE

Protocolos Orientados a Bits Quadro HDLC Campo de Controle

CAMADA DE ENLACE

CAMADA DE ENLACE

Tipo 0: quadro de reconhecimento


positivo (RR - Receive Ready) negativo (REJ - REJect)

Quadros de Superviso

CAMADA DE ENLACE

Tipo 1: quadro de reconhecimento Tipo 2: quadro de reconhecimento (RNR Receive Not Ready) - Selective Reject)
CAMADA DE ENLACE

Tipo 3: quadro de rejeio seletiva (SREJ

CAMADA DE ENLACE Quadros No Numerados


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

CAMADA DE ENLACE

EXEMPLO PPP

Protocolos da Camada de Enlace Point to Point Protoco

CAMADA DE ENLACE

CAMADA DE ENLACE

EXEMPLO PPP

Protocolos da Camada de Enlace Point to Point Protoco

CAMADA DE ENLACE

CAMADA DE ENLACE

EXEMPLO PPP

Protocolos da Camada de Enlace Point to Point Protoco

CAMADA DE ENLACE

CAMADA DE ENLACE

Subcamada de Acesso ao Meio Controle de acesso a um meio fsico (MAC) compartilhado entre mltiplas estaes

CAMADA DE ENLACE

Ser estudada no mdulo de Redes Locais.


CAMADA DE ENLACE

Você também pode gostar