Prévia do material em texto
EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 Capítulo 6 Comutação por Pacote 6.1 Introdução A comutação por pacote é uma técnica de comutação apropriada para as redes de computadores. É uma técnica mais recente do que a comutação por circuito que predomina nas redes telefônicas, e foi desenvolvida para comutar sinais de dados sem erro e otimizar o uso de enlace. Devido à exigência de tratamento em tempo real dos sinais de voz, a técnica de comutação por circuito continua sendo a mais conveniente para a rede de telefonia. Entretanto, a técnica de comutação por pacote está sendo introduzida em várias partes da rede telefônica. Uma parte bastante conveniente para utilização dessa técnica é na sinalização entre centrais telefônicas onde há uma intensa troca de informações de usuários. Nessa parte, os dados devem ser transferidos sem erro e ocorrem em surtos, tornando a comutação por pacote a técnica mais adequada. A sinalização na rede telefônica será estudada no capítulo 7. O cenário atual na área de telecomunicações evolui para unificação das redes de telefonia e de dados, para obter maior economia e flexibilidade. Servindo diversos terminais de assinantes por uma única rede, obtém-se uma eficiente utilização do meio de transmissão e, portanto, uma rede mais econômica do que a soma das redes separadas. Essa rede, denominada de Rede Digital de Serviços Integrados - RDSI (ISDN - Integrated Services Digital Networks), é baseada na combinação das técnicas de comutação por circuito e por pacotes, para RDSI de faixa estreita (estudada no capítulo 8) e, essencialmente de comutação por pacote para RDSI de faixa larga. Uma outra tendência de unificação ou convergência de redes de telefonia e de dados é baseada em rede IP. A rede IP é a principal plataforma de transferência de mensagens da Internet, a rede mundial de computadores. A idéia básica, neste caso, é adaptar os serviços telefônicos para a rede de dados. Essa técnica de convergência, denominada de voz sobre IP, será estudada no capítulo 9. Neste capítulo são estudados os principais conceitos de comutação por pacote, a idéia e os princípios envolvidos na estrutura em camadas de redes, o funcionamento de uma rede local de computadores e os principais conceitos envolvidos para transmitir os pacotes em uma rede de longa distância (WAN wide área networks). 6.2 Conceitos básicos As redes de computadores, que são as mais representativas das redes de comunicação de dados, podem ser divididas, conforme o raio de seu alcance, em redes locais (LAN - Local Area Networks), redes metropolitanas (MAN - Metropolitan Area Netoworks) e redes de longa distância (WAN - Wide Area Networks), e utilizam a mesma técnica de comutação por pacote. As configurações estruturais das redes locais que atuam em um raio de 10 m a 1 km podem ser do tipo barramento, em anel e estrela, como mostrado na Fig. 6.1. 117 Na estrutura em barramento, existe um único meio de transmissão, geralmente cabo coaxial, que é compartilhado entre os terminais. Não existe um controlador central, coordenando a utilização do meio de transmissão; cada terminal tenta o acesso ao meio, tão logo tenha alguma informação a transmitir, ocasionando situações de colisões quando dois ou mais terminais tentam utilizações simultâneas do meio. Os terminais devem estar preparados para tomar providências EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 nessas situações, conforme o tipo de controle acesso especificado. O controle de acesso mais popular em redes locais é o controle chamado Ethernet ou CSMA/CD (Carrier Sense Multiple Access with Collision Detection) que será estudado no seção 6.4. Barramento Estrela (Star) AnelBarramento Estrela (Star) Anel Figura 6.1 Configurações estruturais de redes locais. Na estrutura em anel, existe também um único meio de transmissão configurado na forma de anel e a transmissão é feita somente em um sentido. Não há colisões neste caso, e o acesso é coordenado, por exemplo, através de ficha de permissão que fica circulando o anel. Quando o terminal tem alguma informação a transmitir, toma a ficha de permissão e começa a transmitir. A estrutura em estrela para redes locais utiliza um comutador (switch). Os terminais estão conectados diretamente ao comutador que transfere os pacotes de um terminal a outro. As principais configurações estruturais das redes metropolitanas, que podem alcançar um raio de 10 km, são duplo barramento e anel. Termi- nal Barramento A Barramento B AnelDuplo barramento Termi- nal Termi- nal Termi- nal Barramento A Barramento B AnelDuplo barramento Termi- nal Termi- nal Figura 6.2 Configurações estruturais de redes metropolitanas. Na estrutura em duplo barramento, são utilizados dois barramentos unidirecionais, operando em sentidos opostos e o esquema de acesso utilizado é o DQDB ( Distributed Queue Dual Bus). Nesse esquema de acesso, os terminais fazem as requisições de utilização do meio em um barramento (por ex., A) e transmitem os pacotes de acordo com o esquema FIFO, no outro barramento (B). No caso do anel, o meio de transmissão é em geral fibra óptica e o esquema de acesso pode ser utilizado a ficha de permissão. As principais estruturas utilizadas em redes de longa distância (raio de alcance - 100 a 1000 km) são estrela, entrelaçada e satélite, mostradas na Fig. 6.3. A estrutura mais utilizada é a entrelaçada (mesh). Nesta estrutura os pacotes são inicialmente armazenados em cada nó, processados e transmitidos para o próximo nó. É técnica conhecida como “store-and-forward”. Para distâncias intercontinentais é utilizado o satélite. 118 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 Estrela Entrelaçada (mesh) SatéliteEstrela Entrelaçada (mesh) Satélite Figura 6.3 Configurações estruturais de redes de longa distância. O termo comutação por pacote surgiu em analogia ao pacote de correio. Em um pacote de correio, são colocados os endereços do destinatário e do remetente que possibilitam aquela encomenda chegar ao seu destino corretamente. Muitas vezes, o pacote passa por correios intermediários em diferentes cidades, até finalmente chegar ao destino. Cabeçalho CaudaInformação Cabeçalho CaudaInformação Cabeçalho CaudaInformação Mensagem Cabeçalho CaudaInformaçãoCabeçalho CaudaInformação Cabeçalho CaudaInformaçãoCabeçalho CaudaInformação Cabeçalho CaudaInformaçãoCabeçalho CaudaInformação Mensagem Figura 6.4 Conceito e formato de pacote Na Fig. 6.4 é mostrado o conceito utilizado na comutação por pacote. Uma mensagem, já no formato de bits, é segmentada (se necessária) em vários pacotes. Um exemplo de formato de pacote é mostrado na figura. De uma maneira geral, o pacote possui um comprimento variável de bits e inicia com um cabeçalho e termina com uma cauda. No cabeçalho, são colocadas as informações dos endereços do destinatário e do remetente, além das informações de controle que possibilitam o seu encaminhamento dentro da rede. Na cauda, são colocados bits adicionais para detecção de erros no pacote transmitido e bits de delimitação de pacote. Um exemplo de encaminhamento dos pacotes em uma rede de computadores é mostrado na Fig. 6.5. Pode-se observar que uma mensagem longa dos terminais é dividida em vários pacotes. Além disso, os pacotes de uma mesma mensagem podem tomar caminhos diferentes, até chegar ao seu destino. Os pacotes são armazenados em cada nó de comutação (representam os correios intermediários), e após a análise do cabeçalho são encaminhados a enlaces convenientes. Na recepção, quando o terminal é comum, o nó de comutação no qual oterminal está ligado deverá ordenar a mensagem na sequencia correta antes de entregar ao terminal. Em caso contrário, os pacotes são encaminhados na ordem de chegada (terminal tipo pacote). 119 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 C D B A EA 1 D E C B A 2 1 P A D (montar/ pacotes) TERMINAL COMUM NÓ DE COMUTAÇÃO NÓ DE COMUTAÇÃO TERMINAL TIPO PACOTE 2 1 A D E 1 C 2 B NÓ DE COMUTAÇÃO BUFFER PACOTES desmontar Figura 6.5 Rede de comutação por pacote O tipo de comutação por pacote acima descrito é conhecido como datagrama. Existe um outro tipo de comutação por pacote conhecido como circuito virtual. Nesse tipo, é estabelecido um caminho virtual entre os dois terminais antes da troca de mensagens propriamente ditas. Os pacotes entre esses dois terminais são encaminhados sempre naquele caminho estabelecido. Entretanto, o canal físico não fica alocado continuamente aos dois terminais, permitindo assim, que outros terminais possam utilizar aquele mesmo canal (multiplexação), aumentando a eficiência do canal. Resumindo, para o caso de datagrama: • Não há caminho pré-estabelecido. • É necessária uma reordenação dos pacotes no nó final. • A tabela de encaminhamento em cada nó é atualizada dinamicamente (os nós trocam informações de tráfego nos enlaces para fins de atualização da tabela). • Exige muito processamento em cada nó. Para o caso de circuito virtual: • É estabelecido um caminho lógico antes de iniciar a transmissão da mensagem. • Os pacotes de uma mesma conexão passam sempre por esse caminho estabelecido (não necessitam reordenação). Esse caminho é compartilhado por vários terminais. • Exige menos processamento em cada nó. Multiplexação Estatística Na técnica de comutação por pacotes, cada pacote é independente do outro, e pode ser armazenado temporariamente em um buffer. Esse armazenamento permite uma utilização mais eficiente do meio de transmissão, pois os pacotes que chegam formam uma fila de espera. A utilização do meio de transmissão será mais eficiente, mas haverá um atraso nos pacotes. Esses atrasos podem ser controlados, se as capacidades dos enlaces forem bem dimensionados. Em uma rede de longa distância, os pacotes são transmitidos de um nó de comutação a outro. Em cada nó os pacotes que chegam de vários enlaces de entrada, são armazenados em um buffer de entrada, processados e depois são encaminhados a um buffer de saída, para serem transmitidos em um enlace de saída. Como cada pacote é independente, e as chegadas dos pacotes são aleatórias, o processo de armazenamento é muito importante para a utilização eficiente do meio 120 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 de transmissão. O processo de armazenamento de pacotes e as suas transmissões em qualquer instante é denominado de multiplexação estatística. -------------------------------------------------------------------------------------------------------------------- Exemplo 6.1 Considere um nó de comutação (multiplexador estatístico) com 21 enlaces bidirecionais, como mostrado na figura abaixo. Considere somente um sentido de transmissão, isto é, os pacotes que chegam dos enlaces de 1 a 20 são armazenados em um único buffer de tamanho infinito e transmitidos ao enlace 21. A capacidade C de um enlace é 1200 bps (bits por segundo), e o comprimento médio de pacote é P = 100 bits. Cada um dos enlaces de 1 a 20 gera pacotes aleatoriamente a uma taxa de 0,1 pacotes/segundo, obedecendo a uma distribuição poissoniana. a) Se os pacotes têm comprimentos aleatórios, obedecendo a uma distribuição exponencial negativa, qual é o tempo médio de espera dos pacotes no buffer? b) Qual é a porcentagem de utilização do enlace 21? 1 2 20 21 buffer1 2 20 21 buffer Solução: a) Nas condições supostas, o multiplexador estatístico pode ser modelado como uma fila M/M/1, e os resultados obtidos em tráfego telefônico podem ser utilizados. Para o caso de uma fila M/M/1, foi obtida a expressão: { }E T = − 1 µ λ (6.1) E{T} representa o tempo médio de permanência dos pacotes no multiplexador. Assim, o tempo médio de espera no buffer será: { } { }E T E Tq = − = − − 1 1 µ µ λ µ 1 (6.2) O tempo médio de atendimento do multiplexador é o tempo médio para transmitir um pacote. Como o pacote foi definido em bits, o tempo médio de transmissão é: 1 µ = P C (6.3) Logo, 1/µ = (100/1200) = (1/12) segundos, e a taxa média de pacotes chegando ao multiplexador é λ = 0,1 x 20 = 2 pacotes/seg. Assim, o tempo médio de espera no buffer será: { }E T msegq = − − = 1 12 2 1 12 16 7, . 121 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 b) A utilização do enlace de saída é dada por ρ = 1 - P0 = λ/µ . Portanto, ρ = (2/12) = 0,167, ou 16,7%. --------------------------------------------------------------------------------------------------------------------- Arquitetura de rede Uma rede de computadores é bastante complexa devido a uma grande quantidade de funções que necessita desempenhar. Para diminuir esta complexidade, a rede de computadores está organizada em camadas de funções. Essas camadas são dispostas em uma maneira hierárquica, de tal modo que somente após a realização completa das funções de uma camada, é que podem ser realizadas as funções das outras camadas. O número de camadas, os nomes das camadas e as funções das camadas podem diferir de uma rede para outra, mas o objetivo de cada camada é oferecer serviços às camadas superiores, sem se preocupar com os conteúdos das informações que são levadas a essas camadas. Na Fig. 6.6 é mostrada a idéia da estratificação em camadas de uma rede genérica. Nessa estrutura, a camada n de uma máquina conversa com a camada n da outra máquina, como se as outras camadas não existissem (camadas pares - peer layers). As regras e convenções dessa conversação entre essas camadas são chamadas de protocolos da camada n. Na realidade, os dados não são transferidos diretamente de uma camada n de uma máquina para a camada n da outra máquina. Cada camada passa os dados e as informações de controle para a camada imediatamente inferior, até que a camada mais baixa seja alcançada. Abaixo da camada 1, está o meio físico, onde realmente ocorre a transferência de dados. Entre cada par de camadas adjacentes existe uma interface. Nessa interface estão definidas as operações primitivas e os serviços que uma camada mais baixa deve oferecer a uma camada superior. A definição dessa interface deve ser feita o mais simples possível, para que haja um mínimo de informações trocadas entre as camadas. Camada 7 Camada 6 Camada 5 Camada 4 Camada 3 Camada 2 Camada 1 Camada 7 Camada 6 Camada 5 Camada 4 Camada 3 Camada 2 Camada 1 Meio Físico Protocolo da camada 1 Protocolo da camada 2 Protocolo da camada 3 Protocolo da camada 4 Protocolo da camada 5 Protocolo da camada 6 Protocolo da camada 7 Interface das camadas 1 e 2 Interface das camadas 2 e 3 Interface das camadas 3 e 4 Interface das camadas 4 e 5 Interface das camadas 5 e 6 Interface das camadas 6 e 7 Figura 6.6 Camadas, protocolos e interfaces. Modelo de Referência OSI 122 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 O modelo de arquitetura desenvolvidopela International Standards Organization (ISO), chamado de 0SI-RM (Open System Interconnection Reference Model), é mostrado na Fig. 6.7 a). Camada Aplicação TH Dados Dados AH Dados PH Dados SH Dados NH Dados DH Dados DT Bits Camada Apresentação Camada Sessão Camada Transporte Camada Rede Camada En- lace de Dados Camada Física Camada Aplicação Camada Apresentação Camada Sessão Camada Transporte Camada Rede Camada En- lace de Dados Camada Física Protocolo correspon. Protocolo Processo A Processo B Hospedeiro A Hospedeiro B Nó Nó Rede Comutada de Pacote Física Enlace de dados Rede Transporte Sessão Apresentação Aplicação 1 2 3 4 5 6 7 7 6 5 4 3 2 11 1 2 2 3 3 a) b) Figura 6.7 Arquitetura OSI da ISO. São previstas 7 camadas e as denominações de cada camada são apresentadas na Fig 6.7 a). A figura mostra um exemplo de transferência de dados entre os processos A e B. Cada camada acrescenta um cabeçalho nos dados recebidos e envia-os à camada inferior. A camada inferior trata os dados e o cabeçalho como somente dados vindos da camada superior. O cabeçalho contém as regras e informações que somente a camada par é capaz de entender e corresponde ao que é denominado de protocolo. A Fig. 6.7 b) mostra que para o transporte de dados dentro de uma rede comutada de pacotes, não é necessário utilizar todas as 7 camadas; três camadas são suficientes para encaminhar os pacotes na rede. A seguir são descritas de uma maneira bastante sucinta as funções de cada camada. Camada Física (Physical Layer) A camada física trata da transmissão de bits no meio físico de comunicação. O objetivo dessa camada é transportar os bits com a menor taxa de erro possível. Essa camada especifica as tensões que devem ser utilizadas para representar os bits 1 e o 0, a largura do pulso transmitido e se a transmissão é unidirecional ou bidirecional. Além disso, trata da conexão inicial e a sua liberação e a especificação da pinagem do conector e a função de cada conector. Camada Enlace de Dados (Data Link Layer) A principal função da camada enlace de dados é fazer com que o meio de transmissão e a camada física aparentam ser livres de erros. Para isso, os bits transmitidos são organizados na forma de quadros e cada quadro transmitido é confirmado pelo receptor. Como a camada física e o meio de transmissão transportam os bits, sem se preocupar com a sua estrutura, a camada enlace de dados deve reconhecer o início e o final do quadro. A camada enlace de dados deve ser capaz de reconhecer quadros com erros e providenciar que o transmissor retransmita os quadros. 123 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 Esta camada é responsável, também, pelo controle de fluxo dos pacotes para regular velocidades relativas do transmissor e do receptor. Camada Rede (Network Layer) A camada rede é a responsável pelo encaminhamento do pacote do nó origem até nó destino, passando por vários nós intermediários da rede. O encaminhamento pode ser baseado em uma tabela estática de rotas, com raríssimas alterações, ou altamente dinâmica, com alterações a cada pacote. É função, também, dessa camada controlar o congestionamento dos pacotes, para evitar o engarrafamento total dos pacotes na rede. A função de contagem dos números de pacotes enviados e recebidos de cada usuário, para fins de tarifação, é executada nesta camada. Camada Transporte ( Transport Layer) Esta camada é responsável pela transferência de dados entre computadores hospedeiros (por exemplo, servidores de rede). Ela se preocupa com a otimização dos recursos da rede, fazendo multiplexação dos canais, e permite a dois processos em computadores distintos se comunicarem. Camada Sessão (Session Layer) Permite que dois usuários em máquinas distintas estabeleçam sessões entre eles. Um exemplo de estabelecimento de uma sessão é quando o usuário entra com o “login” em um sistema remoto. Uma das funções da camada sessão é gerenciar o diálogo. Por exemplo, a camada pode controlar se o fluxo de tráfego é unidirecional ou bidirecional. Uma outra função é o gerenciamento da senha. Em alguns protocolos é importante que dois usuários não façam as mesmas operações simultaneamente. Para fazer o controle dessas operações, a camada sessão utiliza a senha para que um usuário transmita por vez. Camada Apresentação (Presentation Layer) A camada apresentação faz o tratamento da sintaxe e da semântica das informações transmitidas. Como exemplos podemos citar, a codificação dos dados em uma forma pré- estabelecida (por ex., ASCII ou EBCDIC, etc), a compressão de dados para reduzir o número de bits a serem transmitidos e a criptografia requerida em privacidade e autenticação. Camada Aplicação (Application Layer) Nesta camada ficam os aplicativos que o usuário pode dispor como correio eletrônico, listagem de diretórios, etc. Terminologia OSI Entidades (Entities): são os elementos ativos em cada camada. Uma entidade pode ser uma entidade software (um processo, por ex.) ou uma entidade hardware (um chip I/O inteligente, por ex.). As entidades de uma mesma camada em máquinas diferentes são chamadas entidades pares (peer entities). As entidades da camada 7 são chamadas entidades de aplicação, da camada 6 de entidades de sessão e assim por diante. 124 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 As entidades na camada N executam serviços requisitados pela camada N + 1. Nesse caso, a camada N é chamada de provedora de serviços e a camada N + 1 é a usuária de serviços. A camada N poderá requisitar os serviços da camada N - 1 para executar os seus serviços. Pontos de acesso de serviço - SAP (Service Access Points): são pontos referenciais onde os serviços estão disponíveis. Os SAPs da camada N são os locais onde a camada N + 1 pode ter acesso a serviços oferecidos. Cada SAP tem um endereço que o identifica. Duas camadas adjacentes trocam informações através de um conjunto de regras definidas na interface. Em uma interface típica, a entidade da camada N + 1 passa uma unidade de dados de interface - IDU (Interface Data Unit) para a entidade da camada N, através do SAP, como mostrado na Fig. 6.8. SDU N-PDU Cabeçalho SDUICI SAP ICI SDU IDU Camada N +1 Interface Camada N SAP - ponto de acesso de serviço IDU - unidade de dados de interface SDU - unidade de dados de serviço PDU - unidade de dados de protocolo ICI - informação de controle de interface Figura 6.8 Relação entre camadas em uma interface. A IDU é constituída de uma unidade de dados de serviço - SDU (Service Data Unit) e algumas informações de controle. A SDU é a informação que será passada, através da rede, para a entidade par e daí para a entidade da camada N + 1. Para transferir a SDU, a entidade da camada N pode dividir em vários segmentos, acrescentando um cabeçalho a cada segmento e transmitir cada um como uma unidade de dados de protocolo - PDU (Protocol Data Unit). O cabeçalho é utilizado pelas entidades pares para transportar as informações de seus protocolos. As PDUs das camadas transporte, sessão e aplicação são denominadas TPDU, SPDU e APDU, respectivamente. Modelo TCP/IP Um exemplo de rede que utiliza a comutação por pacote é a Internet. A Internet que se popularizou recentemente, é atualmente a maior rede de dados que interconecta computadores de todo o mundo. A estruturação em camadas da Internet é diferente do modelo de referência OSI. A Fig. 6.9 mostra a estrutura em camadas da rede Internet, denominada de TCP/IP, em comparação com o modelo OSI. Como a rede Internet é basicamente utilizadapara transporte de pacotes de um nó origem até o nó destino, utiliza essencialmente a camada rede, denominada de IP (Internet Protocol), para encaminhamento de pacotes na rede. O protocolo IP é um protocolo que encaminha o pacote individualmente utilizando a técnica datagrama. É, também, um protocolo que não garante a entrega dos pacotes ao seu destinatário; denominado, desse modo, de serviço de melhor esforço. Isto é, a rede fará todo o esforço para entregar o pacote ao seu destinatário, mas, o pacote pode ser perdido em seu trajeto e não há garantia de entrega em tempo determinado nem na entrega em seqüência dos pacotes. 125 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 Dessa maneira, o nó origem deve tomar providências para garantir que o pacote chegue ao destino. Para esta função, o nó origem utiliza o protocolo de transporte denominado de TCP (Transmission Control Protocol). O TCP toma todas as providências; por exemplo, se o pacote for perdido, faz a retransmissão do pacote. Várias outras funções são executadas por TCP, entre elas, o controle de fluxo entre o host de origem e o host destino, para regular a velocidade de transmissão e de recepção dos pacotes. Na camada transporte existe um outro protocolo denominado UDP (User Data Protocol), com características diferentes de TCP. É um protocolo que não garante a entrega, mas permite um tratamento mais rápido dos pacotes, sendo mais adequado para tráfego multimídia. Na camada de rede, além do protocolo IP, existem outros protocolos auxiliares como ARP (Address Resolution Protocol) e RARP (Reverse Address Resolution Protocol). O modelo TCP/IP, como se observa pela Fig. 6.9, não apresenta as camadas de apresentação e de sessão. A camada logo acima de TCP fica a aplicação, e a camada logo abaixo da camada IP, pode ser qualquer tipo de protocolo utilizado na infraestrutura de rede existente. OSI - Open System Interconnection TCP - Transmission Control Protocol IP - Internet Protocol ARP - Adress Resolution Protocol RARP - Reverse Adress Resolution Protocol UDP - User Datagram Protocol FTP - File Transfer Protocol TELNET - Virtual Terminal Física Enlace de dados Rede Transporte Sessão Apresentação Aplicação IP TCP Infraestrutura de rede Aplicação Não estão presentes OSI TCP/IP ARPANET LAN IP TCP UDP TELNET FTP Email ARP RARP OSI - Open System Interconnection TCP - Transmission Control Protocol IP - Internet Protocol ARP - Adress Resolution Protocol RARP - Reverse Adress Resolution Protocol UDP - User Datagram Protocol FTP - File Transfer Protocol TELNET - Virtual Terminal Física Enlace de dados Rede Transporte Sessão Apresentação Aplicação Física Enlace de dados Rede Transporte Sessão Apresentação Aplicação IP TCP Infraestrutura de rede Aplicação Não estão presentes OSI TCP/IP ARPANET LAN IP TCP UDP TELNET FTP Email ARP RARP Figura 6.9 Modelo TCP/IP em comparação com OSI. 6.3 Redes Locais de Computadores Na sessão anterior, foram estudados de maneira bastante abrangente, os principais conceitos de comutação por pacote, as descrições de arquiteturas de redes de computadores e as descrições funcionais sucintas das camadas. Nesta sessão, a rede local de computadores, que é uma das partes que fica no ponto extremo de uma rede de computadores, será estudada em detalhes. O entendimento do funcionamento de rede local de computadores é essencial para a compreensão de todos os conceitos envolvidos em redes de computadores. O estudo da rede local de computadores facilitará, também, o entendimento de novos serviços como voz sobre IP. Inicialmente, é discutida a padronização das redes locais. A seguir, exemplos de operação de rede local serão mostrados, e finalmente, os principais esquemas de acessos serão descritos. Padronização de Redes Locais 126 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 O órgão responsável para a padronização de redes locais é o IEEE (Institute of Electrical and Electronics Engineers). O padrão é conhecido como IEEE 802 e a sua estrutura em camadas é mostrada na Fig. 6. 10. Na rede local, são necessárias basicamente duas camadas, a camada física e a camada enlace de dados. A camada física especifica as características do meio físico de transmissão e dos formatos dos sinais. A camada enlace de dados é dividida em duas subcamadas: a subcamada MAC (Medium Access Control), para controle de acesso ao meio, e a subcamada LLC (Logical Link Control), para controle de enlace lógico. Pode-se observar na Fig. 6.10, que existem diversos tipos de MAC e diversos tipos de meios de transmissão apropriados para cada tipo de acesso. Dessa maneira, cada subcamada MAC e a camada física ficam dentro de um retângulo. Cada tipo de MAC recebe uma numeração, por exemplo, o acesso CSMA/CD, é reconhecido como padrão 802.3. O acesso token bus é conhecido como padrão 802.4, o acesso token ring como 802.5 e assim por diante. O padrão 802.1 descreve os aspectos gerais da padronização e relacionamento entre as camadas, e o padrão 802.2 descreve a funcionalidade da subcamada LLC, que é comum a todos os tipos de MAC. As duas camadas utilizadas na rede local são necessárias para prestar serviços às camadas superiores. Para entender o funcionamento de uma rede local, vamos estudar uma rede que usa o controle de acesso CSMA/CD. Esse esquema de acesso é o mais utilizado, atualmente, nas redes locais, e é mais conhecido como Ethernet. Camadas Superiores 802.2 LLC - Controle de Enlace Lógico 80 2. 1 802.3 CSMA/D MAC Físico 802.4 Token Bus MAC Físico 802.5 Token Ring MAC Físico 802.6 DQDB MAC Físico 802.9 ISLAN MAC Físico 802.x Outros MACs Físico Figura 6. 10 Padrão IEEE 802 para redes locais Historicamente, o esquema de acesso CSMA/CD teve início no controle de acesso denominado de Aloha que interligava máquinas distribuídas entre as ilhas havaianas (esse e outros esquemas de acesso serão estudados na sessão 6.4). A empresa Xerox Parc, em 1974, desenvolveu um CSMA/CD de 2,94 Mbps para interconectar cerca de 100 estações, utilizando um cabo de 1 km. Este sistema foi chamado de Ethernet. O padrão IEEE 802.3 utilizou como base o Ethernet. A taxa de transmissão, o tipo de modulação, o comprimento e o tipo de meio físico de transmissão utilizados no padrão 802.3 são apresentados a seguir. • 10Base5 – que significa: taxa de transmissão de 10 Mbps, modulação em banda base e 500 metros de máximo comprimento de cabo. O cabo deve ser coaxial grosso. • 10Base2 – o mesmo significado anterior, mas o comprimento máximo deve ser de 200 metros com o uso de um cabo coaxial fino. 127 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 • 10Base-T - o comprimento máximo deve ser de 100 metros e utilizar par trançado do tipo UTP/STP - Unshielded Twisted Pair/ Shielded Twisted Pair. • 10Base-F - o comprimento máximo é 2000 metros e com o uso de fibra óptica. IEEE 802.3 Formato de quadro Os pacotes, que são usados para troca de informações e transferência de dados entre as estações na subcamada MAC, são denominados de quadros. O formato de um quadro no padrão 802.3 é mostrado na Fig. 6.11. Preamble SD DA SA LEN DATA PAD FCS 150046 ≤≤ n7 1 6 6 2 4Octetos Preamble SD DA SA LEN DATA PAD FCS 150046 ≤≤ n7 1 6 6 2 4 Preamble SD DA SA LEN DATA PAD FCS 150046 ≤≤ n7 1 6 6 2 4Octetos Figura 6.11 Formato de um quadro. O significado de cada campo no quadro é o seguinte. Preamble – é um conjunto de 7 octetos utilizado para sincronização de bits. SD - indica o início do quadro propriamente dito. DA - destination address - endereço do destino. SA -source address - endereço de fonte. LEN - indica o comprimento do campo de dados. DATA – dados que serão transferidos. PAD - preenchimento para garantir um mínimo tamanho de quadro de 64 octetos. FCS - frame check sequence - para verificação de erro; utiliza CRC-32. Estrutura de Endereço MAC A comunicação entre as estações, em uma LAN, é feita através da transmissão e recepção de quadros. Cada quadro contém um endereço de destino e um endereço da fonte acomodados nos campos DA e SA, respectivamente, e são utilizados para uma estação receber o seu quadro e reconhecer o seu transmissor. Esses endereços são utilizados apenas localmente, isto é, têm significados somente em uma LAN. Esses endereços são números que são colocados em placas de rede (interfaces) por um fabricante. Como existem vários fabricantes, foi necessária uma padronização desses números. Todas as LANs que obedecem a padronização do IEEE 802, usam o mesmo esquema de endereçamento. O esquema de endereçamento do IEEE 802 suporta dois formatos de endereços: um endereço com dois octetos e outro com 6 octetos. O endereço com 6 octetos é universal e o seu formato é mostrado na Fig. 6.12. 48 bits 6 octetos OUI (3 octetos) 48 bits 6 octetos OUI (3 octetos) Figura 6.12 Formato de endereçamento do IEEE 802. 128 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 O campo OUI (Organizationally Unique Identifier ) identifica o fabricante de placa de rede. Essa parte do endereço é atribuída pelo IEEE. A outra parte é especificada pelo fabricante. IEEE 802.2 LLC - Logical Link Control A subcamada LLC completa a camada enlace de dados e tem as seguintes funções: • Oferecer serviços com conexão, sem conexão e sem conexão com ACK. O serviço com conexão oferece garantia na entrega, sem conexão não oferece garantia alguma e por último, o serviço sem conexão com ACK, não oferece garantia, mas retorna ACK dos quadros transmitidos. • Suportar múltiplas conexões lógicas. Isto é permite multiplexar várias entidades. O formato de quadro da subcamada LLC é mostrado na Fig. 6.13. DSAP SSAP CTRL DADOSDSAP SSAP CTRL DADOS Figura 6.13 Formato de quadro da subcamada LLC. O significado de cada campo do quadro é o seguinte. DSAP (Destination Service Access Point) – especifica o número de ponto de acesso de serviço do destino. SSAP (Source Service Access Point) – especifica o número de ponto de acesso de serviço da fonte. CTRL (Control) - indica ações que devem ser tomadas de acordo com o tipo de conexão LLC1 - sem conexão (são quadros sem numeração). LLC2 - com conexão (são quadros numerados). LLC3 - sem conexão, mas com confirmação (Ack) em cada quadro. Quando DSAP e SSAP contêm um valor particular, é indicação de extensão do campo de cabeçalho na parte de dados como mostrado na Fig. 6.14. DSAP SSAP CTRL DADOSDiscriminadorde Protocolos SNAP Header DSAP SSAP CTRL DADOSDiscriminadorde ProtocolosDSAP SSAP CTRL DADOS Discriminador de Protocolos SNAP Header SNAP Header Figura 6.14 Extensão de cabeçalho. O campo de extensão SNAP (Subnetwork access point) é utilizado para discriminar o tipo de protocolo da camada superior (Por ex., TCP/IP, Unix, etc.). Comutação na Camada Enlace de Dados - Interconexão Local Na descrição da rede local até o momento, vários aspectos da camada física, dos formatos de quadro das subcamadas MAC e LLC foram detalhados. O quadro da subcamada MAC é utilizado para uma estação enviar ou receber dados através de uma LAN. Entretanto, se, por 129 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 exemplo, uma empresa possui várias LANs, é necessário um dispositivo para transferir ou comutar um quadro de uma LAN para outra. Esse dispositivo pode ser ponte (bridge) ou comutador (switch). A ponte é um dispositivo mais simples que o switch e possui vários tipos. As mais representativas são as pontes transparentes e as pontes com tradução. As pontes transparentes são dispositivos que interconectam as LANs similares, isto é, transferem os quadros que utilizam o mesmo esquema de acesso. Na Fig. 6. 15, são mostrados dois exemplos de pontes transparentes. A primeira ponte interconecta LANs que utilizam o esquema de acesso Ethernet ou CSMA/CD e a segunda ponte interconecta LANs utilizando o esquema de acesso token ring. Às vezes, as pontes podem conectar LANs que estão fisicamente distantes. Essas pontes, além de transferir quadros, devem ter capacidades de transmissão a longas distâncias. PonteEthernet Ethernet Token Ring Token RingPonte Ponte PonteToken Ring Token Ring Remoto PonteEthernet EthernetPonteEthernet Ethernet Token Ring Token RingPonte Ponte PontePonte PonteToken Ring Token Ring Remoto Figura 6. 15 Pontes transparentes. As pontes com tradução são aquelas que transferem ou comutam quadros entre LANs não similares. A Fig. 6.16 mostra um exemplo de interconexão de uma rede Ethernet com a rede token ring, através de uma ponte. Neste caso, como os formatos de quadros dos esquemas de acesso são diferentes, a ponte deve ler todos os campos de cabeçalho de cada quadro, interpretar e traduzir nos formatos adequados e enviar cada quadro para as respectivas LANs. PonteEthernet Token RingPonteEthernet Token Ring Figura 6.16 Ponte com tradução. O switch é um dispositivo mais complexo, mas está sendo mais utilizado pelas grandes companhias por causa da sua flexibilidade. A Fig. 6.17 mostra uma configuração de rede utilizando o switch. 130 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 Switch (Comu- tador) LAN virtual 1 LAN virtual 2 Switch (Comu- tador) LAN virtual 1 LAN virtual 2 Figura 6. 17 Configuração de uma rede utilizando switch. Quando se utiliza um switch, cada estação fica conectada diretamente ao switch. Dessa maneira a função de um switch é analisar o cabeçalho de cada quadro e transferir para estação adequada ou para várias estações, fazendo a função de multicast. A versatilidade é grande, pois, é possível configurar várias estações, através de software, em uma LAN virtual. Na Fig. 6.17, são mostradas duas LANs virtuais. Cada LAN virtual possui conjunto de estações que são consideradas pertencentes fisicamente a essa LAN, permitindo, dessa maneira, um gerenciamento mais fácil das estações. Outros dispositivos utilizados em redes locais são repetidores, hubs, roteadores e gateways. Um repetidor é utilizado em uma linha de transmissão para regenerar os sinais digitais de um quadro e envia-los novamente a uma outra linha. Um hub tem a função semelhante ao repetidor, com a diferença de que várias linhas podem se conectar ao hub. Assim, um quadro que chega de uma linha pode ser retransmitido por hub para uma outra linha ou para várias outras linhas. Um roteador é utilizado para interconectar redes locais com outras redes locais, com redes metropolitanas ou com redes de longa distância, como mostrado na Fig. 6.18. Um roteador possui as funções da camada rede, desse modo, utiliza um número denominado endereço IP, diferente do endereço MAC, para encaminhar os pacotes, denominados de datagramas, na rede de longa distância. Um gateway interconecta redes dissimilares, em que são necessárias conversões de protocolos em todas as camadas. Por exemplo, a interligação de uma rede TCP/IP com uma rede RDSI de faixa estreita, necessita de um gateway, para compatibilizar uma rede com a outra. Roteador Ethernet Ethernet Roteador Token Ring Token Ring Para Rede Metropolitana ou para Rede de Longa Distância Gateway Roteador Ethernet Ethernet Roteador Token Ring Token Ring RoteadorRoteador Ethernet EthernetEthernetRoteadorRoteador Token Ring Token Ring Para Rede Metropolitana ou para Rede de Longa Distância Gateway Figura 6.18 Interconexão de redes utilizando roteadores e gateways. 131 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 A Fig. 6.19 mostra, funcionalmente, em que camada, cada um dos dispositivos descritos anteriormente atua. Os repetidores e hubs têm funções da camada física; as pontes e switches fazem comutação no nível da camada enlace; o roteador tem as funções da camada rede e o gateway deve atuar nas camadas de transporte e de aplicação, no modelo TCP/IP. Se o modelo de referência for OSI, o gateway deve atuar, também, nas camadas de sessão e de apresentação. Repetidor, Hub Ponte, Switch Roteador Gateway de Transporte Gateway de Aplicação Camada Rede Camada Enlace Camada Física Camada Transporte Camada Aplicação Repetidor, Hub Ponte, Switch Roteador Gateway de Transporte Gateway de Aplicação Camada Rede Camada Enlace Camada Física Camada Transporte Camada Aplicação Figura 6.19 Camadas funcionais dos dispositivos. Estudou-se, até aqui, os detalhes das camadas física, MAC e LLC, e os dispositivos de interconexão de LANs. O inter-relacionamento entre essas partes estudadas separadamente será mostrado através de dois exemplos de comunicação. --------------------------------------------------------------------------------------------------------------------- Exemplo 6.2 Na Fig. 6.20, existem duas sub-redes conectadas por uma ponte e cada sub-rede possui 3 PCs. Ponte PC1 PC4 PC2 PC3 PC5 PC6 Sub-rede 1 Sub-rede 2 Ponte PC1 PC4 PC2 PC3 PC5 PC6 Sub-rede 1 Sub-rede 2 Figura 6.20 Comunicação entre PCs. Os endereços MAC (em hexadecimal) de cada PC são conhecidos e dados arbitrariamente pela seguinte numeração: PC1 - 00:00:AB:CD PC4 - 00:00:32:F2 PC2 - 00:00:C0:1A PC5 - 00:00:AC:C5 PC3 - 00:00:C5:B2 PC6 - 00:00:01:03 Caso 1 132 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 Considere a situação em que o PC1, quer-se comunicar com o PC3 que está na mesma sub-rede. Inicialmente, o PC1 executa as etapas mostradas na Fig. 6.21, para transmitir um pacote para PC3. A subcamada LLC do PC1 recebe da camada superior, solicitação de serviço para transmitir o pacote de dados e recebe o DSAP, SSAP e endereço do MAC destino, através do SAP entre a camada superior e LLC. A subcamada LLC monta o quadro com as informações recebidas e envia, à subcamada MAC, o quadro e o endereço do MAC destino, através do SAP entre LLC e MAC. A subcamada MAC monta o quadro com as informações recebidas, e coloca no cabeçalho, o endereço do destino (00:00:C5:B2), o endereço da fonte (00:00:AB:CD), o preâmbulo e o comprimento referente a parte de informação. Acrescenta os bits de FCS para detecção de erros, e envia para um buffer, para ser transmitido ao meio físico, utilizando o esquema de acesso CSMA/CD. DSAP SSAP CTRL DADOS LLC MAC DSAP e SSAP End. MAC destino Dados SAP End. MAC destino SAP Camada Superior Pre FCSSD DA SA L E N 00:00:C5:B2 00:00:AB:CD CSMA/CD Meio Físico de Transmissão DSAP SSAP CTRL DADOSEthernet DSAP SSAP CTRL DADOSDSAP SSAP CTRL DADOS LLC MAC DSAP e SSAP End. MAC destino Dados SAP End. MAC destino SAP Camada Superior Pre FCSSD DA SA L E N 00:00:C5:B2 00:00:AB:CD CSMA/CD Meio Físico de Transmissão DSAP SSAP CTRL DADOSDSAP SSAP CTRL DADOSEthernet Figura 6.21 Etapas para transmitir um pacote de PC1. O pacote é transmitido de PC1, por difusão, para a sub-rede 1, como mostrado na Fig. 6.22. Ponte PC1 PC4 PC2 PC3 PC5 PC6 Sub-rede 1 Sub-rede 2 Pacote Ponte PC1 PC4 PC2 PC3 PC5 PC6 Sub-rede 1 Sub-rede 2 Ponte PC1 PC4 PC2 PC3 PC5 PC6 Sub-rede 1 Sub-rede 2 Pacote Figura 6.22 Difusão de pacote na sub-rede 1. 133 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 Na sub-rede 1, o PC2 desconsidera o pacote porque não contém o seu endereço. Mas, o PC3 reconhece o seu endereço e faz cópia do pacote. A ponte possui uma tabela de consulta com as informações mostradas na Fig. 6.23. A tabela indica quais PCs pertencem a sub-rede 1 e quais são da sub-rede 2. Endereço MAC Rede 00:00:AB:CD 00:00:C0:1A 00:00:C5:B2 00:00:32:F2 00:00:CC:C5 00:00:01:03 1 1 1 2 2 2 Tabela de Consulta Endereço MAC Rede 00:00:AB:CD 00:00:C0:1A 00:00:C5:B2 00:00:32:F2 00:00:CC:C5 00:00:01:03 1 1 1 2 2 2 Endereço MAC Rede 00:00:AB:CD 00:00:C0:1A 00:00:C5:B2 00:00:32:F2 00:00:CC:C5 00:00:01:03 1 1 1 2 2 2 Tabela de Consulta Figura 6.23 Tabela de consulta da ponte. A ponte consulta a tabela e conclui que o pacote é para a sub-rede 1, mas como chegou da própria sub-rede 1, desconsidera o pacote. O pacote recebido no PC3 vai, inicialmente, para a subcamada MAC, onde é feita a checagem de erro através do campo FCS. Se houver algum erro nos bits transmitidos, o pacote inteiro é descartado. Se não houver erro, o pacote é processado conforme a Fig. 6.24. LLC MAC DSAP e SSAP End. MAC destino Dados SAP SAP Camada Superior 00:00:C5:B2 00:00:AB:CD Meio Físico de Transmissão Pre FCSSD DA SA L E N DSAP SSAP CTRL DADOS Ethernet DA SA L E N DSAP SSAP CTRL DADOS SAP LLC MAC DSAP e SSAP End. MAC destino Dados SAP SAP Camada Superior 00:00:C5:B2 00:00:AB:CD Meio Físico de Transmissão Pre FCSSD DA SA L E N DSAP SSAP CTRL DADOS Pre FCSSD DA SA L E N DSAP SSAP CTRL DADOSDSAP SSAP CTRL DADOS Ethernet DA SA L E N DSAP SSAP CTRL DADOSDSAP SSAP CTRL DADOS SAP Figura 6.24 Processamento de pacote no PC3. Caso 2 Para a mesma rede da Fig. 6.21, vamos considerar que o PC1, quer-se comunicar com PC5. Neste caso, o endereço DA será 00:00:CC:C5. Os PC2 e PC3 desconsideram o pacote, pois o pacote não contém os seus endereços (veja a Fig. 6.25). A ponte consulta a tabela e conclui que o pacote deve ser enviado para a sub-rede 2, e transfere o pacote para a sub-rede 2. Os PC4 e PC6 desconsideram o pacote e o PC5 reconhece o endereço e faz cópia do pacote. 134 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 Ponte PC1 PC4 PC2 PC3 PC5 PC6 Sub-rede 1 Sub-rede 2 Pacote Ponte PC1 PC4 PC2 PC3 PC5 PC6 Sub-rede 1 Sub-rede 2 Ponte PC1 PC4 PC2 PC3 PC5 PC6 Sub-rede 1 Sub-rede 2 Pacote Figura 6.25 Comunicação entre o PC1 e PC5 ------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------------------------------- Exemplo 6.3 Considere a rede da Fig. 6.26. A tabela da ponte mostra que o PC9 ainda não consta na relação dos cadastrados. Isso ocorre, quando, por exemplo, o PC9 está sendo conectado à rede pela primeira vez. Seja a situação em que o PC1 quer enviar um pacote ao PC9. O PC1 monta o quadro conforme os procedimentos analisados no exemplo 6.2 e transmite o pacote para a sub- rede 1. Os PC2 e PC3 desconsideram o pacote, pois, os seus endereços não constam no campo DA. A ponte verifica a tabela e constata que o PC9 não consta na sua tabela. Assim, transmite o pacote para a sub-rede 2 e também para a sub-rede 3. O PC9 reconhece o seu endereço e faz uma cópia do pacote. Todos os outros PCs desconsideram o pacote. Desse modo, mesmo que um PC não conste na tabela, é possível a comunicação, se a ponte enviar o pacote por difusão a todas as redes conectadas nela. Ponte PC1 PC2 PC3 Sub-rede 1 Pacote PC4 PC5 PC6 Sub-rede 2 PC7 PC8 PC9 Sub-rede 3 Tabela da Ponte Endereço MAC Rede00:00:AB:CD 00:00:C0:1A 00:00:C5:B2 00:00:32:F2 00:00:CC:C5 00:00:01:03 1 1 1 2 2 2 00:00:A5:B8 00:00:55:C2 3 3 PC1 PC2 PC3 PC4 PC5 PC6 PC7 PC8 Ponte PC1 PC2 PC3 Sub-rede 1 Pacote PC4 PC5 PC6 Sub-rede 2 PC7 PC8 PC9 Sub-rede 3 Tabela da Ponte Endereço MAC Rede 00:00:AB:CD 00:00:C0:1A 00:00:C5:B2 00:00:32:F2 00:00:CC:C5 00:00:01:03 1 1 1 2 2 2 00:00:A5:B8 00:00:55:C2 3 3 PC1 PC2 PC3 PC4 PC5 PC6 PC7 PC8 Figura 6.26 Cadastramento automático de um PC na tabela da ponte. Considere, agora, a situação em que o PC9 quer enviar um pacote ao PC1. Os mesmos procedimentos anteriores de montagem de quadro são executados e o PC9 transmite o pacote na sub-rede 3. A ponte, quando chega o pacote, constata que o PC9 ainda não está cadastrado. Dessa maneira, acrescenta na sua tabela o PC9, incluindo o endereço MAC e a sub-rede que originou o pacote. A ponte, em seguida, transfere o pacote para a sub-rede 1, onde o PC1 receberá o pacote. Observe que a inclusão de um PC, não cadastrado, na tabela da ponte, pode ser feita automaticamente, toda vez que esse PC transmite o pacote pela primeira vez. 135 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 -------------------------------------------------------------------------------------------------------------------- 6.4 Esquemas de Acesso em Redes de Computadores As redes locais Ethernet, como discutido na seção anterior, utilizam o esquema de acesso CSMA/CD. Esse esquema é necessário para controlar o acesso de várias estações independentes que tentam transmitir os pacotes em um único meio físico de transmissão. Nesta seção, estudam- se vários esquemas de acesso, começando com o Aloha e terminando com o CSMA/CD. Além da descrição de cada um dos protocolos de acesso, mostram-se, também, os desempenhos de cada esquema. Aloha Considere uma rede local com um único barramento como mostrado na Fig.6.27. 1 Interface Meio de transmissão (barramento) Estação Estação 2 Interface M-1 Interface M Interface. . . 1 Interface Meio de transmissão (barramento) Estação Estação 2 Interface M-1 Interface M Interface. . . Figura 6.27 Esquema de acesso Aloha. O esquema de acesso é baseado nas regras descritas abaixo. a) Cada estação tenta o acesso ao barramento tão logo tenha um pacote a transmitir (acesso aleatório). b) A estação que obtiver sucesso na transmissão de um pacote, recebe um sinal de confirmação do destino (através de um canal separado). c) Haverá colisão se duas ou mais estações transmitirem simultaneamente. d) A colisão resultará em erros nos bits dos pacotes. Assim não será transmitido o sinal de confirmação. Após uma temporização adequada que é no mínimo igual ao tempo máximo de propagação no cabo (ida e volta), é feita a retransmissão de pacotes. A Fig. 6.28 mostra a operação do esquema de acesso, a situação de colisão e finalmente a situação de sucesso. Canal A A B B B C C E1 E2 E3 Colisão A B C Colisão Sucesso Sucesso Sucesso tempo Canal A A B B B C C E1 E2 E3 Colisão A B C Colisão Sucesso Sucesso Sucesso A A B B B C C E1 E2 E3 Colisão A B C Colisão Sucesso Sucesso Sucesso tempo Figura 6.28 Operação do esquema de acesso Aloha. 136 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 A figura mostra que a estação E1 já havia iniciada a transmissão de um pacote, mas a estação E2 começa a transmitir e há situação de sobreposição dos pacotes transmitidos, configurando a colisão. Observando a figura acima, pode-se concluir que a sobreposição no pior caso atinge um intervalo de tempo 2P, onde P é o tempo de transmissão de um pacote. A Fig. 6.29 mostra um esquema de acesso modificado chamado slotted Aloha. Neste caso, a transmissão é sincronizada, de tal modo que somente nos instantes de tempo bem determinados, as estações são permitidas a transmitir. O comprimento do pacote é fixo e o intervalo de tempo de transmissão de um pacote é denominado janela ou slot de tempo. ����������������������������� ����������������������������� Colisão Sucesso Sucesso SucessoColisão A A B B C C C B A AE1 E2 E3 Canal tempo ����������������������������� ����������������������������� Colisão Sucesso Sucesso SucessoColisão A A B B C C C B A AE1 E2 E3 Canal ����������������������������� ����������������������������� Colisão Sucesso Sucesso SucessoColisão A A B B C C C B A AE1 E2 E3 Canal tempo Figura 6.29 Esquema de acesso slotted Aloha. Como se pode observar pela figura, a sobreposição dos pacotes acontece durante todo o intervalo de um slot de tempo que é também o tempo P de transmissão de um pacote. Portanto, o tempo de sobreposição dos pacotes neste caso é a metade do Aloha, o que possibilita um aumento da vazão da rede, como será demonstrado a seguir. Análise da vazão Para a análise, são feitas as seguintes suposições: a) O tempo médio de transmissão de um pacote (tempo máximo de propagação no cabo + tempo para transmitir todos os bits de pacote) é P segundos. b) A chegada dos pacotes (novas chegadas e os pacotes de retransmissão) obedece à distribuição de Poisson. Seja S, a vazão definida como: S = Número médio de pacotes transmitidos com sucesso / Tempo médio P de transmissão de pacote O valor de S pode ser no máximo igual a 1, pois em um intervalo de transmissão de pacote podemos enviar no máximo um pacote. Seja G o tráfego total oferecido por unidade de tempo de transmissão de pacote P, isto é, G = número médio de tentativas de transmissão de pacotes / tempo de transmissão de pacote P As tentativas de transmissão de pacotes incluem os pacotes de retransmissão e os novos pacotes que chegam às estações. Pode-se observar pela Fig. 6.28 que para haver uma transmissão de um pacote bem sucedido deve haver um intervalo mínimo de tempo igual a 2P entre as transmissões de pacotes das estações. 137 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 A vazão pode ser escrita como: S = G x Pr {transmissão bem sucedida} (6.4) Mas, Pr {transmissão bem sucedida} = Pr {nenhuma transmissão no intervalo 2P} = Pr {zero chegada em 2P}. A chegada de pacotes obedece uma distribuição poissoniana, portanto: { } ( ) (Pr . ! expk chegadas em t seg t k t k = λ λ )− (6.5) onde λ é a taxa média (total) de chegadas de pacotes por segundo. Mas, G = número médio de pacotes / P (segundos) Logo, G / P = número médio de pacotes / seg. = λ, Pr {0 chegadas em 2P} = exp (- (G / P)(2P)) = exp ( - 2G ), e S = G exp ( - 2G) (6.6) O valor máximo da vazão será: dS dG G G G G G G S e = − + − − = − = ⇒ = = ⇒ = − = = exp( ) exp( )( ) , , , exp( ) 2 2 2 0 0 5 0 5 0 5 1 1 2 0 184, 0 1 2 A vazão máxima para este esquema de acesso é somente 18,4 %. A Fig. 6.30 mostra o comportamento da vazão em função do tráfego oferecido. Figura 6.30 Vazão em função do tráfego oferecido para o Aloha. 138 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 Para os pontos onde G > 0.5, o aumento de G ocasiona a diminuição de S. Isso significa que há aumento de colisões e diminuição de transmissão com sucesso. A vazão pode aproximar de zero, significando que não há transmissão bem sucedida, somente colisões. Não é uma operação estável. Pode-se calcular a vazão do slotted Aloha de maneira similar. Neste caso o intervalo de tempopara não haver colisão é P. Assim, Pr { 0 chegadas em P } = exp ( - G ) Portanto, S = G exp ( - G ) (6.7) A vazão máxima será: dS dG G G G G G S emax = − − − = = = ⇒ = − = = exp( ) exp( ) exp( ) , 0 1 1 1 1 0 368 Com a sincronização do instante de acesso, obtém-se um aumento de vazão de 100% em relação ao Aloha. O comportamento da vazão em função do tráfego é mostrado na Fig. 6.31. A curva da Fig. 6.31 mostra que o desempenho do esquema de acesso é similar ao Aloha, sofrendo uma degradação muito grande para tráfego acima de G = 1. Figura 6.31 Vazão em função do tráfego oferecido para slotted Aloha. CSMA (Carrier Sense Multiple Access) É um esquema baseado em Aloha, mas introduz maior restrição às estações e aumenta complexidade na implementação. Cada estação verifica a existência da portadora antes de transmitir um pacote. A presença da portadora significa que o canal está ocupado e, a estação não é permitida a transmitir e espera até “sentir” o canal vazio. 139 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 Conforme o procedimento adotado quando o barramento estiver ocupado, o CSMA pode ser: - Não persistente - 1 persistente - P persistente O diagrama de blocos da Fig. 6.32 mostra a operação do esquema de acesso CSMA não persistente. C a n a l v a z i o ? A C K P o s i - t i v o ? T r a n s m i te A t r a s o d e p r o p a g a ç ã o ( i d a e v o l t a ) F i m P a c o t e p r o n t o ? A t r a s o A l e a tó r io N ã o S i m S i m N ã o S i m Figura 6.32 Diagrama em blocos do esquema de acesso CSMA não persistente. Quando o canal está ocupado, a estação não insiste e volta a verificar em um tempo posterior aleatório, se o canal ficou vazio. Se o canal estiver vazio, a estação transmite o pacote e espera a chegada de confirmação. Com a chegada de confirmação, termina o processo de transmissão; senão entra no processo de retransmissão e repete o processo de acesso. A Figura 6.33 mostra o diagrama em blocos do CSMA P-persistente. A diferença com relação ao CSMA não persistente é que neste esquema de acesso quando o canal estiver livre, a estação transmite com uma probabilidade P ou deixa de transmitir com probabilidade (1-P). Quando a estação sente o canal vazio, antes de transmitir é feito um sorteio de um número, se esse número for menor que P, o pacote é transmitido, senão o pacote é atrasado τ segundos e repete o procedimento de acesso. Quando P = 1, tem-se o caso particular de 1- persistente; se o canal estiver livre sempre transmite. 140 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 C an a l o c u p ad o ? P a c o te p ro n to ? N ã o S im N ã o A C K P o s i- tiv o ? T ran sm ite A tra so d e p ro p ag a ç ão (id a e v o lta ) F im A tra so A le a tó r io N ã o S im I< = P S e le c io n a I en tre { 0 ,1 } A tra so se g .τ N ã o N ã o Figura 6.33 Diagrama em blocos do esquema de acesso CSMA P-persistente. A formulação matemática para cálculo da vazão para o CSMA é mais trabalhosa e só será apresentado o resultado para CSMA não persistente. Nesse caso, a vazão é dada por: S G aG G a aG = − + + − exp( ) ( ) exp( )1 2 (6.8) Onde, G = tráfego total oferecido, a P = τ e, τ = atraso máximo de propagação em um sentido de transmissão. Se a S G G G +G G = ⇒ = = + ⇒ ≅ ⇒ 0 0 1 1 1 τ e Para grande S = A Fig. 6.34 mostra o comportamento da vazão em função do tráfego oferecido para vários valores de a. Observa-se que para atraso de propagação da ordem de tempo de transmissão de um pacote (a = 1), a vazão máxima é em torno de 18%. Essa baixa vazão é devido ao fato de também ocorrer colisões no CSMA. Duas ou mais estações podem sentir o barramento livre e uma inicia a transmissão um pouco na frente das outras, mas, devido ao tempo de propagação as outras não sentiram o barramento ocupado e também iniciam as suas transmissões, ocasionando as colisões. A Fig. 6.34 mostra que a vazão melhora substancialmente para atrasos de propagação pequenos. Portanto, esse esquema de acesso tem um bom desempenho se o comprimento do barramento for mantido relativamente pequeno. 141 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 Figura 6.34 Vazão em função do tráfego oferecido para CSMA não persistente. CSMA/CD No esquema CSMA analisado no item anterior, uma vez iniciada a transmissão de um pacote por uma estação, mesmo que haja colisão, ela não pára de transmitir aquele pacote por inteiro. O esquema CSMA/CD já é um melhoramento e detecta a colisão e a estação pára de transmitir o pacote colidido, diminuindo assim o tempo de colisão. O CSMA/CD pode ser classificado em slotted e não slotted. Tanto o slotted como não slotted pode ser subdividido em não persistente e P-persistente e têm os mesmos funcionamentos explicados nas Figs. 6.32 e 6.33. O CSMA/CD, em suas várias combinações, é utilizado em redes locais atuais como Ethernet e Novell. Se uma colisão for detectada no CSMA/CD, a estação aborta a transmissão de pacote e transmite um sinal de engarrafamento (jamming), avisando todas as estações da ocorrência da colisão e para não utilizar o barramento naquele momento. Após um atraso de tempo, o pacote será retransmitido obedecendo ao esquema de acesso. A Fig. 6.35 mostra o diagrama de tempo do CSMA/CD para situação de colisão. O tempo ativo das estações durante o período de colisão é bem menor do que o CSMA, aumentando, dessa maneira a vazão do CSMA/CD. A vazão do CSMA/CD é dada por: P aJ aGaGaGaGaGaGG aGGS τ τ γ γ == −−+−−+−−+− − = , )]exp(2[)]exp(1[2)]exp(1[)exp( )exp( (6.9) Onde, G = tráfego total oferecido, P = comprimento do pacote em tempo, J = tempo do sinal de engarrafamento, 142 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 τ = tempo de propagação. Início da trans. t0 τAB τBA ε J ε J Início da transmissão Tempo para detectar colisão Sinal de engarrafamento Estação B pára de transmitir Estação A pára de transmitir Canal Vazio Distância Tempo Tempo ativo das estações = = + + = 2τ ε τ τ AB BA J AB Estação A Estação B Tempo de propagação Figura 6.35 Colisão em CSMA/CD. A Fig. 6.36 mostra a vazão em função do tráfego oferecido. Percebe-se também, neste caso, a mesma degradação de desempenho observado em CSMA. Se o tempo de propagação for grande, o CSMA/CD também tem uma vazão muito baixa. Figura 6.36 Vazão em função do tráfego oferecido para o CSMA/CD não persistente, γ = 1. Uma fórmula prática para calcular a vazão do esquema CSMA/CD é mostrada abaixo. S AP = + 1 1 2τ (6.8) Onde, 143 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 A = − M M − 1 1 1 M = número de estações, P = tempo médio de transmissão de um pacote, em segundos τ = atraso de propagação em um sentido de transmissão. Se τ = 0 S = 1. A Fig. 6.37 mostra a comparação entre os vários esquemas de acesso estudados. O desempenho do CSMA/CD é bem superior aos outros esquemas. Com relação aos outros esquemas não estudados, pode-se mostrar que o slotted CSMA/CD não persistente tem o melhorcomportamento que o CSMA/CD não persistente. Figura 6.37 Comparação dos esquemas de acesso para estrutura em barramento. 6.5 Controle de erro em Redes de Computadores O ponto essencial para o desenvolvimento inicial da rede de computadores, na década de 1960, foi como tratar os erros que ocorreriam nos dados transmitidos, uma vez que os meios de transmissão de pares metálicos não eram confiáveis. Esse tratamento de erro deveria ser de tal modo que garantisse uma total integridade dos dados transmitidos, mesmo que houvesse um atraso considerável na transferência desses dados. A principal preocupação foi a segurança na transferência de dados. A solução encontrada foi fazer um controle de erro enlace a enlace; somente quando os dados transmitidos em um enlace entre dois nós fossem livres de erros seguiriam para um outro enlace. Essa técnica é utilizada até hoje na maioria das redes de computadores. Mais recentemente, com a evolução dos meios de transmissão mais confiáveis como fibras ópticas, essa técnica está sendo modificada para conseguir maior velocidade de comutação. Por exemplo, a rede ATM que utiliza intensamente a fibra óptica como meio de transmissão, não faz controle enlace a enlace, mas, somente fim a fim. O objetivo desta seção é introduzir algumas técnicas de controle de erro. 144 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 Técnicas de Controle de Erro O controle de erro em redes de computadores é feito na camada enlace de dados quando o controle é feito enlace a enlace ou na camada transporte quando o controle é feito fim a fim. Quando o controle é feito enlace a enlace, como mostrado na Fig. 6.38, as camadas enlaces de dados dos processos A e B trocam mensagens através de um protocolo pré- estabelecido. As mensagens são organizadas em formatos denominados de quadros. O verdadeiro caminho onde esses quadros trafegam é através das camadas físicas e o meio de transmissão. C a m a d a F í s i c a C a m a d a E n la - c e d e d a d o s C a m a d a R e d e C a m a d a T r a n s p o r t e C a m a d a S e s s ã o C a m a d a A p r e s e n t a ç ã o C a m a d a A p l i c a ç ã o C a m a d a F í s i c a C a m a d a E n la - c e d e d a d o s C a m a d a R e d e C a m a d a T r a n s p o r t e C a m a d a S e s s ã o C a m a d a A p r e s e n t a ç ã o C a m a d a A p l i c a ç ã o T r o c a d e m e n s a g e n s ( Q u a d r o s ) C a m in h o r e a l P r o c e s s o A P r o c e s s o B Figura 6.38 Troca de informações nas camadas enlace de dados e o caminho real. Em geral, o controle de erro em redes de computadores pode ser: a) ARQ (Automatic-Repeat-reQuest) - solicitação de repetição automática e, b) FEC (Forward Error Correction) - correção de erro adiante. O controle de erro baseado em ARQ utiliza códigos detectores de erro. O receptor descarta o bloco ou quadro recebido com erro e, solicita retransmissão do quadro. A retransmissão continua até que o quadro seja recebido sem erro. Por outro lado, controle de erro baseado em FEC utiliza códigos corretores de erro (códigos de blocos ou convolucionais). Quando o receptor detecta a presença de erros no quadro de dados, localiza e corrige os erros. É um esquema complexo que exige um razoável processamento. É próprio para algumas aplicações especiais, como em comunicações por satélite e espacial ou onde a banda é restritiva e exige-se uma boa qualidade de recepção, como em telefonia celular. É utilizada também para detectar e corrigir erros no cabeçalho das células na rede ATM (Asynchronous Transfer Mode), que pode transportar uma variedade de serviços como voz, vídeo e dados. O estudo, nesta seção, será somente em controle ARQ. Controle ARQ 145 O controle ARQ pode ser realizado utilizando diferentes regras de comunicação ou protocolos de comunicação. O protocolo mais fácil é denominado de stop-and-wait. Nesse protocolo, um quadro é enviado por um transmissor e somente após a recepção da confirmação EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 (ACKnowledgement), o transmissor poderá enviar um novo quadro, conforme mostrado na Fig. 6.39a. Na ocorrência de erro o receptor não envia a confirmação, e após o esgotamento do tempo estabelecido (time out) em um temporizador no transmissor, o quadro é retransmitido como mostrado na Fig. 6.39b. Transmissor Receptor Tempo Quadro ACK ACK Quadro Operação sem Erro ACK Transmissor Receptor Tempo Quadro ACK Quadro de Retransmissão Operação com Erro Time out Erro a) b) Transmissor Receptor Tempo Quadro ACK ACK Quadro Operação sem Erro ACK Transmissor Receptor Tempo Quadro ACK Quadro de Retransmissão Operação com Erro Time out Erro ACK Transmissor Receptor Tempo Quadro ACK Quadro de Retransmissão Operação com Erro Time out Transmissor Receptor Tempo Quadro ACK Quadro de Retransmissão Operação com Erro Time out Erro a) b) Figura 6.39 Protocolo stop-and-wait. Para haver um perfeito funcionamento do protocolo precisamos analisar a situação em que há erro no ACK recebido pelo transmissor. Neste caso, o transmissor detecta que houve o erro, descarta o quadro e espera esgotar o tempo do temporizador, para retransmitir o quadro, conforme mostrado na Fig. 6.40. Transmissor Receptor Tempo Quadro ACK Quadro de Retransmissão Time out Descarta ACK Erro Transmissor Receptor Tempo Quadro ACK Quadro de Retransmissão Time out Descarta ACK Erro Figura 6.40 Stop-and-wait: Erro em ACK. O protocolo acima opera de maneira adequada se o transmissor e o receptor possuem características semelhantes. Entretanto, a rede de computadores possui nós dissimilares, e um receptor poderá momentaneamente estar atarefado e demorar para enviar um ACK. Assim, poderá ocorrer a situação mostrada na Fig. 6.41. 146 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 O nó conclui erradamente que que o ACK é do quadro 1 Tempo Transmissor Receptor 0 0 1 0 Time out Retransmissão Atraso de processamento Erro ACK ACK O nó conclui erradamente que que o ACK é do quadro 1 Tempo Transmissor Receptor 0 0 1 0 Time out Retransmissão Atraso de processamento Erro O nó conclui erradamente que que o ACK é do quadro 1 Tempo Transmissor Receptor 0 0 1 0 Time out Retransmissão Atraso de processamento Erro ACK ACK Figura 6.41 Interpretação errada do ACK. Devido à sobrecarga momentânea do processador, o ACK chega ao transmissor após o esgotamento do tempo e o transmissor já retransmitiu o quadro numerado como 0. O transmissor recebendo o ACK, considera que o quadro retransmitido chegou corretamente e envia um outro quadro de número 1. O transmissor recebe novamente um ACK que considera ser do quadro 1, enquanto o receptor enviou o ACK do quadro retransmitido. Essa situação pode ser contornada, se os quadros e os ACKs forem numerados. Para o protocolo stop-and-wait basta somente duas numerações (0 e 1). A Fig. 6.42 mostra o protocolo funcionando corretamente. Tempo Transmissor Receptor 0 0 1 1 Time out Retransmissão Atraso de processamento. Erro ACK 0 ACK 0 O nó descarta este ACK Time out Figura 6.42 Quadros e ACKs numerados. Para analisar a eficiência deste esquema de controle, considere os parâmetros mostrados na Fig. 6.43. 147 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 T ran sm isso r R ecep to r T em p o τT AT P Cτ T P 2 + T A + T P Cτ Figura 6.43 Tempos envolvidos na transmissão e na recepção. Os tempos envolvidos na transmissãoe na recepção de um quadro na Fig.6.43 são: TP, o tempo de transmissão de um quadro; τ, o tempo de propagação no meio físico; TA, o tempo de transmissão de um ACK e TPC, o tempo de processamento no receptor. O esgotamento de tempo do temporizador deve ser no mínimo 2τ + TA + TPC, para que o quadro chegue ao receptor, seja processado e um ACK retorne ao transmissor. Supondo que o transmissor tenha sempre pacote para transmitir, a eficiência S pode ser dada por: S T T T P P PC = + + +2τ TA (6.9) Considere os seguintes valores: Quadro de informação = 1 000 bytes e quadro de ACK = 10 bytes. Distância entre o transmissor e receptor = 8 km. Velocidade propagação da onda no meio de transmissão = 5 µseg/Km. Tempo de processamento no receptor ,TPC = 20 µ seg. 1o caso: Taxa de transmissão = 8 Kbps T bits Kbps T Kbps seg S x x x P A= = = = = + + + ≅ − − − − 8000 8 1 80 8 10 1 1 2 40 10 20 10 10 1 2 6 6 2 seg. . 2o caso: Taxa de transmissão = 100 Mbps T bits Mbps T Mbps seg S P A= = = = = + + + ≅ 8000 100 80 80 100 0 8 80 80 80 20 0 8 0 4425 seg. µ µ, . , , O esquema é adequado para baixa taxa de transmissão. Entretanto, para altas taxas de transmissão, o esquema se torna ineficiente, devido ao fato do transmissor ficar muito tempo esperando ACK, sem poder enviar um novo quadro. 148 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 Um esquema para melhorar a deficiência apresentada no esquema anterior é chamado ARQ contínuo. Neste caso o transmissor envia continuamente os quadros de informação sem esperar os ACKs, como mostrado na Fig. 6.44. 0 1 2 3 4 5 ACK 0 ACK 1 ACK 2 ACK 3 ACK 4 ACK 5 Fig. 6.44 ARQ contínuo sem erro. A Fig. 6.44 mostra a operação do ARQ contínuo para o caso em que não há erro na transmissão. Para a situação de erro na transmissão, o tratamento pode ser feito de duas maneiras: rejeição seletiva (selective-reject) e volta-N (go-back N). No caso da rejeição seletiva, quando o quadro de informação contém erro, o receptor descarta esse quadro e não envia a confirmação referente àquele quadro, como mostrado na Fig. 6.45. O transmissor, que temporiza todos os quadros transmitidos, após o esgotamento do tempo retransmite o quadro. Neste esquema, os quadros recebidos podem chegar ao receptor em ordem não seqüencial. Em geral, os quadros não são independentes, e um conjunto de quadros corresponde a uma informação que deve ser enviada à camada superior. Assim, o receptor deve esperar o quadro que falta e juntamente com outros quadros, enviar à camada acima. Dessa maneira, o receptor necessita constantemente gerenciar o buffer, local onde os quadros são armazenados, e pode constituir em uma carga adicional de processamento não tolerável em muitos casos. ACK 0 ACK 2 ACK 3 ACK 1 ACK 4Erro 0 1 2 3 1 4 Time out Figura 6.45 ARQ contínuo com rejeição seletiva. Um esquema alternativo, para evitar o armazenamento e os quadros fora de ordem, é o volta N (go-back N). Neste esquema, quando o receptor detecta erro no quadro recebido descarta o quadro e envia um quadro de não confirmação (NACK) e descarta todos os outros quadros numerados fora de ordem, como mostrado na Fig. 6.46. O transmissor, após receber o NACK do quadro com erro, retransmite todos os quadros, a partir da numeração recebida no NACK. Se o NACK contiver erro, o transmissor descarta e aguarda a chegada de um novo NACK que o receptor enviará após esgotamento do tempo. O receptor, nesse caso, continuará a descartar todos os quadros fora de seqüência. 149 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 ACK 0 NACK 1 ACK 1 ACK 2Erro Quadros descartados 0 1 2 3 4 1 2 3 4 ACK 0 NACK 1 ACK 1 ACK 2Erro Quadros descartados 0 1 2 3 4 1 2 3 4 Figura 6.46 ARQ contínuo com go-back N. A Fig. 6.47 mostra a situação em que o ACK contém erro. A figura mostra o caso em que houve erro no ACK 3 e não foi recebido pelo transmissor. Entretanto, chegou o ACK 4. O transmissor entende que o quadro 3 chegou ao receptor, mas houve erro no ACK 3, e não necessita fazer retransmissões. Transmissor ACK 0 ACK 2 ACK 5 ACK 6 0 1 2 3 4 5 6 7 8 ACK 1 ACK 3 ACK 4Erro Receptor Tempo Figura 6.47 Erro no ACK. Controle de fluxo no protocolo ARQ Os quadros de informação recebidos na camada enlace de dados são repassados às camadas superiores. Em geral, as taxas com que essas camadas superiores podem receber informações são limitadas. Se essas taxas são menores do que o receptor está recebendo as informações, então o receptor necessita armazenar as informações em um buffer. Dependendo da taxa, o buffer pode sofrer transbordamento de quadros (overflow). Para evitar isso, o receptor, juntamente com o transmissor, necessita de um mecanismo de controle de fluxo de quadros de informação. Controle de fluxo baseado em Janela deslizante ( Sliding Window) Neste esquema, o transmissor pode transmitir até W quadros de informação continuamente, antes de receber um ACK do receptor. Considere um exemplo com tamanho de janela W = 3, como mostrado na Fig. 6.48. ACK 0 ACK 2 0 1 2 3 4 5 ACK 1 Transmissor Receptor Tempo Figura 6.48 Janela deslizante com W = 3. A figura mostra a situação em que o transmissor pára de transmitir após três quadros sucessivos. Quando o transmissor recebe o ACK 0, pode transmitir o quadro 3, e enviar o quadro 4 após receber ACK 1. Portanto, é como se tivesse uma janela que se movimenta mantendo 150 EE-981 Telefonia Prof. Motoyama 1º Semestre 2004 sempre até três quadros nela. Neste exemplo, após a transmissão do quadro 5, o transmissor necessita parar, pois não chegou mais ACK. Na operação com janela deslizante deve ser tomado um cuidado especial com a numeração dos quadros. Vamos considerar um exemplo em que o tamanho da janela W seja igual a 4, uma numeração seqüencial utilizando 2 bits e o protocolo go-back-N. Considere também o exemplo da Fig. 6.49. A figura mostra uma situação em que todos os ACKs são recebidos com erros e todos eles são descartados. Quando esgota o tempo do temporizador, o transmissor retransmite todos os 4 quadros. Como o receptor enviou os ACKs de todos os quadros recebidos, ele interpreta como novos quadros e não de retransmissões. Para evitar essa situação errônea, deve-se utilizar um tamanho de janela W menor do que 2n, onde n é número de bits de numeração. O receptor interpreta como um novo quadro e não de retransmissão. ACK 0 ACK 2 ACK 1 Transmissor Receptor Tempo 0 1 2 0 1 23 3 Time out ACK 3 Todos os ACKs com erros Figura 6.49 Numeração incorreta. No exemplo acima, para W = 3, pode-se evitar a operação incorreta como mostrado na Fig. 6.50. Um número é reservado para iniciar um novo quadro em uma nova janela. No exemplo da figura, o receptor interpreta a seqüência de quadros como quadros de repetição, pois aguardava o quadro de número 3. ACK 0 ACK 2 ACK 1 Transmissor Receptor Tempo 0 1 2 0 1 2 Time out Todos os ACKs com erros O receptor reconhece que são quadros de retransmissão, pois aguardava como a seqüência correta, o número 3 ACK 0 ACK 2 ACK 1 Transmissor Receptor Tempo 0 1 2 0 1 2 Time out Todos os ACKs com erros O receptor reconhece que são quadros de retransmissão, pois aguardava como a seqüência correta, o número 3 Figura 6.50 Numeração correta. Protocolo HDLC (High-level Data Link Control) É um protocolo que objetiva satisfazer os requisitos de procedimentos de enlace de dados de uma maneira bastante geral. Assim, o protocolo