Redes de Computadores Protocolos da camada de ligação de Escola Superior de Tecnologia e Gestão Instituto Politécnico de Bragança Maio de 2006 Modelo OSI Redes de Computadores 2 1
Camada de Ligação de Dados (1) Redes de Computadores 3 Camada de Ligação de Dados (2) Tem como principal função garantir a transmissão de 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 Redes de Computadores 4 2
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 Redes de Computadores 5 Configurações da ligação -exemplos Não balanceada ponto-aponto, 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 Redes de Computadores 6 3
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-aponto Usado em X.25 (LAPB), RDIS (LAPD) e Frame Relay (LAPF) Redes de Computadores 7 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 Header Trailer Redes de Computadores 8 4
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: 1111101111101101111101011111010 Redes de Computadores 9 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 Redes de Computadores 10 5
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 de camadas superiores (a abstracção acima de HDLC que usa HDLC) Adicionalmente, 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) Redes de Computadores 11 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 Redes de Computadores 12 6
Trama HDLC Information e FCS Campo de Informação Campo dos 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) Redes de Computadores 13 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, 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). Redes de Computadores 14 7
Comandos e respostas HDLC Redes de Computadores 15 Exemplos de Funcionamento do HDLC (1) Redes de Computadores 16 8
Exemplos de Funcionamento do HDLC (2) Redes de Computadores 17 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 Redes de Computadores 18 9
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) Redes de Computadores 19 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 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) Redes de Computadores 20 10
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 Redes de Computadores 21 O nível de ligação de 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 Redes de Computadores 22 11
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 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 Redes de Computadores 23 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 Redes de Computadores 24 12