Repodução parcial de Tutorial TELECO
http://www.teleco.com.br/tutoriais/tutorialatm/pagina_2.asp
ATM: Características
A tecnologia ATM utiliza a multiplexação e comutação de pacotes para prover um serviço de transferência de dados orientado a conexão, em modo assíncrono, para atender as necessidades de diversos tipos de aplicações de dados, voz, áudio e vídeo.
Diferentemente dos protocolos X.25 e Frame Relay, entre outros, o ATM utiliza um pacote de tamanho fixo denominado célula (cell). Uma célula possui 53 bytes, sendo 48 para a informação útil e 5 para o cabeçalho. Cada célula ATM enviada para a rede contém uma informação de endereçamento que estabelece uma conexão virtual entre origem e destino. Este procedimento permite ao protocolo implementar as características de multiplexação estatística e de compartilhamento de portas.
Na tecnologia ATM as conexões de rede são de 2 tipos: UNI (User-Network Interface), que é a conexão entre equipamentos de acesso ou de usuário e equipamentos de rede, e NNI (Network Node Interface), que é a conexão entre equipamentos de rede. No primeiro caso, informações de tipo de serviço são relevantes para a forma como estes serão tratados pela rede, e referem-se a conexões entre usuários finais. No segundo caso, o controle de tráfego é função única e exclusiva das conexões virtuais configuradas entre os equipamentos de rede.
O protocolo ATM foi concebido através de uma estrutura em camadas, porém sem a pretensão de atender ao modelo OSI. A figura abaixo apresenta sua estrutura e compara com o modelo OSI.
No modelo ATM todas as camadas possuem funcionalidades de controle e de usuário (serviços), conforme apresentado na figura. A descrição de cada camada e apresentada a seguir:
- Física: provê os meios para transmitir as células ATM. A sub-camada TC (Transmission Convergence) mapeia as células ATM no formato dos frames da rede de transmissão (SDH, SONET, PDH, etc.). A sub-camada PM (Physical Medium) temporiza os bits do frame de acordo com o relógio de transmissão.
- ATM: é responsável pela construção, processamento e transmissão das células, e pelo processamento das conexões virtuais. Esta camada também processa os diferentes tipos e classes de serviços e controla o tráfego da rede. Nos equipamentos de rede esta camada trata todo o tráfego de entrada e saída, minimizando o processamento e aumentando a eficiência do protocolo sem necessitar de outras camadas superiores.
- AAL: é responsável pelo fornecimento de serviços para a camada de aplicação superior. A sub-camada CS (Convergence Sublayer) converte e prepara a informação de usuário para o ATM, de acordo com o tipo de serviço, além de controlar as conexões virtuais. A sub-camada SAR (Segmentation and Reassembly) fragmenta a informação para ser encapsulada na célula ATM. A camada AAL implementa ainda os respectivos mecanismos de controle, sinalização e qualidade de serviço.
Os parágrafos a seguir descrevem as conexões virtuais, a célula ATM e os tipos de serviços.
Conexões Virtuais (Virtual Connections)
A tecnologia ATM é baseada no uso de conexões virtuais. O ATM implementa essas conexões virtuais usando 3 conceitos:
- TP (Transmission Path): é a rota de transmissão física (por exemplo, circuitos das redes de transmissão SDH/SONET) entre 2 equipamentos da rede ATM.
- VP (Virtual Path): é a rota virtual configurada entre 2 equipamentos adjacentes da rede ATM. O VP usa como infraestrutura os TPs. Um TP pode ter um ou mais VPs. Cada VP tem um identificador VPI (Virtual Paths Identifier), que deve ser único para um dado TP.
- VC (Virtual Channel): é o canal virtual configurado também entre 2 equipamentos adjacentes da rede ATM. O VC usa como infraestrutura o VP. Um VP pode ter um ou mais VCs, Cada VC tem um identificador VCI (Virtual Channel Identifier), que também deve ser único para um dado TP.
A figura a seguir ilustra esses conceitos.
A partir desses conceitos, definem-se 2 tipos de conexões virtuais:
- VPC (Virtual Paths Connection): é a conexão de rota virtual definida entre 2 equipamentos de acesso ou de usuário. Uma VPC é uma coleção de VPs configuradas para interligar origem e destino.
- VCC (Virtual Channel Connection): é a conexão de canal virtual definida entre 2 equipamentos de acesso ou de usuário. Uma VCC é uma coleção de VCs configuradas para interligar origem e destino.
Essas conexões são sempre bidirecionais, embora a banda em cada direção possa ter taxas distintas ou até mesmo zero. Aos serem configuradas, apenas os identificadores VPI/VCI nas conexões UNI da origem e do destino tem os mesmos valores. Nas conexões NNI entre equipamentos os valores de VPI/VCI são definidos em função da disponibilidade de VPs ou VCs, conforme mostra a figura a seguir.
O ATM é um protocolo orientado a conexão. A rede estabelece uma conexão através de um procedimento de sinalização, ou seja, um pedido de estabelecimento de conexão é enviado pela origem até o destinatário através da rede. Se o destinatário concorda com a conexão, um VCC/VPC é estabelecido na rede, definido o VPI/VCI da conexão entre as UNI de origem e de destino, e alocando os recursos dos VPs e/ou VCs ao longo da rota.
Como o ATM usa a técnica de roteamento para enviar as células, ao configurar um VPC ou VCC, o sistema usa como parâmetros os endereços ATM dos equipamentos de origem e destino, e o VPI/VCI adotado. Essas informações são então enviadas para as tabelas de roteamento dos equipamentos de rede, que usam para encaminhar as células.
Em cada equipamento as células dos VPCs são encaminhadas de acordo com o seu VPI, e as células dos VCCs de acordo com a combinação VPI/VCI.
A partir dessas conexões virtuais o ATM implementa todos os seus serviços. Em especial, o ATM implementa também os circuitos virtuais (VC) mais comuns, quais sejam:
- PVC (Permanent Virtual Circuit): esse circuito virtual é configurado pelo operador na rede através do sistema de Gerência de Rede, como sendo uma conexão permanente entre 2 pontos. Seu encaminhamento através dos equipamentos da rede pode ser alterado ao longo do tempo devido à falhas ou reconfigurações de rotas, porém as portas de cada extremidade são mantidas fixas e de acordo com a configuração inicial.
- SVC (Switched Virtual Circuit): esse circuito virtual disponibilizado na rede de forma automática, sem intervenção do operador, como um circuito virtual sob demanda, para atender, entre outras, as aplicações de Voz que estabelecem novas conexões a cada chamada. O estabelecimento de uma chamada é comparável ao uso normal de telefone, onde a aplicação de usuário especifica um número de destinatário para completar a chamada, e o SVC é estabelecido entre as portas de origem e destino.
Estrutura da Célula
A célula do protocolo ATM utiliza a estrutura simplificada com tamanho fixo de 53 bytes apresentada na figura a seguir.
O campo de Cabeçalho carrega as informações de controle do protocolo. Devido a sua importância, possui mecanismo de detecção e correção de erros para preservar o seu conteúdo. Ele é composto por 5 bytes com as seguintes informações:
- VPI (Virtual Path Identifier), com 12 bits, representa o número da rota virtual até o destinatário da informação útil, e tem significado local apenas para a porta de origem. Nas conexões UNI o VPI pode ainda ser dividido em 2 campos: o GFC (Generic Flow Control), com 4 bits, que identifica o tipo de célula para a rede, e o VPI propriamente dito, com 8 bits.
- VCI (Virtual Channel Identifier), com 16 bits, representa o número do canal virtual dentro de uma rota virtual específica. Também se refere ao destinatário da informação útil e tem significado local apenas para a porta de origem.
- PT (Payload Type), com 3 bits, identifica o tipo de informação que a célula contém: de usuário, de sinalização ou de manutenção.
- CLP (Cell Loss Priority), com 1 bit, indica a prioridade relativa da célula. Células de menor prioridade são descartadas antes que as células de maior prioridade durante períodos de congestionamento.
- HEC (Header Error Check), com 8 bits, é usado para detectar e corrigir erros no cabeçalho.
O campo de Informação Útil, com 384 bits(48 bytes) carrega as informações de usuário ou de controle do protocolo. A informação útil é mantida intacta ao longo de toda a rede, sem verificação ou correção de erros. A camada ATM do protocolo considera que essas tarefas são executadas pelos protocolos das aplicações de usuário ou pelos processos de sinalização e gerenciamento do próprio protocolo para garantir a integridade desses dados.
Quando é informação de usuário, o conteúdo desse campo é obtido a partir da fragmentação da informação original executada na camada AAL de acordo com o serviço. O campo pode ainda servir de preenchimento nulo, nos casos de serviços da taxa constante de bits.
Quando a informação é de controle do protocolo, o primeiro byte é usado como campo de controle e os demais bytes contem informação de sinalização, configuração e gerenciamento da rede.
Classes de Serviços
O tratamento dos diversos tipos de serviços do ATM é feito na camada AAL. Para tanto foram definidos tipos de serviços, baseado na qualidade de serviço esperada: CBR, VBR, ABR e UBR.
O serviço CBR (Constant Bit Rate) é aplicado a conexões que necessitam de banda fixa (estática) devido aos requisitos de tempo bastante apertados entre a origem e o destino. Aplicações típicas deste serviço são: áudio interativo (telefonia), distribuição de áudio e vídeo (televisão, pay-per-view, etc), áudio e vídeo on demand, e emulação de circuitos TDM.
O serviço VBR (Variable Bit Rate) pode ser de tempo real ou não. Na modalidade tempo real (rt-VBR), é aplicado a conexões que tem requisitos apertados de tempo entre origem e destino, porém a taxa de bits pode variar. Aplicações típicas deste serviço são voz com taxa variável de bits e vídeo comprimido (MPEG, por exemplo).
Na modalidade não tempo real (nrt-VBR), o VBR pode ser utilizado com ou sem conexão, a destina-se a conexões que, embora críticas e com requisitos de tempo apertados, podem aceitar variações na taxa de bits. Aplicações típicas deste serviço são os sistemas de reserva de aviação, home banking, emulação de LANs e interligação de redes com protocolos diversos (interação com redes Frame Relay, etc.).
O serviço ABR (Available Bit Rate) é aplicado a conexões que transportam tráfego em rajadas que podem prescindir da garantia de banda, variando a taxa de bits de acordo com a disponibilidade da rede ATM. Aplicações típicas deste serviço também são as interligações entre redes (com protocolo TCP/IP, entre outros) e a emulação de LANs onde os equipamentos de interfaces têm funcionalidades ATM.
O serviço UBR (Unspecified Bit Rate) é aplicado a conexões que transportam tráfego que não tem requisitos de tempo real e cujos requisitos e atraso ou variação do atraso são mais flexíveis. Aplicações típicas deste serviço também são as interligações entre redes e a emulação de LANs que executam a transferência de arquivos e emails