SlideShare une entreprise Scribd logo
1  sur  68
MODELO OSI
Introdução

O final da década de 70 apresentava um panorama curioso em termos de comunicação
de dados em redes de computadores: por um lado, uma perspectiva de crescimento
vertiginoso causado pelo investimento e desenvolvimento que estavam sendo feitos, mas
por outro lado uma tendência que poderia acarretar em uma profunda crise no setor, a
heterogeneidade de padrões entre os fabricantes, praticamente impossibilitando a
interconexão entre sistemas de fabricantes distintos.

Então os fabricantes começaram a perseguir alguns objetivos necessários para a
implementação de um sistema aberto. Esses objetivos são:

   •   Interoperabilidade: capacidade que os sistemas abertos possuem de troca de
       informações entre eles, mesmo que sejam fornecidos por fabricantes diversos;
   •   Interconectividade: é a maneira através da qual se podem conectar computadores
       de fabricantes distintos;
   •   Portabilidade da aplicação: é a capacidade de um software de rodar em várias
       plataformas diferentes;
   •   "Scalability": capacidade de um software rodar com uma performance aceitável em
       computadores de capacidades diversas, desde computadores pessoais até
       supercomputadores.

Para se atingir estes objetivos, a ISO (International Organization for Standardization)
passou a se ocupar em criar um padrão de arquitetura aberta e baseada em camadas. Foi
então definido o Modelo de Referência para Interconexão de Sistemas Abertos
(Reference Model for Open Systems Interconection - RM OSI).

A utilização de um ambiente de sistema aberto nos oferece algumas vantagens, como:

   •   Liberdade de escolha entre soluções de diversos fabricantes;
   •   Acesso mais rápido a novas tecnologias e a preços mais acessíveis, já que é mais
       barato e rápido fabricar produtos baseados em uma plataforma padrão;
   •   Redução de investimentos em novas máquinas, já que os sistemas e os softwares
       de aplicação são portáveis para os vários tipos de máquinas existentes.

A adoção de um modelo baseado em camadas também não é arbitrária. Considerando
que uma rede de computadores tem como objetivo o processamento de tarefas
distribuídas pela rede de forma harmônica e cooperativa entre os vários processos de
aplicação, o projeto desta deve levar em conta vários fatores, como:

   •   Considerar todos os eventos possíveis de acontecer durante a comunicação;
   •   Conhecer todos os efeitos e causas destes eventos;
   •   Especificar em detalhes todos os aspectos técnico-operacionais dos meios físicos
       a serem utilizados como suporte à comunicação;
   •   Detalhes das próprias aplicações a serem executadas.




                                          1
Podemos perceber, então, que o problema é extremamente complexo e abrangente. A fim
de se lidar com esta complexidade (facilitando a implementação e manutenção), projeta-
se à rede como um conjunto de camadas.

Este conjunto de camadas é hierárquico, ou seja, cada camada baseia-se na camada
inferior [Moura 86]. Reduzindo-se o projeto global da rede ao projeto de cada uma das
camadas, simplifica-se consideravelmente o trabalho de desenvolvimento e de
manutenção. O projeto de uma camada é restrito ao contexto dessa camada e supõe que
os problemas fora deste contexto já estejam devidamente resolvidos.

Na realidade existem duas vantagens práticas na utilização de uma arquitetura em
camadas. Em primeiro lugar, a complexidade do esforço global de desenvolvimento é
reduzida através de abstrações (não interessa para uma determinada camada como as
demais implementam o fornecimento de seus serviços, só o que elas oferecem). Na
arquitetura hierárquica, a camada (N) sabe apenas que existem as camadas (N-1),
prestadoras de determinados serviços e a camada (N+1), que lhe requisita os serviços. A
camada (N) não toma conhecimento da existência das camadas (N±2), (N±3), etc.

O segundo aspecto é relacionado com a independência entre as camadas. A camada (N)
preocupa-se apenas em utilizar os serviços da camada (N-1), independentemente do seu
protocolo. É assim que uma camada pode ser alterada sem mudar as demais (facilidade
de manutenção) - desde que os serviços que ela presta não sejam modificados. É assim
também que novas aplicações podem ser implementadas, na camada apropriada,
aproveitando os mesmos serviços já fornecidos pelas outras camadas (redução dos
esforços para evoluções).

Porém a elaboração de um sistema aberto passa por algumas etapas obrigatórias que
podemos observar claramente na definição do modelo OSI, da ISO:

   •   Definição do modelo do sistema aberto (padrão para arquitetura do sistema
       aberto);
   •   Definição dos padrões dos componentes que fazem parte do modelo (padrões de
       interoperabilidade e portabilidade), não só os relacionados à comunicação, mas
       também alguns não relacionados, como estrutura de armazenamento de dados,
       etc;
   •   Seleção dos perfis funcionais.

Podemos observar que o modelo OSI da ISO corresponde exatamente ao primeiro item
citado acima. O modelo OSI é um modelo de referência e define apenas a arquitetura do
sistema. O padrão criado para o modelo OSI, então, define exatamente o que cada
camada deve fazer, mas não define como isto será feito, ou seja, define os serviços que
cada camada deve prestar, mas não o protocolo que o realizará. Este primeiro passo já
está bem definido pela ISO.

A definição dos protocolos de cada camada, então, fica por conta do segundo passo. Esta
parte também está definida pela ISO, mas é realizado por grupos de estudo diversos.
Este passo é uma tarefa muito dinâmica, pois novas tecnologias de transmissão surgem a
todo instante. Portanto por um lado temos alguns padrões bem documentados, mas por
outro, temos tecnologias emergentes que precisam ser adaptadas às condições do
modelo OSI e ainda estão em processo de definição.



                                          2
Já a terceira etapa não é uma fase de responsabilidade da ISO. Esta etapa de definição
de perfis funcionais é realizada por cada país, que escolhe os padrões que lhe cabem
baseados em condições tecnológicas, base instalada, visão futura, etc. Por exemplo, no
Brasil temos o Perfil Funcional do Governo Brasileiro. A escolha do Perfil Funcional é uma
etapa importante, pois apesar de dois sistemas seguirem o Modelo OSI, se eles adotarem
perfis diferentes, eles nunca vão conseguir interoperar.

A arquitetura OSI foi desenvolvida a partir de três elementos básicos [Moura 86]:

   •   os processos de aplicação existentes no ambiente OSI;
   •   as conexões que ligam os processos de aplicação e que lhes permitem trocar
       informações;
   •   os sistemas.




                 Figura 1: Processos de aplicação, conexões e sistemas

O desenho abaixo nos dá uma idéia da arquitetura de uma máquina pertencente a um
sistema de comunicação:




                    Figura 2: Arquitetura de uma máquina do sistema


                                            3
Hardware: provê a infra-estrutura necessária (no nível mais baixo) para o processamento
da aplicação, como a manipulação de bits, acesso a disco, etc. · Sistema operacional:
provê os serviços básicos de acesso a hardware, etc. · Gerenciamento de dados: cuida de
tarefas como o acesso, manipulação e troca de vários tipos de dados. Uma consistência
nesta tarefa é um grande passo rumo à portabilidade de aplicações. Existem várias
formas de implementação de acesso a bancos de dados, mas a mais comum e aceita
pela indústria é a SQL (Structure Query Language). ·

Linguagem: tem sido feitos esforços em relação à criação de uma linguagem com
independência da plataforma, de forma a prover a portabilidade de código. · Interface com
o usuário: um dos principais fatores de portabilidade, já que provê a interface com o
usuário da aplicação. Cada vez mais estão sendo desenvolvidas interfaces gráficas e
orientadas a objetos baseadas em janelas, ícones e menus.

Os principais padrões para desenvolvimento de interfaces gráficas são X Window e Motif.
   • Comunicação: à parte de comunicação é o objeto principal do nosso estudo. Ela
       vai prover a comunicação e interoperação entre máquinas e sistemas diferentes,
       cuidando de características como padrões de interoperação, endereçamento, etc.

O modelo OSI, então, se encaixa na Figura 2 como um conjunto de funções que
possibilitam que máquinas distintas possam se comunicar e trocar informações. Ele
possui sete camadas (Figura 3), onde cada camada é responsável por uma determinada
função específica. Os princípios utilizados para se chegar a estas camadas são
[Tanenbaum 94]:

   •   Uma camada deve ser criada onde é necessário um nível de abstração diferente;
   •   Cada camada deve desempenhar uma função bem definida;
   •   A função de cada camada deve ser definida tendo em vista a definição de
       protocolos padrões internacionais;
   •   As fronteiras entre as camadas devem ser escolhidas de forma a minimizar o fluxo
       de informações através das interfaces;
   •   O número de camadas deve ser grande o suficiente para que não seja preciso
       agrupar funções em uma mesma camada por necessidade, e pequeno o suficiente
       para que a arquitetura fique manejável.

Cada camada é usuária dos serviços prestados pela camada imediatamente inferior e
presta serviços para a camada imediatamente superior. Esta troca de informações entre
as camadas adjacentes ocorre por meio da troca de primitivas de serviços nas interfaces
entre as camadas.

Apesar do modelo OSI estar dividido em sete níveis, pode-se considerar genericamente
que as três camadas mais baixas cuidam dos aspectos relacionados à transmissão
propriamente dita e a camada de transporte lida com a comunicação fim-a-fim, enquanto
que as três camadas superiores se preocupam com os aspectos relacionados à
aplicação, já em nível de usuário.

A comunicação entre sistemas ocorre em nível de camadas, ou seja, a camada de
aplicação do sistema A se comunica com a camada de aplicação do sistema B e assim
por diante até o nível físico, onde ocorre a comunicação física entre os sistemas.




                                           4
Figura 3: Modelo OSI

Uma maneira bastante fácil e simplista de se enxergar a funcionalidade de um modelo em
camadas, como o modelo OSI, é imaginar que cada camada tem como função adicionar
um cabeçalho aos dados do usuário a serem transmitidos para outro sistema (Figura 4).
Deste modo a função de cada camada do outro sistema é exatamente a inversa, ou seja,
retirar os cabeçalhos dos dados que chegam e entregá-los ao usuário em sua forma
original.




                   Figura 4: Transferência de Dados entre Camadas



                                          5
Os dados entregues pelo usuário à camada de aplicação do sistema recebem a
denominação de SDU (Service Data Unit). A camada de aplicação, então, junta a SDU
(no caso, os dados do usuário) um cabeçalho chamado PCI (Protocol Control
Information). O objeto resultante desta junção é chamado de PDU (Protocol Data Unit),
que corresponde à unidade de dados especificada de um certo protocolo da camada em
questão.

Primitivas de Serviços

As primitivas de serviços são informações trocadas entre duas camadas adjacentes de
forma a realizar um serviço. No modelo OSI são definidas quatro tipos de primitivas:

   •   Pedido (Request): utilizada para solicitar ou ativar um determinado serviço;
   •   Indicação (Indication): informa a ocorrência de um determinado evento;
   •   Resposta (Response): utilizada para responder a um determinado evento;
   •   Confirmação (Confirmation): utilizada para confirmar a execução de um serviço
       solicitado.

As primitivas possuem parâmetros de entrada e saída. Por exemplo, em um pedido de
conexão, os parâmetros podem especificar a máquina à qual se conectar, o tipo de
serviço desejado e o tamanho máximo de mensagem a ser utilizada e os parâmetros em
uma indicação de conexão podem conter a identidade do solicitante, o tipo de serviço e o
tamanho máximo de mensagem proposto. Quem cuida dos detalhes desta negociação é o
protocolo. Por exemplo, caso duas propostas para o tamanho máximo das mensagens
trocadas seja conflitante, o protocolo deve decidir qual das duas será aceita.

Os serviços prestados podem ser basicamente de dois tipos: confirmado e não
confirmado. No serviço confirmado, há um pedido, uma indicação, uma resposta e uma
confirmação. Já no serviço não confirmado, há apenas um pedido e uma indicação. Um
exemplo de um serviço confirmado é o estabelecimento de uma conexão, enquanto que a
desconexão é um serviço não confirmado. Vejamos o exemplo de um serviço de conexão
na Figura 5.




             Figura 5: Diagrama de Tempo de Estabelecimento de Conexão



                                           6
Este serviço pode ser descrito da seguinte forma:

   •   Request.CONEXÃO - solicita o estabelecimento de uma conexão;
   •   Indication.CONEXÃO - informa à parte chamada;
   •   Response.CONEXÃO - entidade chamada aceita ou rejeita chamadas;
   •   Confirmation.CONEXÃO - indica ao solicitante se a chamada foi aceita;
   •   Request.DADOS - solicita a transmissão de dados;
   •   Indication.DADOS - avisa sobre a chegada de dados;
   •   Request.DESCONEXÃO - solicita que a conexão seja liberada;
   •   Indication.DESCONEXÃO - informa ao parceiro sobre o pedido.

Um exemplo muito didático é a analogia com o sistema telefônico. Por exemplo, você liga
para uma pessoa e a convida para sair:

   •   Request.CONEXÃO - você disca o telefone da pessoa;
   •   Indication.CONEXÃO - o telefone dela toca;
   •   Response.CONEXÃO - ela atende ao telefone;
   •   Confirmation.CONEXÃO - você ouve o sinal de chamada parar de tocar;
   •   Request.DADOS - você convida a pessoa para sair;
   •   Indication.DADOS - ela ouve seu convite;
   •   Request.DADOS - ela responde que sim;
   •   Indication.DADOS - você ouve a aceitação dela;
   •   Request.DESCONEXÃO - você desliga o telefone;
   •   Indication.DESCONEXÃO - ela ouve e desliga também.




               Figura 6: Diagrama de Tempo da Conversação Telefônica

A camada N é o usuário, ou seja, você e a pessoa com quem estão falando. A camada
N-1 é a operadora do serviço. De um modo bastante simplificado, este exemplo nos
mostra a troca de primitivas em uma conversação genérica, mas que pode ser
perfeitamente aplicada a situações mais complexas, como o modelo OSI.

Serviços e Protocolos

Faz-se necessário neste ponto deixar bem clara a distinção entre serviços e protocolos.
Um serviço é um conjunto de primitivas que uma camada oferece à camada superior
adjacente, ou seja, é uma interface entre duas camadas onde a inferior se comporta como
provedora do serviço e a superior a usuária do serviço. O serviço define as operações que


                                            7
a camada está preparada para realizar em nome de seus usuários, mas não diz nada a
respeito do modo como isso deve ser implementado.

Já um protocolo é um conjunto de regras que governa o formato e significado dos
quadros, pacotes ou mensagens trocados entre entidades parceiras dentro de uma
mesma camada. Os protocolos são utilizados para implementar os serviços, não sendo
diretamente visíveis aos usuários, ou seja, o protocolo utilizado pode ser modificado,
desde que o serviço oferecido ao usuário permaneça o mesmo.

Devemos sempre lembrar que ao se falar em serviços, estamos falando em camadas
adjacentes (níveis diferentes, no mesmo sistema), e protocolo falamos de entidades pares
(no mesmo nível, em sistemas diferentes).




                     Figura 7: Serviços e protocolos no modelo OSI

Os serviços providos pela camada (N) são disponíveis para a entidade (N+1) através dos
SAP´s (Service Access Point). Os SAP´s são interfaces lógicas entre as entidades (N) e
(N+1). Portanto, quando a entidade (N+1) precisa utilizar o serviço provido pela camada
(N), ela busca este no SAP(N).

As informações entre entidades (N+1) são trocadas através de uma associação chamada
conexão (N) , estabelecida na camada (N) usando o protocolo (N). A Figura 8 ilustra este
conceito.




                              Figura 8: SAP´s e conexões




                                           8
Camada Física

A camada física é a única camada que possui acesso físico ao meio de transmissão da
rede devendo, portanto, se preocupar com fatores como as especificações elétricas,
mecânicas, funcionais e procedurais da interface física entre o equipamento e o meio de
transmissão, ou seja, a camada física tem como função básica à adaptação do sinal ao
meio de transmissão.

· mecânicas: propriedades físicas da interface com o meio físico de transmissão,
incluindo, por exemplo, o tipo de conector utilizado; · elétricas: relacionam-se com a
representação de um bit em termos de, por exemplo, nível de tensão utilizado e taxa de
transmissão de bits; · funcionais: definem as funções a serem implementadas por esta
interface; · procedurais: especificam a seqüência de eventos trocados durante a
transmissão de uma série de bits através do meio de transmissão.

A camada física possui as seguintes funções:

Estabelecimento/encerramento de conexões: ativa e desativa conexões físicas mediante
a solicitação de entidades da camada de enlace; · transferência de dados: a unidade de
transmissão utilizada é o bit. O nível físico tem como função transmitir os bits na mesma
ordem em que chegam da camada de enlace (no sistema de origem) e entregá-los à
camada de enlace na mesma ordem que chegaram (no sistema de destino); ·
gerenciamento das conexões: gerência da qualidade de serviço das conexões físicas
estabelecidas. Deve monitorar taxa de erros, disponibilidade de serviço, taxa de
transmissão, atraso de trânsito etc.

Os padrões de nível físico utilizado são, por exemplo, X.21, X.21 bis, V.24, V.28, RS-232
I.430, I.431 etc.

Camada de Enlace

A camada de enlace tem o objetivo de prover uma conexão confiável sobre um meio
físico. Sua função básica é detectar e, opcionalmente, corrigir erros que por ventura
ocorram no nível físico. As suas principais funções são:

   •   Estabelecimento e liberação da conexão de enlace sobre conexões físicas ativas;
   •   Splitting da conexão de enlace: desta forma pode haver uma conexão de enlace
       sobre várias conexões físicas;
   •   Montagem e delimitação de quadros (framing): montagem de quadros a partir de
       unidades de quadros de serviços provindas da camada de rede e reconhecimento
       de quadros a partir da cadeia de bits vinda do nível físico;
   •   Controle de fluxo: controla a taxa de transmissão dos quadros, evitando que o
       sistema transmissor envie dados a uma taxa maior do que o receptor consegue
       processar. Utiliza para isso mecanismos como stop-and-wait, positive
       acknowledgment e sliding window.
   •   Controle de acesso: gerência do acesso ao meio de transmissão;
   •   Controle de erro: a camada de enlace deve detectar erros de transmissão, de
       formato e de operação devidos a problemas de conexão física ou mau
       funcionamento da própria camada. Os erros mais comumente detectados são
       erros devido a perdas, duplicação, não-ordenação e danificação de quadros.



                                           9
•   Controle de seqüência: as unidades de dados de serviço de enlace devem ser
       entregues à entidade de rede de destino na mesma ordem em que são recebidas
       da entidade de rede de origem;
   •   Gerenciamento: a camada de enlace deve exercer algumas funções de
       gerenciamento relacionadas à qualidade de serviço prestado, caracterizada por:
       tempo médio entre erros irrecuperáveis, taxa de erro residual decorrente da
       alteração, perda, duplicação e não-ordenação dos quadros, disponibilidade do
       serviço, atraso de trânsito e throughput (vazão).

O protocolo de enlace mais conhecido é o HDLC, antecessor de outros como LAPB,
LAPD e LLC.

Camada de Rede

A camada de rede deve tornar transparente para a camada de transporte a forma como
os recursos dos níveis inferiores são utilizados para implementar conexões de rede. Deve
também equalizar as diferenças entre as diversas sub-redes utilizadas de forma a
fornecer um serviço único a seus usuários (independente da rede utilizada).
Suas principais funções são:

   •   Roteamento: determinação das rotas apropriadas para a transmissão dos dados
       entre dois endereços (origem e destino) através de algoritmos de roteamento;
   •   Multiplicação da conexão de rede: várias conexões de rede podem ser
       multiplexadas sobre uma única conexão de enlace, a fim de otimizar a utilização
       desta última;
   •   Segmentação e blocagem: caso as sub-redes envolvidas em uma comunicação
       fim-a-fim possuam diversos tipos e tamanhos de quadros, a camada de rede deve
       exercer funções de segmentação de quadros e remontagem destes no destino;
   •   Controle de erro: detecta e, dependendo da qualidade do serviço exigida, até
       corrige erros de alteração, perda, duplicação e não-ordenação das unidades de
       dados;
   •   Seqüenciação: a camada de rede é responsável por manter a ordem das unidades
       de dados de serviço de rede a serem transmitidas na rede e recebidas pela
       camada de transporte no destino;
   •   Controle de fluxo: controle da taxa em que os dados são transmitidos, de forma
       que o transmissor não envie mais dados do que o receptor tenha capacidade de
       receber;
   •   Transferência de dados expressos: a transmissão de dados expressos tem por
       finalidade estabelecer prioridade de transmissão para alguns dados (como
       sinalização e interrupção) sobre os dados normais;
   •   Seleção de serviço: permite a escolha do serviço de rede, de modo a garantir que
       os serviços oferecidos pelas diversas sub-redes sejam equivalentes;
   •   Gerenciamento: a camada de rede deve efetuar tarefas de gerenciamento
       relacionadas à qualidade de serviço oferecida, caracterizada pelos parâmetros
       citados acima.

A camada de rede pode prestar serviços orientados à conexão (CONS - Connection
Oriented Network Service) ou serviços não-orientados à conexão (CLNS - Connection
Less Oriented Network Service). Um exemplo de protocolo utilizado na camada de rede é
o X.25.


                                          10
Camada de Transporte

A camada de transporte provê mecanismos que possibilitam a troca de dados fim-a-fim,
ou seja, a camada de transporte não se comunica com máquinas intermediárias na rede,
como pode ocorrer com as camadas inferiores.

As principais funções da camada de transporte são:

   •   Estabelecimento e liberação da conexão de transporte: para se estabelecer à
       conexão, devem ser negociadas a classe de protocolo a ser utilizada, o tamanho
       máximo das unidades de dados de protocolo, a utilização ou não do serviço de
       transferência de dados expressos, parâmetros de qualidade de serviço
       (throughput, atraso de trânsito, prioridade, taxa de erro residual, etc) etc;
   •   Controle de seqüência e controle de erro: numeração e reconhecimento explícito
       dos dados a fim de evitar perdas, duplicação ou entrega fora de ordem;
   •   Controle de fluxo: a técnica de controle de fluxo utilizada na camada de transporte
       é a técnica de alocação de crédito, parecida com a janela deslizante;
   •   Segmentação, blocagem e concatenação fim-a-fim: adapta o tamanho da unidade
       de dados utilizado para as camadas de transmissão;
   •   Monitoração da qualidade do serviço: a monitoração da qualidade de serviço deve
       ser constante, caso contrário deve ser gerada uma notificação à camada de
       sessão;
   •   Transferência de dados expressos: a camada de transporte deve possibilitar esta
       funcionalidade;
   •   Gerenciamento: funções de gerenciamento relacionadas à qualidade de serviço
       prestado às entidades de sessão.

As funções implementadas pela camada de transporte dependem da qualidade de serviço
desejada.
Foram especificadas, então, cinco classes de protocolos orientados à conexão:

   •   Classe 0: simples, sem nenhum mecanismo de detecção e recuperação de erros;
   •   Classe 1: recuperação de erros básicos sinalizados pela rede;
   •   Classe 2: permite que várias conexões de transporte sejam multiplexadas sobre
       uma única conexão de rede e implementa mecanismos de controle de fluxo;
   •   Classe 3: recuperação de erros sinalizados pela rede e multiplexação de várias
       conexões de transporte sobre uma conexão de rede;
   •   Classe 4: detecção e recuperação de erros e multiplexação de conexões de
       transporte sobre uma única conexão de rede.

Camada de Sessão

A camada de sessão é a responsável pelo estabelecimento de sessões entre dois
usuários permitindo o transporte ordinário de dados (assim como a camada de
transporte), porém com alguns serviços mais refinados, que podem ser úteis em algumas
aplicações.

Alguns serviços que a camada de sessão deve prover são, por exemplo:




                                           11
•   Gerência do controle de diálogo: a troca de informações entre entidades em um
       circuito half-duplex deve ser controlada através da utilização de tokens. A camada
       de sessão é responsável pela posse e entrega destes tokens, ajudando a controlar
       de quem é a vez de transmitir;
   •   Sincronização: para se evitar, por exemplo, a perda de um volume de dados muito
       grandes que estão sendo transmitidos em uma rede não confiável, utiliza-se o
       conceito de ponto de sincronização. O ponto de sincronização corresponde a
       marcas lógicas posicionadas ao longo do diálogo. Toda vez que um usuário
       recebe um ponto de sincronização, deve enviar uma resposta, confirmando que
       este foi recebido. Caso a transmissão, por algum motivo, seja interrompida, ela
       pode ser reiniciada a partir do último ponto de sincronização confirmado;
   •   Gerenciamento da camada de sessão.

Camada de Apresentação

A camada de apresentação, ao contrário das camadas inferiores, já não se preocupa com
os dados em nível de bits, mas sim com a sua sintaxe, ou seja, sua representação. Nela é
definida a sintaxe abstrata, ou seja, a forma como os tipos e os valores dos dados são
definidos, independentemente do sistema computacional utilizado e a sintaxe de
transferência, ou seja, a maneira como é realizada esta codificação. Por exemplo, através
da sintaxe abstrata define-se que um caráter A deve ser transmitido. A sintaxe de
transferência especifica, então, como este dado será codificado em ASCII ou EBCDIC ao
ser entregue à camada de sessão.

Outras funções que a camada de apresentação pode executar são a criptografia e
compressão de dados.

Camada de Aplicação

Basicamente, as funções da camada de aplicação são aquelas necessárias à adaptação
dos processos de aplicação ao ambiente de comunicação. A camada de aplicação é
estruturada modularmente para permitir a flexibilidade das funções e de forma, para se
determinar os requisitos de comunicação de cada aplicação distribuída. A camada de
aplicação deve seguir o descrito na norma ISO 9545. Ela é formada por várias ASE's
(Elemento de Serviço de Aplicação), que são os componentes básicos das AE's (Entidade
de Aplicação). Uma AE é a função que um processo de aplicação utiliza para se
comunicar com os seus pares. Um processo de aplicação pode utilizar diversas AE's,
cada uma das quais provendo um conjunto de definições de cada uma das funções e das
regras que governam o uso destas funções.

O componente básico de uma AE é um Elemento de Serviço de Aplicação (ASE). Um
ASE é um elemento que define uma função ou um conjunto de funções que ajudam na
realização da aplicação. Desta forma, pode-se imaginar que um AE é um grande
programa feito de muitos sub-programas ou procedimentos, que são os ASE.

As principais funções da camada de aplicação são:

   •   Seleção do modo de diálogo (full duplex ou half duplex);
   •   Determinação da qualidade de serviço aceitável na conexão: retardo de
       transferência, taxa de erro tolerável, etc;



                                           12
•   Identificação dos futuros parceiros na comunicação: por nome ou endereço;
   •   Especificação de aspectos relativos à segurança: controle de acesso, integridade
       de dados, etc.

Elementos de Serviço de Aplicação de Propósito Geral

Aqui serão apresentados os elementos de serviço de aplicação que exercem funções
básicas, podendo ser utilizados pela maioria das aplicações.

ACSE (Association Control Service Element)

O elemento de serviço de aplicação ACSE é o responsável pelo gerenciamento das
associações de aplicação. Presta os serviços básicos de estabelecimento e liberação
(ordenada e abrupta) de associações de aplicação. Desta forma, está presente em todas
as entidades de aplicação.

ROSE (Remote Operations Service Element)

O ROSE é um elemento de serviço de aplicação que oferece suporte a aplicações
interativas, sendo bastante útil em aplicações distribuídas. O ROSE não pode ser utilizado
isoladamente. Em geral, ele é utilizado em aplicações envolvendo MHS (Message
Handling System), DS (Directory Service) e gerenciamento OSI. No caso particular do
gerenciamento, o ROSE é usado, por exemplo, para transportar operações de
gerenciamento (como é o caso da leitura de atributos de um objeto gerenciado) do
gerente para o agente e para transportar o resultado da operação realizada (valor dos
atributos lidos) do agente para gerente.

RTSE (Reliable Transfer Service Element)

Como vimos anteriormente, uma das funções da camada de sessão é garantir que após
uma interrupção em uma conexão estabelecida, a transferência dos dados possa se
restabelecer a partir do ponto em que houve a interrupção, havendo uma perda mínima. O
RTSE deve executar esta mesma função através de uma interface simples e ser capaz,
então, de transferir as unidades de dados de um forma confiável entre entidades de
aplicação.

CMISE (Common Management Information Service Element)

Cada recurso que está sujeito ao gerenciamento de sistemas é representado por um
objeto gerenciado. Os objetos gerenciados podem ser criados, suprimidos e ter os valores
dos seus atributos modificados. O gerenciamento de objetos descreve o serviço para
relatórios de criação e supressão de objetos gerenciados, modificação de nomes de
objetos gerenciados, modificação de atributos dos objetos gerenciados. Estas aplicações
de gerência de rede são realizadas através do CMISE.

A descrição do serviço CMISE é detalhada na X.710 e na ISO 9595-1 versão 2. O
Protocolo de Informação de Gerenciamento Comum (CMIP) é o protocolo utilizado para a
troca de unidades de dados de protocolo de informação de gerenciamento comum entre o
agente e o gerente. O CMIP especifica os elementos de protocolo que podem ser usados
para prover as Operações e Notificações definidas na X.710, a qual define o Serviço de
Gerenciamento Comum (CMIS). A X.711 define a sintaxe abstrata do CMIP.


                                           13
TP (Transaction Processing)

O TP tem como objetivo prover a infra-estrutura necessária ao suporte do processamento
de transações distribuídas envolvendo vários sistemas abertos. Uma transação distribuída
deve ser caracterizada por:

   •   Atomicidade: uma unidade de trabalho deve sempre ser executada de maneira
       completa, ou não deve ser executada;
   •   Consistência: uma unidade de trabalho deve ser executada de uma maneira
       precisa, correta e válida em relação à semântica da aplicação;
   •   Isolação: os resultados intermediários de uma unidade de trabalho não devem
       tornar-se disponíveis a não ser para as operações que fazem parte de uma
       unidade de trabalho;
   •   Durabilidade: os efeitos da realização de uma unidade de trabalho não podem ser
       alterados por nenhuma falha que venha a ocorrer posteriormente.

É responsabilidade do TP prover facilidades e mecanismos de forma a garantir que estes
objetivos sejam alcançados.

CCR (Commitment, Concurrency and Recovery)

Para os casos em que o processamento se dá de forma distribuída, as facilidades são
providas pelo TP. Já no caso do processamento ocorrer entre duas aplicações residentes
em sistemas abertos distintos, ela deve ser coordenada de forma que haja a garantia de
que a execução de unidades de trabalho ocorra somente quando tais aplicações estejam
prontas e aptas a fazê-lo.

Elementos de Serviço de Aplicação de Propósito Específico

A função dos elementos de serviço de aplicação é prover suporte a aplicações de uma
maneira genérica, porém algumas aplicações como a transferência de arquivos e o
correio eletrônico se tornaram tão comuns que foram criados elementos de serviço
específicos para estes casos.

MHS (Message Handling System)

O MHS é o serviço de correio eletrônico. Este tipo de serviço surgiu há vários anos, na
década de setenta, porém funcionava de maneira proprietária, ou seja, sistemas de
fabricantes diferentes não conseguiam trocar mensagens entre si. Na década de oitenta,
o CCITT em conjunto com a ISO resolveram padronizar este tipo de serviço.

A operação do MHS se baseia no sistema store and forward, ou seja, não há nenhuma
conexão entre o originador da mensagem e o seu destinatário durante o momento em que
esta é enviada. As facilidades que o MHS oferece incluem:

•Nomeação e endereçamento;
•Entrega de mensagens a múltiplos destinatários;
•Destinatário alternativo;
•Tipo de serviço (prioridade);



                                          14
•Teste;
•Notificação;
•Conversão.

A versão de 88 do MHS contém, ainda, facilidades adicionais relativas a segurança, listas
de distribuição e redirecionamento de mensagens.

FTAM (File Transfer Access and Management)

O FTAM tem por objetivo permitir a consulta, acesso, transferência e gerenciamento de
arquivos em um ambiente aberto. É muito útil, por exemplo, no caso de transferência de
arquivos de tarifação, que possuem um volume muito grande. As operações que podem
ser executadas sobre arquivos podem ser classificadas em três tipos:

   •   Transferência: operação de movimentação entre dois sistemas abertos, de parte
       ou de todos os dados contidos em um arquivo;
   •   Acesso: operação em que o usuário pode ler, substituir ou remover os dados
       contidos em um arquivo;
   •   Gerenciamento: operações de criação, remoção, inspeção e manipulação de
       atributos de um arquivo.

Os serviços prestados pelo protocolo FTAM devem servir de base para o
desenvolvimento de sistemas que envolvam a manipulação de arquivos em vários níveis
de complexidade. Por exemplo, a transferência parcial ou completa de arquivos entre
sistemas interconectados através de uma rede local ou de longa distância; o acesso a um
sistema de arquivos compartilhado entre múltiplas estações interconectadas através de
uma rede; a transferência de arquivos para fins de impressão, etc.

DS (Directory Service)

O Serviço Diretório consiste em um repositório de informações mantido por um conjunto
de sistemas abertos distribuídos. Estes sistemas possuem acesso a estas informações e
podem, por exemplo, ler e modificar estas informações.




                                           15
IEEE 802
O IEEE é uma das principais entidades internacionais relacionadas com a definição de
diversos padrões em eletrônica e comunicações. Os grupos de trabalho 802 são
responsáveis pelas definições empregadas em redes. Fique por dentro dos códigos já
adotados.

Nos anos 80 especialistas em comunicações começaram uma série de estudos
patrocinados pelo IEEE (Institute of Eletrical and Eletrônics Engineers). Eles definiram
uma série de padrões, diversos modelos e guias para elaboração de protocolos,
interfaces e dispositivos. Na verdade, os estudos de muitos deles prosseguem, como o
802.14, definindo a comunicação de banda larga baseado em canais de TV a cabo – os
Cable Modems. Os trabalhos, que são conhecidos pelo IEEE 802, foram divididos em
diversos grupos que concentram a atenção em determinados aspectos. Alguns anos
depois do início dos trabalhos, organizações regulamentadoras de padrões como a ANSI
e a ISO adotaram alguns dos padrões desenvolvidos.

O 802.3 é amplamente divulgado por reunir as especificações do CSMA/CD (Carrier –
Sense Multiple Access with Collision Detection), o método de acesso ao meio empregado
para difundir sinais nas redes Ethernet. O 802.4 e 5 abordam as redes baseadas em
fichas, as Token Bus e as Token Ring.

MAC

Numa rede há vários dispositivos possivelmente compartilhando os meios de acesso
físico. O MAC (Médium Access Control) corresponde aos algoritmos e técnicas
empregadas para que o compartilhamento da utilização dos meios seja realizado de
maneira mais eficiente e justa possível. Por exemplo, o CSMA 802.3 é uma técnica de
acesso aos meios, ou seja, um MAC. Note que o MAC não é um modelo e nem um
padrão, apenas uma denominação genérica empregada pelos comitês 802, por exemplo.

Há dois tipos de MACs, os centralizados e os distribuídos. Nos centralizados, quando uma
estação quiser utilizar os meios, ela deve aguardar até que o arbítrio sinalize
positivamente. Já no modo distribuído, cada estação é responsável por verificar se os
meios estão livres – é o caso do CSMA.

LLC

O LLC (Logical Link Control) é um conjunto de serviços que recebe dados das aplicações
ou camadas superiores a acrescenta informações sobre o que fazer com eles, como
requisitar ou transmitir sinais. Daí os dados, agora formatados, são despachados para o
MAC.




                                          16
DESCRIÇÃO DAS PRINCIPAIS DEFINIÇÕES DOS COMITÊS 802 DO IEEE

    GRUPO                              DESCRIÇÃO
     802.1                       Protocolos de alto nível
     802.2                  Controle de ligação lógica (LLC)
     802.3            MAC CSMA/CD ou Full – Duplex Ethernet
     802.4                   Barramento Token (Token Bus)
     802.5                      Anel Token (Token Ring)
     802.6                 MAN (Metropolitan Area Network)
     802.7                   Guia técnico para Banda Larga
     802.8                   Guia Técnico para Fibra Óptica
     802.9             Interface para ISLAN (ISochronous LAN)
    802.10                       Padrões de Segurança
    802.11                      Redes sem fio (Wirelles)
    802.12                       Prioridade de Demanda
    802.13                             Não definido
    802.14    Rede baseada em TV a Cabo de Banda Larga (cable modem)
              Comunicação pessoal sem fio WPAN (Wirelles Personal Area
    802.15
                                         Network)
    802.16    Redes sem fio empregando Banda Larga (Broadband Wirelles)




                                    17
HDLC (High Level Data Link Control)
O modelo OSI, desenvolvido pela ISO, para padronização de protocolos divide-se em sete
camadas (níveis) de serviço, sendo que neste trabalho o objeto de estudo será um
protocolo de comunicação utilizada no nível dois, nível de enlace de dados, o protocolo
HDLC.

O primeiro nível, ou nível físico é responsável por levar uma seqüência de bits do
transmissor ao receptor. Nessa camada são estabelecidos os níveis elétricos que
representam os bits, é definidas e as taxas de transmissão, atenuação máxima e outras
características elétricas e mecânicas. No entanto, a camada de nível físico oferece um
mecanismo de transporte de dados não confiável do ponto de vista de erros de
transmissão. Tais erros podem ser causados por uma série de razões: ruído
eletromagnético, falha na sincronização do receptor em relação ao transmissor, ou defeito
nos componentes que implementam os circuitos de transmissão e recepção.

A camada de enlace de dados é a segunda na hierarquia, imediatamente acima da
primeira camada, no modelo de referência OSI / ISO para padronização de protocolos. A
principal finalidade da camada de enlace é implementar mecanismos de detecção e
recuperação de erros, oferecendo, desse modo, aos níveis superiores, um serviço mais
confiável. Outras funções desta camada incluem: o estabelecimento de uma conexão e
procedimentos que permitem o uso eficiente dos meios de transmissão.
Principais características:

   •   Protocolo orientado a bit;
       São aqueles protocolos que não incorporam em sua estrutura nenhum
       caráter destinado a cumprir regras ou funções. Tanto as mensagens de
       texto como as de supervisão são envelopadas em um quadro (frame)
       delimitado por uma configuração de bits especial chamada "flag":

       !                     !                           !             !
       !       Flag          !      Informação           !    Flag     !
       !                     !                           !             !

   •   Utilizado na recomendação X25;
   •   Modo de operação síncrona;
       Este modo de transmissão e baseado no estabelecimento de uma cadência fixa
       para transmissão seqüencial dos bits. A cada T segundo o transmissor emite, por
       exemplo, um pulso de tensão elétrica, significando o envio de um símbolo binário
       1, ou nenhum pulso, significando o envio de um bit 0. O sincronismo entre o
       transmissor e o receptor é garantido pelos flags que delimitam o quadro, servindo
       como caracteres de sincronização.

   •   Pode operar em modo de resposta assíncrona (uma estação secundária pode
       iniciar uma transmissão não solicitada a qualquer momento) nas duas direções,
       com ambos ETD (elemento de transmissão de dados: representa o
       processador HOST) e ECD (elemento de comunicação de dados:
       representa um nodo qualquer na rede) desenvolvendo uma função primária e


                                           18
secundária (Função primária refere-se a operações de comandos ou
    transmissões de dados, enquanto a função secundária inclui respostas,
    comandos ou transmissões de dados. Portanto, normalmente a estação
    primária realiza as funções primárias, sendo responsável pela supervisão
    do enlace, enviando comandos; enquanto a estação secundária envia as
    respostas);

•   Transmissão half-duplex e full-duplex;
    Half-duplex: a transmissão da informação pode ser nos dois sentidos, mas
    não de forma simultânea. Assim sendo, quando uma estação necessita
    transmitir, a outra deve concordar em receber.
    Full-duplex: a transmissão ocorre nos dois sentidos simultaneamente

•   Suporta configurações ponto-a-ponto e multiponto;
    Ponto-a-ponto: apenas dois nós de comunicação estão conectados ao mesmo
    meio físico;

    ------| A |--------------------------------------------------| B |------

    Multiponto: vários nós estão ligados através do mesmo enlace.

    ------| A |--------------------------------------------------| B |------


                       |C|                         |D|

•   Opera em linhas privadas ou discadas;
•   Transmissão de dados através de frames;
•   Transparência dos dados garantida pela técnica bit stuffing;
    Para permitir que o usuário envie qualquer seqüência de bits como informação, é
    preciso que determinados procedimentos sejam adotados no protocolo para evitar
    que dados do usuário que contenham seqüências de bits de flag não sejam
    confundidos com os delimitadores ou mensagens de controle. Um protocolo com
    essa característica é dito transparente. No caso de protocolos orientados a bit a
    técnica utilizada é a de Bit Stuffing.

    A transparência dos dados nesta técnica é obtida por um procedimento de
    inserção de zeros. Como delimitador do quadro temos flags contendo seis bits 1
    em seqüência (01111110). Assim, se o texto do usuário contiver uma seqüência
    de cinco 1's seguidos, um bit 0 é inserido para evitar que uma seqüência possa ser
    confundida com um flag. Na recepção é retirado todo zero depois de uma
    seqüência de cinco 1's, antes de a informação ser entregue ao usuário

                                ___________               ____________
                                                       /
                                    0 1 1 1 1 1  "0" / 1 1 1 0 1 0
                                                 ------

•   Utiliza o método de Sliding Window (Janelas Deslizantes) na transmissão;



                                                    19
Esta técnica viabiliza o envio de diversas mensagens, por parte do transmissor,
    antes que este receba a confirmação se as mensagens enviadas foram recebidas
    satisfatoriamente. Neste método é necessário numerar as mensagens de forma a
    identificá-las quando for recebido o seu reconhecimento.

    Nesta numeração existe um limite máximo de mensagens que podem ser enviadas
    sem aguardar reconhecimento. Este limite é denominado "largura da janela",
    sendo esta numeração organizada de forma circular. No caso do HDLC, esse valor
    corresponde ao tamanho do campo de número de seqüência (N(S)) da
    mensagem:
    • Modo normal - 3 bits - de 0 a 7 - máximo de 8 mensagens;
    • Modo estendido - 7 bits - de 0 a 127 - máximo de 128 mensagens;

    Baseado nas características apresentadas, sempre que ocorrer um erro em uma
    das mensagens. Podem ser implementados dois procedimentos:

    •   O destino solicita a retransmissão apenas da mensagem com erro;
    •   Solicita a retransmissão de todas as mensagens a partir de um determinado
        número de seqüência.

•   Pode operar em três modos de resposta;
       o MRN - modo de resposta normal: as estações secundárias só iniciam uma
          transmissão quando autorizadas pela primária, a partir deste momento, a
          secundária deve iniciar a transmissão dos frames. O último frame da
          transmissão deve ser explicitamente indicado pela estação secundária. A
          partir da indicação do último frame a secundária irá parar a transmissão até
          uma nova permissão por parte da primária. De forma a realizar este
          controle, existem mensagens de supervisão com a finalidade especifica de
          interrogar (polling) as estações se desejam transmitir. Este modo é
          utilizado em configurações ponto-a-ponto ou multiponto.
       o MRA - modo de resposta assíncrona não balanceada: uma estação
          secundária pode iniciar transmissão sem necessidade de autorização da
          primária. Este modo é utilizado em configurações ponto-a-ponto ou
          multiponto.
       o MRB - modo de resposta assíncrona balanceada: as estações são
          consideradas logicamente iguais: qualquer uma delas pode iniciar ou
          terminar a ligação; ambas são responsáveis pelo controle de erros e de
          fluxo e podem enviar tanto comandos como respostas. Este modo é
          utilizado apenas em configurações ponto-a-ponto

    •   Protocolo orientado a conexão, contendo operações para:
        o Estabelecer conexão;
        o Transmitir dados;
        o Reinicializar conexão;
        o Encerrar conexão.




                                       20
SDLC (CONTROLE DE ENLACE DE DADOS)
O advento das arquiteturas de redes de comunicação trouxe consigo uma complexidade
sempre crescente nas estruturas de redes. Níveis de serviços cada vez mais altos estão,
permanentemente, sendo oferecidos. Mas todos esses serviços precisam depender de
funções de níveis inferiores precisamente definidas para garantir que os dados sejam
transferidos eficiente e confiavelmente entre os nós.

   •   A rede de controle do caminho
       A rede de controle do caminho abrange as duas camadas inferiores da
       SNA: Controle do enlace de dados e controle do caminho. A camada de
       controle do enlace de dados é responsável pelo controle da transmissão dos
       dados pelos enlaces entre os nós da rede.

       A camada de controle do caminho é responsável pela seleção do enlace de dados
       apropriados para transmitir uma unidade de mensagem, pela determinação da
       taxa na qual os nós trocam os dados, e por controlar a seqüência das unidades de
       mensagem que são enviadas por enlaces paralelos.

       Começaremos pela camada mais baixa, a de controle do enlace de dados, e
       examinaremos o protocolo CONTROLE DO ENLACE DE DADOS SÍNCRONO
       (SDLC). O SDLC especifica as regras que controlam as funções executadas na
       camada de controle do enlace de dados da SNA.

   •   Protocolo de enlace de dados
       Os dados são transmitidos pelos enlaces de dados com a utilização de um
       protocolo de enlace de dados. A finalidade do protocolo é transferir blocos de
       dados, sem erros, entre dois dispositivos conectados a um mesmo enlace físico. O
       protocolo deve ter mecanismos sofisticados de detecção de erros e deve ser
       capaz de tratar quaisquer formatos de dados. Deve também poder executar essas
       funções em uma grande variedade de enlace duplex e half duplex. Em alguns
       casos, o protocolo deve ainda garantir que apenas um dos diversos dispositivos
       que podem estar ligados ao enlace de dados reconheça e aceite uma mensagem.

   •   Componentes de um enlace SDLC
       Num enlace SDLC a conexão entre dois nós é conhecida por conexão de enlace.
       Para o SDLC, a conexão de enlace geralmente é constituída por dois modems e o
       circuito físico que os conecta.

       Este circuito físico pode assumir a forma de um cabo de fios trançados, um cabo
       de fibras óticas ou um enlace por satélite ou por microondas. Os modems
       convertem os sinais binários para uma forma compatível com uma conexão física
       que estiver sendo utilizada. Em alguns casos, podem ser usados circuitos digitais
       para implementar uma conexão de enlace; se isto acontecer, os modems podem
       ser substituídos por dispositivos mais simples às vezes chamados de exitadores
       de linha digital. As estações de enlace mostradas na figura de abaixo consistem
       no hardware e software do nó SNA que controlam a conexão de enlace fazem
       parte da camada de controle do enlace de dados da SNA.


                                          21
Há dois tipos de estações de enlace suportadas pelo protocolo SNA.
       o Estação Primária. Esta estação inicia uma transferência de dados e
           permanece no controle durante a troca de mensagens. Ela notifica cada
           estação de enlace secundária de quando esta pode transmitir dados e de
           quando ela deve esperar receber dados.
       o Estação Secundária. A estação primária faz contato com esta estação e a
           controla durante a troca de mensagens.

•   Configuração do enlace de dados SDLC
    O protocolo SDLC permite que uma estação primária e uma ou mais
    estações secundárias sejam conectadas em quatro configurações
    diferentes:

       •   Ponto-a-Ponto. Na configuração ponto-a-ponto uma única estação
           primária está conectada por um enlace ponto-a-ponto a uma única
           estação secundária. Cada estação desta configuração pode enviar
           dados para outra.
       •   Multiponto. Na configuração multiponto, uma única estação primária
           está conectada a duas ou mais estações secundárias. A estação
           pode enviar os dados que são destinados a uma ou mais estações
           secundárias. Uma estação secundária só pode enviar dados para a
           estação primária, não podendo enviá-los para outra estação
           secundária.
       •   Laço. Na configuração laço (loop), a estação primária está ligada
           diretamente apenas a primeira e a última das estações secundárias
           no laço. A estação primária passa os dados para a primeira
           secundária, que por sua vez os passa para a estação secundária
           seguinte, e assim por diante até que os dados retornem a estação
           primária. Assim como na configuração multiponto, a estação primária
           pode enviar dados para uma ou mais estações secundárias, mas
           uma secundária só pode enviá-los para a primária.
       •   Mista. A configuração mista, ou configuração hub go-ahead, é uma
           configuração incomum empregada por alguns equipamentos
           especializados. São usados dois canais: um de entrada e um de
           saída. A estação primária comunica-se com todas as secundárias
           pelo canal de saída. Uma estação secundária pode comunicar-se
           somente com a primária, através do canal de entrada, o qual é
           encadeado em série de uma estação secundária para a seguinte.

•   Estados de transmissão
    Uma conexão de enlace SDLC pode estar em um dentre quatro estados de
    transmissão, em um dado momento:
        o Ativo. No estado ativo, bits de controle ou bits que representam
          textos de mensagens fluem ativamente entre a estação primária e
          uma estação secundária na conexão de enlace.



                                     22
o Ocioso. No estado ocioso, não há informações sendo transmitidas.
         É transmitida uma seqüência continua de bits um enquanto a linha
         está ociosa.

       o Transiente. O estado transiente representa a             transição que
         acontece entre o momento em que a estação                 primária está
         transmitindo uma unidade de mensagem para                 uma estação
         secundária e o momento em que a secundária               transmite uma
         unidade de mensagem de volta para a primária.

       o Desconectado. A linha fica no estado desconectado quando a
         estação secundária está fisicamente desconectada da primária, tal
         como acontece quando uma estação secundária conectada via linha
         comutada está desligada.

•   Quadros SDLC
    A unidade de mensagem que é transmitida por um enlace SDLC é normalmente
    chamada de quadro, embora alguns textos sobre SNA se refiram a ela como
    unidade de enlace básica (BLU). Alguns quadros são originados pelo próprio
    SDLC e são usados para controlar a operação do enlace. Outros quadros
    consistem em informações de controle ou de dados recebidos de uma camada
    SNA mais alta.

    Cada quadro é dividido em três partes principais: um cabeçalho, um campo de
    informação de comprimento variável e um fecho. As informações de controle são
    transportadas no cabeçalho e no fecho. Os quadros originados pelo próprio SDLC
    às vezes utilizam o campo de informação de comprimento variável para as
    informações de controle. Outros quadros usam o campo de informação para
    transportar as unidades de informação básicas (BTUs) que são passadas pela
    camada de controle de caminho.

•   Vantagens do SDLC
       o   Orientado a bit
       o   Percebe fluxo continuo de bits
       o   Pode operar em enlaces half duplex e duplex
       o   Várias mensagens enviadas antes do recebimento




                                      23
PROTOCOLO BSC
O protocolo BSC (Binary Synchronous Control) foi desenvolvido originalmente pela IBM
(International Business Machines) com o objetivo de permitir a transmissão síncrona entre
computador e periféricos remotamente localizados.

Trata-se de um protocolo orientado a caráter que opera no modo half-duplex , com
ligações ponto a ponto ou multiponto em linhas dedicadas ou comutadas. O BSC
manipula mensagens codificados com caracteres EBCDIC, ASCII e TRANSCODE.

Atualmente este protocolo encontra-se bastante difundido e suas versões são
implementadas em diferentes equipamentos.

Neste documento serão apresentadas algumas características importantes do protocolo
BSC: a Estrutura Básica das Mensagens BSC , a descrição dos Caracteres de Controle
do BSC, os Modos de Operação, as Seqüências de Operacionais e as versões deste
protocolo.

Estrutura básica das mensagens BSC

O BSC exige o uso de caracteres de controle especialmente convencionados para
orientar o fluxo de mensagens entre as estações.
As informações de controle da mensagem estão contidas no cabeçalho que é precedido
pelo caractere SOH.

O caractere STX inicia a transmissão de um bloco de dados que poderá fluir de uma única
vez ou segmentada em pedaços, para isso usando o caráter ETX ou ETB,
respectivamente para encerrar uma mensagem ou um bloco de mensagem. O bloco de
dados tem tamanho variável, a critério do usuário mas limitado a 256 bytes, inclusos o
STX e o ETX ou ETB.

A verificação de erros de transmissão no protocolo BSC é realizada pelo método de
detecção polinomial (CRC), utilizando um polinômio gerador de 16 bits. O R(x) encontrado
será um conjunto de 16 bits que no protocolo BSC é chamado BCC (Caractere de
Checagem de Bloco). Neste campo a interpretação dos caracteres de controle é
totalmente desativada, já que poderíamos ter coincidentemente a ocorrência de uma
seqüência controle no campo BCC.

A estrutura básica de mensagens do BSC é apresentada na figura abaixo:




                      Figura 1 - Estrutura das mensagens no BSC

Os caracteres PAD e SYN são inseridos automaticamente na transmissão, e não são
computados no cálculo do BCC.




                                           24
Caracteres de controle BSC

Dois tipos de caracteres são transmitidos entre as estações:

   •   Caracteres de controle BSC
   •   Caracteres de dados

Algumas das funções dos caracteres de controle são: identificar o início ou o final da
transmissão, dar indicação ou não da validade dos dados recebidos, etc.
Abaixo é apresentada uma tabela dos caracteres de controle:

Mneumônico        Código             Código             Significado
                  EBCDIC             ASCII

ACK0              1070               1030               Affirmative Acknowledgment
ACK1              1061               1031               Affirmative acknowledgment
DLE               10                 10                 Data Link Escape
ENQ               20                 05                 Enquiry
EOT               37                 04                 End of Transmission
ESC               27                 1B                 Escape
ETB               26                 17                 End of Transmission Block
ETX               03                 03                 End of Text
ITB               1F                 1F                 End of Intermediate
                                                        Transmission Block
NACK              3D                 15                 Negative acknowledgment
PAD               FF                 FF                 Pad Character
RVI               107C               103C               Reverse Interrupt
SOH               01                 01                 Start of Header
STX               02                 02                 Start of Text
SYN               32                 16                 Synchronous Idle
TTD               022D               0205               Temporary Text Delay
WACK              106B               103B               Wait Before Transmit/
                                                        Affirmative acknowledgment

Modo de operação

A controladora de terminais opera no modo controle, texto ou transparente. Inicialmente
ela está no modo controle. Nesse modo ela monitora constantemente a linha de
comunicação com a Unidade de Controle de Comunicações (CCU) aguardando:

   1. Seqüência válida de poll ou select, quando então muda para o modo texto;
   2. DLE STX, quando então muda para o modo transparente.

No modo texto, a controladora de terminais se torna à estação "mestre" ou a estação
"escrava", em relação a CCU, em resposta a comandos enviados por esta última.

A controladora de terminais opera como mestre quando envia uma seqüência STX para a
CCU, durante a execução de um comando tipo Read ou uma operação de poll. Neste
estado, transmite mensagens de texto ou a seqüência ENQ quando deseja requisitar
resposta (por exemplo para um WACK posteriormente recebido) ou retransmissão de


                                            25
mensagens da CCU. Quando transmitir a seqüência EOT (indicando término da
transmissão da mensagem) ela retorna ao modo controle.

A controladora de terminais opera como escrava (recebendo mensagens da CCU) quando
estiver executando um comando tipo Write.

Ao receber uma seqüência EOT (enviada pela CCU), estando no modo texto, a
controladora de terminais entra no modo comando. Caso receba uma seqüência DLE STX
(início de texto no modo transparente), a controladora de terminais entra no modo
transparente, quer esteja no modo controle quer no modo texto.

Seqüências operacionais

Em ligações multiponto, toda troca de informações entre o computador/Unidade de
Controle de Comunicações (CCU) e a Unidade de Controle de Terminais (UCT) é sempre
iniciada pelo computador/CCU, através de uma seqüência de poll ou select.

A seqüência de poll tem a finalidade de habilitar o terminal a transmitir texto (previamente
digitado e armazenado em seu buffer). A seqüência de select tem a função de verificar se
um determinado terminal pode receber um comando do computador/CCU.

Versões do protocolo BSC

Temos três versões do protocolo BSC:
   • BSC-1: ligação ponto a ponto
   • BSC-2: ligação ponto a ponto ou multiponto com terminais inteligentes .
   • BSC-3: ligação ponto a ponto ou multiponto com terminais não inteligentes em
      linhas privativas ou comutadas.




                                            26
PROTOCOLO X.25
INTRODUÇÃO

Nos anos 70 havia muitos redes (de comunicação de dados, conhecidas como Redes
Públicas), que eram de companhias privadas, organizações e agências de governos.

Essas redes públicas eram interiormente bastante diferentes, e a interconexão de redes
estava crescendo muito rápido, havia uma necessidade de um protocolo de interface de
rede comum.

Em 1976 X.25 foi recomendado como o protocolo pelo Comitê Consultivo Internacional
para Telegrafia e Telefonia (CCITT) chamado a União de Telecomunicação
Internacional (ITU) desde 1993.

X.25 é uma rede de protocolos de pacotes comutados de dados que definem uma
recomendação internacional para a comutação de dados como também controle e
informação entre um dispositivo de usuário (o host), chamados Equipamento Terminal de
Dados (DTE) e um nó de rede,de Equipamento de Comunicação de Dados(DCE).

X.25 utiliza um serviço orientado à conexão que assegura que são transmitidos pacotes
em ordem.

X.25 vêm com três níveis baseados nas três primeiras camadas do padrão OSI (Open
Systems Interconnection) que possui sete camadas como definido pela ISO
(Organizacion Standard Internacional).

Os níveis são:

   •   Nível Físico descreve a interface com o ambiente físico. É semelhante à camada
       física do modelo da OSI.
   •   Nível de link responsável por uma comunicação fiel entre o DTE e o DCE. É
       semelhante à camada de link de dados do modelo da OSI.
   •   Nível de Pacote descreve o protocolo de transferência de dados na rede de
       pacotes comutados. É semelhante à camada de rede do modelo da OSI.

X.25 foi aprovado originalmente em 1976 e subseqüentemente foi revisado em 1977,
1980, 1984, 1988 e 1992. É atualmente uma das interfaces mais usadas em redes de
comunicação de dados.




                                         27
Conceito de Pacote

Para que uma mensagem seja transmitida via rede de pacotes, é necessário dividi-la,
independentemente do seu tamanho original , em blocos de tamanho máximo limitado.
Estes segmentos de mensagem de tamanho predeterminado, contendo informações que
permitem o seu encaminhamento, receberão a denominação de pacotes.

                             CABEÇALHO          DADOS

Tal pacote será enviado pelo DTE à rede, no campo de informações do protocolo. Os nós
da rede executam a concentração e distribuição dos pacotes, decidindo qual o melhor
caminho para a transmissão dos mesmos pela rede.
Um pacote é, então, a unidade de informação tratada pela rede, contendo, além do
campo de dados ,um cabeçalho onde estão registrado todas as informações necessária
ao seu correto encaminhamento através da rede.

Técnicas de Comutação

Os serviços de WANS são providos por três tecnologias de comutação primárias: circuito,
pacote, e célula. Estas tecnologias de comutação são mostradas na figura abaixo.

Em redes de comutação de circuitos, cada link é dedicado a um número predeterminado
de usuários durante um período particular. Cada usuário recebe uma predeterminada
largura de banda. Multiplexação por divisão de tempo (TDM) é o método que controla o
acesso a rede. O sistema de telefone é o exemplo freqüentemente citado de uma rede de
comutação de circuito.

Redes de comutação de pacotes permitem a estações compartilhar a rede e a largura de
banda disponível. Pacotes de tamanho variável são usados para uma transferência mais
eficiente e flexível. Estes pacotes são comutados entre os vários segmentos de rede até o
destino ser alcançado. Técnicas de multiplexação estatística controlam o acesso de rede



                                           28
em uma rede de comutação de pacote. A maioria das LANs populares de hoje (por
exemplo, Ethernet e Token Ring) são redes de comutação de pacotes.

Redes que transportam unidades de informação de tamanho fixos são conhecidas como
redes de comutação de célula. E têm a simplicidade e conseqüentemente, uma maior
velocidade de comutação. Multiplexação estatística e acesso baseado em TDM são
permissíveis em uma rede de comutação de célula. Comutar célula é uma técnica
relativamente nova que está ganhando rapidamente popularidade. Modo de Transferência
assíncrono (o ATM) é atualmente a tecnologia de comutação de célula mais proeminente.

Cada técnica de comutação tem vantagens e desvantagens. Por exemplo, redes de
comutação de circuito oferecem aos usuários largura de banda dedicada que não pode
ser infringida por outros usuários. Por outro lado, redes de comutação de pacotes
oferecem mais flexibilidade e largura de banda de rede tradicionalmente mais eficaz que
redes de comutação de circuitos.




DTE e DCE

A interface entre o equipamento terminal de dados(DTE) e o equipamento de
comunicação de dados (DCE) é uma das mais comuns em conexão de redes. DTE é
tipicamente representado por computadores, terminais, ou roteadores, agem como
equipamento terminais para uma determinada rede. DCE é tipicamente representado por
modens ou dispositivos semelhantes, provêem clock como também serviços de
comutação entre DTEs. O DTE/DCE se conectam e a sua relação para um pacote
comutado de WAN é mostrado na figura abaixo.




                                          29
Especificações da camada de link

Em redes de comutação de pacotes, a maioria das interfaces de DTE/DCE consistem de
um componente de camada de link e um componente de camada física. O componente
de camada de link define um protocolo de acesso entre o que estabelece um link, por
exemplo, um roteador (DTE) e um switch (DCE). Protocolos de acesso da camada de link
típicos incluem LAPB de X.25, Flame Relay, e ATM.

Especificações da camada física

Especificações da camada física provêem informações em aproximadamente quatro
aspectos diferentes de interfaces de camada física: mecânico, elétrico, funcional, e
processual. Aspectos mecânicos de interfaces de camada física incluem especificações
de conectores e disposições físicas do pinos. Aspectos elétricos incluem níveis de
voltagem que representam valores binários e impedância elétrica. Aspectos funcionais de
especificações da interface da camada física nomeiam funções (controle, dados, terra)
para circuitos particulares. Finalmente, os aspectos processuais definem esses
procedimentos associados com várias operações de comutação de dados. Como exemplo
temos várias ações elétricas em cima de circuitos específicos que juntos definem a
operação de loopback.




Serviços de Pacotes Orientados a Conexão

A interface de DTE/DCE especifica a maneira na qual um serviço de pacote é acessado.
Alguns serviços de pacote são baseados em conexões virtuais.

Em um serviço de pacote orientado a conexão, pares de terminais são associados com
um identificador de conexão. Cada dispositivo de comutação constrói uma tabela que
traça identificadores de conexão para portas. Quando um frame é recebido, o dispositivo
de comutação analisa o identificador de conexão e entrega o frame a porta associada. O



                                          30
caminho completo para o destino é a prioridade estabelecida por quem envia o primeiro
frame.

Exemplos de serviços de pacote orientado a conexão são: X.25 e Frame relay. Serviços
de pacotes orientados a conexões podem oferecer conexões virtuais passageiras ou
permanentes, chamadas respectivamente, circuitos virtuais comutados (SVCs) e circuitos
virtuais permanentes (PVCs).

SVCs e PVCs são multiplexados em cima de canais físicos compartilhados por outros
circuitos. PVCs são usados quando uso da linha é relativamente contínuo; SVCs são úteis
quando uso da linha é relativamente esporádico.

X.25

X.25 define uma interface para uma WAN que pode prover em demanda SVCs e
(normalmente) PVCs. Para começar a comunicação, um computador chama outro para
pedir uma sessão de comunicação. O computador chamado pode aceitar ou pode recusar
a conexão. Se a chamada foi aceita, os dois sistemas podem começar a transferência de
informação full-duplex. Qualquer lado pode terminar a conexão a qualquer hora .

A especificação X.25 define uma interação de ponto-a-ponto entre um DTE e um DCE.
DTEs se conectam a DCEs que se conectam a comutadores ("PSEs" ou simplesmente
"switches") dentro de uma rede de comutação de pacotes (PSN, outro nome para uma
rede X.25) e,por último, a outro DTE. A relação entre as entidades em uma rede X.25 é
mostrada na figura abaixo.




Terminais também podem fazer uso de um serviço X.25 usando um serviço de tradução
chamado de montador de pacote (ou mais comumente, PAD) que serve para coletar
dados e comandos de PAD em pacotes para transmissão como também os recebe do
dispositivo conectado. A operação da interface de terminal-PAD, os serviços oferecidos



                                          31
por um PAD, e o controle da interação PAD-host é definido, respectivamente, pelas
Recomendações X.28, X.3 e X.29.

A especificação X.25 traça as camadas de 1 a 3 do Modelo de Referência da OSI. A
camada 3 do X.25 descreve o formato do pacote e os procedimentos de comutação de
pacotes entre as entidades da camada 3. A camada 2 do X.25 (LAPB, ou Procedimento
de Acesso de Link Balanceado) define os frames dos pacotes para o link de DTE/DCE. A
camada 1 do X.25 define os procedimentos elétricos e mecânicos para ativar e desativar
o nível físico que conecta o DTE e o DCE. A relação entre as camadas de X.25 e o
modelo de referência da OSI é mostrado na figura a seguir.




O Nível Físico

O nível físico (nível 1) lida com a interface elétrica, mecânica, processual e funcional entre
o DTE e o DCE.
O nível físico é especificado pelas recomendações X.21, X.21-bis e a V.24 para modens e
circuitos de intercâmbio.

   •   X.21 é uma recomendação de CCITT para operação de circuitos digitais. A
       interface X.21 opera mais de oito circuitos de intercâmbio (i.e. sinal terra, DTE
       retorno comum, transmita, receba, controle, indicação, sinal elemento de
       temporização e byte de temporização) as funções são definidas na recomendação
       X.24 e as características elétricas na recomendação X.27.
   •   X.21-bis é uma recomendação de CCITT que define a interface de analógica para
       permitir o acesso ao circuito digital de uma rede comutada que usa um circuito
       analógico. X.21-bis provê procedimentos para enviar e receber informações que
       permitem a um DTE estabelecer circuitos comutados com outro DTE que tem
       acesso à rede digital.
   •   V.24 também é uma recomendação de CCITT, e provê procedimentos que
       permitem o DTE a operar em cima de um circuito analógico dedicado que o
       conecta a um nó de comutação de pacotes ou concentrador.




                                             32
X.21 Interface digital.

Em 1976 a CCITT recomendou que uma interface de sinalização digital chamada X.21. A
recomendação especifica como o DTE faz ligação e limpeza de chamadas, comutando
sinais com o DCE.




O conector físico tem 15 pinos, mas nem todos eles são usados.

O DTE usa os circuitos de T e de C para transmitir dados e informação de controle. O
DCE usa os circuitos de R e I para dados e controle. O circuito de S contém um sinal
"stream" emitido pelo DCE para prover temporização, assim o DTE sabe quando cada bit
de intervalo começa e termina.

O circuito de B também pode agrupar os bits em frames de byte. Se esta opção não é
provida, o DCE e DTE têm que começar toda a seqüência de controle com pelo menos
dois caracteres de SYN para permitir a dedução do limite de frame implícito.

O Nível de link

O nível de link (também chamado nível 2, ou nível de frame) assegura transferência de
dados entre o DTE e o DCE, transmitindo os dados como uma seqüência de frames (um
frame é uma unidade de dados individual que contém endereço, controle, campo de
informação etc.).

As funções executadas pelo nível de link incluem:

   •   Transferência de dados em um modo eficiente e oportuno.
   •   Sincronização do link para assegurar que o receptor está sincronizado com o
       transmissor.
   •   Descoberta de erros de transmissão e recuperação de tais erros
   •   Identificação e informações de erros processuais a níveis mais altos, para
       recuperação.

O nível de link usa dados para procedimentos de controle que são compatíveis com o
Controle de Dados de Nível Alto (HDLC) unificado por ISO.

Há vários protocolos que podem ser usados no nível de link:


                                           33
•   Link de Acesso a Protocolo Balanceado (LAPB) é derivado do HDLC e é
       comumente usado. Permite a formação de uma conexão de link lógica além de
       todas as outras características de HDLC.
   •   Link de Acesso de Protocolo (LAP) é uma versão mais antiga de LAPB e
       raramente é usado hoje.
   •   Link de Acesso de Procedimento no Canal D (LAPD) é derivado de LAPB e é
       usado para Serviços Integrados de Redes Digitais (ISDN), ele habilita transmissão
       de dados entre DTEs pelo canal D, especialmente entre um DTE e um nó de
       ISDN.
   •   Controle de link lógico (LLC) é um padrão IEEE 802 de protocolo de LAN que
       habilita pacotes X.25 a serem transmitidos por um canal de LAN.

LAPB

O LAPB utiliza a seguinte estrutura de frame:




   •   Os campos de Flag indicam o começo e fim do frame, F(01111110).
   •   O Campo de Endereço (Address) contém o endereço do DTE/DCE, e é muito
       importante para identificar um dos terminais. Se for igual a 11000000 informa que
       é um comando DCE-DTE ou uma resposta DTE-DCE; se for igual a 10000000
       informa que é um comando DTE-DCE ou uma resposta DCE-DTE.
   •   O Campo de Controle contém a seqüência de numeração, comandos e respostas
       para controlar os dados que fluem entre o DTE e o DCE. O campo de controle é
       inicializado com um Set Asynchronous Balanced Mode (SABM). Também há uma
       operação estendida (SABME), isto provê um módulo-128 de janela de frame.
   •   campo de Checksum indica se houve ou não erros na transmissão. É uma
       variação do Código de Redundância Cíclico (CRC).

Há três tipos de frames de controle:

   1. Informação: Este tipo de frame contém a informação atual que é transferida. O
      campo de Informação contem os dados atuais e um cabeçalho de dados, ou está
      vazio.
      O cabeçalho de dados tem 24 bits e é dividido em 4 partes:
      4 bits do Identificador de Formato Geral (GFI), que indica a presença ou ausência
      de dados
      4 bits de Número de Grupo de Canal Lógico (LGN).
      8 bits de Número de Canal Lógico (LCN).
      O LGN e LCN combinados pode ser usados como um número de canal grande.
      LCN 0 normalmente é usado para comandos de rede de emergência.
   2. Supervisão: Há vários tipos de frames de supervisão.
      RECEPTOR PRONTO (RECEIVE READY) - Frame de reconhecimento que indica
      o próximo frame esperado. É usado pelo receptor para confirmar o recebimento de
      frames de informação quando este não tem frames de informação para transmitir.



                                           34
REJEITADO (REJECT) - Frame de reconhecimento negativo, indica a descoberta
      de erro de transmissão e solicita retransmissão a partir do 1º frame ainda não
      confirmado
      RECEPTOR NÃO PRONTO (RECEIVE NOT READY) – Informa ao remetente
      para deixar de enviar dados devido a problemas temporários.
   3. Não Numerado (Unnumbered): Este tipo de frame só é usado para propósitos de
      controle, não contém dados, somente a informação de começar a parar o link de
      comunicação.

LAPB também provê os seguintes comandos:

   •   DISC (Desconexão) - Comando para desfazer o enlace lógico.
   •   SNRT (Set Normal Response Time) - Permite que uma máquina que há pouco
       voltou em linha, anunciar sua presença.
   •   FRMR (Frame Rejeitado) - indica um frame com checksum correto mas com erro
       não recuperável por retransmissão.
   •   SABM: Comando para inicializar o enlace lógico.
   •   UA (Reconhecimento não Numerado): Confirmação do recebimento dos Quadros
       SABM e DISC.
   •   DM (Modo desconexão): Reporta que a estação está no modo desconectado

O Nível de Pacote

O nível de pacote (também chamado de nível 3 ou nível de rede) cria unidades de dados
de rede chamadas pacotes que contêm informações de controle e dados de usuário.
O nível de pacote provê procedimentos para os seguinte serviços:

   •   Circuito Virtual é uma associação temporária entre dois DTEs, é iniciado por uma
       sinalização de PEDIDO de CHAMADA de DTE para a rede. Este serviço assegura
       uma seqüência na entrega de pacotes em qualquer direção entre dois Circuito de
       DTEs.O Circuito Virtual é estabelecido sempre que dois DTEs querem um serviço
       de comunicação.
   •   Circuito Virtual permanente é uma associação permanente que existe entre dois
       DTEs que não requerem estabelecimento de chamada ou limpeza de chamada
       (desconexão) feita pelo DTE.
   •   Datagramas(DG) é uma unidade de dados de usuário e contêm informação
       suficiente a ser roteada ao DTE de destino (independentemente de todas as
       outras unidades de dados) sem necessidade de que uma chamada seja
       estabelecida. As unidades de dados são transmitidas a uma pessoa de cada vez
       sem garantia de garantia de entrega em ordem. Cada datagrama têm que conter o
       endereço completo e tem que controlar a informação para habilitar isto e ser
       entregue ao destino formal DTE.
   •   Seleção Rápida (Fast Select) é um serviço que habilita o pacote de controle que
       monta o VC para levar dados também.
   •   Outro Serviços: O nível de pacote também provê a chamada de ligação e
       procedimentos de limpeza de chamada requeridos para o serviço de CV. O nível
       de pacote lida com o controle de fluxo para assegurar que um usuário (DTE) não
       subjugue o outro usuário com pacotes, e mantém pontual a entrega eficiente de



                                          35
pacotes. O nível de pacote também verifica erros para abortar ou reiniciar CVs se
      necessário.
Estabelecimento de Chamada

Quando o DTE A deseja se comunicar com o DTE B, tem que montar uma conexão
criando um pacote de PEDIDO de CHAMADA (CLEAR REQUEST), e enviá-lo ao DCE.
O DTE B recebe o pacote da sub rede que é o DCE. Se o DTE B deseja aceitar a
chamada, envia para trás um pacote de CHAMADA ACEITA (CALL ACCEPT).

Quando o DTE A recebe o pacote de CHAMADA ACEITA o Circuito Virtual é
estabelecido.

Neste momento os dois DTEs pode usar uma conexão full-duplex para trocar pacotes de
dados. Quando qualquer lado quer terminar a chamada, envia um pacote de PEDIDO DE
LIMPEZA (CLEAR REQUEST) ao outro lado que então manda de volta um pacote de
CONFIRMAÇÃO DE LIMPEZA (CLEAR CONFIRM) como um reconhecimento.




O DTE determina o número de circuito de saídas de chamadas (OUTGOING CALLS) e o
DCE determina o número de circuito de chegadas de chamadas (INCOMING CALLS) Se
ambos escolherem simultaneamente o mesmo número, a Colisão de Chamada ocorre.
X.25 especifica neste caso o adiamento da saída e da chegada da chamada.

Formatos de Pacotes

O Pacote de Controle

O formato dos pacotes de controle é como se segue:




                                          36
O pacote de controle como também todos os pacotes X.25 começam com 3 bytes de
cabeçalho. Bytes 1,2 contêm os campos de Grupo e de Canal que junto formam 12 bits
que é o número do circuito virtual.O Número 0 é reservado para uso futuro, assim um
DTE pode ter de cada vez até 4095 circuitos virtuais.

O pacote de PEDIDO de CHAMADA:

A informação adicional do pacote de PEDIDO de CHAMADA é feita como se segue:




O Tamanho da Chamada de Endereço e o tamanho do campo de Endereço Chamado
revelam a duração da chamada e dos endereços chamados respectivamente. Os
próximos dois campos são os endereços, são codificados ambos os endereços como
dígitos decimais, 4 bits para cada dígito.

O sistema de endereçamento usado em X.25 é definido pela CCITT na recomendação
X.121. Este sistema é semelhante à rede pública comutada de telefone, com cada host
identificado por um número decimal que consiste em código rural, um código de rede, e
um endereço dentro da rede especificada. O endereço cheio pode conter até 14 dígitos do
qual os três primeiro indicam o país, e o próximo indica a numeração dentro de um país. A
divisão dos 10 dígitos não é especificada por X.121 e permite para cada rede alocar 10
bilhões de endereços.




                                           37
O campo de Tamanho de Facilidades conta quantos bytes de campo de facilidades se
seguem. O próprio campo de Facilidades é usado para pedir características especiais
para esta conexão.

As características específicas podem variar de rede para rede. Possíveis características
são reverse charging(chamadas coletadas), simplex em vez de circuito virtual full-duplex,
e tamanho máximo de pacotes e tamanho de janela em lugar do padrão de 128 bytes e 2
pacotes.

O último campo é O campo de Dados de Usuário que permite o DTE enviar até 16 bytes
de dados junto com o pacote de PEDIDO de CHAMADA.

Outros Pacotes de Controle são:

   •   CHAMADA ACEITA é enviado pelo DTE se a chamada for aceita.
   •   PEDIDO DE LIMPEZA é enviado pelo DTE a rede, recusando o estabelecimento
       do circuito virtual ou solicitando a desconexão do circuito virtual. O quarto byte do
       pacote informa por que a conexão está sendo limpa. É reconhecido por um pacote
       de CONFIRMAÇÃO de PEDIDO DE LIMPEZA.
   •   INTERRUPÇÃO que permite a um pequeno sinal (32 bytes) ser enviado pela
       seqüência. É reconhecido pelo pacote de CONFIRMAÇÃO de INTERRUPÇÃO.
   •   RECEPTOR PRONTO é usado para enviar reconhecimentos separados onde não
       h&a acupe; nenhum tráfego inverso. O campo de ppp (três primeiro bits que
       representam o campo) informa qual pacote é esperado.
   •   RECEPTOR NÃO PRONTO permite a um DTE informar ao outro lado para deixar
       de enviar pacotes durante algum tempo.
   •   REJEITADO permite A um DTE pedir retransmissão de uma série de pacotes. O
       campo de ppp dá o primeiro número de seqüência desejado.
   •   RESET e RESTART são usados para recuperar o circuito virtual e encerrar os
       circuitos virtuais comutados e reiniciar os circuitos virtuais permanentes. É
       reconhecido através de CONFIRMAÇÃO de RESET e CONFIRMAÇÃO de
       RESTART respectivamente.
   •   DIAGNÓSTICO permite a rede informar ao usuário de problemas.
   •   CHEGADA DE CHAMADA é enviado pela rede ao DTE remoto com o intuito de
       estabelecer um circuito virtual.
   •   CHAMADA CONECTADA é enviado pela rede ao DTE chamado, informando que
       o circuito já está disponível.

O Pacote de Dados:

O formato de um pacote de dados é mostrado abaixo:


                                            38
O bit Q indica os dados qualificados, a intenção é permitir que protocolos nas camadas
mais altas estabeleçam o bit 1, para separar os pacotes de controle dos pacotes de
dados. O campo de controle sempre é 0 para pacotes de dados.

Os campos de seqüência e Piggyback são usados para controle de fluxo e usam uma
janela deslizante. Os números de seqüência são um m&o acoche; dulo 8 se o campo
Modulo for 01, e modulo 128 se o campo Modulo for 10 (00 e 11 são ilegais). Se o modulo
de 128 for usado, o cabeçalho é estendido com um byte extra para acomodar os campos
de seqüência e Piggyback.

O bit D determina o significado do campo Piggyback. Se D=0 indica que o DCE local
recebeu o pacote, mas que o DTE distante não recebeu isto. Se D=1 indica que o pacote
foi entregue ao DTE distante.

O bit M indica se o pacote em particular está levando a mensagem intencional total ou se
há mais dados para seguir como parte desta transmissão. Quando o bit M é fixo, a
entidade de rede receptora segura a informação e espera os dados esperados adicionais
antes de entregar a informação ao receptor.

X.25 Diagrama de Estado

O padrão X.25 contém alguns diagramas de estados para descrever seqüências de
eventos como ligação de chamada e justificação de chamada. O diagrama abaixo
apresenta as subfases de ligação de chamada:




                                          39
Inicialmente, a interface está no estado P1.O PEDIDO de CHAMADA(CALL REQUEST)
ou CHEGADA DE CHAMADA (INCOMING CALL) muda o estado para P2 ou P3,
respectivamente. Estes estados transferem os dados ao estado P4 ou P5.

São providos diagramas semelhantes para Limpeza de Chamada (Call Clearing),
Resetting, e Reiniciando.

RECOMENDAÇÕES X.3, X.28, X.29

Por ser bastante elaborado, o protocolo X. 25 implica em recursos normalmente não
disponíveis em equipamentos de dados mais simples e de baixo custo, como é o caso
dos terminais assíncronos.

Para permitir o acesso desses terminais, as redes comutadas de pacotes possuem
interface PAD (packet assembler / disassembler), cuja função principal é exatamente o
empacotamento e desempacotamento de dados, ou seja, o PAD recebe os caracteres
originais por um terminal Start -Stop e forma pacotes para transmissão através de rede, e
executando a operação inversa no sentido da rede/terminal. Dessa forma, pode - se dizer
que o PAD atua como um conversor de protocolo.

As especificações para acesso à rede comutada de pacotes, via interfaces PAD, constam
das recomendações X.3, X.28, X.29 do CCITT.O PAD pode ser visto pela rede como um
terminal X.25. No entanto, isto não obriga que o PAD seja um equipamento à parte do nó
de comutação da rede, ou seja, esta função pode estar residente no mesmo hardware
que o resto das funções do nó.

RECOMENDAÇÕES X.3

A função PAD, definida pelo CCITT pela recomendação X.3, não se propõe a ser uma
solução geral que possibilite o acesso de qualquer terminal assíncrono a uma rede
comutada de pacotes. A classe de terminais objeto de padronização do CCITT é



                                           40
conhecida como a dos terminais compatíveis com teletipo, ou seja, aqueles que operam
com código ASCII (7 bits de dados mais 1 bit de paridade).

A recomendação X.3 define um conjunto de parâmetros, cujos valores podem ser lidos e
alterados pelo usuário, permitindo ao PAD , por exemplo, inibir ou gerar eco localmente,
controlar o fluxo de dados entre DTE e o PAD etc.

A um conjunto de valores predefinidos desses parâmetros dá - se o nome de perfil e é
justamente através da escolha desse perfil que é possível adaptar o PAD ao tipo de
equipamento utilizado ou até mesmo à aplicação desejada.

PARÂMETRO 1 : RETOMADA DO PAD

Permite ao DTE assíncrono sair do estado de transferência de dados para o estado de
comando (fase na qual o DTE conversa diretamente com o PAD), possibilitando, assim,
por exemplo, alterar o valor de um determinado parâmetro sem desconectar um circuito
virtual já estabelecido.

PARÂMETRO 2 : ECO

Quando o parâmetro 2 for igual a 1, o PAD transmite de volta ao DTE todos os caracteres
recebidos e , deste modo, o comparador pode comparar visualmente a igualdade entre o
caráter digitado e o recebido.

Outra situação é a necessidade de desativar temporariamente o eco para permitir o envio
de dados sigilosos que não devem aparecer no terminal como , por exemplo, senhas.

PARÂMETRO 3 : SELEÇÃO DE SINAL DE ENVIO DE DADOS

Caso a mensagem transmitida pelo usuário tenha tamanho insuficiente para completar um
pacote, o DTE deve enviar um caráter especialmente designado para que o conteúdo do
buffer seja empacotado e transmitido no estado em que se encontra.

PARÂMETRO 4 : SELEÇÃO DE TEMPORIZAÇÃO

Permite definir o tempo máximo entre caracteres recebidos pelo PAD, sendo que, depois
de esgotado este tempo , o PAD empacota os caracteres armazenados no seu buffer
interno e transmite o pacote de dados.

PARÂMETRO 5 : CONTROLE DE FLUXO DO TERMINAL

Função utilizada pelo PAD para indicar uma impossibilidade temporária de receber dados
do DTE.

PARÂMETRO 6 : CONTROLE DO ENVIO DE SINAIS DE SERVIÇOS DO PAD

Permite ao terminal assíncrono decidir se quer ou não receber do PAD os sinais de
serviços(resposta do PAD aos comandos enviados pelo DTE).




                                          41
PARÂMETRO 7 : SELEÇÃO DA OPERAÇÃO DO PAD AO RECEBER UM SINAL
BREAK DO DTE

Este parâmetro permite que o usuário defina o procedimento pelo PAD ao receber um
sinal de parada.

PARÂMETRO 8 : DESCARTA SAÍDA

Este parâmetro permite ao PAD descartar os pacotes recebidos do DTE remoto para o
DTE assíncrono.

PARÂMETRO 9 : PREENCHIMENTO APÓS CR

Esta função faz com que o PAD envie a terminal impressor assíncrono caracteres de
preenchimento (NUL) após a transmissão de um caractere CB (retorno de carro) ,
evitando, assim , que caracteres enviados pelo DTE remoto sejam impressos enquanto o
carro estiver retornando para a primeira posição de uma linha.

PARÂMETRO 10: DESDOBRAMENTO DE LINHA

Este parâmetro permite ao usuário escolher o número de caracteres por linha que o PAD
deve enviar ao DTE assíncrono, possibilitando, assim ,que terminais com tamanho de
linha diferentes possam se comunicar entre si sem que terminal com o menor tamanho de
linha perca informações.

PARÂMETRO 11 : VELOCIDADE DE TRANSMISSÃO DO TERMINAL ASSÍNCRONO

Parâmetro utilizado para fins informativos, indicando a velocidade de transmissão do
terminal assíncrono, não poderá ser alterado devido às características do modem
utilizado.

PARÂMETRO 12 : CONTROLE DE FLUXO DO PAD

Este parâmetro permite que o terminal assíncrono informe a impossibilidade temporária
de receber caracteres do PAD.

PARÂMETRO13 : INSERÇÃO DE LF (TROCA DE LINHA) APÓS UM CR

Este parâmetro permite ao PAD inserir automaticamente um caráter LF após qualquer CR
transmitido ou ecoado para o DTE assíncrono. Esta função só é aplicável durante a fase
de transferência de dados.

PARÂMETRO 14 :PREENCHIMENTO APÓS LR (TROCA DE LINHA)

Esta função faz com que o PAD transmita caracteres de preenchimento (NUL) após a
transmissão de caracteres de LR, garantindo que nenhum caractere será transmitido
antes que o carro esteja posicionado na linha seguinte.




                                         42
PARÂMETRO 15 : EDIÇÃO

O parâmetro 15 ativa as funções de edição do PAD (parâmetros 16, 17 e 18) durante a
fase de transferência de dados.
Durante a fase de comando, a edição sempre estará disponível.

PARÂMETRO 16 : DELEÇÃO DE CARACTERES

Através deste parâmetro , o usuário pode escolher o caractere que será utilizado para
apagar caracteres armazenado no buffer interno do PAD. O caráter de apagamento nunca
será transmitido para o DTE e é apagado um caractere por vez. O caractere mais utilizado
para solicitar o apagamento é o BS (Back Space).

PARÂMETRO 17 : DELEÇÃO DE LINHA

Através deste parâmetro , o usuário pode escolher o caractere que será utilizado para
apagar todos os caracteres armazenados no buffer interno do PAD. O caractere mais
utilizado para esta função é o CAN (cancel).

PARÂMETRO 18 : APRESENTAÇÃO DE LINHA

Através deste parâmetro , o usuário pode escolher o caractere que será utilizado para
comandar a transmissão ,para o terminal assíncrono, de todos os caracteres
armazenados no buffer interno do PAD. O caractere usual para esta função é o "*".

RECOMENDAÇÕES X.28

Define a interação entre o terminal assíncrono e o PAD, descrevendo os comandos a
serem empregados pelo usuário no controle do PAD, ou seja, como estabelecer e
desconectar um circuito virtual, como modificar o valor associado aos parâmetros do PAD,
como saber quais valores que estão associados aos parâmetros etc. Nessa
recomendação , estão ainda definidas as respostas aos comandos do PAD , às quais se
dá o nome de sinais de serviço.

Se o terminal estiver na fase de transferência de dados , todos os comandos devem ser
precedidos de um procedimento de retomada do PAD.

PROF: comando que permite ao DTE solicitar ao PAD que atribuiu aos 18 parâmetros os
valores definidos para perfil padrão selecionado.

STAT: permite ao DTE interrogar ao PAD sobre estado de sua ligação. O PAD
responderá com sinais de serviço ENGAGED (chamada virtual existente) ou FREE (não
existência de chamada virtual).

CLR: permite ao DTE solicitar a desconexão da chamada virtual. O PAD responde ao
comando de desconexão enviando uma mensagem de confirmação, desde que o
parâmetro 6 seja igual a 1 ou 5.

RESET : permite o DTE solicitar ao PAD que envie um pacote de RESET para reiniciar
uma chamada.



                                          43
INT : permite ao DTE solicitar ao PAD que envie um pacote X.25 de interrupção ao DTE
remoto.

Outros sinais de serviços:

COM : permite ao PAD indicar que a chamada foi estabelecida e que o PAD está fase de
transferência de dados.

RESET : permite ao PAD indicar que ocorreu um reinicio de chamada , podendo,
portanto, ter havido perda de pacotes em transito pela rede. Contém a causa / diagnóstico
do motivo do RESET.

ERR : o PAD indica que houve um erro no comando enviado pelo DTE.

ENGAGEF : indicação do PAD da existência de uma chamada virtual por ocasião do
comando START .

FREE : indicação do PAD confirmando uma desconexão solicitada através do comando
CLR

CLR CONF: indicação do PAD confirmando uma desconexão solicitada através do
comando CLR.

CLR : indicação do PAD para uma chamada desfeita pelo DTE remoto ou pela própria
rede. Contém causa /diagnostico do motivo do CLR.

RECOMENDAÇÃO X.29

Define como deve ser processada a troca de mensagens entre o PAD e um terminal
modo pacote (X.25), ou entre PADs.




                                           44
IPX/SPX
IPX – Internetwork Packet Exchange – é um protocolo desenvolvido pela Novell que cria,
mantém e termina os links de comunicação entre dispositivos de Rede. Ele é responsavel
tanto pelos dados que entram quanto pelos dados que saem. Quando um dado chega, o
IPX lê e envia para o endereço adequado.

SPX – Sequenced Packet Exchange é o protocolo que supervisiona as transmissões de
dados, compostas por uma sucessão de pacotes separados. Se um pedido de
confirmação não for respondido dentro de um tempo especificado, o SPX retransmite o
pacote envolvido.

Como o NetBEUI, o IPX/SPX é um protocolo relativamente pequeno e veloz em uma LAN
mas, diferentemente do NetBEUI, suporta roteamento.




                                         45
Relatório geral pi
Relatório geral pi
Relatório geral pi
Relatório geral pi
Relatório geral pi
Relatório geral pi
Relatório geral pi
Relatório geral pi
Relatório geral pi
Relatório geral pi
Relatório geral pi
Relatório geral pi
Relatório geral pi
Relatório geral pi
Relatório geral pi
Relatório geral pi
Relatório geral pi
Relatório geral pi
Relatório geral pi
Relatório geral pi
Relatório geral pi
Relatório geral pi
Relatório geral pi

Contenu connexe

Tendances

APSI 2 aulas - padroes arquiteturais - camadas PROF.TARCIANE
APSI 2   aulas  - padroes arquiteturais - camadas PROF.TARCIANEAPSI 2   aulas  - padroes arquiteturais - camadas PROF.TARCIANE
APSI 2 aulas - padroes arquiteturais - camadas PROF.TARCIANE
Fco Edilson Nascimento
 
Sistemas Embarcados - 22 06-2011
Sistemas Embarcados - 22 06-2011Sistemas Embarcados - 22 06-2011
Sistemas Embarcados - 22 06-2011
Steve Rogers
 
MODERNIZAÇÃO DE SISTEMAS LEGADOS: um estudo de caso sobre integração de siste...
MODERNIZAÇÃO DE SISTEMAS LEGADOS: um estudo de caso sobre integração de siste...MODERNIZAÇÃO DE SISTEMAS LEGADOS: um estudo de caso sobre integração de siste...
MODERNIZAÇÃO DE SISTEMAS LEGADOS: um estudo de caso sobre integração de siste...
Paulo Rodrigues
 
Sistemas Distribuídos - Aspectos de Projeto
Sistemas Distribuídos - Aspectos de ProjetoSistemas Distribuídos - Aspectos de Projeto
Sistemas Distribuídos - Aspectos de Projeto
Adriano Teixeira de Souza
 

Tendances (19)

Sistemas distribuídos aula 1
Sistemas distribuídos aula 1Sistemas distribuídos aula 1
Sistemas distribuídos aula 1
 
APSI 2 aulas - padroes arquiteturais - camadas PROF.TARCIANE
APSI 2   aulas  - padroes arquiteturais - camadas PROF.TARCIANEAPSI 2   aulas  - padroes arquiteturais - camadas PROF.TARCIANE
APSI 2 aulas - padroes arquiteturais - camadas PROF.TARCIANE
 
Apresentação Sistemas Distribuídos - Conceito
Apresentação Sistemas Distribuídos - ConceitoApresentação Sistemas Distribuídos - Conceito
Apresentação Sistemas Distribuídos - Conceito
 
Sistemas Distribuídos - Aula 01
Sistemas Distribuídos - Aula 01Sistemas Distribuídos - Aula 01
Sistemas Distribuídos - Aula 01
 
Sistemas Embarcados - 22 06-2011
Sistemas Embarcados - 22 06-2011Sistemas Embarcados - 22 06-2011
Sistemas Embarcados - 22 06-2011
 
RESENHA DOS CAP. 11,12, 13, e 29 do livro Engenharia de software
RESENHA DOS CAP. 11,12, 13, e 29 do livro Engenharia de softwareRESENHA DOS CAP. 11,12, 13, e 29 do livro Engenharia de software
RESENHA DOS CAP. 11,12, 13, e 29 do livro Engenharia de software
 
MODERNIZAÇÃO DE SISTEMAS LEGADOS: um estudo de caso sobre integração de siste...
MODERNIZAÇÃO DE SISTEMAS LEGADOS: um estudo de caso sobre integração de siste...MODERNIZAÇÃO DE SISTEMAS LEGADOS: um estudo de caso sobre integração de siste...
MODERNIZAÇÃO DE SISTEMAS LEGADOS: um estudo de caso sobre integração de siste...
 
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
 
desafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidosdesafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidos
 
Aula03 Sistemas Distribuídos - Arquiteturas de sistemas distribuídos
Aula03 Sistemas Distribuídos - Arquiteturas de sistemas distribuídosAula03 Sistemas Distribuídos - Arquiteturas de sistemas distribuídos
Aula03 Sistemas Distribuídos - Arquiteturas de sistemas distribuídos
 
Introdução à sistemas distribuídos
Introdução à sistemas distribuídosIntrodução à sistemas distribuídos
Introdução à sistemas distribuídos
 
Aula02 Sistemas Distribuídos - Caracterização de sistemas distribuídos
Aula02 Sistemas Distribuídos - Caracterização de sistemas distribuídosAula02 Sistemas Distribuídos - Caracterização de sistemas distribuídos
Aula02 Sistemas Distribuídos - Caracterização de sistemas distribuídos
 
Pilha de protocolos
Pilha de protocolosPilha de protocolos
Pilha de protocolos
 
Sistemas operacionais arquitetura proprietários ui
Sistemas operacionais arquitetura proprietários uiSistemas operacionais arquitetura proprietários ui
Sistemas operacionais arquitetura proprietários ui
 
ACII - SL07 - Introducao aos sistemas distribuidos
ACII - SL07 - Introducao aos sistemas distribuidosACII - SL07 - Introducao aos sistemas distribuidos
ACII - SL07 - Introducao aos sistemas distribuidos
 
Arquitetura de Software
Arquitetura de SoftwareArquitetura de Software
Arquitetura de Software
 
Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionais
 
Sistemas Distribuídos - Aspectos de Projeto
Sistemas Distribuídos - Aspectos de ProjetoSistemas Distribuídos - Aspectos de Projeto
Sistemas Distribuídos - Aspectos de Projeto
 
IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...
IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...
IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...
 

En vedette (6)

Manual de adiccionesssa adi
Manual de adiccionesssa adiManual de adiccionesssa adi
Manual de adiccionesssa adi
 
El Pentateuco
El PentateucoEl Pentateuco
El Pentateuco
 
Ian & gwen harding family round table
Ian & gwen harding   family round tableIan & gwen harding   family round table
Ian & gwen harding family round table
 
Grupo c
Grupo cGrupo c
Grupo c
 
A Real World Design Process
A Real World Design ProcessA Real World Design Process
A Real World Design Process
 
Manual PráCtico Para Blogrs
Manual PráCtico Para BlogrsManual PráCtico Para Blogrs
Manual PráCtico Para Blogrs
 

Similaire à Relatório geral pi

57933306-TI-Arquitetura-OSI-Concursos.pdf
57933306-TI-Arquitetura-OSI-Concursos.pdf57933306-TI-Arquitetura-OSI-Concursos.pdf
57933306-TI-Arquitetura-OSI-Concursos.pdf
RicardoZorekDaniel1
 
Ccna exploration fundamentos de rede - 3 funcionalidade e protocolos da cam...
Ccna exploration   fundamentos de rede - 3 funcionalidade e protocolos da cam...Ccna exploration   fundamentos de rede - 3 funcionalidade e protocolos da cam...
Ccna exploration fundamentos de rede - 3 funcionalidade e protocolos da cam...
veruzkavaz
 
Sistema osi
Sistema osiSistema osi
Sistema osi
sueni
 
Sistema osi
Sistema osiSistema osi
Sistema osi
sueni
 
Padrões para cloude computing
Padrões para cloude computingPadrões para cloude computing
Padrões para cloude computing
marcelofrate
 
Modelo osi da iso semana5 slide
Modelo osi da iso semana5 slideModelo osi da iso semana5 slide
Modelo osi da iso semana5 slide
danthon
 
Capítulo 3 funcionalidades e protocolos da camada de aplicação
Capítulo 3   funcionalidades e protocolos da camada de aplicaçãoCapítulo 3   funcionalidades e protocolos da camada de aplicação
Capítulo 3 funcionalidades e protocolos da camada de aplicação
Simba Samuel
 

Similaire à Relatório geral pi (20)

57933306-TI-Arquitetura-OSI-Concursos.pdf
57933306-TI-Arquitetura-OSI-Concursos.pdf57933306-TI-Arquitetura-OSI-Concursos.pdf
57933306-TI-Arquitetura-OSI-Concursos.pdf
 
Modelo osi
Modelo osiModelo osi
Modelo osi
 
Ccna exploration fundamentos de rede - 3 funcionalidade e protocolos da cam...
Ccna exploration   fundamentos de rede - 3 funcionalidade e protocolos da cam...Ccna exploration   fundamentos de rede - 3 funcionalidade e protocolos da cam...
Ccna exploration fundamentos de rede - 3 funcionalidade e protocolos da cam...
 
Corbawebserves
CorbawebservesCorbawebserves
Corbawebserves
 
O_Emprego_de_Tecnicas_de_IA_no_suporte_a.pdf
O_Emprego_de_Tecnicas_de_IA_no_suporte_a.pdfO_Emprego_de_Tecnicas_de_IA_no_suporte_a.pdf
O_Emprego_de_Tecnicas_de_IA_no_suporte_a.pdf
 
Modelo de Referência OSI
Modelo de Referência OSIModelo de Referência OSI
Modelo de Referência OSI
 
Introdução a arquitetura de sistemas com .NET
Introdução a arquitetura de sistemas com .NETIntrodução a arquitetura de sistemas com .NET
Introdução a arquitetura de sistemas com .NET
 
Modelo osi
Modelo osiModelo osi
Modelo osi
 
Sistema osi
Sistema osiSistema osi
Sistema osi
 
Sistema osi
Sistema osiSistema osi
Sistema osi
 
Sistema osi
Sistema osiSistema osi
Sistema osi
 
Desenvolvimento em Nuvem
Desenvolvimento em NuvemDesenvolvimento em Nuvem
Desenvolvimento em Nuvem
 
Padrões para cloude computing
Padrões para cloude computingPadrões para cloude computing
Padrões para cloude computing
 
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptxAula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
 
Modelo osi da iso semana5 slide
Modelo osi da iso semana5 slideModelo osi da iso semana5 slide
Modelo osi da iso semana5 slide
 
Infraestrutura de redes lan e wlan
Infraestrutura de redes lan e wlanInfraestrutura de redes lan e wlan
Infraestrutura de redes lan e wlan
 
Capítulo 3 funcionalidades e protocolos da camada de aplicação
Capítulo 3   funcionalidades e protocolos da camada de aplicaçãoCapítulo 3   funcionalidades e protocolos da camada de aplicação
Capítulo 3 funcionalidades e protocolos da camada de aplicação
 
Lucas e pedro1
Lucas e pedro1Lucas e pedro1
Lucas e pedro1
 
Modelos OSI e TCP - Camadas de Aplicação, Apresentação e Seção.pdf
Modelos OSI e TCP - Camadas de Aplicação, Apresentação e Seção.pdfModelos OSI e TCP - Camadas de Aplicação, Apresentação e Seção.pdf
Modelos OSI e TCP - Camadas de Aplicação, Apresentação e Seção.pdf
 
Modelos TCP/IP e OSI para CCNA
Modelos TCP/IP e OSI para CCNAModelos TCP/IP e OSI para CCNA
Modelos TCP/IP e OSI para CCNA
 

Plus de redesinforma (20)

Completas
CompletasCompletas
Completas
 
Redes2
Redes2Redes2
Redes2
 
Redes3
Redes3Redes3
Redes3
 
Redes osi
Redes osiRedes osi
Redes osi
 
Basico de protocolos_2009
Basico de protocolos_2009Basico de protocolos_2009
Basico de protocolos_2009
 
Questoes
QuestoesQuestoes
Questoes
 
Redes lista exercicios
Redes lista exerciciosRedes lista exercicios
Redes lista exercicios
 
Lista exerc conceitos-mod-ref
Lista exerc conceitos-mod-refLista exerc conceitos-mod-ref
Lista exerc conceitos-mod-ref
 
Exercícios para semestre
Exercícios para semestreExercícios para semestre
Exercícios para semestre
 
Exercicio parte1
Exercicio parte1Exercicio parte1
Exercicio parte1
 
Redes4
Redes4Redes4
Redes4
 
Redes5
Redes5Redes5
Redes5
 
Tcp transmission control protocol e ip internet protocol
Tcp  transmission control protocol e ip internet protocolTcp  transmission control protocol e ip internet protocol
Tcp transmission control protocol e ip internet protocol
 
Sincronas
SincronasSincronas
Sincronas
 
Semfio
SemfioSemfio
Semfio
 
Roteament
RoteamentRoteament
Roteament
 
Ri l5 052
Ri l5 052Ri l5 052
Ri l5 052
 
Ri a9
Ri a9Ri a9
Ri a9
 
Ri a8
Ri a8Ri a8
Ri a8
 
Ri a7
Ri a7Ri a7
Ri a7
 

Dernier

5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
LeloIurk1
 
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfReta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
WagnerCamposCEA
 
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
HELENO FAVACHO
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médio
rosenilrucks
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
LeloIurk1
 

Dernier (20)

migração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenosmigração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenos
 
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIAPROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
 
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
 
Nós Propomos! Autocarros Elétricos - Trabalho desenvolvido no âmbito de Cidad...
Nós Propomos! Autocarros Elétricos - Trabalho desenvolvido no âmbito de Cidad...Nós Propomos! Autocarros Elétricos - Trabalho desenvolvido no âmbito de Cidad...
Nós Propomos! Autocarros Elétricos - Trabalho desenvolvido no âmbito de Cidad...
 
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfReta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
 
Antero de Quental, sua vida e sua escrita
Antero de Quental, sua vida e sua escritaAntero de Quental, sua vida e sua escrita
Antero de Quental, sua vida e sua escrita
 
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
 
Seminário Biologia e desenvolvimento da matrinxa.pptx
Seminário Biologia e desenvolvimento da matrinxa.pptxSeminário Biologia e desenvolvimento da matrinxa.pptx
Seminário Biologia e desenvolvimento da matrinxa.pptx
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!
 
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia TecnologiaPROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
 
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2
 
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxSlides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
 
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasJogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
 
Projeto Nós propomos! Sertã, 2024 - Chupetas Eletrónicas.pptx
Projeto Nós propomos! Sertã, 2024 - Chupetas Eletrónicas.pptxProjeto Nós propomos! Sertã, 2024 - Chupetas Eletrónicas.pptx
Projeto Nós propomos! Sertã, 2024 - Chupetas Eletrónicas.pptx
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médio
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
 
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfProjeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
 
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
 

Relatório geral pi

  • 1. MODELO OSI Introdução O final da década de 70 apresentava um panorama curioso em termos de comunicação de dados em redes de computadores: por um lado, uma perspectiva de crescimento vertiginoso causado pelo investimento e desenvolvimento que estavam sendo feitos, mas por outro lado uma tendência que poderia acarretar em uma profunda crise no setor, a heterogeneidade de padrões entre os fabricantes, praticamente impossibilitando a interconexão entre sistemas de fabricantes distintos. Então os fabricantes começaram a perseguir alguns objetivos necessários para a implementação de um sistema aberto. Esses objetivos são: • Interoperabilidade: capacidade que os sistemas abertos possuem de troca de informações entre eles, mesmo que sejam fornecidos por fabricantes diversos; • Interconectividade: é a maneira através da qual se podem conectar computadores de fabricantes distintos; • Portabilidade da aplicação: é a capacidade de um software de rodar em várias plataformas diferentes; • "Scalability": capacidade de um software rodar com uma performance aceitável em computadores de capacidades diversas, desde computadores pessoais até supercomputadores. Para se atingir estes objetivos, a ISO (International Organization for Standardization) passou a se ocupar em criar um padrão de arquitetura aberta e baseada em camadas. Foi então definido o Modelo de Referência para Interconexão de Sistemas Abertos (Reference Model for Open Systems Interconection - RM OSI). A utilização de um ambiente de sistema aberto nos oferece algumas vantagens, como: • Liberdade de escolha entre soluções de diversos fabricantes; • Acesso mais rápido a novas tecnologias e a preços mais acessíveis, já que é mais barato e rápido fabricar produtos baseados em uma plataforma padrão; • Redução de investimentos em novas máquinas, já que os sistemas e os softwares de aplicação são portáveis para os vários tipos de máquinas existentes. A adoção de um modelo baseado em camadas também não é arbitrária. Considerando que uma rede de computadores tem como objetivo o processamento de tarefas distribuídas pela rede de forma harmônica e cooperativa entre os vários processos de aplicação, o projeto desta deve levar em conta vários fatores, como: • Considerar todos os eventos possíveis de acontecer durante a comunicação; • Conhecer todos os efeitos e causas destes eventos; • Especificar em detalhes todos os aspectos técnico-operacionais dos meios físicos a serem utilizados como suporte à comunicação; • Detalhes das próprias aplicações a serem executadas. 1
  • 2. Podemos perceber, então, que o problema é extremamente complexo e abrangente. A fim de se lidar com esta complexidade (facilitando a implementação e manutenção), projeta- se à rede como um conjunto de camadas. Este conjunto de camadas é hierárquico, ou seja, cada camada baseia-se na camada inferior [Moura 86]. Reduzindo-se o projeto global da rede ao projeto de cada uma das camadas, simplifica-se consideravelmente o trabalho de desenvolvimento e de manutenção. O projeto de uma camada é restrito ao contexto dessa camada e supõe que os problemas fora deste contexto já estejam devidamente resolvidos. Na realidade existem duas vantagens práticas na utilização de uma arquitetura em camadas. Em primeiro lugar, a complexidade do esforço global de desenvolvimento é reduzida através de abstrações (não interessa para uma determinada camada como as demais implementam o fornecimento de seus serviços, só o que elas oferecem). Na arquitetura hierárquica, a camada (N) sabe apenas que existem as camadas (N-1), prestadoras de determinados serviços e a camada (N+1), que lhe requisita os serviços. A camada (N) não toma conhecimento da existência das camadas (N±2), (N±3), etc. O segundo aspecto é relacionado com a independência entre as camadas. A camada (N) preocupa-se apenas em utilizar os serviços da camada (N-1), independentemente do seu protocolo. É assim que uma camada pode ser alterada sem mudar as demais (facilidade de manutenção) - desde que os serviços que ela presta não sejam modificados. É assim também que novas aplicações podem ser implementadas, na camada apropriada, aproveitando os mesmos serviços já fornecidos pelas outras camadas (redução dos esforços para evoluções). Porém a elaboração de um sistema aberto passa por algumas etapas obrigatórias que podemos observar claramente na definição do modelo OSI, da ISO: • Definição do modelo do sistema aberto (padrão para arquitetura do sistema aberto); • Definição dos padrões dos componentes que fazem parte do modelo (padrões de interoperabilidade e portabilidade), não só os relacionados à comunicação, mas também alguns não relacionados, como estrutura de armazenamento de dados, etc; • Seleção dos perfis funcionais. Podemos observar que o modelo OSI da ISO corresponde exatamente ao primeiro item citado acima. O modelo OSI é um modelo de referência e define apenas a arquitetura do sistema. O padrão criado para o modelo OSI, então, define exatamente o que cada camada deve fazer, mas não define como isto será feito, ou seja, define os serviços que cada camada deve prestar, mas não o protocolo que o realizará. Este primeiro passo já está bem definido pela ISO. A definição dos protocolos de cada camada, então, fica por conta do segundo passo. Esta parte também está definida pela ISO, mas é realizado por grupos de estudo diversos. Este passo é uma tarefa muito dinâmica, pois novas tecnologias de transmissão surgem a todo instante. Portanto por um lado temos alguns padrões bem documentados, mas por outro, temos tecnologias emergentes que precisam ser adaptadas às condições do modelo OSI e ainda estão em processo de definição. 2
  • 3. Já a terceira etapa não é uma fase de responsabilidade da ISO. Esta etapa de definição de perfis funcionais é realizada por cada país, que escolhe os padrões que lhe cabem baseados em condições tecnológicas, base instalada, visão futura, etc. Por exemplo, no Brasil temos o Perfil Funcional do Governo Brasileiro. A escolha do Perfil Funcional é uma etapa importante, pois apesar de dois sistemas seguirem o Modelo OSI, se eles adotarem perfis diferentes, eles nunca vão conseguir interoperar. A arquitetura OSI foi desenvolvida a partir de três elementos básicos [Moura 86]: • os processos de aplicação existentes no ambiente OSI; • as conexões que ligam os processos de aplicação e que lhes permitem trocar informações; • os sistemas. Figura 1: Processos de aplicação, conexões e sistemas O desenho abaixo nos dá uma idéia da arquitetura de uma máquina pertencente a um sistema de comunicação: Figura 2: Arquitetura de uma máquina do sistema 3
  • 4. Hardware: provê a infra-estrutura necessária (no nível mais baixo) para o processamento da aplicação, como a manipulação de bits, acesso a disco, etc. · Sistema operacional: provê os serviços básicos de acesso a hardware, etc. · Gerenciamento de dados: cuida de tarefas como o acesso, manipulação e troca de vários tipos de dados. Uma consistência nesta tarefa é um grande passo rumo à portabilidade de aplicações. Existem várias formas de implementação de acesso a bancos de dados, mas a mais comum e aceita pela indústria é a SQL (Structure Query Language). · Linguagem: tem sido feitos esforços em relação à criação de uma linguagem com independência da plataforma, de forma a prover a portabilidade de código. · Interface com o usuário: um dos principais fatores de portabilidade, já que provê a interface com o usuário da aplicação. Cada vez mais estão sendo desenvolvidas interfaces gráficas e orientadas a objetos baseadas em janelas, ícones e menus. Os principais padrões para desenvolvimento de interfaces gráficas são X Window e Motif. • Comunicação: à parte de comunicação é o objeto principal do nosso estudo. Ela vai prover a comunicação e interoperação entre máquinas e sistemas diferentes, cuidando de características como padrões de interoperação, endereçamento, etc. O modelo OSI, então, se encaixa na Figura 2 como um conjunto de funções que possibilitam que máquinas distintas possam se comunicar e trocar informações. Ele possui sete camadas (Figura 3), onde cada camada é responsável por uma determinada função específica. Os princípios utilizados para se chegar a estas camadas são [Tanenbaum 94]: • Uma camada deve ser criada onde é necessário um nível de abstração diferente; • Cada camada deve desempenhar uma função bem definida; • A função de cada camada deve ser definida tendo em vista a definição de protocolos padrões internacionais; • As fronteiras entre as camadas devem ser escolhidas de forma a minimizar o fluxo de informações através das interfaces; • O número de camadas deve ser grande o suficiente para que não seja preciso agrupar funções em uma mesma camada por necessidade, e pequeno o suficiente para que a arquitetura fique manejável. Cada camada é usuária dos serviços prestados pela camada imediatamente inferior e presta serviços para a camada imediatamente superior. Esta troca de informações entre as camadas adjacentes ocorre por meio da troca de primitivas de serviços nas interfaces entre as camadas. Apesar do modelo OSI estar dividido em sete níveis, pode-se considerar genericamente que as três camadas mais baixas cuidam dos aspectos relacionados à transmissão propriamente dita e a camada de transporte lida com a comunicação fim-a-fim, enquanto que as três camadas superiores se preocupam com os aspectos relacionados à aplicação, já em nível de usuário. A comunicação entre sistemas ocorre em nível de camadas, ou seja, a camada de aplicação do sistema A se comunica com a camada de aplicação do sistema B e assim por diante até o nível físico, onde ocorre a comunicação física entre os sistemas. 4
  • 5. Figura 3: Modelo OSI Uma maneira bastante fácil e simplista de se enxergar a funcionalidade de um modelo em camadas, como o modelo OSI, é imaginar que cada camada tem como função adicionar um cabeçalho aos dados do usuário a serem transmitidos para outro sistema (Figura 4). Deste modo a função de cada camada do outro sistema é exatamente a inversa, ou seja, retirar os cabeçalhos dos dados que chegam e entregá-los ao usuário em sua forma original. Figura 4: Transferência de Dados entre Camadas 5
  • 6. Os dados entregues pelo usuário à camada de aplicação do sistema recebem a denominação de SDU (Service Data Unit). A camada de aplicação, então, junta a SDU (no caso, os dados do usuário) um cabeçalho chamado PCI (Protocol Control Information). O objeto resultante desta junção é chamado de PDU (Protocol Data Unit), que corresponde à unidade de dados especificada de um certo protocolo da camada em questão. Primitivas de Serviços As primitivas de serviços são informações trocadas entre duas camadas adjacentes de forma a realizar um serviço. No modelo OSI são definidas quatro tipos de primitivas: • Pedido (Request): utilizada para solicitar ou ativar um determinado serviço; • Indicação (Indication): informa a ocorrência de um determinado evento; • Resposta (Response): utilizada para responder a um determinado evento; • Confirmação (Confirmation): utilizada para confirmar a execução de um serviço solicitado. As primitivas possuem parâmetros de entrada e saída. Por exemplo, em um pedido de conexão, os parâmetros podem especificar a máquina à qual se conectar, o tipo de serviço desejado e o tamanho máximo de mensagem a ser utilizada e os parâmetros em uma indicação de conexão podem conter a identidade do solicitante, o tipo de serviço e o tamanho máximo de mensagem proposto. Quem cuida dos detalhes desta negociação é o protocolo. Por exemplo, caso duas propostas para o tamanho máximo das mensagens trocadas seja conflitante, o protocolo deve decidir qual das duas será aceita. Os serviços prestados podem ser basicamente de dois tipos: confirmado e não confirmado. No serviço confirmado, há um pedido, uma indicação, uma resposta e uma confirmação. Já no serviço não confirmado, há apenas um pedido e uma indicação. Um exemplo de um serviço confirmado é o estabelecimento de uma conexão, enquanto que a desconexão é um serviço não confirmado. Vejamos o exemplo de um serviço de conexão na Figura 5. Figura 5: Diagrama de Tempo de Estabelecimento de Conexão 6
  • 7. Este serviço pode ser descrito da seguinte forma: • Request.CONEXÃO - solicita o estabelecimento de uma conexão; • Indication.CONEXÃO - informa à parte chamada; • Response.CONEXÃO - entidade chamada aceita ou rejeita chamadas; • Confirmation.CONEXÃO - indica ao solicitante se a chamada foi aceita; • Request.DADOS - solicita a transmissão de dados; • Indication.DADOS - avisa sobre a chegada de dados; • Request.DESCONEXÃO - solicita que a conexão seja liberada; • Indication.DESCONEXÃO - informa ao parceiro sobre o pedido. Um exemplo muito didático é a analogia com o sistema telefônico. Por exemplo, você liga para uma pessoa e a convida para sair: • Request.CONEXÃO - você disca o telefone da pessoa; • Indication.CONEXÃO - o telefone dela toca; • Response.CONEXÃO - ela atende ao telefone; • Confirmation.CONEXÃO - você ouve o sinal de chamada parar de tocar; • Request.DADOS - você convida a pessoa para sair; • Indication.DADOS - ela ouve seu convite; • Request.DADOS - ela responde que sim; • Indication.DADOS - você ouve a aceitação dela; • Request.DESCONEXÃO - você desliga o telefone; • Indication.DESCONEXÃO - ela ouve e desliga também. Figura 6: Diagrama de Tempo da Conversação Telefônica A camada N é o usuário, ou seja, você e a pessoa com quem estão falando. A camada N-1 é a operadora do serviço. De um modo bastante simplificado, este exemplo nos mostra a troca de primitivas em uma conversação genérica, mas que pode ser perfeitamente aplicada a situações mais complexas, como o modelo OSI. Serviços e Protocolos Faz-se necessário neste ponto deixar bem clara a distinção entre serviços e protocolos. Um serviço é um conjunto de primitivas que uma camada oferece à camada superior adjacente, ou seja, é uma interface entre duas camadas onde a inferior se comporta como provedora do serviço e a superior a usuária do serviço. O serviço define as operações que 7
  • 8. a camada está preparada para realizar em nome de seus usuários, mas não diz nada a respeito do modo como isso deve ser implementado. Já um protocolo é um conjunto de regras que governa o formato e significado dos quadros, pacotes ou mensagens trocados entre entidades parceiras dentro de uma mesma camada. Os protocolos são utilizados para implementar os serviços, não sendo diretamente visíveis aos usuários, ou seja, o protocolo utilizado pode ser modificado, desde que o serviço oferecido ao usuário permaneça o mesmo. Devemos sempre lembrar que ao se falar em serviços, estamos falando em camadas adjacentes (níveis diferentes, no mesmo sistema), e protocolo falamos de entidades pares (no mesmo nível, em sistemas diferentes). Figura 7: Serviços e protocolos no modelo OSI Os serviços providos pela camada (N) são disponíveis para a entidade (N+1) através dos SAP´s (Service Access Point). Os SAP´s são interfaces lógicas entre as entidades (N) e (N+1). Portanto, quando a entidade (N+1) precisa utilizar o serviço provido pela camada (N), ela busca este no SAP(N). As informações entre entidades (N+1) são trocadas através de uma associação chamada conexão (N) , estabelecida na camada (N) usando o protocolo (N). A Figura 8 ilustra este conceito. Figura 8: SAP´s e conexões 8
  • 9. Camada Física A camada física é a única camada que possui acesso físico ao meio de transmissão da rede devendo, portanto, se preocupar com fatores como as especificações elétricas, mecânicas, funcionais e procedurais da interface física entre o equipamento e o meio de transmissão, ou seja, a camada física tem como função básica à adaptação do sinal ao meio de transmissão. · mecânicas: propriedades físicas da interface com o meio físico de transmissão, incluindo, por exemplo, o tipo de conector utilizado; · elétricas: relacionam-se com a representação de um bit em termos de, por exemplo, nível de tensão utilizado e taxa de transmissão de bits; · funcionais: definem as funções a serem implementadas por esta interface; · procedurais: especificam a seqüência de eventos trocados durante a transmissão de uma série de bits através do meio de transmissão. A camada física possui as seguintes funções: Estabelecimento/encerramento de conexões: ativa e desativa conexões físicas mediante a solicitação de entidades da camada de enlace; · transferência de dados: a unidade de transmissão utilizada é o bit. O nível físico tem como função transmitir os bits na mesma ordem em que chegam da camada de enlace (no sistema de origem) e entregá-los à camada de enlace na mesma ordem que chegaram (no sistema de destino); · gerenciamento das conexões: gerência da qualidade de serviço das conexões físicas estabelecidas. Deve monitorar taxa de erros, disponibilidade de serviço, taxa de transmissão, atraso de trânsito etc. Os padrões de nível físico utilizado são, por exemplo, X.21, X.21 bis, V.24, V.28, RS-232 I.430, I.431 etc. Camada de Enlace A camada de enlace tem o objetivo de prover uma conexão confiável sobre um meio físico. Sua função básica é detectar e, opcionalmente, corrigir erros que por ventura ocorram no nível físico. As suas principais funções são: • Estabelecimento e liberação da conexão de enlace sobre conexões físicas ativas; • Splitting da conexão de enlace: desta forma pode haver uma conexão de enlace sobre várias conexões físicas; • Montagem e delimitação de quadros (framing): montagem de quadros a partir de unidades de quadros de serviços provindas da camada de rede e reconhecimento de quadros a partir da cadeia de bits vinda do nível físico; • Controle de fluxo: controla a taxa de transmissão dos quadros, evitando que o sistema transmissor envie dados a uma taxa maior do que o receptor consegue processar. Utiliza para isso mecanismos como stop-and-wait, positive acknowledgment e sliding window. • Controle de acesso: gerência do acesso ao meio de transmissão; • Controle de erro: a camada de enlace deve detectar erros de transmissão, de formato e de operação devidos a problemas de conexão física ou mau funcionamento da própria camada. Os erros mais comumente detectados são erros devido a perdas, duplicação, não-ordenação e danificação de quadros. 9
  • 10. Controle de seqüência: as unidades de dados de serviço de enlace devem ser entregues à entidade de rede de destino na mesma ordem em que são recebidas da entidade de rede de origem; • Gerenciamento: a camada de enlace deve exercer algumas funções de gerenciamento relacionadas à qualidade de serviço prestado, caracterizada por: tempo médio entre erros irrecuperáveis, taxa de erro residual decorrente da alteração, perda, duplicação e não-ordenação dos quadros, disponibilidade do serviço, atraso de trânsito e throughput (vazão). O protocolo de enlace mais conhecido é o HDLC, antecessor de outros como LAPB, LAPD e LLC. Camada de Rede A camada de rede deve tornar transparente para a camada de transporte a forma como os recursos dos níveis inferiores são utilizados para implementar conexões de rede. Deve também equalizar as diferenças entre as diversas sub-redes utilizadas de forma a fornecer um serviço único a seus usuários (independente da rede utilizada). Suas principais funções são: • Roteamento: determinação das rotas apropriadas para a transmissão dos dados entre dois endereços (origem e destino) através de algoritmos de roteamento; • Multiplicação da conexão de rede: várias conexões de rede podem ser multiplexadas sobre uma única conexão de enlace, a fim de otimizar a utilização desta última; • Segmentação e blocagem: caso as sub-redes envolvidas em uma comunicação fim-a-fim possuam diversos tipos e tamanhos de quadros, a camada de rede deve exercer funções de segmentação de quadros e remontagem destes no destino; • Controle de erro: detecta e, dependendo da qualidade do serviço exigida, até corrige erros de alteração, perda, duplicação e não-ordenação das unidades de dados; • Seqüenciação: a camada de rede é responsável por manter a ordem das unidades de dados de serviço de rede a serem transmitidas na rede e recebidas pela camada de transporte no destino; • Controle de fluxo: controle da taxa em que os dados são transmitidos, de forma que o transmissor não envie mais dados do que o receptor tenha capacidade de receber; • Transferência de dados expressos: a transmissão de dados expressos tem por finalidade estabelecer prioridade de transmissão para alguns dados (como sinalização e interrupção) sobre os dados normais; • Seleção de serviço: permite a escolha do serviço de rede, de modo a garantir que os serviços oferecidos pelas diversas sub-redes sejam equivalentes; • Gerenciamento: a camada de rede deve efetuar tarefas de gerenciamento relacionadas à qualidade de serviço oferecida, caracterizada pelos parâmetros citados acima. A camada de rede pode prestar serviços orientados à conexão (CONS - Connection Oriented Network Service) ou serviços não-orientados à conexão (CLNS - Connection Less Oriented Network Service). Um exemplo de protocolo utilizado na camada de rede é o X.25. 10
  • 11. Camada de Transporte A camada de transporte provê mecanismos que possibilitam a troca de dados fim-a-fim, ou seja, a camada de transporte não se comunica com máquinas intermediárias na rede, como pode ocorrer com as camadas inferiores. As principais funções da camada de transporte são: • Estabelecimento e liberação da conexão de transporte: para se estabelecer à conexão, devem ser negociadas a classe de protocolo a ser utilizada, o tamanho máximo das unidades de dados de protocolo, a utilização ou não do serviço de transferência de dados expressos, parâmetros de qualidade de serviço (throughput, atraso de trânsito, prioridade, taxa de erro residual, etc) etc; • Controle de seqüência e controle de erro: numeração e reconhecimento explícito dos dados a fim de evitar perdas, duplicação ou entrega fora de ordem; • Controle de fluxo: a técnica de controle de fluxo utilizada na camada de transporte é a técnica de alocação de crédito, parecida com a janela deslizante; • Segmentação, blocagem e concatenação fim-a-fim: adapta o tamanho da unidade de dados utilizado para as camadas de transmissão; • Monitoração da qualidade do serviço: a monitoração da qualidade de serviço deve ser constante, caso contrário deve ser gerada uma notificação à camada de sessão; • Transferência de dados expressos: a camada de transporte deve possibilitar esta funcionalidade; • Gerenciamento: funções de gerenciamento relacionadas à qualidade de serviço prestado às entidades de sessão. As funções implementadas pela camada de transporte dependem da qualidade de serviço desejada. Foram especificadas, então, cinco classes de protocolos orientados à conexão: • Classe 0: simples, sem nenhum mecanismo de detecção e recuperação de erros; • Classe 1: recuperação de erros básicos sinalizados pela rede; • Classe 2: permite que várias conexões de transporte sejam multiplexadas sobre uma única conexão de rede e implementa mecanismos de controle de fluxo; • Classe 3: recuperação de erros sinalizados pela rede e multiplexação de várias conexões de transporte sobre uma conexão de rede; • Classe 4: detecção e recuperação de erros e multiplexação de conexões de transporte sobre uma única conexão de rede. Camada de Sessão A camada de sessão é a responsável pelo estabelecimento de sessões entre dois usuários permitindo o transporte ordinário de dados (assim como a camada de transporte), porém com alguns serviços mais refinados, que podem ser úteis em algumas aplicações. Alguns serviços que a camada de sessão deve prover são, por exemplo: 11
  • 12. Gerência do controle de diálogo: a troca de informações entre entidades em um circuito half-duplex deve ser controlada através da utilização de tokens. A camada de sessão é responsável pela posse e entrega destes tokens, ajudando a controlar de quem é a vez de transmitir; • Sincronização: para se evitar, por exemplo, a perda de um volume de dados muito grandes que estão sendo transmitidos em uma rede não confiável, utiliza-se o conceito de ponto de sincronização. O ponto de sincronização corresponde a marcas lógicas posicionadas ao longo do diálogo. Toda vez que um usuário recebe um ponto de sincronização, deve enviar uma resposta, confirmando que este foi recebido. Caso a transmissão, por algum motivo, seja interrompida, ela pode ser reiniciada a partir do último ponto de sincronização confirmado; • Gerenciamento da camada de sessão. Camada de Apresentação A camada de apresentação, ao contrário das camadas inferiores, já não se preocupa com os dados em nível de bits, mas sim com a sua sintaxe, ou seja, sua representação. Nela é definida a sintaxe abstrata, ou seja, a forma como os tipos e os valores dos dados são definidos, independentemente do sistema computacional utilizado e a sintaxe de transferência, ou seja, a maneira como é realizada esta codificação. Por exemplo, através da sintaxe abstrata define-se que um caráter A deve ser transmitido. A sintaxe de transferência especifica, então, como este dado será codificado em ASCII ou EBCDIC ao ser entregue à camada de sessão. Outras funções que a camada de apresentação pode executar são a criptografia e compressão de dados. Camada de Aplicação Basicamente, as funções da camada de aplicação são aquelas necessárias à adaptação dos processos de aplicação ao ambiente de comunicação. A camada de aplicação é estruturada modularmente para permitir a flexibilidade das funções e de forma, para se determinar os requisitos de comunicação de cada aplicação distribuída. A camada de aplicação deve seguir o descrito na norma ISO 9545. Ela é formada por várias ASE's (Elemento de Serviço de Aplicação), que são os componentes básicos das AE's (Entidade de Aplicação). Uma AE é a função que um processo de aplicação utiliza para se comunicar com os seus pares. Um processo de aplicação pode utilizar diversas AE's, cada uma das quais provendo um conjunto de definições de cada uma das funções e das regras que governam o uso destas funções. O componente básico de uma AE é um Elemento de Serviço de Aplicação (ASE). Um ASE é um elemento que define uma função ou um conjunto de funções que ajudam na realização da aplicação. Desta forma, pode-se imaginar que um AE é um grande programa feito de muitos sub-programas ou procedimentos, que são os ASE. As principais funções da camada de aplicação são: • Seleção do modo de diálogo (full duplex ou half duplex); • Determinação da qualidade de serviço aceitável na conexão: retardo de transferência, taxa de erro tolerável, etc; 12
  • 13. Identificação dos futuros parceiros na comunicação: por nome ou endereço; • Especificação de aspectos relativos à segurança: controle de acesso, integridade de dados, etc. Elementos de Serviço de Aplicação de Propósito Geral Aqui serão apresentados os elementos de serviço de aplicação que exercem funções básicas, podendo ser utilizados pela maioria das aplicações. ACSE (Association Control Service Element) O elemento de serviço de aplicação ACSE é o responsável pelo gerenciamento das associações de aplicação. Presta os serviços básicos de estabelecimento e liberação (ordenada e abrupta) de associações de aplicação. Desta forma, está presente em todas as entidades de aplicação. ROSE (Remote Operations Service Element) O ROSE é um elemento de serviço de aplicação que oferece suporte a aplicações interativas, sendo bastante útil em aplicações distribuídas. O ROSE não pode ser utilizado isoladamente. Em geral, ele é utilizado em aplicações envolvendo MHS (Message Handling System), DS (Directory Service) e gerenciamento OSI. No caso particular do gerenciamento, o ROSE é usado, por exemplo, para transportar operações de gerenciamento (como é o caso da leitura de atributos de um objeto gerenciado) do gerente para o agente e para transportar o resultado da operação realizada (valor dos atributos lidos) do agente para gerente. RTSE (Reliable Transfer Service Element) Como vimos anteriormente, uma das funções da camada de sessão é garantir que após uma interrupção em uma conexão estabelecida, a transferência dos dados possa se restabelecer a partir do ponto em que houve a interrupção, havendo uma perda mínima. O RTSE deve executar esta mesma função através de uma interface simples e ser capaz, então, de transferir as unidades de dados de um forma confiável entre entidades de aplicação. CMISE (Common Management Information Service Element) Cada recurso que está sujeito ao gerenciamento de sistemas é representado por um objeto gerenciado. Os objetos gerenciados podem ser criados, suprimidos e ter os valores dos seus atributos modificados. O gerenciamento de objetos descreve o serviço para relatórios de criação e supressão de objetos gerenciados, modificação de nomes de objetos gerenciados, modificação de atributos dos objetos gerenciados. Estas aplicações de gerência de rede são realizadas através do CMISE. A descrição do serviço CMISE é detalhada na X.710 e na ISO 9595-1 versão 2. O Protocolo de Informação de Gerenciamento Comum (CMIP) é o protocolo utilizado para a troca de unidades de dados de protocolo de informação de gerenciamento comum entre o agente e o gerente. O CMIP especifica os elementos de protocolo que podem ser usados para prover as Operações e Notificações definidas na X.710, a qual define o Serviço de Gerenciamento Comum (CMIS). A X.711 define a sintaxe abstrata do CMIP. 13
  • 14. TP (Transaction Processing) O TP tem como objetivo prover a infra-estrutura necessária ao suporte do processamento de transações distribuídas envolvendo vários sistemas abertos. Uma transação distribuída deve ser caracterizada por: • Atomicidade: uma unidade de trabalho deve sempre ser executada de maneira completa, ou não deve ser executada; • Consistência: uma unidade de trabalho deve ser executada de uma maneira precisa, correta e válida em relação à semântica da aplicação; • Isolação: os resultados intermediários de uma unidade de trabalho não devem tornar-se disponíveis a não ser para as operações que fazem parte de uma unidade de trabalho; • Durabilidade: os efeitos da realização de uma unidade de trabalho não podem ser alterados por nenhuma falha que venha a ocorrer posteriormente. É responsabilidade do TP prover facilidades e mecanismos de forma a garantir que estes objetivos sejam alcançados. CCR (Commitment, Concurrency and Recovery) Para os casos em que o processamento se dá de forma distribuída, as facilidades são providas pelo TP. Já no caso do processamento ocorrer entre duas aplicações residentes em sistemas abertos distintos, ela deve ser coordenada de forma que haja a garantia de que a execução de unidades de trabalho ocorra somente quando tais aplicações estejam prontas e aptas a fazê-lo. Elementos de Serviço de Aplicação de Propósito Específico A função dos elementos de serviço de aplicação é prover suporte a aplicações de uma maneira genérica, porém algumas aplicações como a transferência de arquivos e o correio eletrônico se tornaram tão comuns que foram criados elementos de serviço específicos para estes casos. MHS (Message Handling System) O MHS é o serviço de correio eletrônico. Este tipo de serviço surgiu há vários anos, na década de setenta, porém funcionava de maneira proprietária, ou seja, sistemas de fabricantes diferentes não conseguiam trocar mensagens entre si. Na década de oitenta, o CCITT em conjunto com a ISO resolveram padronizar este tipo de serviço. A operação do MHS se baseia no sistema store and forward, ou seja, não há nenhuma conexão entre o originador da mensagem e o seu destinatário durante o momento em que esta é enviada. As facilidades que o MHS oferece incluem: •Nomeação e endereçamento; •Entrega de mensagens a múltiplos destinatários; •Destinatário alternativo; •Tipo de serviço (prioridade); 14
  • 15. •Teste; •Notificação; •Conversão. A versão de 88 do MHS contém, ainda, facilidades adicionais relativas a segurança, listas de distribuição e redirecionamento de mensagens. FTAM (File Transfer Access and Management) O FTAM tem por objetivo permitir a consulta, acesso, transferência e gerenciamento de arquivos em um ambiente aberto. É muito útil, por exemplo, no caso de transferência de arquivos de tarifação, que possuem um volume muito grande. As operações que podem ser executadas sobre arquivos podem ser classificadas em três tipos: • Transferência: operação de movimentação entre dois sistemas abertos, de parte ou de todos os dados contidos em um arquivo; • Acesso: operação em que o usuário pode ler, substituir ou remover os dados contidos em um arquivo; • Gerenciamento: operações de criação, remoção, inspeção e manipulação de atributos de um arquivo. Os serviços prestados pelo protocolo FTAM devem servir de base para o desenvolvimento de sistemas que envolvam a manipulação de arquivos em vários níveis de complexidade. Por exemplo, a transferência parcial ou completa de arquivos entre sistemas interconectados através de uma rede local ou de longa distância; o acesso a um sistema de arquivos compartilhado entre múltiplas estações interconectadas através de uma rede; a transferência de arquivos para fins de impressão, etc. DS (Directory Service) O Serviço Diretório consiste em um repositório de informações mantido por um conjunto de sistemas abertos distribuídos. Estes sistemas possuem acesso a estas informações e podem, por exemplo, ler e modificar estas informações. 15
  • 16. IEEE 802 O IEEE é uma das principais entidades internacionais relacionadas com a definição de diversos padrões em eletrônica e comunicações. Os grupos de trabalho 802 são responsáveis pelas definições empregadas em redes. Fique por dentro dos códigos já adotados. Nos anos 80 especialistas em comunicações começaram uma série de estudos patrocinados pelo IEEE (Institute of Eletrical and Eletrônics Engineers). Eles definiram uma série de padrões, diversos modelos e guias para elaboração de protocolos, interfaces e dispositivos. Na verdade, os estudos de muitos deles prosseguem, como o 802.14, definindo a comunicação de banda larga baseado em canais de TV a cabo – os Cable Modems. Os trabalhos, que são conhecidos pelo IEEE 802, foram divididos em diversos grupos que concentram a atenção em determinados aspectos. Alguns anos depois do início dos trabalhos, organizações regulamentadoras de padrões como a ANSI e a ISO adotaram alguns dos padrões desenvolvidos. O 802.3 é amplamente divulgado por reunir as especificações do CSMA/CD (Carrier – Sense Multiple Access with Collision Detection), o método de acesso ao meio empregado para difundir sinais nas redes Ethernet. O 802.4 e 5 abordam as redes baseadas em fichas, as Token Bus e as Token Ring. MAC Numa rede há vários dispositivos possivelmente compartilhando os meios de acesso físico. O MAC (Médium Access Control) corresponde aos algoritmos e técnicas empregadas para que o compartilhamento da utilização dos meios seja realizado de maneira mais eficiente e justa possível. Por exemplo, o CSMA 802.3 é uma técnica de acesso aos meios, ou seja, um MAC. Note que o MAC não é um modelo e nem um padrão, apenas uma denominação genérica empregada pelos comitês 802, por exemplo. Há dois tipos de MACs, os centralizados e os distribuídos. Nos centralizados, quando uma estação quiser utilizar os meios, ela deve aguardar até que o arbítrio sinalize positivamente. Já no modo distribuído, cada estação é responsável por verificar se os meios estão livres – é o caso do CSMA. LLC O LLC (Logical Link Control) é um conjunto de serviços que recebe dados das aplicações ou camadas superiores a acrescenta informações sobre o que fazer com eles, como requisitar ou transmitir sinais. Daí os dados, agora formatados, são despachados para o MAC. 16
  • 17. DESCRIÇÃO DAS PRINCIPAIS DEFINIÇÕES DOS COMITÊS 802 DO IEEE GRUPO DESCRIÇÃO 802.1 Protocolos de alto nível 802.2 Controle de ligação lógica (LLC) 802.3 MAC CSMA/CD ou Full – Duplex Ethernet 802.4 Barramento Token (Token Bus) 802.5 Anel Token (Token Ring) 802.6 MAN (Metropolitan Area Network) 802.7 Guia técnico para Banda Larga 802.8 Guia Técnico para Fibra Óptica 802.9 Interface para ISLAN (ISochronous LAN) 802.10 Padrões de Segurança 802.11 Redes sem fio (Wirelles) 802.12 Prioridade de Demanda 802.13 Não definido 802.14 Rede baseada em TV a Cabo de Banda Larga (cable modem) Comunicação pessoal sem fio WPAN (Wirelles Personal Area 802.15 Network) 802.16 Redes sem fio empregando Banda Larga (Broadband Wirelles) 17
  • 18. HDLC (High Level Data Link Control) O modelo OSI, desenvolvido pela ISO, para padronização de protocolos divide-se em sete camadas (níveis) de serviço, sendo que neste trabalho o objeto de estudo será um protocolo de comunicação utilizada no nível dois, nível de enlace de dados, o protocolo HDLC. O primeiro nível, ou nível físico é responsável por levar uma seqüência de bits do transmissor ao receptor. Nessa camada são estabelecidos os níveis elétricos que representam os bits, é definidas e as taxas de transmissão, atenuação máxima e outras características elétricas e mecânicas. No entanto, a camada de nível físico oferece um mecanismo de transporte de dados não confiável do ponto de vista de erros de transmissão. Tais erros podem ser causados por uma série de razões: ruído eletromagnético, falha na sincronização do receptor em relação ao transmissor, ou defeito nos componentes que implementam os circuitos de transmissão e recepção. A camada de enlace de dados é a segunda na hierarquia, imediatamente acima da primeira camada, no modelo de referência OSI / ISO para padronização de protocolos. A principal finalidade da camada de enlace é implementar mecanismos de detecção e recuperação de erros, oferecendo, desse modo, aos níveis superiores, um serviço mais confiável. Outras funções desta camada incluem: o estabelecimento de uma conexão e procedimentos que permitem o uso eficiente dos meios de transmissão. Principais características: • Protocolo orientado a bit; São aqueles protocolos que não incorporam em sua estrutura nenhum caráter destinado a cumprir regras ou funções. Tanto as mensagens de texto como as de supervisão são envelopadas em um quadro (frame) delimitado por uma configuração de bits especial chamada "flag": ! ! ! ! ! Flag ! Informação ! Flag ! ! ! ! ! • Utilizado na recomendação X25; • Modo de operação síncrona; Este modo de transmissão e baseado no estabelecimento de uma cadência fixa para transmissão seqüencial dos bits. A cada T segundo o transmissor emite, por exemplo, um pulso de tensão elétrica, significando o envio de um símbolo binário 1, ou nenhum pulso, significando o envio de um bit 0. O sincronismo entre o transmissor e o receptor é garantido pelos flags que delimitam o quadro, servindo como caracteres de sincronização. • Pode operar em modo de resposta assíncrona (uma estação secundária pode iniciar uma transmissão não solicitada a qualquer momento) nas duas direções, com ambos ETD (elemento de transmissão de dados: representa o processador HOST) e ECD (elemento de comunicação de dados: representa um nodo qualquer na rede) desenvolvendo uma função primária e 18
  • 19. secundária (Função primária refere-se a operações de comandos ou transmissões de dados, enquanto a função secundária inclui respostas, comandos ou transmissões de dados. Portanto, normalmente a estação primária realiza as funções primárias, sendo responsável pela supervisão do enlace, enviando comandos; enquanto a estação secundária envia as respostas); • Transmissão half-duplex e full-duplex; Half-duplex: a transmissão da informação pode ser nos dois sentidos, mas não de forma simultânea. Assim sendo, quando uma estação necessita transmitir, a outra deve concordar em receber. Full-duplex: a transmissão ocorre nos dois sentidos simultaneamente • Suporta configurações ponto-a-ponto e multiponto; Ponto-a-ponto: apenas dois nós de comunicação estão conectados ao mesmo meio físico; ------| A |--------------------------------------------------| B |------ Multiponto: vários nós estão ligados através do mesmo enlace. ------| A |--------------------------------------------------| B |------ |C| |D| • Opera em linhas privadas ou discadas; • Transmissão de dados através de frames; • Transparência dos dados garantida pela técnica bit stuffing; Para permitir que o usuário envie qualquer seqüência de bits como informação, é preciso que determinados procedimentos sejam adotados no protocolo para evitar que dados do usuário que contenham seqüências de bits de flag não sejam confundidos com os delimitadores ou mensagens de controle. Um protocolo com essa característica é dito transparente. No caso de protocolos orientados a bit a técnica utilizada é a de Bit Stuffing. A transparência dos dados nesta técnica é obtida por um procedimento de inserção de zeros. Como delimitador do quadro temos flags contendo seis bits 1 em seqüência (01111110). Assim, se o texto do usuário contiver uma seqüência de cinco 1's seguidos, um bit 0 é inserido para evitar que uma seqüência possa ser confundida com um flag. Na recepção é retirado todo zero depois de uma seqüência de cinco 1's, antes de a informação ser entregue ao usuário ___________ ____________ / 0 1 1 1 1 1 "0" / 1 1 1 0 1 0 ------ • Utiliza o método de Sliding Window (Janelas Deslizantes) na transmissão; 19
  • 20. Esta técnica viabiliza o envio de diversas mensagens, por parte do transmissor, antes que este receba a confirmação se as mensagens enviadas foram recebidas satisfatoriamente. Neste método é necessário numerar as mensagens de forma a identificá-las quando for recebido o seu reconhecimento. Nesta numeração existe um limite máximo de mensagens que podem ser enviadas sem aguardar reconhecimento. Este limite é denominado "largura da janela", sendo esta numeração organizada de forma circular. No caso do HDLC, esse valor corresponde ao tamanho do campo de número de seqüência (N(S)) da mensagem: • Modo normal - 3 bits - de 0 a 7 - máximo de 8 mensagens; • Modo estendido - 7 bits - de 0 a 127 - máximo de 128 mensagens; Baseado nas características apresentadas, sempre que ocorrer um erro em uma das mensagens. Podem ser implementados dois procedimentos: • O destino solicita a retransmissão apenas da mensagem com erro; • Solicita a retransmissão de todas as mensagens a partir de um determinado número de seqüência. • Pode operar em três modos de resposta; o MRN - modo de resposta normal: as estações secundárias só iniciam uma transmissão quando autorizadas pela primária, a partir deste momento, a secundária deve iniciar a transmissão dos frames. O último frame da transmissão deve ser explicitamente indicado pela estação secundária. A partir da indicação do último frame a secundária irá parar a transmissão até uma nova permissão por parte da primária. De forma a realizar este controle, existem mensagens de supervisão com a finalidade especifica de interrogar (polling) as estações se desejam transmitir. Este modo é utilizado em configurações ponto-a-ponto ou multiponto. o MRA - modo de resposta assíncrona não balanceada: uma estação secundária pode iniciar transmissão sem necessidade de autorização da primária. Este modo é utilizado em configurações ponto-a-ponto ou multiponto. o MRB - modo de resposta assíncrona balanceada: as estações são consideradas logicamente iguais: qualquer uma delas pode iniciar ou terminar a ligação; ambas são responsáveis pelo controle de erros e de fluxo e podem enviar tanto comandos como respostas. Este modo é utilizado apenas em configurações ponto-a-ponto • Protocolo orientado a conexão, contendo operações para: o Estabelecer conexão; o Transmitir dados; o Reinicializar conexão; o Encerrar conexão. 20
  • 21. SDLC (CONTROLE DE ENLACE DE DADOS) O advento das arquiteturas de redes de comunicação trouxe consigo uma complexidade sempre crescente nas estruturas de redes. Níveis de serviços cada vez mais altos estão, permanentemente, sendo oferecidos. Mas todos esses serviços precisam depender de funções de níveis inferiores precisamente definidas para garantir que os dados sejam transferidos eficiente e confiavelmente entre os nós. • A rede de controle do caminho A rede de controle do caminho abrange as duas camadas inferiores da SNA: Controle do enlace de dados e controle do caminho. A camada de controle do enlace de dados é responsável pelo controle da transmissão dos dados pelos enlaces entre os nós da rede. A camada de controle do caminho é responsável pela seleção do enlace de dados apropriados para transmitir uma unidade de mensagem, pela determinação da taxa na qual os nós trocam os dados, e por controlar a seqüência das unidades de mensagem que são enviadas por enlaces paralelos. Começaremos pela camada mais baixa, a de controle do enlace de dados, e examinaremos o protocolo CONTROLE DO ENLACE DE DADOS SÍNCRONO (SDLC). O SDLC especifica as regras que controlam as funções executadas na camada de controle do enlace de dados da SNA. • Protocolo de enlace de dados Os dados são transmitidos pelos enlaces de dados com a utilização de um protocolo de enlace de dados. A finalidade do protocolo é transferir blocos de dados, sem erros, entre dois dispositivos conectados a um mesmo enlace físico. O protocolo deve ter mecanismos sofisticados de detecção de erros e deve ser capaz de tratar quaisquer formatos de dados. Deve também poder executar essas funções em uma grande variedade de enlace duplex e half duplex. Em alguns casos, o protocolo deve ainda garantir que apenas um dos diversos dispositivos que podem estar ligados ao enlace de dados reconheça e aceite uma mensagem. • Componentes de um enlace SDLC Num enlace SDLC a conexão entre dois nós é conhecida por conexão de enlace. Para o SDLC, a conexão de enlace geralmente é constituída por dois modems e o circuito físico que os conecta. Este circuito físico pode assumir a forma de um cabo de fios trançados, um cabo de fibras óticas ou um enlace por satélite ou por microondas. Os modems convertem os sinais binários para uma forma compatível com uma conexão física que estiver sendo utilizada. Em alguns casos, podem ser usados circuitos digitais para implementar uma conexão de enlace; se isto acontecer, os modems podem ser substituídos por dispositivos mais simples às vezes chamados de exitadores de linha digital. As estações de enlace mostradas na figura de abaixo consistem no hardware e software do nó SNA que controlam a conexão de enlace fazem parte da camada de controle do enlace de dados da SNA. 21
  • 22. Há dois tipos de estações de enlace suportadas pelo protocolo SNA. o Estação Primária. Esta estação inicia uma transferência de dados e permanece no controle durante a troca de mensagens. Ela notifica cada estação de enlace secundária de quando esta pode transmitir dados e de quando ela deve esperar receber dados. o Estação Secundária. A estação primária faz contato com esta estação e a controla durante a troca de mensagens. • Configuração do enlace de dados SDLC O protocolo SDLC permite que uma estação primária e uma ou mais estações secundárias sejam conectadas em quatro configurações diferentes: • Ponto-a-Ponto. Na configuração ponto-a-ponto uma única estação primária está conectada por um enlace ponto-a-ponto a uma única estação secundária. Cada estação desta configuração pode enviar dados para outra. • Multiponto. Na configuração multiponto, uma única estação primária está conectada a duas ou mais estações secundárias. A estação pode enviar os dados que são destinados a uma ou mais estações secundárias. Uma estação secundária só pode enviar dados para a estação primária, não podendo enviá-los para outra estação secundária. • Laço. Na configuração laço (loop), a estação primária está ligada diretamente apenas a primeira e a última das estações secundárias no laço. A estação primária passa os dados para a primeira secundária, que por sua vez os passa para a estação secundária seguinte, e assim por diante até que os dados retornem a estação primária. Assim como na configuração multiponto, a estação primária pode enviar dados para uma ou mais estações secundárias, mas uma secundária só pode enviá-los para a primária. • Mista. A configuração mista, ou configuração hub go-ahead, é uma configuração incomum empregada por alguns equipamentos especializados. São usados dois canais: um de entrada e um de saída. A estação primária comunica-se com todas as secundárias pelo canal de saída. Uma estação secundária pode comunicar-se somente com a primária, através do canal de entrada, o qual é encadeado em série de uma estação secundária para a seguinte. • Estados de transmissão Uma conexão de enlace SDLC pode estar em um dentre quatro estados de transmissão, em um dado momento: o Ativo. No estado ativo, bits de controle ou bits que representam textos de mensagens fluem ativamente entre a estação primária e uma estação secundária na conexão de enlace. 22
  • 23. o Ocioso. No estado ocioso, não há informações sendo transmitidas. É transmitida uma seqüência continua de bits um enquanto a linha está ociosa. o Transiente. O estado transiente representa a transição que acontece entre o momento em que a estação primária está transmitindo uma unidade de mensagem para uma estação secundária e o momento em que a secundária transmite uma unidade de mensagem de volta para a primária. o Desconectado. A linha fica no estado desconectado quando a estação secundária está fisicamente desconectada da primária, tal como acontece quando uma estação secundária conectada via linha comutada está desligada. • Quadros SDLC A unidade de mensagem que é transmitida por um enlace SDLC é normalmente chamada de quadro, embora alguns textos sobre SNA se refiram a ela como unidade de enlace básica (BLU). Alguns quadros são originados pelo próprio SDLC e são usados para controlar a operação do enlace. Outros quadros consistem em informações de controle ou de dados recebidos de uma camada SNA mais alta. Cada quadro é dividido em três partes principais: um cabeçalho, um campo de informação de comprimento variável e um fecho. As informações de controle são transportadas no cabeçalho e no fecho. Os quadros originados pelo próprio SDLC às vezes utilizam o campo de informação de comprimento variável para as informações de controle. Outros quadros usam o campo de informação para transportar as unidades de informação básicas (BTUs) que são passadas pela camada de controle de caminho. • Vantagens do SDLC o Orientado a bit o Percebe fluxo continuo de bits o Pode operar em enlaces half duplex e duplex o Várias mensagens enviadas antes do recebimento 23
  • 24. PROTOCOLO BSC O protocolo BSC (Binary Synchronous Control) foi desenvolvido originalmente pela IBM (International Business Machines) com o objetivo de permitir a transmissão síncrona entre computador e periféricos remotamente localizados. Trata-se de um protocolo orientado a caráter que opera no modo half-duplex , com ligações ponto a ponto ou multiponto em linhas dedicadas ou comutadas. O BSC manipula mensagens codificados com caracteres EBCDIC, ASCII e TRANSCODE. Atualmente este protocolo encontra-se bastante difundido e suas versões são implementadas em diferentes equipamentos. Neste documento serão apresentadas algumas características importantes do protocolo BSC: a Estrutura Básica das Mensagens BSC , a descrição dos Caracteres de Controle do BSC, os Modos de Operação, as Seqüências de Operacionais e as versões deste protocolo. Estrutura básica das mensagens BSC O BSC exige o uso de caracteres de controle especialmente convencionados para orientar o fluxo de mensagens entre as estações. As informações de controle da mensagem estão contidas no cabeçalho que é precedido pelo caractere SOH. O caractere STX inicia a transmissão de um bloco de dados que poderá fluir de uma única vez ou segmentada em pedaços, para isso usando o caráter ETX ou ETB, respectivamente para encerrar uma mensagem ou um bloco de mensagem. O bloco de dados tem tamanho variável, a critério do usuário mas limitado a 256 bytes, inclusos o STX e o ETX ou ETB. A verificação de erros de transmissão no protocolo BSC é realizada pelo método de detecção polinomial (CRC), utilizando um polinômio gerador de 16 bits. O R(x) encontrado será um conjunto de 16 bits que no protocolo BSC é chamado BCC (Caractere de Checagem de Bloco). Neste campo a interpretação dos caracteres de controle é totalmente desativada, já que poderíamos ter coincidentemente a ocorrência de uma seqüência controle no campo BCC. A estrutura básica de mensagens do BSC é apresentada na figura abaixo: Figura 1 - Estrutura das mensagens no BSC Os caracteres PAD e SYN são inseridos automaticamente na transmissão, e não são computados no cálculo do BCC. 24
  • 25. Caracteres de controle BSC Dois tipos de caracteres são transmitidos entre as estações: • Caracteres de controle BSC • Caracteres de dados Algumas das funções dos caracteres de controle são: identificar o início ou o final da transmissão, dar indicação ou não da validade dos dados recebidos, etc. Abaixo é apresentada uma tabela dos caracteres de controle: Mneumônico Código Código Significado EBCDIC ASCII ACK0 1070 1030 Affirmative Acknowledgment ACK1 1061 1031 Affirmative acknowledgment DLE 10 10 Data Link Escape ENQ 20 05 Enquiry EOT 37 04 End of Transmission ESC 27 1B Escape ETB 26 17 End of Transmission Block ETX 03 03 End of Text ITB 1F 1F End of Intermediate Transmission Block NACK 3D 15 Negative acknowledgment PAD FF FF Pad Character RVI 107C 103C Reverse Interrupt SOH 01 01 Start of Header STX 02 02 Start of Text SYN 32 16 Synchronous Idle TTD 022D 0205 Temporary Text Delay WACK 106B 103B Wait Before Transmit/ Affirmative acknowledgment Modo de operação A controladora de terminais opera no modo controle, texto ou transparente. Inicialmente ela está no modo controle. Nesse modo ela monitora constantemente a linha de comunicação com a Unidade de Controle de Comunicações (CCU) aguardando: 1. Seqüência válida de poll ou select, quando então muda para o modo texto; 2. DLE STX, quando então muda para o modo transparente. No modo texto, a controladora de terminais se torna à estação "mestre" ou a estação "escrava", em relação a CCU, em resposta a comandos enviados por esta última. A controladora de terminais opera como mestre quando envia uma seqüência STX para a CCU, durante a execução de um comando tipo Read ou uma operação de poll. Neste estado, transmite mensagens de texto ou a seqüência ENQ quando deseja requisitar resposta (por exemplo para um WACK posteriormente recebido) ou retransmissão de 25
  • 26. mensagens da CCU. Quando transmitir a seqüência EOT (indicando término da transmissão da mensagem) ela retorna ao modo controle. A controladora de terminais opera como escrava (recebendo mensagens da CCU) quando estiver executando um comando tipo Write. Ao receber uma seqüência EOT (enviada pela CCU), estando no modo texto, a controladora de terminais entra no modo comando. Caso receba uma seqüência DLE STX (início de texto no modo transparente), a controladora de terminais entra no modo transparente, quer esteja no modo controle quer no modo texto. Seqüências operacionais Em ligações multiponto, toda troca de informações entre o computador/Unidade de Controle de Comunicações (CCU) e a Unidade de Controle de Terminais (UCT) é sempre iniciada pelo computador/CCU, através de uma seqüência de poll ou select. A seqüência de poll tem a finalidade de habilitar o terminal a transmitir texto (previamente digitado e armazenado em seu buffer). A seqüência de select tem a função de verificar se um determinado terminal pode receber um comando do computador/CCU. Versões do protocolo BSC Temos três versões do protocolo BSC: • BSC-1: ligação ponto a ponto • BSC-2: ligação ponto a ponto ou multiponto com terminais inteligentes . • BSC-3: ligação ponto a ponto ou multiponto com terminais não inteligentes em linhas privativas ou comutadas. 26
  • 27. PROTOCOLO X.25 INTRODUÇÃO Nos anos 70 havia muitos redes (de comunicação de dados, conhecidas como Redes Públicas), que eram de companhias privadas, organizações e agências de governos. Essas redes públicas eram interiormente bastante diferentes, e a interconexão de redes estava crescendo muito rápido, havia uma necessidade de um protocolo de interface de rede comum. Em 1976 X.25 foi recomendado como o protocolo pelo Comitê Consultivo Internacional para Telegrafia e Telefonia (CCITT) chamado a União de Telecomunicação Internacional (ITU) desde 1993. X.25 é uma rede de protocolos de pacotes comutados de dados que definem uma recomendação internacional para a comutação de dados como também controle e informação entre um dispositivo de usuário (o host), chamados Equipamento Terminal de Dados (DTE) e um nó de rede,de Equipamento de Comunicação de Dados(DCE). X.25 utiliza um serviço orientado à conexão que assegura que são transmitidos pacotes em ordem. X.25 vêm com três níveis baseados nas três primeiras camadas do padrão OSI (Open Systems Interconnection) que possui sete camadas como definido pela ISO (Organizacion Standard Internacional). Os níveis são: • Nível Físico descreve a interface com o ambiente físico. É semelhante à camada física do modelo da OSI. • Nível de link responsável por uma comunicação fiel entre o DTE e o DCE. É semelhante à camada de link de dados do modelo da OSI. • Nível de Pacote descreve o protocolo de transferência de dados na rede de pacotes comutados. É semelhante à camada de rede do modelo da OSI. X.25 foi aprovado originalmente em 1976 e subseqüentemente foi revisado em 1977, 1980, 1984, 1988 e 1992. É atualmente uma das interfaces mais usadas em redes de comunicação de dados. 27
  • 28. Conceito de Pacote Para que uma mensagem seja transmitida via rede de pacotes, é necessário dividi-la, independentemente do seu tamanho original , em blocos de tamanho máximo limitado. Estes segmentos de mensagem de tamanho predeterminado, contendo informações que permitem o seu encaminhamento, receberão a denominação de pacotes. CABEÇALHO DADOS Tal pacote será enviado pelo DTE à rede, no campo de informações do protocolo. Os nós da rede executam a concentração e distribuição dos pacotes, decidindo qual o melhor caminho para a transmissão dos mesmos pela rede. Um pacote é, então, a unidade de informação tratada pela rede, contendo, além do campo de dados ,um cabeçalho onde estão registrado todas as informações necessária ao seu correto encaminhamento através da rede. Técnicas de Comutação Os serviços de WANS são providos por três tecnologias de comutação primárias: circuito, pacote, e célula. Estas tecnologias de comutação são mostradas na figura abaixo. Em redes de comutação de circuitos, cada link é dedicado a um número predeterminado de usuários durante um período particular. Cada usuário recebe uma predeterminada largura de banda. Multiplexação por divisão de tempo (TDM) é o método que controla o acesso a rede. O sistema de telefone é o exemplo freqüentemente citado de uma rede de comutação de circuito. Redes de comutação de pacotes permitem a estações compartilhar a rede e a largura de banda disponível. Pacotes de tamanho variável são usados para uma transferência mais eficiente e flexível. Estes pacotes são comutados entre os vários segmentos de rede até o destino ser alcançado. Técnicas de multiplexação estatística controlam o acesso de rede 28
  • 29. em uma rede de comutação de pacote. A maioria das LANs populares de hoje (por exemplo, Ethernet e Token Ring) são redes de comutação de pacotes. Redes que transportam unidades de informação de tamanho fixos são conhecidas como redes de comutação de célula. E têm a simplicidade e conseqüentemente, uma maior velocidade de comutação. Multiplexação estatística e acesso baseado em TDM são permissíveis em uma rede de comutação de célula. Comutar célula é uma técnica relativamente nova que está ganhando rapidamente popularidade. Modo de Transferência assíncrono (o ATM) é atualmente a tecnologia de comutação de célula mais proeminente. Cada técnica de comutação tem vantagens e desvantagens. Por exemplo, redes de comutação de circuito oferecem aos usuários largura de banda dedicada que não pode ser infringida por outros usuários. Por outro lado, redes de comutação de pacotes oferecem mais flexibilidade e largura de banda de rede tradicionalmente mais eficaz que redes de comutação de circuitos. DTE e DCE A interface entre o equipamento terminal de dados(DTE) e o equipamento de comunicação de dados (DCE) é uma das mais comuns em conexão de redes. DTE é tipicamente representado por computadores, terminais, ou roteadores, agem como equipamento terminais para uma determinada rede. DCE é tipicamente representado por modens ou dispositivos semelhantes, provêem clock como também serviços de comutação entre DTEs. O DTE/DCE se conectam e a sua relação para um pacote comutado de WAN é mostrado na figura abaixo. 29
  • 30. Especificações da camada de link Em redes de comutação de pacotes, a maioria das interfaces de DTE/DCE consistem de um componente de camada de link e um componente de camada física. O componente de camada de link define um protocolo de acesso entre o que estabelece um link, por exemplo, um roteador (DTE) e um switch (DCE). Protocolos de acesso da camada de link típicos incluem LAPB de X.25, Flame Relay, e ATM. Especificações da camada física Especificações da camada física provêem informações em aproximadamente quatro aspectos diferentes de interfaces de camada física: mecânico, elétrico, funcional, e processual. Aspectos mecânicos de interfaces de camada física incluem especificações de conectores e disposições físicas do pinos. Aspectos elétricos incluem níveis de voltagem que representam valores binários e impedância elétrica. Aspectos funcionais de especificações da interface da camada física nomeiam funções (controle, dados, terra) para circuitos particulares. Finalmente, os aspectos processuais definem esses procedimentos associados com várias operações de comutação de dados. Como exemplo temos várias ações elétricas em cima de circuitos específicos que juntos definem a operação de loopback. Serviços de Pacotes Orientados a Conexão A interface de DTE/DCE especifica a maneira na qual um serviço de pacote é acessado. Alguns serviços de pacote são baseados em conexões virtuais. Em um serviço de pacote orientado a conexão, pares de terminais são associados com um identificador de conexão. Cada dispositivo de comutação constrói uma tabela que traça identificadores de conexão para portas. Quando um frame é recebido, o dispositivo de comutação analisa o identificador de conexão e entrega o frame a porta associada. O 30
  • 31. caminho completo para o destino é a prioridade estabelecida por quem envia o primeiro frame. Exemplos de serviços de pacote orientado a conexão são: X.25 e Frame relay. Serviços de pacotes orientados a conexões podem oferecer conexões virtuais passageiras ou permanentes, chamadas respectivamente, circuitos virtuais comutados (SVCs) e circuitos virtuais permanentes (PVCs). SVCs e PVCs são multiplexados em cima de canais físicos compartilhados por outros circuitos. PVCs são usados quando uso da linha é relativamente contínuo; SVCs são úteis quando uso da linha é relativamente esporádico. X.25 X.25 define uma interface para uma WAN que pode prover em demanda SVCs e (normalmente) PVCs. Para começar a comunicação, um computador chama outro para pedir uma sessão de comunicação. O computador chamado pode aceitar ou pode recusar a conexão. Se a chamada foi aceita, os dois sistemas podem começar a transferência de informação full-duplex. Qualquer lado pode terminar a conexão a qualquer hora . A especificação X.25 define uma interação de ponto-a-ponto entre um DTE e um DCE. DTEs se conectam a DCEs que se conectam a comutadores ("PSEs" ou simplesmente "switches") dentro de uma rede de comutação de pacotes (PSN, outro nome para uma rede X.25) e,por último, a outro DTE. A relação entre as entidades em uma rede X.25 é mostrada na figura abaixo. Terminais também podem fazer uso de um serviço X.25 usando um serviço de tradução chamado de montador de pacote (ou mais comumente, PAD) que serve para coletar dados e comandos de PAD em pacotes para transmissão como também os recebe do dispositivo conectado. A operação da interface de terminal-PAD, os serviços oferecidos 31
  • 32. por um PAD, e o controle da interação PAD-host é definido, respectivamente, pelas Recomendações X.28, X.3 e X.29. A especificação X.25 traça as camadas de 1 a 3 do Modelo de Referência da OSI. A camada 3 do X.25 descreve o formato do pacote e os procedimentos de comutação de pacotes entre as entidades da camada 3. A camada 2 do X.25 (LAPB, ou Procedimento de Acesso de Link Balanceado) define os frames dos pacotes para o link de DTE/DCE. A camada 1 do X.25 define os procedimentos elétricos e mecânicos para ativar e desativar o nível físico que conecta o DTE e o DCE. A relação entre as camadas de X.25 e o modelo de referência da OSI é mostrado na figura a seguir. O Nível Físico O nível físico (nível 1) lida com a interface elétrica, mecânica, processual e funcional entre o DTE e o DCE. O nível físico é especificado pelas recomendações X.21, X.21-bis e a V.24 para modens e circuitos de intercâmbio. • X.21 é uma recomendação de CCITT para operação de circuitos digitais. A interface X.21 opera mais de oito circuitos de intercâmbio (i.e. sinal terra, DTE retorno comum, transmita, receba, controle, indicação, sinal elemento de temporização e byte de temporização) as funções são definidas na recomendação X.24 e as características elétricas na recomendação X.27. • X.21-bis é uma recomendação de CCITT que define a interface de analógica para permitir o acesso ao circuito digital de uma rede comutada que usa um circuito analógico. X.21-bis provê procedimentos para enviar e receber informações que permitem a um DTE estabelecer circuitos comutados com outro DTE que tem acesso à rede digital. • V.24 também é uma recomendação de CCITT, e provê procedimentos que permitem o DTE a operar em cima de um circuito analógico dedicado que o conecta a um nó de comutação de pacotes ou concentrador. 32
  • 33. X.21 Interface digital. Em 1976 a CCITT recomendou que uma interface de sinalização digital chamada X.21. A recomendação especifica como o DTE faz ligação e limpeza de chamadas, comutando sinais com o DCE. O conector físico tem 15 pinos, mas nem todos eles são usados. O DTE usa os circuitos de T e de C para transmitir dados e informação de controle. O DCE usa os circuitos de R e I para dados e controle. O circuito de S contém um sinal "stream" emitido pelo DCE para prover temporização, assim o DTE sabe quando cada bit de intervalo começa e termina. O circuito de B também pode agrupar os bits em frames de byte. Se esta opção não é provida, o DCE e DTE têm que começar toda a seqüência de controle com pelo menos dois caracteres de SYN para permitir a dedução do limite de frame implícito. O Nível de link O nível de link (também chamado nível 2, ou nível de frame) assegura transferência de dados entre o DTE e o DCE, transmitindo os dados como uma seqüência de frames (um frame é uma unidade de dados individual que contém endereço, controle, campo de informação etc.). As funções executadas pelo nível de link incluem: • Transferência de dados em um modo eficiente e oportuno. • Sincronização do link para assegurar que o receptor está sincronizado com o transmissor. • Descoberta de erros de transmissão e recuperação de tais erros • Identificação e informações de erros processuais a níveis mais altos, para recuperação. O nível de link usa dados para procedimentos de controle que são compatíveis com o Controle de Dados de Nível Alto (HDLC) unificado por ISO. Há vários protocolos que podem ser usados no nível de link: 33
  • 34. Link de Acesso a Protocolo Balanceado (LAPB) é derivado do HDLC e é comumente usado. Permite a formação de uma conexão de link lógica além de todas as outras características de HDLC. • Link de Acesso de Protocolo (LAP) é uma versão mais antiga de LAPB e raramente é usado hoje. • Link de Acesso de Procedimento no Canal D (LAPD) é derivado de LAPB e é usado para Serviços Integrados de Redes Digitais (ISDN), ele habilita transmissão de dados entre DTEs pelo canal D, especialmente entre um DTE e um nó de ISDN. • Controle de link lógico (LLC) é um padrão IEEE 802 de protocolo de LAN que habilita pacotes X.25 a serem transmitidos por um canal de LAN. LAPB O LAPB utiliza a seguinte estrutura de frame: • Os campos de Flag indicam o começo e fim do frame, F(01111110). • O Campo de Endereço (Address) contém o endereço do DTE/DCE, e é muito importante para identificar um dos terminais. Se for igual a 11000000 informa que é um comando DCE-DTE ou uma resposta DTE-DCE; se for igual a 10000000 informa que é um comando DTE-DCE ou uma resposta DCE-DTE. • O Campo de Controle contém a seqüência de numeração, comandos e respostas para controlar os dados que fluem entre o DTE e o DCE. O campo de controle é inicializado com um Set Asynchronous Balanced Mode (SABM). Também há uma operação estendida (SABME), isto provê um módulo-128 de janela de frame. • campo de Checksum indica se houve ou não erros na transmissão. É uma variação do Código de Redundância Cíclico (CRC). Há três tipos de frames de controle: 1. Informação: Este tipo de frame contém a informação atual que é transferida. O campo de Informação contem os dados atuais e um cabeçalho de dados, ou está vazio. O cabeçalho de dados tem 24 bits e é dividido em 4 partes: 4 bits do Identificador de Formato Geral (GFI), que indica a presença ou ausência de dados 4 bits de Número de Grupo de Canal Lógico (LGN). 8 bits de Número de Canal Lógico (LCN). O LGN e LCN combinados pode ser usados como um número de canal grande. LCN 0 normalmente é usado para comandos de rede de emergência. 2. Supervisão: Há vários tipos de frames de supervisão. RECEPTOR PRONTO (RECEIVE READY) - Frame de reconhecimento que indica o próximo frame esperado. É usado pelo receptor para confirmar o recebimento de frames de informação quando este não tem frames de informação para transmitir. 34
  • 35. REJEITADO (REJECT) - Frame de reconhecimento negativo, indica a descoberta de erro de transmissão e solicita retransmissão a partir do 1º frame ainda não confirmado RECEPTOR NÃO PRONTO (RECEIVE NOT READY) – Informa ao remetente para deixar de enviar dados devido a problemas temporários. 3. Não Numerado (Unnumbered): Este tipo de frame só é usado para propósitos de controle, não contém dados, somente a informação de começar a parar o link de comunicação. LAPB também provê os seguintes comandos: • DISC (Desconexão) - Comando para desfazer o enlace lógico. • SNRT (Set Normal Response Time) - Permite que uma máquina que há pouco voltou em linha, anunciar sua presença. • FRMR (Frame Rejeitado) - indica um frame com checksum correto mas com erro não recuperável por retransmissão. • SABM: Comando para inicializar o enlace lógico. • UA (Reconhecimento não Numerado): Confirmação do recebimento dos Quadros SABM e DISC. • DM (Modo desconexão): Reporta que a estação está no modo desconectado O Nível de Pacote O nível de pacote (também chamado de nível 3 ou nível de rede) cria unidades de dados de rede chamadas pacotes que contêm informações de controle e dados de usuário. O nível de pacote provê procedimentos para os seguinte serviços: • Circuito Virtual é uma associação temporária entre dois DTEs, é iniciado por uma sinalização de PEDIDO de CHAMADA de DTE para a rede. Este serviço assegura uma seqüência na entrega de pacotes em qualquer direção entre dois Circuito de DTEs.O Circuito Virtual é estabelecido sempre que dois DTEs querem um serviço de comunicação. • Circuito Virtual permanente é uma associação permanente que existe entre dois DTEs que não requerem estabelecimento de chamada ou limpeza de chamada (desconexão) feita pelo DTE. • Datagramas(DG) é uma unidade de dados de usuário e contêm informação suficiente a ser roteada ao DTE de destino (independentemente de todas as outras unidades de dados) sem necessidade de que uma chamada seja estabelecida. As unidades de dados são transmitidas a uma pessoa de cada vez sem garantia de garantia de entrega em ordem. Cada datagrama têm que conter o endereço completo e tem que controlar a informação para habilitar isto e ser entregue ao destino formal DTE. • Seleção Rápida (Fast Select) é um serviço que habilita o pacote de controle que monta o VC para levar dados também. • Outro Serviços: O nível de pacote também provê a chamada de ligação e procedimentos de limpeza de chamada requeridos para o serviço de CV. O nível de pacote lida com o controle de fluxo para assegurar que um usuário (DTE) não subjugue o outro usuário com pacotes, e mantém pontual a entrega eficiente de 35
  • 36. pacotes. O nível de pacote também verifica erros para abortar ou reiniciar CVs se necessário. Estabelecimento de Chamada Quando o DTE A deseja se comunicar com o DTE B, tem que montar uma conexão criando um pacote de PEDIDO de CHAMADA (CLEAR REQUEST), e enviá-lo ao DCE. O DTE B recebe o pacote da sub rede que é o DCE. Se o DTE B deseja aceitar a chamada, envia para trás um pacote de CHAMADA ACEITA (CALL ACCEPT). Quando o DTE A recebe o pacote de CHAMADA ACEITA o Circuito Virtual é estabelecido. Neste momento os dois DTEs pode usar uma conexão full-duplex para trocar pacotes de dados. Quando qualquer lado quer terminar a chamada, envia um pacote de PEDIDO DE LIMPEZA (CLEAR REQUEST) ao outro lado que então manda de volta um pacote de CONFIRMAÇÃO DE LIMPEZA (CLEAR CONFIRM) como um reconhecimento. O DTE determina o número de circuito de saídas de chamadas (OUTGOING CALLS) e o DCE determina o número de circuito de chegadas de chamadas (INCOMING CALLS) Se ambos escolherem simultaneamente o mesmo número, a Colisão de Chamada ocorre. X.25 especifica neste caso o adiamento da saída e da chegada da chamada. Formatos de Pacotes O Pacote de Controle O formato dos pacotes de controle é como se segue: 36
  • 37. O pacote de controle como também todos os pacotes X.25 começam com 3 bytes de cabeçalho. Bytes 1,2 contêm os campos de Grupo e de Canal que junto formam 12 bits que é o número do circuito virtual.O Número 0 é reservado para uso futuro, assim um DTE pode ter de cada vez até 4095 circuitos virtuais. O pacote de PEDIDO de CHAMADA: A informação adicional do pacote de PEDIDO de CHAMADA é feita como se segue: O Tamanho da Chamada de Endereço e o tamanho do campo de Endereço Chamado revelam a duração da chamada e dos endereços chamados respectivamente. Os próximos dois campos são os endereços, são codificados ambos os endereços como dígitos decimais, 4 bits para cada dígito. O sistema de endereçamento usado em X.25 é definido pela CCITT na recomendação X.121. Este sistema é semelhante à rede pública comutada de telefone, com cada host identificado por um número decimal que consiste em código rural, um código de rede, e um endereço dentro da rede especificada. O endereço cheio pode conter até 14 dígitos do qual os três primeiro indicam o país, e o próximo indica a numeração dentro de um país. A divisão dos 10 dígitos não é especificada por X.121 e permite para cada rede alocar 10 bilhões de endereços. 37
  • 38. O campo de Tamanho de Facilidades conta quantos bytes de campo de facilidades se seguem. O próprio campo de Facilidades é usado para pedir características especiais para esta conexão. As características específicas podem variar de rede para rede. Possíveis características são reverse charging(chamadas coletadas), simplex em vez de circuito virtual full-duplex, e tamanho máximo de pacotes e tamanho de janela em lugar do padrão de 128 bytes e 2 pacotes. O último campo é O campo de Dados de Usuário que permite o DTE enviar até 16 bytes de dados junto com o pacote de PEDIDO de CHAMADA. Outros Pacotes de Controle são: • CHAMADA ACEITA é enviado pelo DTE se a chamada for aceita. • PEDIDO DE LIMPEZA é enviado pelo DTE a rede, recusando o estabelecimento do circuito virtual ou solicitando a desconexão do circuito virtual. O quarto byte do pacote informa por que a conexão está sendo limpa. É reconhecido por um pacote de CONFIRMAÇÃO de PEDIDO DE LIMPEZA. • INTERRUPÇÃO que permite a um pequeno sinal (32 bytes) ser enviado pela seqüência. É reconhecido pelo pacote de CONFIRMAÇÃO de INTERRUPÇÃO. • RECEPTOR PRONTO é usado para enviar reconhecimentos separados onde não h&a acupe; nenhum tráfego inverso. O campo de ppp (três primeiro bits que representam o campo) informa qual pacote é esperado. • RECEPTOR NÃO PRONTO permite a um DTE informar ao outro lado para deixar de enviar pacotes durante algum tempo. • REJEITADO permite A um DTE pedir retransmissão de uma série de pacotes. O campo de ppp dá o primeiro número de seqüência desejado. • RESET e RESTART são usados para recuperar o circuito virtual e encerrar os circuitos virtuais comutados e reiniciar os circuitos virtuais permanentes. É reconhecido através de CONFIRMAÇÃO de RESET e CONFIRMAÇÃO de RESTART respectivamente. • DIAGNÓSTICO permite a rede informar ao usuário de problemas. • CHEGADA DE CHAMADA é enviado pela rede ao DTE remoto com o intuito de estabelecer um circuito virtual. • CHAMADA CONECTADA é enviado pela rede ao DTE chamado, informando que o circuito já está disponível. O Pacote de Dados: O formato de um pacote de dados é mostrado abaixo: 38
  • 39. O bit Q indica os dados qualificados, a intenção é permitir que protocolos nas camadas mais altas estabeleçam o bit 1, para separar os pacotes de controle dos pacotes de dados. O campo de controle sempre é 0 para pacotes de dados. Os campos de seqüência e Piggyback são usados para controle de fluxo e usam uma janela deslizante. Os números de seqüência são um m&o acoche; dulo 8 se o campo Modulo for 01, e modulo 128 se o campo Modulo for 10 (00 e 11 são ilegais). Se o modulo de 128 for usado, o cabeçalho é estendido com um byte extra para acomodar os campos de seqüência e Piggyback. O bit D determina o significado do campo Piggyback. Se D=0 indica que o DCE local recebeu o pacote, mas que o DTE distante não recebeu isto. Se D=1 indica que o pacote foi entregue ao DTE distante. O bit M indica se o pacote em particular está levando a mensagem intencional total ou se há mais dados para seguir como parte desta transmissão. Quando o bit M é fixo, a entidade de rede receptora segura a informação e espera os dados esperados adicionais antes de entregar a informação ao receptor. X.25 Diagrama de Estado O padrão X.25 contém alguns diagramas de estados para descrever seqüências de eventos como ligação de chamada e justificação de chamada. O diagrama abaixo apresenta as subfases de ligação de chamada: 39
  • 40. Inicialmente, a interface está no estado P1.O PEDIDO de CHAMADA(CALL REQUEST) ou CHEGADA DE CHAMADA (INCOMING CALL) muda o estado para P2 ou P3, respectivamente. Estes estados transferem os dados ao estado P4 ou P5. São providos diagramas semelhantes para Limpeza de Chamada (Call Clearing), Resetting, e Reiniciando. RECOMENDAÇÕES X.3, X.28, X.29 Por ser bastante elaborado, o protocolo X. 25 implica em recursos normalmente não disponíveis em equipamentos de dados mais simples e de baixo custo, como é o caso dos terminais assíncronos. Para permitir o acesso desses terminais, as redes comutadas de pacotes possuem interface PAD (packet assembler / disassembler), cuja função principal é exatamente o empacotamento e desempacotamento de dados, ou seja, o PAD recebe os caracteres originais por um terminal Start -Stop e forma pacotes para transmissão através de rede, e executando a operação inversa no sentido da rede/terminal. Dessa forma, pode - se dizer que o PAD atua como um conversor de protocolo. As especificações para acesso à rede comutada de pacotes, via interfaces PAD, constam das recomendações X.3, X.28, X.29 do CCITT.O PAD pode ser visto pela rede como um terminal X.25. No entanto, isto não obriga que o PAD seja um equipamento à parte do nó de comutação da rede, ou seja, esta função pode estar residente no mesmo hardware que o resto das funções do nó. RECOMENDAÇÕES X.3 A função PAD, definida pelo CCITT pela recomendação X.3, não se propõe a ser uma solução geral que possibilite o acesso de qualquer terminal assíncrono a uma rede comutada de pacotes. A classe de terminais objeto de padronização do CCITT é 40
  • 41. conhecida como a dos terminais compatíveis com teletipo, ou seja, aqueles que operam com código ASCII (7 bits de dados mais 1 bit de paridade). A recomendação X.3 define um conjunto de parâmetros, cujos valores podem ser lidos e alterados pelo usuário, permitindo ao PAD , por exemplo, inibir ou gerar eco localmente, controlar o fluxo de dados entre DTE e o PAD etc. A um conjunto de valores predefinidos desses parâmetros dá - se o nome de perfil e é justamente através da escolha desse perfil que é possível adaptar o PAD ao tipo de equipamento utilizado ou até mesmo à aplicação desejada. PARÂMETRO 1 : RETOMADA DO PAD Permite ao DTE assíncrono sair do estado de transferência de dados para o estado de comando (fase na qual o DTE conversa diretamente com o PAD), possibilitando, assim, por exemplo, alterar o valor de um determinado parâmetro sem desconectar um circuito virtual já estabelecido. PARÂMETRO 2 : ECO Quando o parâmetro 2 for igual a 1, o PAD transmite de volta ao DTE todos os caracteres recebidos e , deste modo, o comparador pode comparar visualmente a igualdade entre o caráter digitado e o recebido. Outra situação é a necessidade de desativar temporariamente o eco para permitir o envio de dados sigilosos que não devem aparecer no terminal como , por exemplo, senhas. PARÂMETRO 3 : SELEÇÃO DE SINAL DE ENVIO DE DADOS Caso a mensagem transmitida pelo usuário tenha tamanho insuficiente para completar um pacote, o DTE deve enviar um caráter especialmente designado para que o conteúdo do buffer seja empacotado e transmitido no estado em que se encontra. PARÂMETRO 4 : SELEÇÃO DE TEMPORIZAÇÃO Permite definir o tempo máximo entre caracteres recebidos pelo PAD, sendo que, depois de esgotado este tempo , o PAD empacota os caracteres armazenados no seu buffer interno e transmite o pacote de dados. PARÂMETRO 5 : CONTROLE DE FLUXO DO TERMINAL Função utilizada pelo PAD para indicar uma impossibilidade temporária de receber dados do DTE. PARÂMETRO 6 : CONTROLE DO ENVIO DE SINAIS DE SERVIÇOS DO PAD Permite ao terminal assíncrono decidir se quer ou não receber do PAD os sinais de serviços(resposta do PAD aos comandos enviados pelo DTE). 41
  • 42. PARÂMETRO 7 : SELEÇÃO DA OPERAÇÃO DO PAD AO RECEBER UM SINAL BREAK DO DTE Este parâmetro permite que o usuário defina o procedimento pelo PAD ao receber um sinal de parada. PARÂMETRO 8 : DESCARTA SAÍDA Este parâmetro permite ao PAD descartar os pacotes recebidos do DTE remoto para o DTE assíncrono. PARÂMETRO 9 : PREENCHIMENTO APÓS CR Esta função faz com que o PAD envie a terminal impressor assíncrono caracteres de preenchimento (NUL) após a transmissão de um caractere CB (retorno de carro) , evitando, assim , que caracteres enviados pelo DTE remoto sejam impressos enquanto o carro estiver retornando para a primeira posição de uma linha. PARÂMETRO 10: DESDOBRAMENTO DE LINHA Este parâmetro permite ao usuário escolher o número de caracteres por linha que o PAD deve enviar ao DTE assíncrono, possibilitando, assim ,que terminais com tamanho de linha diferentes possam se comunicar entre si sem que terminal com o menor tamanho de linha perca informações. PARÂMETRO 11 : VELOCIDADE DE TRANSMISSÃO DO TERMINAL ASSÍNCRONO Parâmetro utilizado para fins informativos, indicando a velocidade de transmissão do terminal assíncrono, não poderá ser alterado devido às características do modem utilizado. PARÂMETRO 12 : CONTROLE DE FLUXO DO PAD Este parâmetro permite que o terminal assíncrono informe a impossibilidade temporária de receber caracteres do PAD. PARÂMETRO13 : INSERÇÃO DE LF (TROCA DE LINHA) APÓS UM CR Este parâmetro permite ao PAD inserir automaticamente um caráter LF após qualquer CR transmitido ou ecoado para o DTE assíncrono. Esta função só é aplicável durante a fase de transferência de dados. PARÂMETRO 14 :PREENCHIMENTO APÓS LR (TROCA DE LINHA) Esta função faz com que o PAD transmita caracteres de preenchimento (NUL) após a transmissão de caracteres de LR, garantindo que nenhum caractere será transmitido antes que o carro esteja posicionado na linha seguinte. 42
  • 43. PARÂMETRO 15 : EDIÇÃO O parâmetro 15 ativa as funções de edição do PAD (parâmetros 16, 17 e 18) durante a fase de transferência de dados. Durante a fase de comando, a edição sempre estará disponível. PARÂMETRO 16 : DELEÇÃO DE CARACTERES Através deste parâmetro , o usuário pode escolher o caractere que será utilizado para apagar caracteres armazenado no buffer interno do PAD. O caráter de apagamento nunca será transmitido para o DTE e é apagado um caractere por vez. O caractere mais utilizado para solicitar o apagamento é o BS (Back Space). PARÂMETRO 17 : DELEÇÃO DE LINHA Através deste parâmetro , o usuário pode escolher o caractere que será utilizado para apagar todos os caracteres armazenados no buffer interno do PAD. O caractere mais utilizado para esta função é o CAN (cancel). PARÂMETRO 18 : APRESENTAÇÃO DE LINHA Através deste parâmetro , o usuário pode escolher o caractere que será utilizado para comandar a transmissão ,para o terminal assíncrono, de todos os caracteres armazenados no buffer interno do PAD. O caractere usual para esta função é o "*". RECOMENDAÇÕES X.28 Define a interação entre o terminal assíncrono e o PAD, descrevendo os comandos a serem empregados pelo usuário no controle do PAD, ou seja, como estabelecer e desconectar um circuito virtual, como modificar o valor associado aos parâmetros do PAD, como saber quais valores que estão associados aos parâmetros etc. Nessa recomendação , estão ainda definidas as respostas aos comandos do PAD , às quais se dá o nome de sinais de serviço. Se o terminal estiver na fase de transferência de dados , todos os comandos devem ser precedidos de um procedimento de retomada do PAD. PROF: comando que permite ao DTE solicitar ao PAD que atribuiu aos 18 parâmetros os valores definidos para perfil padrão selecionado. STAT: permite ao DTE interrogar ao PAD sobre estado de sua ligação. O PAD responderá com sinais de serviço ENGAGED (chamada virtual existente) ou FREE (não existência de chamada virtual). CLR: permite ao DTE solicitar a desconexão da chamada virtual. O PAD responde ao comando de desconexão enviando uma mensagem de confirmação, desde que o parâmetro 6 seja igual a 1 ou 5. RESET : permite o DTE solicitar ao PAD que envie um pacote de RESET para reiniciar uma chamada. 43
  • 44. INT : permite ao DTE solicitar ao PAD que envie um pacote X.25 de interrupção ao DTE remoto. Outros sinais de serviços: COM : permite ao PAD indicar que a chamada foi estabelecida e que o PAD está fase de transferência de dados. RESET : permite ao PAD indicar que ocorreu um reinicio de chamada , podendo, portanto, ter havido perda de pacotes em transito pela rede. Contém a causa / diagnóstico do motivo do RESET. ERR : o PAD indica que houve um erro no comando enviado pelo DTE. ENGAGEF : indicação do PAD da existência de uma chamada virtual por ocasião do comando START . FREE : indicação do PAD confirmando uma desconexão solicitada através do comando CLR CLR CONF: indicação do PAD confirmando uma desconexão solicitada através do comando CLR. CLR : indicação do PAD para uma chamada desfeita pelo DTE remoto ou pela própria rede. Contém causa /diagnostico do motivo do CLR. RECOMENDAÇÃO X.29 Define como deve ser processada a troca de mensagens entre o PAD e um terminal modo pacote (X.25), ou entre PADs. 44
  • 45. IPX/SPX IPX – Internetwork Packet Exchange – é um protocolo desenvolvido pela Novell que cria, mantém e termina os links de comunicação entre dispositivos de Rede. Ele é responsavel tanto pelos dados que entram quanto pelos dados que saem. Quando um dado chega, o IPX lê e envia para o endereço adequado. SPX – Sequenced Packet Exchange é o protocolo que supervisiona as transmissões de dados, compostas por uma sucessão de pacotes separados. Se um pedido de confirmação não for respondido dentro de um tempo especificado, o SPX retransmite o pacote envolvido. Como o NetBEUI, o IPX/SPX é um protocolo relativamente pequeno e veloz em uma LAN mas, diferentemente do NetBEUI, suporta roteamento. 45