Você está na página 1de 70

Camada de Enlace de Dados

GIL PINHEIRO

Camada de Enlace de Dados

Funes da Camada de Enlace


Fornecer servios a Camada de Rede Delimitao de Quadros Controle de Erros Controle de Fluxo Variedade de Servios Controle de Acesso Multiplexao
Camada de Enlace de Dados 2

GIL PINHEIRO

Servios Fornecidos para a Camada de Rede

A localizao da Camada de Enlace


GIL PINHEIRO Camada de Enlace de Dados

Definio de Quadro
Quadro:
Header User Data Trailer

O quadro composto de vrios campos: Header - Endereo de Destino, Endereo de Origem, Contagem User Data - Parte til do quadro, onde os dados so transportados Trailer FCS (Campo de Verificao de Erros)
GIL PINHEIRO Camada de Enlace de Dados 4

Delimitao de Quadro
A delimitao de quadros necessria para a correta recepo dos quadros, entre seu incio e fim, tcnicas utilizadas:
Contagem de Bytes Orientado a Bit Orientado a Caractere Violao de Cdigo de Camada Fsica
GIL PINHEIRO Camada de Enlace de Dados 5

Contagem de Bytes
Um campo do cabealho utilizado para definir o tamanho do quadro Sabendo a quantidade de caracteres (bytes) a serem transmitidos, a camada fsica sabe onde termina o quadro Esse campo normalmente utilizado quando o campo de dados possui tamanho varivel, possibilitando a delimitao de quadros
GIL PINHEIRO Camada de Enlace de Dados

Contagem de Bytes

GIL PINHEIRO

Camada de Enlace de Dados

Contagem de Bytes
Desvantagem: o campo de contagem pode ser alterado. A camada de enlace na recepo no saber onde comea/termina mesmo com campo FCS O mtodo de contagem de bytes no deve ser usado sozinho
GIL PINHEIRO Camada de Enlace de Dados 8

Orientado a Bit
Dados transmitidos como uma sequncia de bits Para que o receptor reconhea o incio/fim de um quadro (frame) utilizada uma sequncia nica de bits, chamada flag conforme figura a seguir
FLAG HEADER
GIL PINHEIRO

DADOS
Camada de Enlace de Dados

TRAILER FLAG
9

Orientado a Bit
Problema: Sequncia de bits igual ao flag precisar ser transmitida no meio do quadro Soluo: usar bit de enchimento (stuffing bit) A cada 5 bits de dados sucessivos iguais a 1 usar o stuffing bit (=0) Exemplo de aplicao: protocolo HDLC (Host Data Link Control)

GIL PINHEIRO

Camada de Enlace de Dados

10

Orientado a Bit
EXEMPLO:
Flag = 01111110 (a) 0110111111111011111011111001 (b) 0110111110111101111100111110001 (c) 01111110 0110111110111101111100111110001 01111110 (d) 0110111110111101111100111110001 (e) 0110111111111011111011111001

GIL PINHEIRO

Camada de Enlace de Dados

11

Orientado a Bit
(a) Mensagem a ser transmitida (b) Mensagem com bits 0 inseridos (sublinhados) (c) Mensagem pronta para ser transmitida no meio fsico (com bits de enchimento e flags) (d) Mensagem recebida sem flags, bits de enchimento identificados (e) Mensagem recebida sem bits de enchimento

GIL PINHEIRO

Camada de Enlace de Dados

12

Orientado a Caractere
Utiliza caracteres especiais para delimitar incio e fim de quadro O problema que uma sequncia igual aos caracteres especiais pode aparecer no campo de dados A soluo utilizar um outro caractere especial (DLE) antes da sequncia especial, se esta aparecer no campo de dados
GIL PINHEIRO Camada de Enlace de Dados 13

Orientado a Caractere

GIL PINHEIRO

Camada de Enlace de Dados

14

Violao de Cdigo de Camada Fsica


Cada nvel na camada fsica representado por uma sequncia de bits Exemplo: Cdigo Manchester (rede Ethernet)
Bit 1: sequncia 01 Bit 0: sequncia 10 Sequncias 00 e 11 podem ser usadas na sincronizao do quadro (incio/fim de quadro)

GIL PINHEIRO

Camada de Enlace de Dados

15

Violao de Cdigo de Camada Fsica


Clock 1 1 1 0 1 0 1 1 0 0 1 0 Preamble N+ NN- N+ 1 0 0 Start Delimiter N+ N- N+ N1 End Delimiter

GIL PINHEIRO

Camada de Enlace de Dados

16

Violao de Cdigo de Camada Fsica


Clock

Data 1 0 1 1 0 0 1 0

Encoded Data

GIL PINHEIRO

Camada de Enlace de Dados

17

Controle de Erros
Um pacote que chega com erro pode ser retransmitido ou ter seu erro corrigido (enlaces mais caros, satlite). Para garantir a comunicao confivel, a Camada de Enlace:
Verifica erro / solicita retransmisso Corrige erro (enlaces mais caros) exemplo: cdigo de Hamming

GIL PINHEIRO

Camada de Enlace de Dados

18

Controle de Erros
Toda mensagem recebida sem erros sucedida por um pacote de confirmao de recebimento (ACK), enviada pelo receptor Para detectar erros que tornem a mensagem no inteligvel utilizado um temporizador para verificar se houve timeout (estouro de tempo = tempo suficiente para pacote e respectivo reconhecimento chegarem) Um reconhecimento negativo (NAK) acelera o processo de retransmisso
GIL PINHEIRO Camada de Enlace de Dados 19

Controle de Fluxo
Objetivo: transmisso ocorre apenas quando receptor estiver pronto. Se buffer de recepo estiver cheio, transmissor deve parar envio de quadros. Usa quadros especiais
RNR = receive not ready RR = receive ready
GIL PINHEIRO Camada de Enlace de Dados 20

Tipos de Servio
A camada de enlace se comunica em duas instncias, com a camada de enlace do outro n e com a camada acima (camada de rede) A camada de enlace fornece 2 tipos de servio para a camada de rede:
Sem reconhecimento Com reconhecimento
GIL PINHEIRO Camada de Enlace de Dados 21

Sem Reconhecimento
O transmissor envia pacote e no recebe pacotes de reconhecimento (ACK) Tambm conhecido com envio no confivel O controle de erros dever ser feito pelas camadas superiores (camada de rede) Para redes onde taxa de erros muito baixa ou onde a demora na espera pela confirmao crtica A demora pode ser mais crtica que a perda de pequenas parcelas da mensagem (ex.: trfego de voz)
GIL PINHEIRO Camada de Enlace de Dados 22

Com Reconhecimento
O transmissor envia quadro e aguarda quadro de reconhecimento (ACK) ou ocorrncia de timeout Utilizado no envio de pequeno volume de dados de maneira confivel, quando no compensa esperar inicio e encerramento da conexo A perda de quadros de reconhecimento (ACK) pode implicar no recebimento de quadros repetidos. Camada de Enlace deve possuir um mecanismo para o descarte de cpias

GIL PINHEIRO

Camada de Enlace de Dados

23

Controle de Acesso
Consiste num esquema definindo como e quando cada estao dever acessar o meio fsico essencial quando o meio fsico compartilhado por vrias estaes (Ethernet) Existem vrias tcnicas que permite controlar o acesso ao meio (Token ring, Token bus, CSMA, Polling, ...) Algumas tcnicas de Controle de Acesso so mais adequadas a uma topologia de rede especfica (ex.: anel - Token Ring)
GIL PINHEIRO Camada de Enlace de Dados 24

Multiplexao
A partir do instante que uma estao pode fornecer um caminho confivel de envio livre de erros, esse caminho pode ser multiplexado (e compartilhado) por vrios usurios nas camadas superiores Podem existir vrias SAP (Service Access Point) da Camada de Enlace para a Camada de Rede Exemplo: programas de e-mail, browser, FTP, TELNET abertos simultaneamente com uma nica conexo fsica de rede ou modem

GIL PINHEIRO

Camada de Enlace de Dados

25

Redes Locais

GIL PINHEIRO

Camada de Enlace de Dados

26

Topologias de Rede

Rede Totalmente Conectada

Rede em Anel

Rede em Estrela

Rede em rvore
GIL PINHEIRO Camada de Enlace de Dados 27

Topologias de Rede

Rede em Barra

Rede em Grade Rede Daisy Chain


GIL PINHEIRO Camada de Enlace de Dados 28

Topologias de Rede
Rede Totalmente Conectada
Usada em supercomputadores (hipercubo) Alto throughput Redes de pequeno dimetro (placa ou gabinete) Links no precisam ser muito velozes

GIL PINHEIRO

Camada de Enlace de Dados

29

Topologias de Rede
Rede em Estrela
no necessitam roteamento n central: hub ou switch desempenho dependente do n central confiabilidade dependente do n central dificuldade de ampliao (depende do n central)
GIL PINHEIRO Camada de Enlace de Dados

30

Topologias de Rede
Rede em Grade (ou hierrquica)
estrutura central formada por comutadores de rede vrios caminhos entre dois ns suporta vrias conexes simultneas entre ns, limitada quantidade e interligaes entre os comutadores boa confiabilidade Ex: Sistema IA (Invensys)
GIL PINHEIRO Camada de Enlace de Dados 31

Topologias de Rede
Rede em Barra
rede do tipo difuso (mensagem difundida para todos os ns) geralmente mais barata e mais simples o cabo percorre todos os ns da rede, menor confiabilidade da rede curto circuito num n paralisa a rede cada n usa derivao no meio fsico Exemplos: EIA-485, Fieldbus Foundation
GIL PINHEIRO Camada de Enlace de Dados 32

Topologias de Rede
Rede em Anel
mensagem entra no n, circula na rede (anel) e retirada quando retorna ao n gerador ou pelo n destinatrio cada n um repetidor de rede ampliao requer interrupo da rede Normalmente mais confivel que a rede em barra
GIL PINHEIRO Camada de Enlace de Dados 33

Topologias de Rede
Rede Daisy Chain
topologia similar a barra cada trecho de rede um enlace ponto a ponto a desconexo de um n interrompe a rede redes de pequeno dimetro (centenas de metros)

GIL PINHEIRO

Camada de Enlace de Dados

34

Comparao Estrela x Anel x Barra

GIL PINHEIRO

Camada de Enlace de Dados

35

Protocolos de Enlace
No que se refere camada de enlace de dados, o pacote repassado a ela pela camada de rede atravs da interface consiste em dados puros, em que cada bit deve ser entregue camada de rede de destino. O fato de a camada de rede de destino poder interpretar parte do pacote como um cabealho no tem nenhum interesse para a camada de enlace de dados. Quando a camada de enlace de dados aceita um pacote, ela o encapsula em um quadro, acrescentando um cabealho e um final de enlace de dados Portanto, um quadro consiste em um pacote incorporado, em algumas informaes de controle (no cabealho) e em um Campo de Verificao de Erro (FCS) no final Em seguida, o quadro transmitido camada de enlace de dados da outra mquina
Camada de Enlace de Dados 36

GIL PINHEIRO

Reconhecimento (Ack) e Timeouts


O pacote de reconhecimento (acknowledgement = ACK) enviado em resposta a um pacote recebido sem erros
Tornar um pacote ACK basicamente obtido alterando-se um campo de um pacote Os dados podem ser transportados em pacotes ACK (piggyback)

Um timeout (estouro de tempo limite) uma condio na qual um pacote ACK no foi recebido dentro de um limite de tempo esperado
Um timeout dispara a re-transmisso de um pacote pelo Host que est enviando dados Como ajustar o timeout?
GIL PINHEIRO Camada de Enlace de Dados 37

Reconhecimento (Ack) e Timeouts


Sender
Fram e

Receiver

Sender
Fram e

Receiver

Timeout

Timeout

ACK

ACK

(a) Envio normal, com ACK antes do Timeout (b) Pacote perdido, ocorre Timeout e transmissor re-envia (c) ACK perdido, ocorre Timeout e transmissor re-envia (c) ACK chega aps Timeout e transmissor re-envia. Pacote enviado duas vezes (pacote repetido)

Time

Fram

Timeout

ACK

(a)

(c)

Sender
Fram e

Receiver

Sender
Fram e

Receiver

Timeout

Timeout

ACK

Fram

Timeout

Timeout

Fram e
ACK

ACK

(b)

(d)

GIL PINHEIRO

Camada de Enlace de Dados

38

Protocolos de Janela Deslizante


Devido ao baixo rendimento do canal na comunicao Stop and Wait, so necessrios outros protocolos mais eficientes Protocolos utilizados no envio de quadros entre estaes, de maneira bidirecional
Protocolo com um Bit Protocolo Retorna a N Protocolo de Repetio Seletiva
GIL PINHEIRO Camada de Enlace de Dados 39

Protocolos de Janela
O transmissor precisa armazenar os pacotes j transmitidos para o caso de pacotes perdidos tiverem de ser re-enviados O receptor precisa armazenar os pacotes para o caso de pacotes recebidos fora de ordem ou perdidos at que a seqncia esteja correta
necessrio o Controle de Fluxo

Como prevenir o estouro do buffer de recepo?


Receptor avisa ao transmissor o tamanho de seu buffer durante o estabelecimento da conexo

Como assegurar a confiabilidade em transmisso pipelined?


Protocolo de Janela do tipo Retorna a N (Go-Back-N)
Enviar todos os N pacotes no reconhecidos quando uma perda for sinalizada Ineficiente

Protocolo de Janela do Tipo Retransmisso Seletiva (Selective repeat)


Somente re-envia os pacotes no recebidos e no reconhecidos (unACKed) Implementao mais complexa
GIL PINHEIRO Camada de Enlace de Dados

40

Protocolo de Janela de 1-Bit

(a) Envio sem erros e sem repetio de quadros


Os quadros so numerados com 1 bit (0 ou 1) Usa ACK tambm de apenas 1 bit (0 ou 1), referenciando o nmero do quadro recebido O Host A no envia um novo quadro at que saiba que foi recebido o quadro anterior em B Utiliza o esquema espera confirmao para enviar (Stop and Wait)
GIL PINHEIRO Camada de Enlace de Dados 41

Protocolo de Janela de 1-Bit

(b) Envio com quadros repetidos


Se B esperar pelo primeiro quadro de A antes de enviar um de seus quadros, a seqncia ser a da parte (a), e todos os quadros sero aceitos. Porm, se A e B iniciarem a comunicao ao mesmo tempo, seus primeiros quadros se cruzaro e as camadas de enlace de dados recairo na situao (b). Em (a), cada quadro recebido traz um novo pacote para a camada de rede; no h copias. Em (b), metade dos quadros contem copias, embora no haja erros de transmisso. Situaes similares podem ocorrer como resultado de timeouts prematuros, mesmo quando esta claro que um lado comea primeiro. Na verdade, ao ocorrer vrios timeouts prematuros, os quadros podero ser enviados trs vezes ou mais GIL Logo, a janela de 1 bit no evita os quadros repetidos, mesmo sem erros de PINHEIRO Camada de Enlace de Dados comunicao 42

Protocolos de Janela Deslizante: Transmissor


Atribuir nmero de seqncia para cada quadro (SeqNum) Utiliza trs variveis de estado:
Tamanho da janela de envio (send window size = SWS) ltimo quadro reconhecido (last acknowledgment received = LAR) ltimo quadro enviado (frame sent = LFS)

Manter constante: LFS - LAR <= SWS SWS

LAR LFS

Avanar LAR quando um ACK chegar Armazenar at SWS quadros


GIL PINHEIRO Camada de Enlace de Dados 43

Protocolos de Janela Deslizante: Receptor


Utiliza trs variveis de estado: Tamanho da janela de recebimento (receive window size = RWS) ltimo quadro recebido (last frame received = LFR) Maior quadro aceitvel (largest frame acceptable = LFA) Manter constante: LFA - LFR <= RWS

RWS

LFR LFA

Pacote com nmero SeqNum chega: Se LFR < SeqNum < = LFA, ento: Aceitar o pacote Se SeqNum < = LFR ou SeqNum > LFA, ento: Descartar o pacote Enviar ACKs cumulativos enviar ACK para o quadro de maior nmero, de modo que os de nmero menor que este tenham sido recebidos
Camada de Enlace de Dados

GIL PINHEIRO

44

Protocolos de Janela Deslizante


(a) Retorna a N (Go-Back-N) re-envia todos os quadros aps o quadro com erro

(b) Retransmisso seletiva (Selective repeat) re-envia apenas o quadro com erro

GIL PINHEIRO

Camada de Enlace de Dados

45

O Protocolo HDLC
Protocolo de enlace padronizado pela ISO Existem trs tipos de ns: Primrio: controlam o enlace e geram Secundrio: esto sob o controle do n primrio, respondem aos comandos solicitados. Quando existe mais do que um n secundrio, o n primrio mantm uma ligao lgica independente para cada um Combinados: controla o link mas tambm responde a comandos Tipos de enlace lgico: ABM: Modo Assncrono Balanceado NRM: Modo de Resposta Normal ARM: Modo de Resposta Assncrono
GIL PINHEIRO Camada de Enlace de Dados 46

O Protocolo HDLC
Tipos de quadros

GIL PINHEIRO

Camada de Enlace de Dados

47

O Protocolo HDLC
P/F (Normal Response Mode)
Poll bit para comandos (primrio) e Final bit para respostas (P/F=1 indica que a estao Secundria i envia ltimo quadro I)

P/F (Asynchronous Balanced Mode)


A estao transmissora solicita um RR com P/F=1, quando no recebe resposta da estao receptora. Nesse caso, a receptora deve enviar uma resposta, com P/F=1 tambm evita a retransmisso de vrios quadros, quando o ACK foi perdido
GIL PINHEIRO Camada de Enlace de Dados 48

O Quadro HDLC

FLAG = 01111110
Define incio e fim de quadro O mesmo FLAG pode ser usado para fim de um quadro e incio de outro Utiliza o mecanismo de BIT-STUFFING Indica a estao secundria que transmitiu ou a que deve receber o quadro Este campo desnecessrio para ligaes ponto-a-ponto; O endereo 11111111 indica broadcast Informao: contm o dado a ser transmitido e o controle de fluxo e de erro pode ser efetuado pelo mecanismo de carona (piggybacking) Superviso: fornece o mecanismo adequado de feedback quando no utilizado o mecanismo de carona No-Numerado: usado para gerenciar a conexo. No possui nmero de seqncia (funes de controle suplementares) Camada de Enlace de Dados 49

CAMPO DE ENDEREO

CAMPO DE CONTROLE : Define trs tipos de quadro:


GIL PINHEIRO

O Quadro HDLC

CAMPO DE INFORMAO
Contm os dados (informao) a serem transmitidos Somente presente nos quadros do tipo Informao (I) O tamanho do campo no definido no padro mas mltiplo de 8 bits. Contm o cdigo de deteco de erro (CRC) calculado para todo frame, exceto FLAG Geralmente utiliza CRC de 16 bits, podendo, opcionalmente, utilizar CRC de 32 bits

CAMPO FCS - Frame Check Sequence


GIL PINHEIRO

Camada de Enlace de Dados

50

O Protocolo HDLC Unnumbered Frame (U)


Comando(C) Resposta (R) SNRM (C) SARM (C) SABM (C) DISC (C) UA (R) DM (R) Descrio Set Normal Response Mode, enviado pelo n primrio ao secundrio indicando que deve entrar em modo de conexo normal, com campo de controle de 8 bits. Set Asyncronous Response Mode, idntico ao SNRM, para o modo assncrono. Set Asyncronous Balanced Mode, idntico ao SNRM, para o modo assncrono balanceado. Disconnect, informa o destinatrio que a estao emissora deixar de estar ativa. Unnumbered Acknowledgment, indica a aceitao do comando enviado. Disconnected Mode, resposta enviada sempre que outro n envia um comando para indicar que o n no est conectado. Esta resposta igualmente usada para indicar a no aceitao de um comando. Request Disconnect, esta resposta usada para pedir o fim de uma conexo estabelecida. Reset, este comando usado para a recuperao de erros graves (FRMR), indica que o n reinicializou o seu nmero de seqncia de envio, o destinatrio deve tambm reinicializar o seu nmero de seqncia de resposta. Frame Reject, indica que o quadro recebido tem um erro que no pode ser recuperado por ARQ

RD (R)

RSET (C)

FRMR (R)

GIL PINHEIRO

Camada de Enlace de Dados

51

O Protocolo HDLC Supervisory Frame (S)


Cdigo no Campo de Controle (Supervisory control bits) 00 ComandoFuno Descrio

RR

Receiver Ready, um ACK que indica que o receptor se encontra pronto para receber mais quadros (stop & wait). Receiver Not Ready, um ACK que indica que o receptor no se encontra pronto para receber mais quadros (stop & wait). Reject, um NAK do modo go-back-n Selective Reject, um NAK do modo selective-repeat

10

RNR

01 11

REJ SREJ

GIL PINHEIRO

Camada de Enlace de Dados

52

O Protocolo HDLC
Envolve 3 fases:
Inicializao
Sinaliza ao outro lado que se deseja iniciar uma comunicao Especifica qual dos modos ir operar (NRM, ABM, ARM); Especifica se ser usado janela de 7 ou de 127 quadros

Transmisso de Dados
Aps a inicializao ter sido solicitada e aceita, passa-se fase de transferncia de dados em quadros de informao, usando N(S) e N(R); Pode-se utilizar tambm quadros de superviso, caso no tenha quadro I para enviar de carona (piggybacking)

Desconexo
Qualquer das estaes pode solicitar a desconexo
GIL PINHEIRO Camada de Enlace de Dados

53

O Protocolo HDLC
Seqncias de conexo e desconexo

GIL PINHEIRO

Camada de Enlace de Dados

54

O Protocolo HDLC
Seqncias de conexo e desconexo

GIL PINHEIRO

Camada de Enlace de Dados

55

O Protocolo HDLC
Seqncias de conexo e desconexo

GIL PINHEIRO

Camada de Enlace de Dados

56

O Protocolo PPP
A Internet requer um protocolo ponto a ponto para diversos fins, inclusive cuidar do trfego de roteador para roteador e de usurio domstico para ISP (provedor de servios da Internet) Para isso, foi criado o protocolo PPP (Point-to-Point Protocol protocolo ponto a ponto) Definido pelas RFC 1661, 1662 e 1663 O PPP possui deteco de erros, suporta vrios protocolos, permitindo que endereos IP sejam negociados Em tempo de conexo, permite a autenticao e muitas outras caractersticas
GIL PINHEIRO Camada de Enlace de Dados 57

O Protocolo PPP

O estabelecimento de uma conexo Internet atravs de um ISP


GIL PINHEIRO Camada de Enlace de Dados 58

O Protocolo PPP
O PPP dispe de trs recursos
1. Um mtodo de enquadramento que delimita, de forma no ambgua, o fim de um quadro e o incio do quadro seguinte. O quadro tambm lida com a deteco de erros 2. Um protocolo de controle de enlace usado para ativar linhas, testlas, negociar opes e desativ-las novamente quando no forem mais necessrias. Esse protocolo denominado LCP (Link Control Protocol protocolo de controle de enlace). O LCP admite circuitos sncronos e assncronos, e tambm codificaes orientadas a bytes e a bits 3. Uma maneira de negociar as opes da camada de rede de modo independente do protocolo da camada de rede a ser utilizado. O mtodo escolhido deve ter um NCP (Network Control Protocol protocolo de controle de rede) diferente para cada camada de rede suportada

GIL PINHEIRO

Camada de Enlace de Dados

59

O Protocolo PPP
Considere a situao tpica em que um usurio domstico se conecta a um provedor de servios da Internet, para transformar um PC domstico em um host temporrio da Internet.
Primeiro, o PC chama o roteador do provedor por meio de um modem. Depois que o modem do roteador atende ao telefone e estabelece uma conexo fsica, o PC envia ao roteador uma srie de pacotes LCP no campo de carga til de um ou mais quadros PPP. Esses pacotes e suas respostas selecionam os parmetros PPP a serem utilizados
GIL PINHEIRO Camada de Enlace de Dados 60

O Protocolo PPP
Quando todos esses parmetros esto corretamente definidos de comum acordo, uma srie de pacotes NCP enviada para configurar a camada de rede Geralmente, o PC precisa executar uma pilha de protocolos TCP/IP, e assim, necessita primeiramente de um endereo IP Como no h endereos IP suficientes, normalmente, cada provedor da Internet possui um conjunto de endereos IP. Na conexo, atribui dinamicamente um endereo a cada PC recm-conectado durante sua sesso de login, atravs do protocolo DHCP Se tiver n endereos IP, um provedor poderia ter at n mquinas conectadas simultaneamente, mas sua base total de clientes poder estar muito acima desse nmero. Para resolver o problema, o provedor normalmente atribui um endereo IP virtual ao Host Nesse momento, o PC passa a ser um host da Internet e pode enviar e receber pacotes IP, da mesma forma que os hosts fisicamente conectados. Quando o usurio termina, o NCP utilizado para desativar a conexo da camada de rede e liberar o endereo IP. Em seguida, o LCP encerra a conexo da camada de enlace de dados. Finalmente, o computador solicita que o modem desligue o telefone, liberando a conexo da camada fsica.

GIL PINHEIRO

Camada de Enlace de Dados

61

O Protocolo PPP
O formato de quadro PPP foi definido de modo a ter uma aparncia semelhante ao formato de quadro HDLC A principal diferena entre o PPP e o HDLC que o primeiro orientado a caracteres, e no a bits. Especificamente, o PPP utiliza a tcnica de insero de bytes, portanto, todos os quadros representam um nmero inteiro de bytes. No possvel enviar um quadro formado por 30,25 bytes, como ocorre com o HDLC. Os quadros PPP no s podem ser enviados por linhas telefnicas de acesso por discagem, mas tambm podem ser enviados por linhas SONET ou por verdadeiras linhas HDLC orientadas a bits (por exemplo, para as conexes entre roteadores)
GIL PINHEIRO Camada de Enlace de Dados 62

O Protocolo PPP
O quadro PPP no modo no numerado

Flag - Delimitador do quadro Endereo - No tem funo, de uso futuro Controle - No tem funo; no futuro possvel ter mltiplos campos de controle Protocolo - Indica o protocolo da camada superior ao qual o contedo do quadro deve ser entregue (ex. PPP-LCP, IP, IPCP, etc.) Info - Dados da camada superior, sendo transportados Checksum - Algoritmo de deteco de erros
GIL PINHEIRO Camada de Enlace de Dados 63

O Protocolo PPP
Todos os quadros PPP comeam e terminam pelo byte de flag padro do HDLC (01111110)
Que complementado por insero de bytes se este padro ocorrer dentro do campo de carga til. Utiliza o byte stuffing, usando o caractere Escape (01111101) antes do flag (ver Byte Stuffing)

O campo Endereo sempre definido com o valor binrio 11111111


Indicando que todas as estaes devem aceitar o quadro. A utilizao desse valor evita o problema da necessidade de atribuio de endereos de enlace de dados.

GIL PINHEIRO

Camada de Enlace de Dados

64

O Protocolo PPP
O campo Controle possui valor padro 00000011
Esse valor indica um quadro no numerado Em outras palavras, o PPP no oferece uma transmisso confivel, com o uso de nmeros de seqncia e confirmaes como o padro. Em ambientes ruidosos, como em redes sem fio, pode ser utilizada a transmisso confivel, que emprega o modo numerado Os detalhes exatos so definidos na RFC 1663, mas, na prtica, raramente ele utilizado

Como os campos Endereo e Controle so sempre constantes na configurao padro, o LCP fornece o mecanismo necessrio para que as duas partes negociem uma opo que os omita totalmente e que economize 2 bytes por quadro
GIL PINHEIRO Camada de Enlace de Dados 65

O Protocolo PPP
O campo Protocolo Informa o tipo de pacote que se encontra no campo Carga til. Os cdigos so definidos para representar os protocolos LCP, NCP, IP, IPX, AppleTalk e outros. Os protocolos que comeam por um bit 0 so os protocolos da camada de rede, como o IP, o IPX, o OSI, o CLNP, o XNS. Aqueles que comeam por um bit 1 so utilizados na negociao de outros protocolos. Entre eles, esto includos o LCP e um NCP diferente para cada protocolo da camada de rede admitido. O tamanho padro do campo Protocolo de 2 bytes, mas possvel negociar uma reduo para 1 byte, utilizando-se o LCP O campo Carga til (Payload) Possui comprimento varivel, podendo se estender at o tamanho mximo negociado. Se o comprimento no for negociado com o uso do LCP durante a configurao da linha, ser empregado um comprimento padro de 1.500 bytes. Poder haver um preenchimento logo aps a carga til, caso seja necessrio O Campo Checksum Serve para deteco de erros, normalmente tem 2 bytes, embora seja possvel negociar um checksum de 4 bytes
Camada de Enlace de Dados 66

GIL PINHEIRO

O Protocolo PPP

Funcionamento do Protocolo PPP (estados do protocolo)


GIL PINHEIRO Camada de Enlace de Dados 67

O Protocolo PPP
Funcionamento do PPP
O protocolo comea com a linha no estado DEAD, o que significa que no ha nenhuma portadora da camada fsica presente e no existe qualquer conexo da camada fsica. Depois de estabelecida a conexo fsica, a linha passa para a fase ESTABLISH. Nesse ponto, comea a negociao de opes do LCP que, se for bem-sucedida, leva fase AUTHENTICATE Agora, as duas partes podero verificar suas identidades mutuamente, se desejarem Quando a fase NETWORK alcanada, o protocolo NCP apropriado invocado para configurar a camada de rede. Se a configurao for bem sucedida, a fase OPEN alcanada e o transporte de dados pode ser feito Quando o transporte de dados concludo, a linha entra na fase TERMINATE e, de l, volta a DEAD quando a portadora desativada
GIL PINHEIRO Camada de Enlace de Dados 68

O Protocolo PPP
Funcionamento do PPP (Continuao)
O LCP e utilizado para negociar as opes de protocolo de enlace de dados durante a fase ESTABLISH Na verdade, ele no esta preocupado com as opes propriamente ditas, mas com o mecanismo de negociao. O protocolo LCP proporciona um meio para que o processo inicial faa uma proposta que ser aceita ou rejeitada, total ou parcialmente, pelo processo de resposta. Ele tambm permite que os dois processos testem a qualidade da linha, verificando se ela e boa o suficiente para estabelecer uma conexo. Por fim, o protocolo LCP tambm permite que as linhas sejam desativadas quando no forem mais necessrias.

GIL PINHEIRO

Camada de Enlace de Dados

69

Referncias
[1] A S. Tanenbaum, Redes de Computadores - 3 Edio Americana, Campus, Rio de Janeiro, 1994. [2] L.F. Soares, G. Lemos, e S. Colcher, Redes de Computadores - Das LANs, MANs e WANs as Redes ATM, Campus, Rio de Janeiro, 3 Edio, 1995. [3] Pinheiro, Gil R. V., Comunicao de Dados e Redes (para Automao Industrial) - Petrobrs, junho/1997 [4] Pinheiro, Gil R. V., Tcnicas de Deteco e Correo de Erros, UERJ-FEN-DETEL [5] Kurose, James F.; Ross, Keith W. Redes de Computadores e a Internet, Editora Pearson

GIL PINHEIRO

Camada de Enlace de Dados

70