Redes de Computadores - ipb.pthalestino/rc/LigacaoDados.pdf · – Usado em X.25 (LAPB), RDIS...
Transcript of Redes de Computadores - ipb.pthalestino/rc/LigacaoDados.pdf · – Usado em X.25 (LAPB), RDIS...
1
Redes de Computadores
Protocolos da camada de
ligação de dados
Escola Superior de Tecnologia e Gestão
Instituto Politécnico de Bragança
Maio de 2006
Protocolos de ligação de
dados
Redes de Computadores 2
Modelo OSI
2
Protocolos de ligação de
dados
Redes de Computadores 3
Camada de Ligação de Dados (1)
Protocolos de ligação de
dados
Redes de Computadores 4
Camada de Ligação de Dados (2)
• Tem como principal função garantir a transmissão de dados através de uma linha série, fornecendo serviços aos níveis superiores
• O tipo de protocolo de Ligação de Dados usado depende da ligação física entre os dois DTE (Data Terminal Equipment) a interligar e do bit rate dessa ligação– para ligações de débitos mais reduzidos são usados
protocolos Character Oriented do tipo Idle ARQ: Kermit e X-modem
– para ligações de débitos mais elevados são usados protocolos Bit Oriented do tipo Continuous ARQ: HDLC, LAPB, LAPD, LAPF e LLC
3
Protocolos de ligação de
dados
Redes de Computadores 5
High-Level Data Link Control (HDLC)
• HDLC (ISO 33009, ISO 4335)• Protocolo orientado ao bit (independente de códigos)• Permite uma grande variedade de aplicações• Tipos de estações
– Estação Primária• Controla a operação da ligação (uma ligação lógica por cada estação Secundária)• Tramas enviadas designam-se por comandos
– Estação Secundária• Controlada pela estação Primária• Tramas enviadas designam-se por respostas
– Estação Combinada• Combina funções Primárias e Secundárias; pode enviar comandos e respostas
• Configurações da ligação– Não balanceada (não equilibrada)
• Uma Primária e uma ou mais Secundárias• Transmissões full-duplex e half-duplex
– Balanceada (equilibrada)• Duas estações Combinadas• Transmissões full-duplex e half-duplex
Protocolos de ligação de
dados
Redes de Computadores 6
Configurações da ligação -exemplos
Não balanceada ponto-a-
ponto, com um primário
e um secundário
Não balanceada
multiponto, com um
primário e vários
secundários
Balanceada, com duas
estações combinadas
4
Protocolos de ligação de
dados
Redes de Computadores 7
Modos de Transferência de Dados em
HDLC• Normal Response Mode (NRM)
– Configuração não balanceada– A estação Primária é responsável pelo estabelecimento, gestão e fecho da ligação– Uma estação Secundária só responde a comandos da estação Primária– Usado em configurações multiponto (por ex.: Primário: Computador principal,
Secundárias: terminais)• Asynchronous Response Mode (ARM)
– Configuração não balanceada– A estação Primária é responsável pelo estabelecimento, gestão e fecho da ligação– A estação Secundária pode transmitir sem permissão da estação Primária, após
estabelecida a ligação– Raramente usada
• Asynchronous Balanced Mode (ABM)– Configuração balanceada– Qualquer das estações pode estabelecer a ligação e transmitir sem permissão da
outra– É a mais usada: torna mais eficiente a utilização de ligações full-duplex ponto-a-
ponto– Usado em X.25 (LAPB), RDIS (LAPD) e Frame Relay (LAPF)
Protocolos de ligação de
dados
Redes de Computadores 8
Estrutura da Trama HDLC
• Uma trama HDLC é constituída por vários campos– Os campos têm tamanho fixo ou variável (existindo mecanismos
que permitem estabelecer e reconhecer as fronteiras entre campos)
– As funções associadas a cada campo dependem da respectiva estrutura e de valores dos bits que o constituem, de acordo com a posição que ocupam no campo
• Formato único para todas as tramas de controlo e dados
Header Trailer
5
Protocolos de ligação de
dados
Redes de Computadores 9
Trama HDLC - Flag
• Tramas HDLC são delimitadas por flags - sequências 01111110
• Uma flag pode terminar uma trama e começar outra• Bit stuffing é usado para evitar o falso reconhecimento
de flags dentro da trama– O Emissor insere um 0 após uma sequência de cinco 1’s– Quando o Receptor detecta cinco 1’s consecutivos com um zero
a seguir, este último é eliminado
Mensagem Original:
111111111111011111101111110
Depois de bit stuffing:
11111001111100110111110010111110010
Protocolos de ligação de
dados
Redes de Computadores 10
Trama HDLC - Adress
• Por convenção o endereço identifica a estação secundária que enviou ou vai receber a trama
• Formato básico - 8 bits• Formato expandido
– Múltiplo de 8 bits– O primeiro bit de cada byte é 0, terminando por um
byte em que esse bit é 1– Endereço de broadcast - 11111111
6
Protocolos de ligação de
dados
Redes de Computadores 11
Trama HDLC – Control (1)
• Existem 3 tipos de tramas, cada qual com um campo de controlo diferente• Os primeiros um ou dois bits do campo de controlo identificam o tipo de quadro
– Informação (I)• Contém dados de camadas superiores (a abstracção acima de HDLC que usa HDLC)• Adicionalmente, dados de controlo de fluxo e de erro são transmitidos no quadro de
informação (piggybacking)– Supervisão (S)
• Confirmação de tramas, controlo de erro e de fluxo quando não é usado piggybacking• Os dois bits S permitem seleccionar um em quatro comandos de supervisão
– Não numeradas (U)• Funções suplementares de controlo da ligação (estabelecimento, reinicialização, terminação)
Protocolos de ligação de
dados
Redes de Computadores 12
Trama HDLC – Control (2)
• Números de sequência– N(S) em tramas I– N(R) em tramas I e S
• Bit P/F (Poll / Final)– Permite sincronizar um comando com uma resposta (o funcionamento normal do
protocolo não garante uma relação um para um entre comandos e respostas)– Em comandos, P=1 solicita resposta– Em respostas F=1 indica resposta solicitada pelo comando com P=1
• Nos quadros de informação e supervisão, o campo de controlo pode ser estendido para 16 bits, permitindo aumentar o valor máximo de N(S) e N(R) e o número máximo de comandos e respostas– Este formato é utilizado especialmente em transmissões via satélite devido aos
atrasos envolvidos
7
Protocolos de ligação de
dados
Redes de Computadores 13
Trama HDLC –Information e FCS
• Campo de Informação– Campo dos dados– Apenas presente em tramas I e em algumas tramas U– Comprimento variável (valor máximo fixado
previamente), porém contém um número inteiro de octetos
• FCS (Frame Check Sequence)– Baseado num código polinomial– Calculado com base nos restantes bits da trama
(excepto as flags)– Normalmente CRC-CCITT (16 bits)– Por vezes CRC-32 (32 bits)
Protocolos de ligação de
dados
Redes de Computadores 14
Funcionamento do HDLC• Princípio base assenta na troca de I-Frames, S-Frames
e U-Frames entre duas estações• Envolve 3 fases:
– Inicialização: Despoletada por qualquer dos lados da ligação, através de comandos específicos a que o outro lado responde, aceitando (unnumbered acknowledged - UA) ou rejeitando a ligação (disconnected mode - DM)
– Transferência dos Dados: Após a inicialização ter sido solicitada e aceite, fica estabelecida uma ligação lógica. A partir deste momento ambos os lados da ligação podem enviar dados, usando I-Frames, começando com o número de sequência 0, colocado no campo N(S) do campo control. O sub-campo N(R) transporta a confirmação das I-Frames recebidas
– Terminação da Ligação: Qualquer módulo HDLC pode iniciar uma desconexão através do envio da trama DISC. O outro lado confirma, respondendo com um UA (unnumbered ackowledged).
8
Protocolos de ligação de
dados
Redes de Computadores 15
Comandos e respostas HDLC
Protocolos de ligação de
dados
Redes de Computadores 16
Exemplos de Funcionamento do
HDLC (1)
9
Protocolos de ligação de
dados
Redes de Computadores 17
Exemplos de Funcionamento do
HDLC (2)
Protocolos de ligação de
dados
Redes de Computadores 18
Protocolo LAPB (X.25)
• Link Access Procedure, Balanced
• Parte integrante do X.25 (ITU-T)
• Na prática é um subconjunto do HDLC – Fornece apenas o modo ABM (Asynchronous Balanced Mode)
• Utilizado em ligações ponto-a-ponto entre sistema terminal e nó da rede de comutação de pacotes
• Estrutura das tramas idêntica à do HDLC
10
Protocolos de ligação de
dados
Redes de Computadores 19
Protocolo LAPD
• Link Access Procedure, D-Channel
• Parte integrante da RDIS/ISDN (ITU-T)• Fornece controlo da ligação através de um
canal lógico do interface ISDN, denominado Canal D
• Restringe-se ao modo de operação ABM (tal como o LAPB)
Protocolos de ligação de
dados
Redes de Computadores 20
Protocolo LAPF• Link Access Procedure for Frame-Mode Bearer Services
• Usado nas redes Frame Relay
• Subdivide-se em dois subprotocolos:– Control protocol – funções similares às do HDLC (confirmação, controlo de erros
e controlo de fuxo)
– Core protocol – subconjunto do control protocol (funções básicas de comutação de tramas); não faz controlo de fluxo e erro, permitindo assim maiores fluxos de dados
• Tal como o LAPB também se restringe ao modo de operação ABM
• Sequências de numeração de tramas com 7 bits
• O FCS utiliza um CRC de 16 bits
• LAPF core não possui o campo control
Trama LAPF
(control)
Trama LAPF
(core)
11
Protocolos de ligação de
dados
Redes de Computadores 21
Protocolo LLC (Logical Link Control)
• Parte da arquitectura das redes locais standard IEEE 802 (LAN’s)• Controlo da ligação dividido em dois níveis:
– Subcamada MAC (Medium Access Control)• Protocolo de acesso a um meio partilhado• Endereçamento físico das estações• Detecção de erros (sem recuperação) – CRC de 32 bits
– Subcamada Logical Link Control (LLC) , que funciona no topo do nível MAC• Campo para identificação do utilizador lógico do LLC da origem (SSAP) e do destino
(DSAP)
• Oferece 3 tipos de serviços– LLC1: não confirmado, sem conexão (não fiável) - o mais comum (usado por
exemplo com TCP/IP)– LLC2: confirmado, com conexão (fiável) - procedimentos semelhantes a HDLC,
com mecanismos de controlo de erros de fluxo; praticamente não usado em redes locais
– LLC3: confirmado, sem conexão – também pouco usado
Protocolos de ligação de
dados
Redes de Computadores 22
O nível de ligação de dados na Internet
• A Internet é constituída por diferentes tipos de equipamentos informáticos, interligados por uma infra-estrutura de comunicações
• Ao nível dos edifícios são interligados através de redes locais (LAN’s), no entanto uma boa parte da Internet éconstituída por ligações ponto-a-ponto, através de linhas alugadas usadas, basicamente em duas situações:– Interligação das redes locais à Internet, através de ISP’s– Interligação de utilizadores individuais através de modems e das
linhas telefónicas tradicionais a um ISP que lhe fornece o acesso àrede
• Para ter acesso aos diferentes serviços do controlo de ligação neste tipo de ligações, torna-se também necessário recorrer a um protocolo específico
• Os mais utilizados nestas funções são o SLIP e o PPP
12
Protocolos de ligação de
dados
Redes de Computadores 23
SLIP – Serial Line IP• Criado em 1984 com o objectivo de interligar estações de
trabalho da Sun à Internet usando um modem• O funcionamento assenta no envio de pacotes IP através da
linha, com uma flag especial no final de cada trama (0xC0)– Técnica de character stuffing para contornar o problema da flag em
bytes de dados
• Apesar de ainda ser usado apresenta vários problemas:– Não suporta qualquer mecanismo de detecção e/ou correcção de erros
(responsabilidade de níveis superiores)– Apenas suporta o protocolo IP, o que limita a ligação de redes que não
suportem esse protocolo– IP fixo (esgotamento de IPs!!!) - cada lado da ligação tem de conhecer
previamente o endereço IP do outro lado, não suportando a atribuição dinâmica de endereços
– Não fornece um mecanismo próprio de autenticação, o que levanta problemas na sua utilização através da linha telefónica
Protocolos de ligação de
dados
Redes de Computadores 24
PPP – Point-to-Point Protocol• Surgiu com o objectivo de substituir o SLIP através da eliminação
dos seus principais problemas, pelo que:– Suporta detecção de erros– Suporta múltiplos protocolos– Permite a negociação dinâmica do endereço IP durante a fase de
estabelecimento de ligação– Permite autenticação
• Fornece 3 funções:– Forma de delimitar o fim de uma trama e o início da seguinte; inclui-se
na trama suporte para detecção de erros– Um protocolo de controlo de ligação (LCP – Link Control Protocol) que
inicia uma ligação, testa-a, negoceia as diferentes opções, e termina a ligação quando esta deixa de ser necessária
– Uma forma de negociar opções do nível de rede (protocolo NCP –Network Control Protoccol). De forma independente relativamente ao protocolo de rede utilizado