High-level Data Link Control (I)

O HDLC (Higher Level Data Link Control) pertence a uma classe de protocolos que diferem muito pouco entre si, como o protocolo SDLC (Synchronous Data Link Control) da IBM em sua rede SNA (System Network Architecture). O HDLC é orientado a bit, em contraposição aos protocolos orientados a caracteres. Estes consideram como menor unidade para representação da informação a codificação de um grupo de bits em algum código de caracteres (ASCII e EBCDIC por exemplo). Nos protocolos orientados a bits um quadro é constituído por um número arbitrário de bits.

As funções executadas neste protocolo são a delimitação de início e final de quadro; a transparência de transmissão; o controle de erros (com detecção de quadros com erros, confirmação positiva de recebimento, temporização e retransmissão); controle de fluxos e controle de seqüência.

O formato de um quadro HDLC, mostrado na figura acima, apresenta campos para endereço, controle, dados, verificação de erro e delimitadores (flags) de início e fim de quadro. Os delimitadores consistem da seqüência de bits “01111110”.

O campo de endereço (Address) é utilizado quando o enlace é feito através de linhas multiponto. Nestas configurações existe normalmente uma estação primária que interroga várias estações secundárias para transmitir e receber quadros. Neste caso, a identificação da estação secundária envolvida numa comunicação vai estar contida no campo de endereço. Em linhas ponto-a-ponto este campo é normalmente utilizado para distinguir entre comandos e respostas.

O campo de controle (Control) é utilizado para numeração de seqüência, confirmação de recepção de quadros e outras informações de controle especificadas no protocolo.

O campo de dados ( Data) pode conter uma seqüência arbitrária de bits e leva a informação que será tratada adequadamente em cada um dos outros níveis.

O campo verificador de erro (Checksum) serve para detectar erros de transmissão e utiliza a técnica de CRC e usa o polinômio gerador – x16 + x12 + x5 + 1.