Funções dos protocolos Apostila 02 Endereçamento Estabelecimento e término de conexões Confirmação de recebimento Funções básicas: Controle de erro Controle de enquadramento Controle de fluxo OBS: NEM TODOS OS PROTOCOLOS CUMPREM TODAS AS FUNÇÕES 2 Protocolos Assíncronos (Start/Stop) Protocolos Síncronos Protocolos Isócronos Protocolos Assíncronos (Start/Stop) Forma de transmissão na qual a comunicação entre duas partes não está sincronizada, e os caracteres são enviados a intervalos de tempos diferentes (sem sincronismo). Conhecidos como start-stop, pois cada caractere é delimitado por um bit de start e um bit de stop. O sincronismo do sinal dos caracteres ocorre somente no início da transmissão de cada caractere iniciado com o "start bit". 3 4
Protocolos Assíncronos (Start/Stop) Esse tipo de transmissão é o mais comum em microcomputadores, pois utiliza a saída serial assíncrona do micro que é ligada diretamente ao modem. Protocolos Síncronos Transmissor e receptor ficam sincronizados i quando recebem um padrão predeterminado de bits que é transmitido periodicamente. Protocolos Orientados a Caractere Nesse tipo de protocolo, os dadosd são tratadost em nível de caracteres, ou seja, protocolo efetua o controle da transmissão por meio de caracteres especiais de sincronismo (SYN), início de texto (STX) e fim de texto (ETX) do protocolo BSC. A ANSI (American National Standards Instituto) gerou os padrões X3.1, X3.24, X3.28 e X3.36, X3.28 e X3.36 para transmissão síncrona. 5 6 Protocolos Síncronos Protocolos Orientados a Bit O tratamento dos dados é feito bit a bit. Os protocolos orientados a bit mais conhecidos são: HDLC (High Data Link Control) da ISO e o SDLC (Synchronous Data Link Control) da arquitetura SNA da IBM. Existem também o BDLC da Burroughs. A ANSI criou o ADCCP (Advanced Data Comunication Control Procedure). É o mais moderno Protocolo de Bit Alternado (stop-and-wait) Otransmissor envia um quadro e em seguida espera pela confirmação do receptor antes de continuar sua operação. É o mais simples mecanismo de retransmissão e o menos eficiente. Só funciona para pequenas distâncias Tolera atrasos de até 50 ms 7 8
Protocolo tipo janela deslizante, adotado na estratégia de tratamento de erro, que aplica a técnica pipelining (o processamento ocorre em blocos, como se fosse em linha de produção), o transmissor envia n quadros antes do bloqueio. Se n for bem dimensionado, ou seja o tamanho do buffer, o transmissor envia quadros continuamente durante um tempo igual ao tempo de trânsito da viagem de ida e volta sem ocupar toda janela de transmissão. Ao enviar blocos de pacotes entre o transmissor eo receptor, o transmissor envia os pacotes que estão na fila até o número permitido pelo armazenamento da janela, não havendo a necessidade, dessa forma, do recebimento de uma mensagem de confirmação (ACK) para o envio de um novo bloco. A medida que o receptor envia um ACK de confirmação de recebimento, a janela é liberada para o envio de mais um bloco de pacotes. 9 10 Se ocorrer falha na transmissão do bloco, o receptor deverá solicitar a retransmissão de todos os blocos subsequentes a ele na fila de transmissão. Por exemplo, vamos assumir uma janela de recepção com tamanho de oito quadros (n=8). Considerando-sese que todos os oito quadros tenham iniciado a sua transmissão e o transmissor detectou que o 5º. quadro recebido com erro, o transmissor retransmite novamente o 5º. quadro e todos demais subsequentes a ele. 11 12 Fonte: Redes de Computadores Tanenbaum, Andrew S. 3ª Ed. Campus- 1997
Janela N com retransmissão seletiva (Selective Repeat) Protocolo tipo janela deslizante, que também aplica a técnica pipelining. Nesta estratégia a camada de enlace de dados receptora armazena todos os quadros corretos seguintes ao quadro defeituoso. Ao perceber que houve erro, o transmissor retransmite apenas o pacote defeituoso. 13 14 Fonte: RAD Controle de Erros Fontes causadoras de ruídos e imperfeições no canal. Taxa de ocorrência de erros, quanto maior a taxa de transmissão, maior será a taxa de erros, para um mesmo processo de modulação. A taxa de erro limita a velocidade máxima de transmissão. Erros tendem a ocorrer em rajadas, distribuídas randomicamente. Controle de Erros Técnicas de detecção de erros Técnica de eco não tem aplicação prática Detecção de erro por paridade Acrescenta-se um único bit de paridade aos dados Paridade par ou ímpar 0110101 Paridade par - 0 1 101010 Paridade impar - 0 1 1 0 1 0 1 1 15 16
Controle de Erros Técnicas de detecção de erros Detecção de erro por bloco de paridade d usado em protocolos simples, pois tem baixa confiabilidade. CRC Cyclic Redundancy d Checking (Código Polinomial) Xr * M(x) / P (x) = Q (x) + R(x) / P(x) A mensagem a ser transmitida é dividida por um polinômio i gerador e o resto resultante t da divisãoi é transmitido junto com a mensagem Na recepção, os dados recebidos são divididos pelo mesmo polinômio gerador, se o resto for diferente de zero, houve erro, caso contrário não houve erro detectável. Controle de Erros Exemplo de representação: O quadro = 10110001 Polinômio = X 7 +X 5 +X 4 +1 Alguns polinômios gerados são largamente empregados, como por exemplo: CRC-12 = X 12 +X 11 +X 3 +X 2 +X+1 CRC-16 = X 16 +X 15 +X 2 +1 CRC-CCITT CCITT = X 16 + X 12 + X 5 + 1 CRC-32 = X 32 +X 26 +X 23 +X 22 +X 16 +X 12 +X 11 +X 10 + X 8 + X 7 + X 5 + X 4 + X 2 + X + 1 17 18 Controle de Fluxo O transmissor envia mais quadros que o receptor pode receber, ambos operando a mesma taxa de transmissão. Protocolo bit alternado (stop and wait) já faz controle de fluxo. Os dois principais tipos de controle são por: Protocolos Orientados a Caráter (BSC) Protocolos Orientados a Bit (HDLC) Controle de Fluxo Protocolos Orientados a Bit (High-Level Data Link Control - HDLC) Derivado do Synchronous Data Link Control (SDLC) desenvolvido pela IBM como protocolo de enlace de dados da SNA. A IBM submeteu-o ao ANSI (modificado e chamado Advanced Data Communication Control Procedure) e à ISO (modificado e chamado HDLC) O CCITT adotou e modificou o HDLC para Link Access Procedure (LAP) e o usou na rede X.25 Posteriormente o CCITT modificou para o Link Access Protocol Balanced (LAPB) 19 20
Controle de Fluxo Quadro de Protocolos Orientados a Bit Controle de Fluxo Quadro de Protocolos Orientados a Bit Endereço identifica a estação secundária envolvida na transmissão dos dados Controle é o mais importante, usado para números de seqüência, confirmações, supervisão etc. Dados pode conter informações arbitrárias Checksum usa o CRC-CCITT como polinômio gerador 01111110 flag usado para indicar início e término da mensagem. 21 22 Enquadramento A camada física entrega as camadas superiores um fluxo bruto de bits, cabe a camada de enlace organizar a seqüência destes bits. São adotados os seguintes métodos Contagem de caracteres Caracteres iniciais e finais com inserção de caracteres (character stuffing) Flags iniciais e finais, com inserção de bits (bit stuffing) Violações de codificação da camada física 23 Bibliografia KUROSE, J. F. & ROSS, K. R. Redes de Computadores e a Internet uma abordagem top- down.3ª Edição. São Paulo, Pearson,2006. TANENBAUM, A.S. Redes de computadores. 4ª Edição.Rio de Janeiro,Campus,2003 DIMAZIO, J. F. Projeto e Arquitetura de Redes. 1ª Edição. São Paulo, Editora Campus, 2001 MOTOYAMA, S. Introdução às Redes de Computadores. Campinas, Unicamp, 2004 SPECIALSKI, Elizabeth, Arquiteturas de Redes de Computadores. Florianópolis, INE-UFSC, 2000 24
Bibliografia Complementar Redes de Computadores Das LANs, MANs e WANs às Redes ATM Soares, Luiz Fernando Gomes, Lemos, Guido e Colcher, Sérgio 2ª. Ed. Campus 1995 Redes de Computadores da Ethernet a Internet, Moraes, Alexandre Fernandes de, Editora Erica, São Paulo, 2003. Redes de Computadores Curso Completo, Gabriel Torres, 1 edição, Editora Axcel Books 25