Escolar Documentos
Profissional Documentos
Cultura Documentos
Sistemas Distribuídos E Redes de Computadores para Controle E Automação Industrial
Sistemas Distribuídos E Redes de Computadores para Controle E Automação Industrial
CENTRO TECNOLGICO
DEPARTAMENTO DE AUTOMAO E SISTEMAS
1. Introduo geral.......................................................................................................................5
2. As Redes de Comunicao......................................................................................................5
2.1. INTRODUO...............................................................................................................5
2.1.1. Histrico das Redes de Comunicao.......................................................................5
2.1.2. Importncia das Redes de Comunicao...................................................................6
2.1.3. Extenso e Topologia das Redes de Comunicao...................................................7
2.1.4. Aspectos Arquiteturais das Redes de Comunicao.................................................9
2.2. O MODELO DE REFERNCIA OSI............................................................................17
2.2.1. Introduo...............................................................................................................17
2.2.2. A Arquitetura OSI e as Funes das Camadas........................................................17
2.2.3. A Comunicao no RM-OSI...................................................................................22
2.2.4. Os Conceitos do Modelo RM-OSI..........................................................................23
2.3. SERVIOS E PROTOCOLOS OSI..............................................................................28
2.3.1. Introduo...............................................................................................................28
2.3.2. A Camada Fsica.....................................................................................................28
2.3.3. A Camada de Enlace de Dados...............................................................................43
2.3.4. A Camada de Rede..................................................................................................68
2.3.5. A Camada de Transporte.........................................................................................84
2.3.6. A Camada de Sesso.............................................................................................105
2.3.7. A Camada de Apresentao..................................................................................116
2.3.8. A Camada de Aplicao........................................................................................134
2.4. A INTERCONEXO DE REDES...............................................................................145
2.4.1. Introduo.............................................................................................................145
2.4.2. Aspectos da conectividade....................................................................................147
2.4.3. A interconexo segundo o modelo OSI................................................................149
2.4.4. As diferentes possibilidades de interconexo.......................................................150
2.4.5. Os Repetidores (Repeaters)...................................................................................151
2.4.6. As pontes (bridges)...............................................................................................153
2.4.7. Os roteadores (routers)..........................................................................................154
2.4.8. As passarelas (gateways).......................................................................................155
2.4.9. Concentradores.....................................................................................................156
3. AS Redes locais industriais.................................................................................................158
3.1. Introduo........................................................................................................................158
3.1.1. As redes e os nveis hierrquicos de integrao fabril..............................................159
3.2. redes locais industriais ....................................................................................................162
3.2.1. Motivao..................................................................................................................162
3.2.2. Caractersticas bsicas das redes industriais.............................................................162
3.2.2.1. Comportamento temporal .................................................................................162
3.2.2.2. Confiabilidade....................................................................................................182
3.2.2.3. Requisitos do meio ambiente.............................................................................183
3.2.2.4. Tipo de mensagens e volume de informaes....................................................185
3.2.3. Projetos de Padronizao de redes industriais..........................................................186
3.2.3.1. Projeto PROWAY..............................................................................................186
3.2.3.2. Projeto IEEE 802 e ISO/IEC 8802.....................................................................186
3.2.3.3. Projeto MAP......................................................................................................203
3.2.3.4. Projeto TOP........................................................................................................203
3.2.3.5. Projeto FIELDBUS............................................................................................204
3.3. O Projeto MAP (Manufacturing Automation Protocol)...................................................205
3.3.1. Introduo.................................................................................................................205
3.3.2. A arquitetura MAP....................................................................................................206
3.3.3. A arquitetura MAP-EPA...........................................................................................208
3.3.4. A arquitetura Mini-MAP...........................................................................................209
3.3.5. Os servios de mensagem industrial (MMS)............................................................209
3.3.5.1. Os objetos MMS................................................................................................211
3.3.5.2. Os servios MMS...............................................................................................212
3.4. Redes Fieldbus.................................................................................................................217
3.4.1. Motivaes e Requisitos do Fieldbus........................................................................217
3.4.2 A proposta FIP (Factory Instrumentation Protocol)...................................................222
3.4.2.1. Introduo..........................................................................................................223
3.4.2.2. A camada Fsica ................................................................................................223
3.4.2.3. A camada de Enlace...........................................................................................223
3.4.2.4. A Camada de Aplicao.....................................................................................226
3.4.2.5. Funes de gerenciamento da rede.....................................................................227
3.4.3. A proposta PROFIBUS (PROcess FIeld BUS).........................................................227
3.4.3.1. Introduo..........................................................................................................227
3.4.3.2. A camada fsica..................................................................................................228
3.4.3.3. A camada de enlace............................................................................................228
3.4.3.4. A camada de Aplicao......................................................................................230
3.4.4. A proposta ISA SP-50...............................................................................................233
3.4.4.1. Introduo..........................................................................................................233
3.4.4.2. A camada Fsica.................................................................................................233
3.4.4.3. A camada de Enlace...........................................................................................234
3.4.4.4. A camada de Aplicao......................................................................................237
3.4.4.5. Camada do Usurio............................................................................................237
3.4.4.6. Servios de Gerenciamento de rede...................................................................238
3.4.5. Concluses................................................................................................................238
1. INTRODUO GERAL
2. AS REDES DE COMUNICAO
2.1. INTRODUO
grande porte e de custo muito elevado podem ser concebidos base da utilizao de um
grande nmero de microcomputadores (ou estaes de trabalho) manipulando dados presentes
num ou mais servidores de arquivos.
2.1.3. EXTENSO E TOPOLOGIA DAS REDES DE COMUNICAO
2.1.3.1.
As diferentes topologias
(a)
(c)
(b)
(d)
(e)
Figura 2.1.1 - Topologias ponto-a-ponto: (a) estrela; (b) anel; (c) rvore;
(d) malha regular; (e) malha irregular.
satlite
(a)
(b)
(c)
Figura 2.1.2 - Topologias das redes de difuso: (a) barramento; (b) satlite; (c) anel.
No caso do anel, cada bit transmitido propagado de maneira independente em relao
mensagem (ou pacote) ao qual ele pertence. Em geral, cada bit realiza uma volta completa
do anel durante o tempo necessrio para a emisso de um certo nmero de bits, antes mesmo
da emisso completa da mensagem. Tambm nesta topologia, necessria a implementao
de um mecanismo de acesso ao suporte de comunicao. Existem diferentes tcnicas para este
fim que sero discutidas ao longo do curso.
As redes de difuso podem ainda considerar duas classes de mecanismos de acesso ao
suporte de comunicao: estticas ou dinmicas. Um exemplo do primeiro caso a definio
de intervalos de tempo durante os quais cada estao tem a posse do canal de comunicao,
permitindo ento que esta emita a mensagem de maneira cclica. No entanto, esta poltica
bastante ineficiente do ponto de vista do envio das mensagens, uma vez que muitas estaes
no vo enviar mensagens nos intervalos a elas destinadas. J na outra classe de mecanismos
(dinmicos), o acesso dado s estaes segundo a demanda de envio de mensagens. Nos
mecanismos de acesso dinmicos, pode-se ainda considerar dois casos:
os mecanismos centralizados, nos quais uma estao central (rbitro) a responsvel
da definio do direito de acesso ao suporte de comunicao;
os mecanismos distribudos, nos quais cada estao define quando ela vai emitir a
mensagem.
Estudaremos estes mecanismos em mais detalhe mais a frente no curso.
2.1.4. ASPECTOS ARQUITETURAIS DAS REDES DE COMUNICAO
2.1.4.1 Servios necessrios comunicao
10
computador
central
terminal
terminais
11
Uma outra questo a do ordenamento das funes: o controle de fluxo deve ser
realizado antes ou depois da correo de erros? Uma vez resolvida esta questo, que
elementos da rede sero responsveis da implementao destas funes? As solues adotadas
so dependentes do suporte de transmisso utilizado? Elas continuam vlidas no caso de
expanso da rede? Estas questes representam, de certo modo, a necessidade de levar em
conta um certo ordenamento no que diz respeito adoo das solues a cada problema.
Uma ilustrao tpica do problema aquele das relaes internacionais: vamos supor
dois pases A e B, representados pelos seus respectivos presidentes que devem assinar um
acordo de cooperao industrial e comercial. Supondo que a organizao poltica dos dois
pases a mesma, cada presidente deve convocar o seu primeiro ministro para acompanhar a
execuo do acordo.
Em cada pas, o primeiro ministro vai convocar o ministro da indstria a fim de
implementar o acordo do ponto de vista industrial.
Supondo que faz parte do acordo a construo de um novo avio civil, o ministro da
indstria vai convocar o diretor das indstrias aeronuticas e espaciais para que este faa os
primeiros contatos. Finalmente, o diretor vai contactar um industrial do ramo e requisitar que
este contacte seu homlogo no pas B. Uma vez iniciado o processo de cooperao, os
industriais devero prestar informaes sobre o estado da cooperao administrao dos
seus respectivos pases, sendo que a informao vai subindo na hierarquia da organizao dos
pases, sendo filtrada em toda informao que possa parecer suprflua para o elemento
superior.
Este processo ilustrado na figura 2.1.6 e ele caracteriza, na verdade, a filosofia de
concepo das redes de comunicao, que baseada em dois conceitos fundamentais: o da
hierarquia e o da descentralizao, cuja conjuno vai permitir responder questo de
ordenao na adoo das solues. Segundo esta filosofia, uma tarefa global vista como
sendo decomposta medida que se vai descendo na hierarquia e que a nica interao fsica se
faz no seu nvel mais baixo.
Pas A
Pas B
Primeiro Ministro
Ministro da
Indstria
Diretor do setor
aeronutico
Industrial
13
Figura 2.1.6 - A filosofia de concepo das redes, ilustrada por um processo de relaes
internacionais.
Podemos considerar que a comunicao entre dois ns de uma rede uma tarefa global
que afeta um sistema complexo e, conseqentemente, sujeita aplicao dos princpios de
hierarquizao e de descentralizao.
As vantagens da adoo destes princpios so, fundamentalmente:
facilidade de estudo e de implementao da rede a partir de elementos de base
existentes, o que permite a reduo dos custos de instalao;
simplificao de sua operao em funo da definio de regras formais;
garantia de confiabilidade do sistema, particularmente graas ao encapsulamento das
funes, o que permite limitar a propagao de erros e facilitar a manuteno;
garantia, pela modularidade, de um grau satisfatrio de evolutividade e de
extensibilidade da rede;
otimizar o desempenho.
Todos estes aspectos nos conduzem a conceber uma arquitetura de comunicao como
sendo uma organizao de software e hardware estruturada em camadas.
2.1.4.3 A estruturao em camadas
Os conceitos de hierarquia e descentralizao podem ser empregados de diferentes
formas, cada uma podendo implicar num tipo de rede particular. Em funo desta provvel
multiplicidade, surgiu ento a necessidade de uma normalizao permitindo a conexo de
diferentes classes de hardware.
Para possibilitar a normalizao, foi necessrio estabelecer um modelo terico capaz
de representar as relaes entre as diferentes tarefas implementadas nos diferentes nveis
hierrquicos. A possibilidade de interconexo de um nmero qualquer de sistemas, ou seja, de
conjuntos autnomos podendo efetuar tarefas de tratamento ou de transmisso de informao,
era uma caracterstica essencial para o modelo a ser estabelecido.
A figura 2.1.7 ilustra a arquitetura hierarquizada em camadas (no caso, 7 camadas),
que permitir introduzir o conjunto de conceitos relacionados ao modelo estabelecido.
O objetivo de cada camada o oferecimento de um determinado servio s camadas
superiores (utilizando-se, tambm dos servios oferecidos pelas camadas inferiores) de forma
a evitar que estas necessitem conhecer certos aspectos da implementao destes servios.
14
A camada n assume a comunicao com a camada n de uma outra mquina. Para fazlo, ela se serve de um conjunto de convenes e regras que vo permitir gerir esta
comunicao. A este conjunto de regras e convenes, d-se o nome de protocolo da camada
n, ou, simplesmente, protocolo n. As entidades representando camadas correspondentes em
diferentes sistemas so denominadas processos pares, ou entidades pares. Os processos pares
vo se comunicar ento atravs dos protocolos, como foi visto na parte 1 deste documento.
Como se pode ver na figura, no existe meio de comunicao fsico entre as diferentes
camadas (apenas o Meio de Transmisso entre as entidades pares da camada 1), o que
significa que no existe transferncia direta de dados entre a camada n de uma mquina
camada n de outra mquina. Na realidade, cada camada transfere os dados camada
imediatamente inferior at a camada mais baixa; o dado ento transmitido outra mquina
atravs do Meio de Transmisso. A comunicao entre as camadas vista ento como uma
comunicao virtual e representada, na figura 2.1.7, pelas linhas ligando cada par de
processos de uma camada.
Sistema B
Sistema A
Interface
camadas
6/7
Interface
camadas
5/6
Interface
camadas
4/5
Interface
camadas
3/4
Interface
camadas
2/3
Interface
camadas
1/2
Camada
7
Camada
6
Camada
5
Camada
4
Camada
3
Camada
2
Camada
1
Protocolo da camada 7
Protocolo da camada 6
Protocolo da camada 5
Protocolo da camada 4
Protocolo da camada 3
Protocolo da camada 2
Protocolo da camada 1
Camada
7
Camada
6
Camada
5
Interface
camadas
6/7
Interface
camadas
5/6
Interface
camadas
4/5
Camada
4
Camada
3
Interface
camadas
3/4
Interface
camadas
2/3
Camada
2
Camada
1
Interface
camadas
1/2
Meio de Transmisso
interfaces entre as camadas; isto vai implicar na definio do servio oferecido por cada
camada. Uma vantagem da correta definio das interfaces a facilidade de introduo de
modificaes nas implementaes das diferentes camadas; os mecanismos podem ser
implementados de forma diferente, desde que as interfaces anteriormente definidas sejam
respeitadas.
Ao conjunto das camadas compondo uma rede d-se o nome de arquitetura da rede, e
as especificaes da arquitetura devem conter informaes suficientes para permitir o correto
desenvolvimento da rede, tanto do ponto de vista do software quanto do hardware. Por outro
lado, os detalhes de implementao dos mecanismos a implementar em cada camada, assim
como as especificaes detalhadas das interfaces no fazem parte da definio da arquitetura
da rede.
A figura 2.1.8 permite ilustrar o processo da comunicao no contexto de uma
arquitetura multicamadas.
O processo da camada 7 gera uma mensagem m, que ser transmitida desta camada
inferior segundo o que estiver definido pela interface das camadas 6/7.
TRANSMISSO
protocolo da
interface
6/7
protocolo da
camada 6
interface
5/6
interface
5/6
protocolo da
camada 5
H4 M2
protocolo da
camada 4
H3 H4 M1
camada 7
interface
6/7
H4 M1
RECEPO
H4 M1
H4 M2
protocolo da
H3 H4 M2
H2 H3 H4 M1 T2 H2 H3 H4 M2 T2
camada 3
protocolo da
camada 2
SISTEMA
FONTE
H3 H4 M1
H3 H4 M2
H2 H3 H4 M1 T2 H2 H3 H4 M2 T2
SISTEMA
DESTINO
Sistemas Abertos ou RM-OSI (Reference Model for Open Systems Interconnection), cujos
conceitos principais sero apresentados nas sees que seguem.
2.2.2. A ARQUITETURA OSI E AS FUNES DAS CAMADAS
O modelo OSI foi criado seguindo a filosofia das arquiteturas multicamadas, descrita
no captulo precedente. Como mostra a figura 2.2.1, sua arquitetura define 7 camadas, cujos
princpios de definio foram os seguintes:
cada camada corresponde a um nvel de abstrao necessrio no modelo;
cada camada possui suas funes prprias e bem definidas;
as funes de cada camada foram escolhidas segundo a definio dos protocolos
normalizados internacionalmente;
a escolha das fronteiras entre cada camada deveriam ser definidas de modo a
minimizar o fluxo de informao nas interfaces;
o nmero de camadas deveria ser suficientemente grande para evitar a realizao de
funes muito diversas por uma mesma camada;
o nmero de camadas deveria ser suficientemente pequeno para evitar uma alta
complexidade da arquitetura.
7
Aplicao
Apresentao
Sesso
Transporte
Protocolo de Aplicao
Protocolo de Apresentao
Protocolo de Sesso
Protocolo de Transporte
Aplicao
APDU
Apresentao
PPDU
Sesso
SPDU
Transporte
TPDU
SUB-REDE
Rede
Rede
Rede
Rede
PACOTE
protocolos internos
da sub-rede
Enlace de
Dados
Fsica
SISTEMA A
Enlace de
Dados
Enlace de
Dados
Fsica
Fsica
IMP
IMP
Enlace de
Dados
Fsica
QUADRO
BIT
SISTEMA B
Vamos descrever, a seguir, as principais funes realizadas por cada uma das camadas
definidas no modelo RM-OSI.
A Camada Fsica responsvel pela transferncia de bits num circuito de
comunicao. De maneira geral, a sua funo garantir que cada bit enviado de um lado ser
recebido do outro lado sem ter alterado o seu valor, ou seja, se o bit enviado est a 1, ele ser
recebido a 1 e no a 0. Para isto, as questes a serem resolvidas neste nvel so do tipo:
os modos de representao dos bits 0 e 1 de maneira a evitar ambigidades ou
confuses (valor da tenso em volts para a representao dos valores 0 e 1 dos bits,
durao de cada sinal representando um bit, a codificao dos sinais, etc...);
os tipos de conectores a serem utilizados nas ligaes (nmero de pinos utilizado, as
funes associadas a cada pino, ...);
a maneira como as conexes so estabelecidas para a iniciao de um dilogo e
como feita a desconexo ao final deste;
o modo de transmisso adotado ( unidirecional, bidirecional, ...);
o modo de conexo adotado (ponto-a-ponto, multiponto, ...);
o modo de tratamento dos erros (deteco, tratamento, etc...).
A concepo desta camada deve se relacionar definio das interfaces eltricas e
mecnicas, seus modos de funcionamento, o suporte de comunicao adotado, etc.
A Camada de Enlace de Dados tem por funo principal a transformao do meio de
comunicao bruto em uma linha livre de erros de transmisso para a camada de Rede. Ela
efetua esta funo atravs da decomposio das mensagens em unidades de dados
denominadas quadros (Frames), que correspondem a algumas centenas de bytes. Estes
quadros so transmitidos seqencialmente e vo gerar quadros de reconhecimento enviados
pelo receptor. Nesta camada, as unidades de dados so enriquecidas com um conjunto de bits
adicionais (no incio e fim de cada quadro) de modo a permitir o reconhecimento destes e a
definio de um endereo para o destinatrio da mensagem.
Um problema tpico deste nvel o da ocorrncia de uma perturbao sobre a linha de
transmisso que provoque a deturpao ou destruio (perda) do quadro enviado. Esta
deturpao ou perda deve ser reconhecida e tratada (controle de erros de transmisso de
quadros). Neste caso, o quadro deve ser retransmitido para garantir a integridade da
informao transferida. Por outro lado, deve-se tambm evitar mltiplas retransmisses de um
mesmo quadro, o que pode provocar a sua duplicao, por exemplo, se o quadro de
reconhecimento perdido.
Uma outra funo desta camada evitar uma alta taxa de envio de dados da parte do
emissor no caso do sistema receptor no ter capacidade de absorver a informao mesma
19
taxa. Este mecanismo deve permitir informar ao emissor a necessidade de armazenamento dos
dados a transmitir (controle de fluxo de quadros).
A Camada de Rede responsvel pela gesto de sub-redes; ela define a forma como
os pacotes de dados sero encaminhados do emissor ao receptor (roteamento). Os caminhos a
serem utilizados podem ser definidos em funo de tabelas estticas ou determinados
dinamicamente no momento de cada dilogo em funo das condies de trfego da rede. Esta
camada deve ainda efetuar a gesto dos problemas de congestionamento provocados pela
presena de uma quantidade excessiva de pacotes de dados na rede. Ela deve, finalmente,
resolver todos os problemas relacionados interconexo de redes heterogneas,
particularmente:
incompatibilidades no endereamento;
incoerncias em relao aos tamanhos das mensagens;
etc...
A Camada de Transporte representa uma interface entre as camadas orientadas
comunicao (1, 2 e 3) e as camadas orientadas aplicao (5, 6 e 7). Ela recebe os dados
enviados da camada de sesso, devendo decomp-los, se for o caso, em unidades de dados
menores (partio) e garantir que todas as partes da mensagem vo ser transmitidas
corretamente outra extremidade. Esta funo deve ser suprida de maneira eficiente,
inclusive, sem que a camada de Sesso tome conhecimento de possveis alteraes na
tecnologia da parte material da rede.
Esta camada cria, normalmente, uma conexo de rede para cada conexo de transporte
requerida pela camada de Sesso, embora, se as necessidades de velocidade de transmisso
so justificadas, ela possa estabelecer diversas conexes de rede para uma mesma conexo de
transporte. Por outro lado, se o custo da manuteno de uma conexo de rede considerado
elevado, esta camada pode efetuar a funo inversa, ou seja, a multiplexao de vrias
conexes de transporte sobre uma mesma conexo de rede, esta tarefa sendo feita de modo
transparente para a camada de Sesso.
Ela deve determinar, tambm, o tipo de servio oferecido camada de Sesso e,
conseqentemente, aos usurios da rede. Uma conexo de transporte tpica aquela de um
canal ponto-a-ponto, livre de erros de transmisso, transmitindo as mensagens na mesma
ordem em que elas foram enviadas. Por outro lado, outras classes de servios podem fornecer
uma conexo capaz de enviar as mensagens de modo isolado, mas sem a garantia de uma
ordem correta na transmisso. O tipo do servio a ser fornecido definido no momento do
estabelecimento da conexo.
Uma caracterstica desta camada que ela implementa um verdadeiro dilogo fim-afim, ou seja, o programa executando no sistema fonte dialoga com o programa executando na
20
mquina destino atravs dos cabealhos e informaes de controle contidas nas mensagens
deste nvel. J nas camadas mais baixas, os protocolos operam entre mquinas vizinhas e no
entre os sistemas fonte e destino, dado que estes podem estar separados por vrios IMPs. Esta
diferena fundamental, que se estende igualmente s camadas superiores (at a camada 7)
pode ser verificada pela ilustrao da figura 2.2.1.
Dado que esta camada responsvel do estabelecimento e trmino das conexes de
rede, ela deve definir um mecanismo de endereamento que permita a um sistema indicar com
qual sistema ele deseja dialogar. Este endereamento indica os processos de aplicao
envolvidos no dilogo e no apenas os ns de rede envolvidos, como ocorre no
endereamento feito na camada de enlace de dados.
Finalmente, ela deve implementar um mecanismo de controle de fluxo fim-a-fim para
evitar que o sistema fonte envie mensagens numa taxa superior quela com a qual o sistema
destino pode consumi-las.
A Camada de Sesso responsvel pelo estabelecimento de sesses de dilogo para os
usurios da rede. Uma sesso objetiva permitir o transporte de dados, da mesma forma que os
servios oferecidos pela camada de Transporte, mas ela oferece servios mais sofisticados de
comunicao que podem ser teis a determinadas aplicaes. Um exemplo disto a
possibilidade de envio, atravs de uma sesso, de um arquivo de dados (ou programa) de um
sistema a outro. Outro servio da camada de Sesso efetuar a gesto do dilogo, ou seja,
definir, por exemplo, se o dilogo vai ser efetuado em modo uni- ou bi-direcional.
Um servio tambm importante aquele da sincronizao do dilogo. Considere, por
exemplo, que um arquivo deve ser transferido atravs de uma sesso e esta deve durar duas
horas e que, por uma razo qualquer, o tempo mdio entre duas panes de uma hora. Aps
uma primeira interrupo por pane, a transferncia dever reiniciar, podendo ocasionar erros
de transmisso. Uma forma de evitar isto a insero de pontos de teste junto aos dados
fazendo com que, aps uma interrupo de transferncia, os dados sejam retomados apenas a
partir do ltimo ponto de teste.
A Camada de Apresentao oferece algumas funes freqentemente necessrias na
comunicao, de modo a poupar o usurio deste trabalho. Esta camada assume
particularmente as funes associadas formatao, sintaxe e semntica dos dados
transmitidos. Um exemplo tpico das funes efetuadas por esta camada a codificao da
informao num padro bem definido (ASCII, EBCDIC, etc).
Esta camada pode ainda suprir outras funes associadas compresso dos dados, se
utilizando do conhecimento do significado da informao para reduzir a quantidade de
informao enviada, inclusive para implementar funes de confidencialidade e de
autenticao (proteo de acesso).
21
processo
emissor
DADOS
Aplicao
protocolo de
aplicao
Apresentao
protocolo de
apresentao
Sesso
protocolo de
sesso
Transporte
protocolo de
transporte
Rede
Enlace
Fsica
AH
PH
DH
DADOS
Apresentao
DADOS
SH
TH
protocolo de
NH
rede
Aplicao
DADOS
DADOS
DADOS
Sesso
Transporte
Rede
DADOS
Enlace
BITS
Fsica
22
camada N+1 denominada um usurio de servio. Por outro lado, a camada N poder utilizar
os servios da camada imediatamente inferior, a camada N-1 para oferecer os servios
camada superior. Ela pode ainda oferecer diferentes categorias (ou classes) de servios:
servios mais eficientes e mais caros ou servios menos eficientes e econmicos.
Os servios oferecidos por uma camada so acessveis em pontos de acesso aos
servios, ou SAP (service access point). Os SAPs da camada N so os lugares onde a camada
N+1 poder acessar os servios oferecidos, cada SAP sendo identificado por um endereo
nico. Por exemplo, os SAP de uma rede telefnica so as tomadas s quais podem ser
conectados os aparelhos telefnicos e seus endereos so os nmeros de telefone associados
tomada considerada.
Para que duas camadas possam trocar informaes, existe uma srie de regras a serem
respeitadas, definidas pela interface. Atravs de uma interface, a camada N+1 envia uma
unidade de dados de interface, ou IDU (Interface Data Unit) entidade da camada N pelo
SAP. A IDU composta de uma parte denominada unidade de dados de servio, ou SDU
(Service Data Unit) e de informaes de controle de interface, ou ICI (Interface Control
Information). A SDU a informao transmitida via rede entidade par e, em seguida,
camada N+1. A ICI utilizada para auxiliar a gesto da camada inferior em seu trabalho (por
exemplo, o nmero de bytes compondo a SDU correspondente).
Para transmitir uma SDU, a entidade da camada N pode fragment-la em diversas
partes, e cada parte vai receber um cabealho, sendo enviada como uma unidade de dados de
protocolo, ou PDU (Protocol Data Unit). Os cabealhos de PDU so utilizados pelas
entidades pares para o transporte do protocolo. Elas identificam a PDU contendo os dados e
aquelas contendo informaes de controle (nmeros de seqncia, contagens, etc). A figura
2.2.3 ilustra o processo descrito. As PDUs recebem normalmente uma denominao segundo
a camada qual esto associadas. Por exemplo, as PDUs de aplicao so ditas APDU, assim
como as de apresentao so as PPDU, as de sesso SPDU, e assim por diante.
IDU
ICI
CAMADA N+1
SDU
SAP
interface
cabealho
CAMADA N
ICI
SDU
SDU
as entidades da
camada N trocam
N-PDUs via protocolos N
N-PDU
24
Como j foi dito, as camadas podem oferecer diferentes classes de servios s camadas
superiores. Estes servios podem ser orientados conexo ou sem conexo.
No que diz respeito aos servios orientados conexo, podemos citar, como exemplo
tpico o sistema telefnico. Para que seja possvel falar a algum no telefone, necessrio,
inicialmente, tirar o fone do gancho, digitar (ou discar) um nmero, esperar que o interlocutor
atenda, falar e, finalmente, desligar. Este o princpio de base de um servio orientado
conexo: estabelecimento da conexo, utilizao do servio e trmino da conexo. O aspecto
principal da conexo o fato de que ela funciona como uma espcie de canal atravs do qual
iro transitar os objetos ou mensagens envolvidas na realizao do servio.
J os servios sem conexo so estruturados como o sistema postal, onde cada
mensagem (ou carta, se consideramos o exemplo citado) contm o endereo do destinatrio e
ento encaminhada pelo sistema, independente de outras mensagens. Normalmente, se duas
mensagens so enviadas a um mesmo destinatrio, a primeira a ser enviada deve ser a
primeira a ser recebida. Por outro lado, neste modo de servio pode ocorrer que uma
mensagem seja atrasada fazendo com que a segunda mensagem seja recebida primeiro. J nos
servios orientados conexo, isto jamais poder acontecer.
Cada servio caracterizado por uma qualidade de servio. Um servio dito confivel
aquele em que os dados nunca podem ser perdidos. Normalmente, a implementao de
servios confiveis feita atravs da definio de mensagens de reconhecimento enviadas
pelo receptor, para cada mensagem recebida do emissor. Este processo, embora extremamente
benfico, introduz uma lentido na transferncia de dados, o que significa que nem sempre ele
desejvel num sistema.
Nem todas as aplicaes requerem a utilizao de conexes. Um exemplo disto pode
ser o de uma aplicao de correio eletrnico. Pode-se imaginar uma aplicao de correio em
que o usurio no se interesse pelo estabelecimento de uma conexo e tampouco por uma
confiabilidade de 100% no que diz respeito chegada das mensagens. Os servios sem
conexo e no-confiveis so denominados servios de datagrama.
Existem casos, porm, em que, apesar de no necessitar o estabelecimento de conexo,
a confiabilidade essencial. O servio utilizado neste caso dito de datagrama com
reconhecimento.
O servio de pedido-resposta j um outro tipo de servio no qual o emissor envia um
datagrama contendo um servio e o receptor envia um outro contendo a resposta a este
pedido.
A tabela a seguir ilustra os diferentes servios com e sem conexo, com exemplos de
aplicao destes servios.
Servios
Transf. confivel de
mensagens
Comentrio
com ou sem conexo
25
Exemplo
sequenciamento de pginas
transferncia de arquivos
voz digitalizada
sem conexo
correio eletrnico
sem conexo
correio eletrnico
registrado
consulta a bases de dados
sem conexo
26
SISTEMA A
SISTEMA B
CAMADA N+1
CAMADA N+1
CONNECT.response
CONNECT.request
CONNECT.confirm
CONNECT.indication
CAMADA N
CAMADA N
Significado
pedido de estabelecimento de uma conexo
indicao entidade invocada
utilizada para indicar a aceitao ou no da conexo
informa entidade emissora se a conexo aceita
27
DATA.request
DATA.indication
DISCONNECT.request
DISCONNECT.indication
28
Os Suportes de Transmisso
algumas dezenas de Kbits/s, podendo atingir, em condies particulares, a faixa dos Mbits/s
para pequenas distncias.
O fato de representar um baixo custo e uma grande faixa de utilizao o tornam um
dos suportes mais utilizados atualmente e, provavelmente, nos prximos anos.
- Os cabos coaxiais
alma de cobre
trana metlica
30
i
f ib r a
E
1
1
2
2
3
3
S ilcio
31
fonte de
luz
Como visto nas sees anteriores, a transmisso de dados utilizando guias fsicos
altamente dependente da tecnologia de concepo do suporte de comunicao considerado.
Um outro problema ligado utilizao de guias fsicos a necessidade, dependendo da
aplicao e da extenso da rede, da instalao de sistemas de canalizao para passagem do
suporte de transmisso. Isto pode elevar consideravelmente o custo de uma rede, em certas
situaes.
Nestes casos, uma rede de comunicao baseada em um meio sem guia fsico pode ser
uma soluo mais interessante. Por exemplo, numa rede que deve estender-se ao longo dos
32
diversos prdios num campus de uma universidade, pode ser mais interessante a instalao de
um conjunto emissor-receptor a raios laser ou infravermelhos no teto de cada um dos prdios.
J existem tambm redes locais baseadas em sinais de rdio. Cada estao de rede tem
que possuir uma unidade de transmisso e recepo (transceptor) de rdio, podendo ser
livremente deslocada dentro do ambiente. Dentre as vantagens deste tipo de sistema, podemos
citar:
Flexibilidade
Interconexo completa
Estaes mveis
Por outro lado, uma rede via rdio apresenta tambm as seguintes desvantagens:
Problema de autenticao
Privacidade
Dependncia de regulamentao pblica
Deve-se tambm levar em considerao as seguintes limitaes e compromissos:
banda passante;
rea de cobertura;
interferncias;
regulamentaes;
custos.
33
TRANSMISSOR
SUPORTE DE TRANSMISSO
RECEPTOR
DESTINATRIO
DA
INFORMAO
BINRIA
(a)
RUDO
FONTE OU
DESTINATRIO
INFORMAO
BINRIA
TRANSMISSOR
TRANSMISSOR
SUPORTE DE TRANSMISSO
RECEPTOR
RECEPTOR
FONTE OU
DESTINATRIO
INFORMAO
BINRIA
(b)
36
37
Uma forma possvel de representao dos sinais 0 e 1 a codificao binria, que usa
um sinal do tipo "on-off", como mostrado na figura 2.3.5(a). Aqui, o sinal lgico 1
representado por uma tenso positiva (por exemplo, +5V) enquanto o nvel 0 representado
por 0V (sinal ativo alto). Outra opo a codificao bipolar, que representa o sinal lgico 1
por uma tenso positiva (por exemplo, +12V) e o sinal lgico 0 por uma tenso negativa (por
exemplo, -12V). possvel tambm definir os sinais de forma oposta, isto , uma tenso
negativa ou nula para o sinal lgico 1 e uma tenso positiva para o sinal lgico 0 (sinal ativo
baixo). Na prtica, devido a possibilidade de presena de perturbaes e a queda de tenso
causada pela prpria impedncia do meio de transmisso, trabalha-se com intervalos de
tenso: por exemplo, uma tenso entre +3 e +12V considerada como representando o sinal
lgico 1 (ou 0), enquanto uma tenso entre -3 e -12V aceita como lgico 0 (ou 1). Qualquer
sinal no intervalo entre -3 e +3V considerado "indefinido" e indica um erro de transmisso.
Quando um sinal digital aplicado a uma das extremidades de um cabo, ele ser
recebido na outra extremidade mais ou menos enfraquecido e deformado, isto devido s
caractersticas do cabo, particularmente, ao seu comprimento e sua impedncia.
A transmisso analgica faz uso da modulao de um sinal portador sinusoidal,
usualmente com uma freqncia compreendida entre 1 e 2 MHz. A modulao de amplitude
consiste em modificar a amplitude do sinal da portadora com as informaes digitais a
transmitir. Por exemplo, um valor da amplitude atribudo informao binria 0 e outro ao
1.
A modulao em freqncia utiliza o mesmo formalismo, mas o parmetro
considerado aqui a freqncia, utilizando, desta vez, dois valores distintos de freqncia
para indicar os valores binrios 0 e 1. Esta forma de modulao denominada transmisso em
banda portadora ("carrierband") ou FSK (Frequency Shift Keying). As figuras 2.3.5(b) e
2.3.5(c) ilustram os processos de modulao em amplitude e em freqncia, respectivamente.
0
V2
(a)
V1
(b)
(c)
38
Figura 2.3.5 - (a) Sinal digital; (b) Sinal modulado em amplitude (ASK); (c) Sinal modulado
em freqncia (FSK).
O equipamento capaz de tratar um fluxo de informaes binrias num sinal modulado,
ou reconstitu-lo a partir do sinal modulado o modem (modulador-demodulador). O modem
normalmente inserido entre o equipamento informtico e o meio de transmisso.
d) Tcnicas de sincronizao em nvel de bits
instante de amostragem
0
tempo de subida
tempo de descida
39
de sinais contenha muitas transies, que podem ser detectadas facilmente por circuitos
eletrnicos adequados, e fazer a amostragem em um instante pr-determinado aps estas.
Para garantir a presena de transies suficientes no sinal de modo a permitir uma
correta sincronizao, so adotadas tcnicas alternativas de codificao dos sinais 0 e 1.
Uma destas tcnicas a codificao RZ (Return to Zero), que usada em conjunto
com a codificao bipolar j vista anteriormente. Aqui, o sinal sempre retorna a zero entre
dois dgitos consecutivos, como ilustrado na figura 2.3.7. Isto tem o efeito de garantir a
presena de transies mesmo que o sinal contenha uma longa seqncia de sinais lgicos 0
ou 1 seguidos (e que normalmente no apresentariam transies em uma codificao bipolar
simples). A amostragem feita no meio do tempo bit, contado a partir da deteco da
transio (logicamente tanto o emissor quanto o receptor devem usar o mesmo tempo bit, isto
, devem operar na mesma freqncia).
1
+12V
0V
-12V
tempo bit
40
tempo bit
+12V
Lgico 1
(a)
-12V
tempo bit
+12V
Lgico 0
(b)
-12V
1
(c)
trem de sinais
Figura 2.3.8 - Codificao NRZ (Manchester): (a) Sinal lgico 1; (b) Sinal lgico 0; (c)
exemplo: seqncia 111001.
Uma terceira tcnica a chamada NRZI (Non Return to Zero Inverted), tambm
conhecida como Manchester Diferencial ou Manchester Modificada. Nesta tcnica, a
ocorrncia de uma transio no inicio do tempo bit indica a presena de um zero no trem de
sinais, conforme ilustrado na figura 2.3.9. Se no houver transio (flanco) no inicio, o sinal
interpretado como lgico 1, independente do valor de tenso lido. Note que o sinal lgico 1
tambm possui uma transio, porm esta fica no meio do intervalo de sinalizao e no no
inicio.
1
tempo bit
Modem
CTS - pronto para envio (5)
DSR - dados prontos (6)
terra de sinalizao comum (7)
CD - deteco do sinal da linha (8)
DTR - equip. terminal de dados pronto (20)
43
(DCE)
2 (TD)
2 (TD)
3 (RD)
3 (RD)
Equip. A
Equip. B
"persistente"); quando isto ocorre, ela pode ento emitir um quadro. O mtodo chamado
"1"-persistente porque, quando a linha esta livre, a estao enviar os dados com 100% de
probabilidade. Aps a transmisso dos dados, e estao emissora espera uma resposta
(chamada quadro de reconhecimento) da estao receptora, indicando a correta recepo dos
dados.
Se uma outra estao estava a espera de uma oportunidade de enviar dados ao mesmo
tempo que a primeira, pode ocorrer que ambas detectem o meio como estando livre ao mesmo
tempo. Neste caso, ambas iro enviar seus dados simultaneamente, de forma que o sinal no
barramento ser uma "mistura" ininteligvel das duas mensagens. Esta condio recebe o
nome de "Coliso". Na ocorrncia de uma coliso, a estao receptora no envia o quadro de
reconhecimento esperado e a estao emissora tenta a emisso novamente aps um
determinado tempo.
O protocolo CSMA 1-persistente altamente influenciado pelo tempo de propagao
dos quadros no suporte de transmisso. Isto ilustrado pelo exemplo de duas estaes A e B
querendo emitir um quadro. Vamos supor que A detecta o meio livre e emite um quadro; em
seguida, B vai escutar o meio para ver o seu estado; se o atraso de propagao do quadro
emitido por A tal que o sinal ainda no pode ser detectado a nvel da estao B, ento esta
vai considerar o meio livre e emitir o seu quadro, gerando naturalmente uma coliso. Isto
significa que, quanto maior o tempo de propagao no suporte de comunicao, pior o
desempenho do protocolo devido ocorrncia de colises.
Na verdade, embora as probabilidades no sejam muito grandes, as colises podem
ocorrer mesmo se o tempo de propagao considerado nulo. Vamos supor agora as estaes
A e B com quadros a transmitir, mas que uma terceira estao, C est utilizando o meio. Neste
caso, as duas estaes vo aguardar a liberao do meio e, quando este estiver liberado, ambas
vo emitir seus quadros, caracterizando a coliso.
Outro exemplo de protocolo CSMA o CSMA no persistente. Segundo este
protocolo, as estaes comportam-se de maneira menos "afoita" para o envio de mensagens.
Assim, uma estao que deseje emitir um quadro vai escutar o suporte de transmisso para
verificar se este est disponvel. Em caso positivo, o quadro ser transmitido. Caso contrrio,
ao invs de ficar escutando espera da liberao do canal, ele vai esperar um perodo de
tempo aleatrio e, aps a expirao deste, vai escutar o canal novamente para verificar a sua
liberao (ou no). Este protocolo permite reduzir as possibilidades de ocorrncia de colises,
embora ele introduza um maior atraso de emisso a nvel das estaes que o protocolo
persistente.
O CSMA p-persistente mais um exemplo de protocolo de acesso, funcionando da
seguinte maneira: quando uma estao tem um quadro a enviar, ela escuta o canal para
verificar a disponibilidade; se o canal est disponvel , a probabilidade da estao emitir o
quadro igual a p. A probabilidade de que esta aguarde o prximo intervalo de tempo igual
46
emissor
receptor
emissor
47
Isto significa, em uma primeira anlise que, se uma estao que emitiu um quadro no
detecta uma coliso num perodo de tempo igual ao tempo de propagao do sinal ao longo do
canal de comunicao, pode considerar-se possuidora do meio e que as demais estaes
abstiveram-se de enviar.
Esta anlise apresenta, porm, uma impreciso. Vamos considerar t o tempo de
propagao de um sinal entre duas estaes, as mais distantes uma da outra. Consideremos
que em t0 uma estao emite um quadro. Vamos supor que em t - e , pouco antes que o sinal
tenha chegado, outra estao efetue uma transmisso. Ela vai detectar, imediatamente a
coliso e interromper a sua emisso. Por outro lado, a perturbao ocasionada pela coliso no
vai poder ser detectada pela primeira estao que emitiu o quadro antes de um perodo de
tempo igual a 2t - e. Assim, no pior caso, uma estao s poder estar segura de que ela
adquiriu o acesso ao canal de transmisso aps um perodo de tempo de 2t. Assim, no
protocolo CSMA/CD, uma estao emite uma palavra de dados, espera por um tempo 2t e, se
no detectar nenhuma coliso, considera que a nica a usar o meio naquele momento e passa
a enviar o restante dos dados.
O mtodo CSMA/CD propicia uma grande otimizao no uso do meio em relao aos
protocolos anteriores, pois a ocorrncia de uma coliso detectada logo na primeira palavra e
a emisso interrompida, no tendo que ser completamente repetida depois. Vale salientar
que nada impede que o CSMA/CD seja tambm 1-persistente ou p-persistente.
No entanto, em todos os mtodos de acesso CSMA temos que, quanto maior o
nmero de estaes, maior a probabilidade de ocorrncia de colises (esta probabilidade
aumenta exponencialmente), de forma que o tempo de reao aumenta consideravelmente e
no pode ser exatamente determinado. Em funo deste comportamento, mtodos de acesso
no determinsticos so considerados inadequados para aplicaes em tempo real, muito
comuns em ambiente fabril.
b) Os protocolos determinsticos
Os mtodos de acesso determinsticos so aqueles com tempo de resposta
univocamente determinvel. Estes mtodos podem ser classificados em:
Nos sistemas com comando centralizado, somente uma estao pode agir como
detentora do direito de transmisso (Mestre). O direito de acesso ao meio fsico distribudo
por tempo limitado pela estao mestre as demais (Escravas). Aqui todas as trocas de dados
ocorrem apenas entre mestre e escravos (figura 2.3.3.2). Esta configurao deixa o sistema
48
dependente da estao central, mas a configurao usual dos sistemas de controle na maioria
de suas aplicaes. Este mtodo de acesso ao meio tambm garante um tempo entre
transmisses consecutivas a qualquer estao da rede e segue a prtica atual de fazer um
controle distribudo com uma superviso centralizada.
Mestre
Escravo
Escravo
Escravo
Escravo
token
emissor
49
50
camada de enlace
camada de rede
request
indication
response
confirm
sistema A
sistema B
(a)
quadro1 (5 car.)
quadro2 (5 car.)
erro
(b)
quadro3 (8 car.)
contador de caracteres
Figura 2.3.3.5 - Seqncia de caracteres: (a) sem erro; (b) com erro.
A figura 2.3.3.6 ilustra um caso relativo a esta tcnica, onde a seqncia de caracteres
DLE (Data Link Escape) e STX (Start of TeXt) inserida para representar o incio de um
quadro e a seqncia DLE e ETX (End of TeXt) para representar o fim do quadro. Esta tcnica
apresenta, ainda, um ponto de vulnerabilidade: se, dentro do texto, uma seqncia de bits
coincide com uma das seqncias de caracteres citada (dado que os bits podem assumir
qualquer combinao de valores), a entidade receptora na camada de Enlace pode ser
enganada por esta seqncias e, assim, interpretar erroneamente o quadro.
A soluo a este problema vem atravs da introduo, pela entidade de Enlace
emissora, de um caracter DLE adicional a cada vez que, em uma seqncia de bits da parte de
dados, aparecer um byte que coincidir com um caracter DLE. Desta forma, basta entidade de
dados receptora eliminar os caracteres DLE dos dados antes de emiti-los camada de Rede.
Isto vai permitir ento, s entidades receptoras de Enlace, fazer a distino entre as seqncias
delimitadoras de quadro (DLE-STX e DLE-ETX) das seqncias acidentais nos dados. Os
caracteres DLE introduzidos a nvel dos dados so denominados caracteres de transparncia.
Esta tcnica de delimitao de quadros utilizada em protocolos simples de comunicao
serial orientados caracter.
52
(a)
DLE STX
DLE
(b)
DLE STX
DLE DLE
DLE ETX
DLE ETX
Figura 2.3.3.6 - (a) Dados enviados pela camada de Rede com seqncias de delimitao; (b)
idem, com introduo dos caracteres de transparncia.
Uma tcnica muito utilizada e definida mais particularmente para a utilizao em redes
de comunicao aquela em que os quadros so delimitados por uma seqncia de bits
particular, mas desta vez dissociados da codificao de caracteres. A seqncia 01111110
freqentemente adotada para representar a delimitao dos quadros.
De maneira anloga utilizao dos caracteres de transparncia da tcnica anterior,
bits de transparncia so introduzidos a nvel da parte de dados para evitar a confuso, por
parte do receptor, com os delimitadores de quadro (esta tcnica tambm conhecida como
"bit-stuffing"). Assim, no receptor, a cada vez que 5 bits 1 consecutivos so detectados na
parte de dados, um bit 0 adicionado aps a seqncia. Do lado do receptor, a cada vez que
ocorrer uma seqncia de 5 bits 1 consecutivos de dados seguidos de um bit 0, este ltimo
ser eliminado da parte de dados. A figura 2.3.3.7 ilustra a aplicao desta tcnica. Em 2.3.3.7
(a) so apresentados os dados originais e, em 2.3.3.7(b), os mesmos dados com a introduo
dos bits de transparncia.
(a)
(b)
1 0
bit de transparncia
Figura 2.3.3.7 - (a) dados originais; (b) dados com adio do bit de transparncia
2.3.3.3.
O controle de erros
Os erros que podem ocorrer sobre os suportes de transmisso tem como causas os mais
diversos fenmenos fsicos, como por exemplo, o rudo trmico, provocado pela agitao dos
eltrons nos cabos de cobre. Outro fenmeno importante so os rudos impulsivos causados
pelo chaveamento de rels ou outros dispositivos eletromecnicos.
Verifica-se entretanto que, independentemente do fenmeno causador de erro, estes
tendem a gerar normalmente verdadeiros pacotes de erros (error bursts) e no erros simples.
53
Isto pode ter um aspecto positivo, uma vez que, num conjunto relativamente grande de bits,
um menor nmero de pacotes vai conter erros. Por outro lado, os erros agrupados em pacotes
so mais difceis de modelizar e de detectar.
O controle de erros de transmisso uma das funes mais importantes asseguradas
pela camada de enlace (usualmente implementado na subcamada LLC).
Os protocolos de controle de erro so caracterizados, em geral, pela definio de um
quadro de controle, correspondente a um reconhecimento positivo ou negativo. Caso a
entidade emissora receba um reconhecimento positivo de um quadro previamente enviado, ela
entende que aquele foi corretamente recebido.
Por outro lado, se ela recebe um reconhecimento negativo, ficar ciente de que o
quadro foi mal transmitido e que, neste caso, ele dever ser retransmitido.
Ainda, se, por uma intensidade relativamente forte de rudo, o quadro inteiro no
recebido pela entidade destinatria, esta no vai reagir ao quadro emitido e a entidade
emissora corre o risco de esperar indefinidamente pelo reconhecimento. I isto evitado pela
adio de temporizadores, estabelecendo assim um tempo mximo de espera pelo
reconhecimento, antes da retransmisso (time-out). O tempo de espera deve ser determinado
em funo dos atrasos relativos transmisso dos quadros de modo que os quadros de
reconhecimento, se existentes, cheguem antes do esgotamento da temporizao.
Deste modo, se o quadro ou o reconhecimento so perdidos, a temporizao ser
esgotada, podendo provocar a retransmisso do quadro. Neste caso, possvel que o quadro
seja aceito mais de uma vez pela camada de Enlace e transmitido camada de Rede, causando
uma duplicao de quadros. Para evitar este problema, deve-se introduzir um mecanismo de
distino dos quadros a fim de que o receptor possa separar os quadros duplicados de seus
originais.
Existem praticamente duas tcnicas para o tratamento de erros. A primeira consiste na
introduo, a nvel dos quadros, de informaes suficientemente redundantes que permitam ao
receptor reconstituir os dados enviados a partir da informao recebida. A segunda tcnica
consiste em adicionar unicamente um conjunto de informaes redundantes o suficiente para
que o receptor possa detectar a ocorrncia de um erro (sem corrigi-lo) e requisitar a
retransmisso do quadro. A primeira tcnica denominada cdigo corretor de erros e a
segunda cdigo detetor de erros.
Uma palavra de cdigo de comprimento igual a n bits composta de um nmero m de
bits de dados e um nmero r de bits de controle (n = m + r). Dadas duas palavras de cdigo,
por exemplo, 10001001 e 10110001, possvel determinar de quantos bits elas diferem (no
caso do exemplo, elas diferem de 3 bits). Isto pode ser feito efetuando um ou exclusivo
entre as duas palavras e contando o nmero de bits "1" do resultado. A este nmero dado o
nome de Distncia de Hamming. Se a distncia de Hamming entre duas palavras d, sero
necessrios d erros simples para transformar uma palavra em outra.
54
b its d e c o n tr
10
11
b its d e d a d o s
Cdigo ASCII
Cdigo de Hamming
H
a
m
m
i
n
g
1001000
1100001
1101101
1101101
1101001
1101110
1100111
0100000
00110010000
10111001001
11101010101
11101010101
01101011001
01101010110
11111001111
10011000000
56
c
o
d
e
1100011
1101111
1100100
1100101
11111000011
00101011111
11111001100
00111000101
ASCII
52H
45H
44H
45H
binrio
01010010
01000101
01000100
01000101
00010110
bit paridade
1
1
0
1
1
A palavra BSC enviada no final do quadro, aps as palavras que fazem parte dos
dados a enviar. O receptor, a exemplo da tcnica de paridade simples, calcula o BSC dos
dados a medida que so recebidos e compara o resultado com a ltima palavra enviada (que
o BSC calculado pelo emissor); se houver diferena, houve erro de transmisso. Nesta
variante, erros que no foram detectados pela paridade simples provavelmente sero
detectados pela paridade longitudinal. Esta tcnica largamente utilizada em protocolos de
rede mais simples, mas tem uma eficincia limitada.
Um mtodo de deteco de erros ainda melhor e largamente utilizado em redes locais
a definio de um cdigo polinomial, tambm denominado CRC (cyclic redundancy code).
57
1
1
1
1
1
0
0
0
1
0
1
0
0
0
1
0
1
1
0
0
0
0
1
1
1
1
0
1
0
1
1
0
1
0
1
0
1
1
0
0
0
1
58
0
1
1
1
1
0
0
0
1
0
1
0
0
0
0
0
0
1
1
0
0
1
0
1
0
1
1
0
1
1
0
0
0
0
0
0
1
0
1
0
0
1
0
1
1
0
0
0
0
0
0
1
1
0
Para o exemplo acima, o resto R(x)= 0110 a prpria FCS. O Frame a transmitir
dado por xr.M(x) - R(x) = 11100110 0110 (que corresponde ao frame original acrescido dos 4
bits de R(x)) .
Todas as operaes descritas acima podem ser implementadas em hardware com
registradores de deslocamento e portas lgicas XOR.
Alguns exemplos de polinmios geradores freqentemente adotados na deteco de
erros so:
CRC-12
=
x12 + x11 + x3 + x2 + x1 + 1
CRC-16
=
x16 + x15 + x2 + 1
CRC-CCITT =
x16 + x12 + x5 + 1
Tomando-se o polinmio gerador da CCITT como exemplo, verificamos que um
polinmio de ordem 16, de forma que sero acrescentados 16 bits de CRC em cada quadro.
Este polinmio capaz de detectar:
Esta ltima tcnica bem mais eficiente que as anteriores, apesar de no ser infalvel
(nenhuma delas ). Observe que os cdigos detetores de erro no corrigem as palavras erradas
recebidas. Eles permitem apenas detectar a ocorrncia do erro e o computador que recebe os
dados deve requerer uma retransmisso da palavra de cdigo errada, ao contrrio do que
ocorre com os cdigos corretores !
2.3.3.4.
de Enlace. A ordem de apresentao destes protocolos segue uma ordem de complexidade que
vai crescendo em funo de novas hipteses que levantaremos ao longo da anlise. Nesta
anlise, vamos considerar a comunicao entre entidades de comunicao situados em dois
sistemas distantes, denominados aqui A e B.
No primeiro caso, vamos supor que o suporte de comunicao utilizado permite uma
comunicao unidirecional apenas e que as camadas de Rede dos sistemas A e B esto sempre
prontas a enviar e receber dados, respectivamente. Ainda, neste caso, o canal de comunicao
perfeito, ou seja, nenhum quadro corrompido ou perdido. Assim, do lado do receptor, o
nico evento possvel a recepo de quadros corretos. A figura 2.3.3.9 ilustra a troca de
quadros entre as entidades localizadas nos sistemas A e B. Esta troca realizada numa nica
direo (de A para B), sem a ocorrncia de perdas dada a considerao de que o canal de
comunicao perfeito.
O segundo caso, indo do imaginrio ao mais realista, leva em conta o fato de que a
camada de Rede do sistema receptor no tem capacidade de tratar os dados com a mesma
velocidade em que eles so gerados pela camada de Rede emissora. Por outro lado, a hiptese
de que o canal perfeito e que os dados circulam numa nica direo ainda verdadeira.
O problema que se coloca, neste caso, o de impedir que o emissor envie os quadros
numa velocidade superior quela que o receptor pode consumi-los (trat-los e retransmiti-los).
Uma forma de faz-lo estabelecer um mecanismo de temporizao do lado do emissor de
modo a provocar um pequeno espao de espera pelo tratamento do dado previamente enviado
antes do envio do seguinte. Esta soluo no , evidentemente, a melhor, uma vez que uma
m escolha do limite de espera pode conduzir a atrasos indesejveis na comunicao.
A
B
dados
dados
.
.
.
dados
deve permitir a comunicao bidirecional para permitir que a entidade de Enlace receptora
emita os quadros de reconhecimento. Este protocolo, denominado send-wait, stop-and-wait ou
envia-espera, ilustrado pela figura 2.3.3.10.
O terceiro caso a ser analisado aqui torna-se muito mais prximo do real, uma vez que
consideraremos aqui a hiptese (nem to hipottica assim!) de que os dados possam chegar
outra extremidade do canal corrompidos ou que estes sejam perdidos ao longo do canal.
Vamos, porm, considerar a possibilidade de detectar a ocorrncia de quadros incorretos
atravs de uma das tcnicas apresentadas na seo 2.3.3.3.
A
B
dados
reconhecimento
dados
reconhecimento
dados
61
B
dado1
reconhecimento
dado2
dado2
reconhecimento
Figura 2.3.3.11 - Protocolo considerando controle de erro por quadro de reconhecimento com
temporizao.
Esta soluo, porm, apresenta uma grave deficincia: no caso da entidade em B
receber corretamente o dado e enviar o quadro de reconhecimento e este ltimo for perdido no
canal de comunicao, a entidade emissora, aps a expirao da temporizao, vai reemitir o
quadro de dados, gerando um problema de duplicao de mensagem (figura 2.3.3.12).
Isto significa que o receptor deve ser capaz de reconhecer os quadros recebidos de
modo a saber se estes so duplicados ou no. Para isto, ser preciso introduzir um campo
contendo um nmero de seqncia (um bit, no caso) do quadro de modo a permitir esta
distino. Se uma entidade receptora recebe sucessivamente dois quadros contendo o mesmo
nmero de seqncia, o segundo ser rejeitado.
Outro ponto importante a ser destacado no caso deste terceiro tipo de protocolo a
escolha do valor da temporizao no emissor (para espera do reconhecimento). Uma
temporizao muito longa pode conduzir a atrasos indesejveis na comunicao. Uma
temporizao excessivamente curta, por outro lado, pode conduzir a erros de protocolo
considerveis. Tomando como exemplo este caso, vamos supor que o emissor enviou um
quadro, que este foi recebido corretamente pelo receptor que, por sua vez, emitiu um quadro
de reconhecimento.
62
B
dado1
perda
reconhecimento
dado1
quadro duplicado
temporizao esgotada
Figura 2.3.3.12 - Protocolo considerando controle de erro por quadro de reconhecimento com
temporizao, no caso de perda do quadro de reconhecimento (gerando duplicao de quadro).
Considerando que a temporizao excessivamente curta, pode ocorrer que esta seja
expirada antes que o quadro de reconhecimento tenha sido integralmente transmitido ao
emissor. Desta forma, o receptor entende que o quadro foi perdido ou transmitido
incorretamente e retransmite o mesmo. Em seguida, o emissor recebe o quadro de
reconhecimento daquele enviado inicialmente e, erroneamente, pensa que o reconhecimento
relativo quele que ele havia enviado posteriormente. Entretanto, o emissor desconhece que
um novo quadro de reconhecimento est a caminho (relativo ao quadro duplicado). Se,
portanto o quadro seguinte perdido e o emissor recebe um quadro de reconhecimento ele,
desta vez, vai interpretar que o ltimo quadro enviado foi corretamente recebido,
caracterizando ento um erro de protocolo. A figura 2.3.3.13 ilustra este problema.
Os protocolos analisados nesta seo, do tipo envia-espera, apesar dos problemas que
podem gerar, so bastante utilizados, principalmente devido sua relativa simplicidade de
construo. Esta classe de protocolos, alm disso, subutiliza o canal de comunicao, uma vez
que eles devem esperar a recepo do quadro de reconhecimento para poderem enviar o
quadro de dados seguinte.
Uma classe de protocolos mais eficiente aquela em que o emissor pode enviar um
certo nmero de quadros de dados sem que ele tenha recebido o reconhecimento dos quadros
j emitidos. Isto vai requerer, obviamente, a implementao de um mecanismo de
reconhecimento de quadros mais completo que aquele citado no caso do protocolo anterior.
So os denominados protocolos contnuos ou de largura de janela.
63
B
dado1
reconhecimento
dado1
perda
dado2
reconhecimento
temporizao esgotada
temporizao interrompida
N+1
N
E
N
I(N)
N+2
N+3
N+4
N+1
N+2
N+3
N+4
N+1
N+2
N+3
I(N+1)
I(N)
A(N)
I(N)
I(N+3)
I(N+2)
A(N+1)
I(N+1)
N
lista de
recepo
I(N+2)
I(N+1)
I(N+4)
I(N+3)
A(N+2)
I(N+2)
I(N+4)
A(N+3)
I(N+3)
tempo
I(N+4)
N+1
N+1
N+1
N+1
N+1
N+1
N+1
N+1
N+1
N+1
64
O Exemplo visto assume que no ocorrem erros. Duas estratgias podem ser adotadas
em caso de erros:
Retransmisso seletiva: emissor retransmite somente quadros cujos ACK no foram
recebidos aps time-out. Receptor tem que manter buffer com n (largura de janela)
grande...
Retorna-N (Go-Back-N): quando o receptor recebe um quadro fora da sequencia,
pede ao emissor para reiniciar do ltimo quadro recebido na ordem correta.
Receptor mantm janela com largura 1 !
2.3.3.5.
HDLC (High-level Data Link Control) uma famlia de protocolos orientados ao bit,
resultado do esforo realizado pela ISO para a padronizao da camada de enlace. O HDLC
foi definido pela ISO a partir do protocolo SDLC (Synchronous Data Link and Control), da
IBM. Existem atualmente diversos protocolos compatveis com o HDLC: por exemplo,
ADCCP (ANSI), LAP E LAPB (CCITT).
O protocolo HDLC prev 2 modos de operao:
NRM (Normal Response Mode): define uma estao mestra e vrias escravas com
topologia em barramento;
ABM (Asynchronous Balanced Mode): operao multimestre para topologia pontoa-ponto.
A forma de operao mais comum para a maioria das aplicaes de HDLC a
utilizao do modo NRM (mestre / escravos).
Um quadro HDLC apresenta a estrutura conforme mostrado na figura 2.3.3.15, cujos
campos sero descritos a seguir. Os campos flag correspondem seqncia 01111110, que
permite delimitar o quadro. Todos os quadros HDLC iniciam e terminam com esta seqncia.
No caso de envio de quadros consecutivos, um mesmo flag pode marcar o fim de um quadro e
o incio de outro. O campo endereo, de 8 bits, permite identificar a estao destinatria do
quadro (no caso de comando) ou fonte (no caso de resposta). O campo controle permite
identificar a funo do quadro, assim como especificar os nmeros de seqncia. A figura
2.3.3.16 mostra a configurao dos bits compondo este campo. O campo informao aquele
que contm os dados a serem transferidos via camada de Enlace. O campo FCS (Frame Check
Sequence) contm a seqncia de deteco de erros utilizada. Esta seqncia calculada sobre
os campos endereo, controle e informao, utilizando como polinmio gerador a
combinao x16 + x12 + x5 + 1 (CRC-CCITT).
Um quadro de enlace considerado incorreto e, assim, ignorado pelo destinatrio nas
seguintes condies:
65
8 bits
flag
8 bits
8 bits
endereo
16 bits
***
controle
informao
8 bits
FCS
flag
bits
informao
superviso
no numerado
P/F
N(r)
P/F
N(r)
P/F
N(s)
66
recebimento de um quadro com o bit P a 1 indica que a estao secundria deve enviar o
prximo quadro com o bit F tambm a 1.
Os bits S so utilizados para identificar comandos de superviso, particularmente para
comandos de reconhecimento e de controle de fluxo. A tabela abaixo mostra as possveis
combinaes dos bits S e os comandos / respostas associados.
S
0
1
0
S
0
0
1
Cdigo
RR
RNR
REJ
SREJ
Comando/Resposta
Receiver Ready (Receptor Pronto)
Receiver Not Ready (Receptor No Pronto)
Reject (Rejeitado)
Selective Reject (Recusa Seletiva)
Inicio de operao:
ajuste do modo de operao e estabelecimento de uma conexo (frame
SNRM ou SABM)
parceiro responde com frame UA
Troca de Dados:
em NRM, escravo s envia dados a pedido do mestre: mestre envia UP,
escravo responde com I-Frame (se tem dados) ou RNR (se no tem dados)
em ABM, operao full-duplex. Estao envia I-Frame, receptor responde
com RR (ACK), REJ (NAK) ou SREJ (NAK)
Fim conexo:
em NRM s mestre pode concluir conexo (frame DISC); escravo responde
com frame UA.
em ABM, qualquer lado pode enviar DISC; outro responde com UA.
2.3.3.6.
67
O IEEE definiu um padro para a camada de enlace (norma IEEE 802.2), hoje
largamente difundido. Estudaremos a norma IEEE 802 mais detalhadamente em um captulo
posterior. Aqui nos limitaremos a descrever brevemente as primitivas propostas nesta norma.
68
Uma das primeiras discusses realizadas no que diz respeito concepo da camada
de Rede foi a questo do tipo de servio a ser oferecido s camadas superiores,
particularmente relacionado existncia ou no de conexo.
69
servio sem
conexo
APLICAO
APRESENTAO
SESSO
TRANSPORTE
REDE
ENLACE
SAP
FSICA
70
usurio
1
usurio
2
usurio
1
usurio
2
usurio
1
N SAPs
NSAPs
(a)
usurio
2
N SAPs
(b)
(c)
Figura 2.3.25 - Modelo de uma conexo de Rede: (a) antes do estabelecimento; (b) aps o
estabelecimento; (c) aps o envio de trs pacotes (de 1 para 2).
b) As primitivas de servio
A tabela a seguir apresenta as primitivas de servio disponveis pela camada de Rede
do modelo OSI, tanto para os servios orientados conexo como para os sem conexo.
SERVIO ORIENTADO CONEXO
N_CONNECT.request(called, calling,acks_wanted,exp_wanted,qos,user_data)
N_CONNECT.indication(called,calling,acks_wanted,exp_wanted,qos,user_data)
N_CONNECT.response(responder,acks_wanted,exp_wanted,qos,user_data)
N_CONNECT.confirm(responder,acks_wanted,exp_wanted,qos,user_data)
N_DISCONNECT.request (source, reason, user_data, responding_address)
N_DISCONNECT.indication (source, reason, user_data, responding_address)
N_DATA.request (user_data)
N_DATA.indication (user_data)
N_DATA_ACKNOWLEDGE.request ( )
N_DATA_ACKNOWLEDGE.indication ( )
N_EXPEDITED_DATA.request (user_data)
N_EXPEDITED_DATA.indication (user_data)
N_RESET.request (source, reason)
N_RESET.indication (source, reason)
N_RESET.response ( )
N_RESET.confirm ( )
SERVIO SEM CONEXO
N_UNITDATA.request (source_address,dest_address, qos, user_data)
N_UNITDATA.indication (source_address,dest_address, qos, user_data)
71
N_FACILITY.request (qos)
N_FACILITY.indication (dest_address, qos, reason)
N_REPORT.indication (dest_address, qos, reason)
N_CONNECT.request a primitiva utilizada para requisitar o estabelecimento de uma
conexo de Rede e atravs de seus parmetros deve-se indicar o endereo ao qual se deseja
conectar (calling), assim como o endereo do iniciador (called). Encontra-se, ainda, nos seus
parmetros, duas variveis booleanas que permitem requisitar servios adicionais.
O parmetro acks_wanted permite indicar o pedido de reconhecimento de pacotes. Se
a camada de Rede no permite o fornecimento de reconhecimento, o fornecedor vai colocar
esta varivel a falso na primitiva de indicao; da mesma forma, se a entidade destinatria no
pode fornecer reconhecimento, ela mesma o far (colocar acks_wanted a falso) na primitiva
de resposta.
O outro parmetro booleano, exp_wanted, permite a utilizao de servios de dados
expressos (ou urgentes), o que significa que um pacote pode violar a ordem normal dos
pacotes na fila para se colocar na cabea desta. Isto permite, de certo modo, estabelecer um
nvel de prioridade entre as mensagens a nvel de Rede.
O parmetro qos (quality of service) permite determinar a qualidade do servio a ser
oferecido, sendo composto de duas listas de valores. A primeira lista contm o contexto
desejado pela entidade iniciadora; a segunda indica os valores mnimos aceitveis. Se o
servio de Rede incapaz de fornecer pelo menos os valores mnimos estabelecidos pelo
usurio iniciador, a conexo no ser estabelecida. Os valores estabelecidos neste parmetro
so a taxa de erro, a taxa de transmisso, a confidencialidade e custo da transmisso.
O iniciador pode, atravs do parmetro user_data, introduzir dados no pedido de
conexo, podendo a entidade chamada consultar estes dados antes da aceitao da conexo.
A aceitao de uma conexo feita pelo chamador atravs da primitiva
N_CONNECT.indication; por outro lado, a recusa implementada atravs da primitiva
N_DISCONNECT.request, que informa, atravs do parmetro reason, o motivo do no
estabelecimento da conexo.
Se a conexo estabelecida, a transmisso de dados feita utilizando a primitiva
N_DATA.request, que ser refletida no receptor por uma primitiva N_DATA.indication. Caso
um pedido de reconhecimento de pacotes foi acertado entre os usurios da camada no
momento da conexo, o reconhecimento ser implementado atravs do envio, pelo receptor,
de uma primitiva N_DATA_ACKNOWLEDGE.request.
As primitivas N_RESET so utilizadas para sinalizar problemas de comunicao, tais
como o bloqueio de uma entidade de transporte envolvida na comunicao ou mesmo do
fornecedor do servio. O efeito deste servio o esvaziamento das filas de espera, sendo que
72
as informaes presentes nestas sero perdidas. As perdas devero ser recuperadas pela
camada de Transporte.
As primitivas N_UNITDATA so utilizadas para o envio de dados no servio sem
conexo; elas no oferecem nem controle de erros nem de fluxo. N_FACILITY o servio que
permite ao usurio obter informaes sobre as caractersticas da transmisso de informao,
por exemplo, a percentagem de pacotes distribudos.
Finalmente, a primitiva N_REPORT permite camada de Rede informar a ocorrncia
de problemas relativos ao servio de Rede, como, por exemplo, a indisponibilidade
momentnea de um determinado endereo destinatrio.
c) O endereamento de Rede
Uma funo importante desta camada o fornecimento de uma codificao espacial de
endereos coerente para uso da camada de Transporte. O fato que, para cada rede, foi
definida uma estrutura distinta de endereamento, o trabalho de uniformizao ficando a cargo
da camada de Rede.
De uma forma geral, 2 esquemas bsicos de endereamento so possveis:
endereamento hierrquico: o endereo constitudo conforme a posio de cada
entidade na hierarquia da rede, sugerindo o local onde esta se encontra. Este
esquema de endereamento usado em WANs e MANs (ex.: Internet). Esta tcnica
facilita o roteamento.
endereamento horizontal: aqui, o endereo no tem relao com localizao da
entidade na rede. Este esquema usado em LANs (ex.: padro IEEE 802). Este tipo
de tcnica facilita a reconfigurao da rede sem necessitar alterar os endereos das
estaes.
No modelo OSI, a estrutura de endereamento a nvel de Rede foi concebida de modo
a incorporar as caractersticas das diversas estruturas de endereamento existentes. Todas as
primitivas de servio de Rede utilizam o endereamento orientado aos NSAPs para identificar
a origem ou o destinatrio de um pacote. A figura 2.3.26 mostra o formato do endereo de
NSAP, que composto de trs campos:
AFI (Authority and Format Identifier), identifica o tipo de endereamento existente
no terceiro campo do endereo, possibilitando uma numerao entre 10 e 99,
correspondente aos diferentes formatos existentes e deixando ainda possibilidades
de extenso;
IDI (Initial Domain Identifier) indica o domnio ao qual pertence o nmero do DSP
(o terceiro campo) se o DSP um nmero de telefone, este campo indicar o
cdigo do pas;
73
IDI
DSP
IDP
A funo de Roteamento
74
Um exemplo de algoritmo do caminho mais curto aquele definido por Dijkstra, onde
cada n etiquetado pela distncia do n fonte seguindo o caminho mais curto conhecido.
Como, inicialmente, nenhum caminho conhecido, os ns so etiquetados com infinito, ou
"1". Estas vo sendo atualizadas medida que o algoritmo progride e que os caminhos vo se
tornando conhecidos, as etiquetas vo indo do provisrio ao permanente uma vez que o
caminho mais curto foi encontrado para os diferentes ns.
A figura 2.3.27 ilustra o funcionamento deste algoritmo. Vamos considerar o grafo
apresentado em 2.3.27(a), onde os arcos so etiquetados com o valor da distncia entre os ns.
Vamos considerar que o objetivo aqui encontrar o caminho mais curto entre A e D.
Como o n A o n de origem, ele ser marcado por um n de referncia (fundo cinza)
e sero analisados os ns adjacentes. Estes sero etiquetados pela distncia que os separa de A,
marcando tambm, na etiqueta, o ltimo n a partir do qual o clculo foi feito. Aps a anlise
dos ns adjacentes a A, marca-se aquele contendo a etiqueta de menor valor, como mostrado
em 2.3.27(b), este n passando a ser o n ativo (ou de referncia).
Repetindo a anlise para o n B, define-se o n E como sendo o novo n ativo,
mostrado em 2.3.27(c). O algoritmo vai progredindo at que o caminho mais curto seja ento
encontrado, as etiquetas sendo modificadas segundo as anlises efetuadas. A progresso do
algoritmo para o exemplo ilustrada por 2.3.27(d), 2.3.27(e) e 2.3.27(f).
Para este exemplo, o caminho mais curto fica sendo pelas estaes A-B-E-F-H-D,
sendo A a origem e D o destino final.
B
2
E
1
E ( ,-)
F ( ,-)
H ( ,-)
G (6,A)
(b)
(a)
C (9,B)
B (2,A)
E (4,B)
F ( ,-)
D ( ,-)
F (6,E)
H ( ,-)
G (6,A)
(d)
C (9,B)
C (9,B)
B (2,A)
E (4,B)
E (4,B)
F (6,E)
D ( ,-)
H ( ,-)
G (5,E)
(c)
B (2,A)
C (9,B)
B (2,A)
E (4,B)
A
D ( ,-)
C ( ,-)
B (2,A)
D ( ,-)
F (6,E)
D ( ,-)
Final = D (10,H)
H (9,G)
G (5,E)
H (8,F)
G (5,E)
(f)
(e)
75
76
(a)
0,63
0,21
0,16
0,46
0,31
0,23
0,34
0,33
0,33
0,50
0,25
0,25
0,40
0,40
0,20
0,34
0,33
0,33
0,46
0,31
0,23
0,63
0,21
0,16
0,65
0,22
0,13
0,67
0,22
0,11
0,42
0,42
0,16
(b)
Figura 2.3.28 - Ilustrao do algoritmo multicaminho: (a) grafo da rede; (b) tabela p/ n J.
A vantagem desta tcnica sobre a anterior a possibilidade de definir diferentes
classes de trfego sobre diferentes caminhos. Uma outra vantagem a confiabilidade, uma vez
que vrias linhas podem ser perdidas sem que a rede perca a sua conectividade.
c) Roteamento dinmico distribudo
Nesta tcnica, cada estao troca periodicamente informaes de roteamento com suas
vizinhas. Cada estao envia aos seus vizinhos imediatos uma tabela contendo informao
sobre custo de transmisso a partir dela para cada uma das demais estaes da rede. Esta
tabela contm, para cada destino possvel, o n preferencial de sada e o custo estimado de
transmisso por este n. Este tipo de roteamento tambm conhecido como Roteamento por
Vetor de Distancia (Distance Vector Routing).
Cada n tem que conhecer o custo de transmisso para cada um dos seus vizinhos
imediatos. Para decidir a rota, a estao emissora soma o custo de transmisso at o vizinho
imediato com custo estimado dali at destino final.
A operao deste tipo de algoritmo ilustrada na figura 2.3.29.
77
local
recebido das demais estaes
D
d
e
s
t
i
n
o
s
A
B
C
D
E
F
G
H
I
J
K
L
A
0
12
25
40
14
23
18
17
21
9
24
29
(a) subrede
Origens
I
H
24
20
36
31
18
19
27
8
7
30
20
19
31
6
20
0
0
14
11
7
22
22
33
9
K
21
28
36
24
22
40
31
19
22
10
0
9
J
8
12
10
0
6
-
nova
tabela J
8
20
28
20
17
30
18
12
10
0
6
15
A
A
I
H
I
I
H
H
I
K
K
(b) tabelas do n J
O controle de congestionamento
78
Sendo assim, a camada de Rede deve tambm fazer este papel, atravs da
implementao de funes de controle de congestionamento, alguns dos quais sero descritos
a seguir.
a) Pr-alocao de buffers
Uma primeira forma de controlar o congestionamento da rede atravs da pralocao de buffers, particularmente se o servio orientado conexo. Isto significa que, no
momento do estabelecimento do circuito virtual que vai caracterizar a conexo, um
determinado nmero de buffers deve ser alocado em cada n para permitir o armazenamento
dos pacotes a serem retransmitidos. Evidentemente, o nmero de buffers a ser alocado vai
depender do protocolo implementado entre cada par de ns intermedirios (IMPs). Um
algoritmo do tipo envia-espera vai exigir um nmero de buffers evidentemente menor do
que um algoritmo que autorize o envio de diversos pacotes antes da retransmisso.
b) A destruio de pacotes
Um outro mecanismo que adotado para o controle de congesto o da destruio de
pacotes. Neste caso, no existe reserva prvia de buffers, de modo que, se um pacote chega
num IMP e este no dispe de buffer para o seu armazenamento, este simplesmente
destrudo (ou descartado). Se o servio oferecido do tipo datagrama, no h mais nada a
fazer; por outro lado, se este orientado conexo, o pacote dever ser armazenado em algum
n para uma possvel retransmisso. Ainda, a destruio de pacotes deve seguir uma certa
disciplina: por exemplo, destruir um pacote de reconhecimento pode no ser uma boa soluo,
uma vez que este pacote poderia permitir ao n o apagamento de um pacote de informao e,
por conseqncia, a liberao de um buffer. Uma soluo para isto a reserva, para cada linha
de chegada, de um buffer que possibilite a recepo de pacotes de reconhecimento
endereados quele n.
c) O controle de fluxo
O controle de fluxo consiste em outra tcnica de controle de congestionamento,
embora no muito eficiente nesta tarefa. O problema do controle do fluxo o fato que os
limites do trfego no podem ser estabelecidos a valores muito baixos, pois isto pode
provocar problemas de eficincia na aplicao se um pico de trfego requerido. Por outro
lado, a escolha de um limite alto de trfego pode resultar num controle medocre do
congestionamento.
79
d) outras tcnicas
Outras tcnicas de controle de congesto podem ser ainda implementadas, como por
exemplo:
o controle isartmico, baseado na existncia em cada n de um certo nmero de
fichas. O n que tiver um pacote a transmitir, deve obter uma ficha, se existir
alguma disponvel. Isto permite manter constante o nmero de pacotes em
circulao na rede;
os pacotes de estrangulamento, enviados por um n ao usurio do servio de rede,
indicando que determinadas linhas de sada esto no limite da saturao. Isto faz
com que o usurio reduza o envio de pacotes para o destino utilizando aquela linha
at que a situao retome a normalidade.
2.3.4.4.
80
a chamada virtual (virtual calls), que similar a uma chamada telefnica comum, a
qual caracterizada pelo estabelecimento de uma conexo, a troca de dados e a
liberao de conexo;
o circuito virtual permanente (permanent virtual circuits), que funciona como uma
linha especializada, disponvel a todo momento, de modo que basta aos DTEs
efetuar a transferncia dos dados (uma conexo permanente estabelecida na
inicializao).
No caso das chamadas virtuais, como mostra a figura 2.3.30, quando um DTE quer
dialogar com um outro DTE, ele deve, inicialmente, estabelecer a conexo; ele constri,
ento, um pacote CALL REQUEST enviando-o ao DCE. Em seguida, a subrede encaminha o
pacote ao DCE destinatrio que vai pass-lo ao DTE correspondente. Se a conexo pode ser
estabelecida, o DTE destinatrio vai enviar um pacote CALL ACCEPTED indicando a
aceitao da chamada.
DTE
DTE
(D ata T erm in a l
E q u ip m e n t)
DCE
DCE
DSE
(D a ta S w itch in g
E x ch an g e)
IMP (ISO )
81
DTE local
interface
DTE-DCE
interface
DTE-DCE
DTE remoto
CALL
CALL
etapa de
chamada
CALL
CALL
DADOS
DADOS
etapa de
transf. de
dados
DADOS
troca de um nmero
arbitrrio de pacotes
de dados
DADOS
CLEAR
CLEAR
etapa de
liberao
CLEAR
CLEAR
82
protocolos das camadas superiores fazer a distino entre suas mensagens de controle e suas
mensagens de dados. O campo CM sempre 0 para os pacotes de dados.
Os campos SEQNCIA e SUPERPOS. so utilizados no controle de fluxo com janela
de antecipao. O bit D indica o significado do campo SUPERPOS.: se D = 0, o
reconhecimento vai indicar que o DCE local recebeu o pacote; se D = 1, o reconhecimento vai
indicar que o DTE remoto recebeu o pacote. O campo M (More) indica a pertinncia de um
pacote a um grupo de pacotes considerado.
8 bits
GRUPO
CANAL
TIPO
TAM. END. INIC.
CM
TAM. END. RESP.
ENDEREO INICIANTE
ENDEREO RESPONDEDOR
0
TAM. FACILIDADES
FACILIDADES
DADOS USURIO
MD.
GRUPO
CANAL
SUPERPOS.
SEQUNCIA
DADOS
83
8 bits
GRUPO
CANAL
TIPO
CM
INFORMAO
ADICIONAL
Desta forma, uma estao de rede teria um endereo IP do tipo: 150.162.14.1 (host
atlas no LCMI-UFSC) ou 150.162.14.4 (host polaris, tambm no LCMI). Observe que as
duas estaes do exemplo acima esto situadas na mesma subrede. Os bytes nos exemplos
acima so separados por pontos para facilitar a converso do formato string para endereo IP.
32 bits
classe
Endereos
10 Sub-rede
110
Sub-rede
1.0.0.0 a
127 255 25
Host
128.0.0.0 a
191 255 25
Host
Sub-rede
Host
192.0.0.0 a
223 255 25
1110
224.0.0.0 a
239 255 25
11110
240.0.0.0 a
247 255 25
85
86
a prioridade, etc...
No momento do pedido de um estabelecimento de conexo, o usurio iniciante
encaminha estes parmetros nas primitivas de servio. Se a camada de Transporte julga certos
parmetros longe da realidade, ela pode sinalizar isto ao usurio iniciante, sem mesmo ter
tentado estabelecer a conexo, atravs de uma mensagem de erro que vai, tambm, indicar a
natureza do erro sinalizado. Outra possibilidade a camada de Transporte julgar que um certo
valor para um parmetro seja impossvel de oferecer, mas que um valor no muito longe
daquele poderia ser oferecido. Neste caso, ela pode modificar os valores dos parmetros
enquadrados e encaminhar o pedido de conexo mquina remota.
Ainda, se a mquina distante verifica que ela no pode oferecer determinados valores
especificados nos parmetros do pedido, ela pode modificar aqueles parmetros. Se ela
verificar que no pode atender determinados parmetros nos valores mnimos permitidos, a
conexo ser rejeitada.
2.3.5.2.
87
88
T_CONNECT
request
T_CONNECT
indication
T_CONNECT
response
T_CONNECT
confirm
T_CONNECT
request
T_CONNECT
request
T_CONNECT
indication
T_DISCONNECT
request
T_DISCONNECT
indication
(a)
(b)
T_DISCONNECT
request
T_DISCONNECT
indication
T_DISCONNECT
request
T_DISCONNECT
indication
(d)
(c)
T_DISCONNECT
request
T_DISCONNECT
indication
(e)
T_DATA
request
(f)
T_EXPEDITED_DATA
request
T_EXPEDITED_DATA
indication
T_DATA
indication
(g)
T_DISCONNECT
indication
(h)
Os protocolos de Transporte
89
Como definido pelo modelo OSI, o servio oferecido por uma camada N o resultado
da implementao de um protocolo N regendo a comunicao entre duas entidades N. Em
princpio, os protocolos de Transporte apresentam preocupaes similares dos protocolos de
Enlace, ou seja, o controle de erros, o controle de fluxo, o sequenciamento dos dados.
No entanto, algumas diferenas podem ser levantadas:
no caso da camada de Enlace, dois IMPs comunicam-se via um canal de
comunicao; a nvel de Transporte, a comunicao feita via uma subrede;
no que diz respeito ao endereamento, a nvel de Enlace, um IMP no necessita
referir-se explicitamente com qual IMP ele quer dialogar, uma vez que dois IMPs
so conectados por uma via nica (exceto no caso de redes de difuso); j, no nvel
Transporte, o endereo do destinatrio deve ser explicitamente definido;
um outro problema a questo do controle de fluxo; ao contrrio do nvel de Enlace,
onde cada conexo pode alocar um determinado nmero de buffers para o
armazenamento dos quadros, no nvel Transporte isto fica mais difcil dado o
nmero de conexes que pode estar sendo gerenciado num dado instante.
Um aspecto a ser levado em conta no momento da concepo da camada de Transporte
o servio oferecido pela camada de Rede, que pode ser classificado da seguinte maneira:
servios do tipo A, que caracteriza os servios "perfeitos", onde a frao de pacotes
perdidos, duplicados ou corrompidos desprezvel; o tipo de servio dificilmente
encontrado em redes pblicas, mas algumas redes locais so bastante prximas deste
tipo de servio;
servios do tipo B, onde a perda de pacotes tambm rara, mas a comunicao
freqentemente interrompida (servio N_RESET) devido a problemas de congesto,
de hardware ou software;
servios do tipo C, no confiveis, sendo caracterizados normalmente pelas redes a
longa distncia do tipo datagrama.
Para cada tipo de servio, de A a C, o nvel do servio de Transporte caminha do mais
simples ao mais complexo, ou seja, quanto pior o servio oferecido pela camada de Rede,
melhor (e mais complexo) dever ser o servio oferecido pela camada de Transporte.
Para permitir a definio de vrios nveis de oferecimento de servio, o modelo OSI, a
nvel da camada de Transporte, define cinco classes de servio:
90
classe 0, que so os servios mais simples, capazes de estabelecer uma conexo, mas
baseados na hiptese que o servio de Rede no gera erros de transmisso; no
existe tratamento de erros, controle de fluxo nem sequenciamento;
classe 1, corresponde classe 0, mas permite implementar a retomada de dilogo,
considerando que pode ocorrer quebra do dilogo a nvel de Rede (servio
N_RESET); ele permite a retomada da comunicao entre duas entidades de
Transporte aps a interrupo de uma conexo de Rede;
classe 2, que torna mais sofisticada a classe 0 pela introduo da possibilidade de
manuteno de diversas conexes de Transporte sobre uma nica conexo de Rede
(multiplexao);
classe 3, que agrupa os mecanismos de retomada de dilogo da classe 1 com os de
multiplexao da classe 2;
classe 4, definida para operar sobre os servios de Rede do tipo C cuja falta de
confiabilidade conhecida, devendo tratar ento os erros, perdas, duplicaes,
retomada de dilogo e todos os possveis problemas no resolvidos pela camada de
Rede.
No momento do estabelecimento de uma conexo, so as entidades pares que devem
tomar a deciso sobre qual classe de servio adotar, uma classe sendo proposta pelo iniciante
e negociada para permitir o estabelecimento da conexo.
As funes do protocolo de Transporte vo depender do ambiente no qual ele vai
operar assim como da natureza dos servios que devem ser supridos. Um mnimo de funes
deve, todavia, ser oferecido por um protocolo de Transporte, entre as quais:
o estabelecimento de conexo;
transferncia de TPDUs;
segmentao de mensagens, etc...
O termo TPDU indicado acima serve para definir a unidade de dados trocada entre
duas unidades de Transporte que a unidade de dados de protocolo de transporte (em ingls,
Transport Protocol Data Unit). Por outro lado, a unidade de dados emitida por um usurio do
servio Transporte ser referenciado como sendo uma mensagem.
Uma mensagem a ser transmitida pode ter um tamanho qualquer, a segmentao das
mensagens devendo ser assumida por esta camada. Isto significa que, se uma unidade de
dados apresenta um tamanho superior ao de um pacote, ela deve ser segmentada em tantos
pacotes quantos sejam necessrios para efetuar a sua completa emisso.
Ainda, se uma entidade de Transporte gerencia vrias conexes num dado instante, ela
deve numerar as conexes e inserir o nmero correspondente nas unidades de dados, a fim de
91
O gerenciamento de conexes
92
processo B
TSAP 6
TSAP122
NSAP
NSAP
2
1
conexo
93
94
CR (x)
CC (y, x)
CC (y, x)
CC (y,x)
REJ (y)
CC (y,x)
D (x,y)
REJ (y)
D (x,y)
(b)
(a)
(c)
Figura 2.3.5.3 - Three-Way hadshake: (a) operao normal; (b) CR duplicado; (c) CR e D
duplicados
c) A liberao da conexo
95
2.3.5.1 apresentava, em (d), (e) e (f), trs situaes tpicas da liberao de uma conexo, a
primeira situao revelando-se a mais clssica e mais freqente.
Estas trs situaes so caracterizadas pela interrupo brutal da conexo, podendo
inclusive ocorrer perda de dados que teriam sido transmitidos. Isto ilustrado na figura
2.3.5.4, no primeiro caso descrito.
O protocolo de liberao de conexo deve, ento, ser melhor elaborado a fim de evitar
este tipo de problema. Uma soluo seria a definio de um dilogo que permitisse assegurar
que ambos os usurios terminaram efetivamente a transmisso de dados. Isto, no entanto,
pode ser ineficiente, pois no evidente definir como este dilogo poderia ser conduzido,
particularmente se o transporte utiliza um servio de Rede no confivel.
T_DATA
request
T_DATA
request
T_DISCONNECT
request
T_DATA
indication
perda
dado
T_DISCONNECT
request
DR + t
DR + t
DR
DR
DC + t
DC + t
DC
DC
ACK
fim con.
ACK
fim con.
ACK
fim con.
perda
(timeout)
fim con.
(a)
(b)
96
Figura 2.3.5.5 - Liberao de conexo em trs etapas: (a) caso normal; (b) caso de perda do
reconhecimento.
d) O controle de fluxo e o armazenamento
Um problema que deve ser tratado durante a manuteno de uma conexo ativa
aquele ligado ao controle de fluxo. Este problema , de um lado, bastante similar quele
tratado pela camada de Enlace.
Por outro lado, a nvel de Transporte, o nmero de conexes existentes grande, o que
significa uma necessidade de armazenamento muito maior que no caso do nvel Enlace (que
gerencia uma nica conexo de cada vez).
Como foi visto na parte destinada camada de Enlace, certos protocolos, por questes
de eficincia, exigiam uma memorizao dos quadros nas duas extremidades da conexo. Isto
significava, tambm, a alocao de um nmero suficiente de buffers nas duas extremidades
para assegurar o armazenamento dos quadros.
No caso de Transporte, este tipo de soluo torna-se mais difcil a implementar,
necessitando de solues mais adaptadas ao problema. A soluo a implementar pode
depender fortemente do servio oferecido pela camada de Rede.
Se o servio oferecido do tipo datagrama com reconhecimento, a entidade
receptora sabe que a emissora obrigada a armazenar as unidades de dados enviadas que
ainda no foram reconhecidas. Assim, ele pode simplesmente no fazer nenhuma alocao de
buffer especfico para a conexo, todos os buffers disponveis podendo ser compartilhados por
todas as conexes existentes. Desta forma, quando uma TPDU recebida, se no existe buffer
disponvel ela simplesmente rejeitada. Isto no gera nenhum problema, uma vez que a
entidade emissora, aps um certo tempo, vai retransmitir a TPDU que no foi reconhecida.
J, no caso de um servio de rede confivel, o procedimento pode ser diferente. Num
primeiro caso, se o emissor sabe que o receptor ter sempre condies de armazenar as
TPDUs por ele emitidas, ento este no vai necessitar armazen-las (pois sabe que no haver
necessidade de retransmisso). Caso contrrio, ele vai ter de armazen-las de todo modo, uma
vez que os reconhecimentos da camada de Rede significam apenas que o pacote foi recebido
mas no que a TPDU foi aceita.
Se o armazenamento de TPDUs feito do lado do receptor, o problema a ser resolvido
como definir o tamanho dos buffers de armazenamento. Se as diversas TPDUs so de
tamanhos aproximadamente equivalentes, a soluo alocar um determinado nmero de
buffers de igual tamanho, como mostra a figura 2.3.5.6(a), onde cada buffer vai conter uma
TPDU. Se os tamanhos da TPDUs variam muito, esta soluo pode no ser a melhor, mesmo
se o tamanho dos buffers estabelecido ao tamanho mximo das TPDUs. Neste caso, alocar
um buffer para armazenar uma TPDU de tamanho reduzido desperdiar memria. Assim,
97
uma outra soluo a alocao de buffers de tamanho varivel, como mostra a figura 2.3.5.6
(b), onde o desperdcio menor, ou, ainda, alocar um nico buffer circular, como mostrado
em 2.3.5.6(c).
Estas duas ltimas solues so eficientes no caso de conexes com grande trfego de
TPDUs. Caso contrrio, podem no ser as melhores.
TPD U 1
TPD U 2
TPD U 3
espao disponvel
(a )
(b)
(c)
Figura 2.3.5.6 - As diferentes solues de armazenamento: (a) buffers de tamanhos iguais; (b)
buffers de tamanhos variveis; (c) buffer circular.
O trfego importante tambm na definio da melhor soluo no que diz respeito
localizao do armazenamento no emissor ou no receptor. No caso de mltiplas conexes,
mas com pouco trfego em cada uma delas (terminais interativos, por exemplo), melhor a
implementao de um mecanismo de alocao dinmica de buffers nas duas extremidades.
Como o emissor no tem certeza de que o receptor poder alocar o buffer, ele mantm com
ele uma cpia da TPDU at receber o reconhecimento. Por outro lado, no caso de trfegos
relativamente altos, melhor ter uma alocao esttica de buffers associados conexo na
extremidade receptora a fim de permitir a transmisso numa taxa mxima.
Outro ponto importante a ser coberto pela camada de Transporte, a capacidade de um
usurio (emissor) alocar distncia (no receptor) os buffers de maneira dinmica, os buffers
podendo ser alocados para cada conexo ou para um conjunto de conexes existentes entre
dois usurios.
e) Multiplexao e Splitting
98
num primeiro tempo, no caso de uma rede utilizando circuitos virtuais, cada
conexo estabelecida vai utilizar-se de recursos presentes nos IMPs durante toda a
sua durao; assim, pode ser interessante, para otimizar a utilizao dos recursos de
rede (e, evidentemente, o custo de uma comunicao!), associar diversas conexes
de Transporte a uma mesma conexo de Rede, como mostrado na figura 2.3.5.7(a),
onde 4 conexes de Transporte so multiplexadas em uma de Rede a
multiplexao para cima;
no caso de uma aplicao onde o usurio envia uma quantidade relativamente
grande de mensagens, dependendo do protocolo implementado a nvel de Rede, uma
nica conexo pode ser insuficiente para suportar a conexo de Transporte; assim, a
camada de Transporte pode decidir efetuar a multiplexao para baixo, ou Splitting,
onde uma conexo de Transporte pode ser mapeada em vrias conexes de Rede,
como mostrado na figura 2.3.5.7(b).
CAMADAS
TSAPs
NSAPs
LSAPs
IMP
IMP
(a)
(b)
Uma vez que durante a operao de uma conexo, incidentes podem ocorrer, a camada
de Transporte deve tratar tambm deste problema. No caso da camada de Rede, as primitivas
N_RESET, foram definidas para o tratamento de incidentes.
As entidades de Transporte, quando da ocorrncia de um incidente, devem dialogar
para trocar informaes sobre quais unidades de dados teriam sido recebidas ou no.
O problema maior ocorre, porm, se a pane ocorre num dos sistemas envolvidos na
comunicao. Aps a retomada da conexo, todas as informaes so reinicializadas de modo
que o usurio acaba perdendo a informao de qual era o seu estado antes do incidente.
Uma forma de recuperao do estado enviar uma unidade de dados a todos os outros
usurios a fim de obter as informaes sobre todas as conexes existentes. O emissor pode
estar em dois estados: unidades espera de reconhecimento ou no. Assim, o emissor pode
99
decidir a retransmisso das unidades. Esta soluo, porm, no assim to simples, uma vez
que a recepo do reconhecimento pode no garantir o armazenamento da unidade
correspondente se, por exemplo, a pane ocorreu imediatamente aps o envio do
reconhecimento, quando a unidade recebida no tinha ainda sido armazenada. Neste caso, o
emissor poderia retransmitir aquelas que, por ventura, no tivessem sido recebidas no lado do
receptor.
Por outro lado, se a unidade escrita antes do envio do reconhecimento, isto pode
causar o problema inverso, o que vai provocar uma duplicao de TPDUs.
2.3.5.5.
a) Os protocolos OSI
Como j foi dito, o protocolo OSI organizado em 5 classes, onde cada uma delas
permite cobrir uma classe de confiabilidade da camada de Rede. O protocolo de Transporte
OSI baseado na definio de 10 TPDUs, estas compostas de quatro partes:
um campo de 1 byte, denominado LI (Length Indicator), indicando o tamanho dos
cabealhos fixos e variveis;
uma parte fixa do cabealho, cujo tamanho vai depender da TPDU considerada;
uma parte varivel do cabealho, cujo tamanho vai depender dos parmetros
definidos;
dados do usurio.
A figura 2.3.5.8 apresenta os 10 tipos de TPDUs do modelo OSI. As quatro primeiras
TPDUs, CR, CC, DR e DC (CONNECTION REQUEST, CONNECTION CONFIRM,
DISCONNECT REQUEST e DISCONNECTION CONFIRM) correspondem aos pacotes
CALL REQUEST, CALL ACCEPTED, CLEAR REQUEST e CLEAR CONFIRM definidos no
protocolo X.25.
Uma entidade de Transporte, quando deseja estabelecer uma conexo, envia uma
TPDU CR e dever receber uma CC. No momento da liberao da conexo, as TPDUs DR e
DC sero trocadas entre duas entidades.
As TPDUs DT (DATA) e ED (EXPEDITED DATA) so utilizadas para transferir,
respectivamente, dados normais e dados expressos. Os reconhecimentos relativos a estas duas
TPDUs sero, respectivamente, AK (DATA ACKNOWLEDGEMENT) e EA (EXPEDITED
DATA ACKNOWLEDGEMENT).
Finalmente, as TPDUs RJ (REJECT) e ER (ERROR) so utilizadas para o tratamento
de erros.
100
Como se pode ver na figura, todas as TPDUs so compostas do campo LI, j descrito.
O byte seguinte utilizado, particularmente no protocolo de classe 4, para implementar um
mecanismo de crdito, utilizado para controlar o trfego de unidades de dados, substituindo o
mecanismo com janela de antecipao.
1
CR
LI
1110 CDT
Ref. Origem
Classe
P. Var DADOS
CC
LI
1101 CDT
Ref. Destino
Ref. Origem
Classe
P. Var DADOS
DR
LI
1000 0000
Ref. Destino
Ref. Origem
Razo
P. Var DADOS
DC
LI
1100 0000
Ref. Destino
Ref. Origem
P. Var
DT
LI
1111 0000
Ref. Destino
TPDU N
DADOS
ED
LI
0001 0000
Ref. Destino
TPDU N
P. Var
AK
LI
0110 CDT
Ref. Destino
TPDU esperada
P. Var
EA
LI
1110 CDT
Ref. Destino
TPDU esperada
P. Var
RJ
LI
0101 CDT
Ref. Destino
TPDU esperada
ER
LI
0111 0000
Ref. Destino
Causa Rejeio
0 0
DADOS
P. Var
101
1
01000000 P. Var DADOS
b) O protocolo TCP
O protocolo TCP (Transmission Control Protocol) foi definido como resultado dos
trabalhos realizados a nvel da rede americana ARPANET, para poder permitir a incluso de
redes locais cujo servio de Rede fosse menos confivel do que o da prpria ARPANET.
Associado a TCP, foi definido tambm um novo protocolo de Rede, o IP (Internet
Protocol), sendo que hoje, o par TCP/IP bastante utilizado na interconexo de computadores
(padro UNIX e INTERNET).
Uma entidade de Transporte TCP aceita mensagens de tamanho varivel,
fragmentando-as em unidade de tamanho inferior ou igual a 64 Kbytes, estas unidades sendo
102
PORTA DESTINO
NMERO SEQUNCIA
RECONHECIMENTO
TAMANHO
CABEALHO
U
R
G
A
C
K
E
O
M
R
S
T
S
Y
N
F
I
N
JANELA
APONTADOR PRIORIDADE
CONTROLE ERRO
OPES
DADOS
103
104
close (conexo)
send (dados)
receive (dados)
status (conexo)
c) Interfaces para Programas de Aplicao - APIs
105
A principal funo desta camada oferecer aos seus usurios meios para o
estabelecimento das conexes, denominadas sesses, de modo que estes possam trocar dados.
Uma sesso pode ser utilizada para permitir a conexo distncia a um computador, por
exemplo, atravs de um terminal, para uma transferncia de arquivo, para o carregamento de
programas distncia, etc.
Segundo o modelo OSI, os usurios dos servios de Sesso so as entidades de
Apresentao, a posio desta camada estando ilustrada na figura 2.3.43.
106
APRESENTAO
SSAP
ENTIDADE
DE SESSO
servios oferecidos
camada de sesso
TSAP
TRANSPORTE
APRESENTAO
SSAP
SPDUs
ENTIDADE
DE SESSO
5
4
protocolo de
sesso
TSAP
TRANSPORTE
1a3
Sesso
T ra n s p o rte
(a )
T ra n s p o rte
(b )
Sesso
T ra n s p o rte
(c )
107
Da mesma forma como foi visto para camadas inferiores, o dilogo via esta camada
caracterizado pelas trs etapas a seguir: estabelecimento de sesso, transferncia de dados e
liberao da sesso.
As primitivas de estabelecimento e liberao de sesso oferecidas camada de
Apresentao so similares quelas oferecidas prpria camada de Sesso pelo Transporte.
Esta similaridade ocorre a tal ponto que, em muitos casos, a recepo de uma primitiva de
servio da camada de Apresentao reflete-se imediatamente no envio de uma primitiva de
servio equivalente da camada de Transporte. Um exemplo disto a primitiva de
estabelecimento de Sesso, S_CONNECT.request, que refletida no envio de uma primitiva
T_CONNECT.request.
Na fase de estabelecimento de uma conexo, da mesma forma que na camada de
Transporte, ocorre a negociao, entre as duas entidades envolvidas (de Apresentao) sobre
que parmetros vo definir a comunicao. Dentre estes parmetros, encontram-se parmetros
j conhecidos de outros nveis do modelo OSI (por exemplo, a necessidade de transferncia de
dados expressos) e tambm parmetros especficos camada de Sesso (por exemplo, na
abertura de uma sesso para troca de informaes via correio eletrnico, um parmetro pode
ser qual usurio vai tomar a iniciativa do dilogo).
Apesar das semelhanas j levantadas, pode-se destacar tambm algumas diferenas
entre uma sesso e uma conexo de Transporte, essas diferenas estando particularmente
associadas ao procedimento de liberao das conexes. No caso da camada de Transporte, a
primitiva T_DISCONNECT.request , na forma adotada no modelo OSI, causa a terminao
abrupta da conexo, podendo ocorrer inclusive perda dos dados ainda em trnsito (este
problema foi levantado quando da apresentao da camada de Transporte e se aplica, por
exemplo, ao protocolo TP4 da ISO). J, no caso das sesses, a primitiva responsvel da
liberao S_RELEASE.request que permite terminar, de maneira ordenada a conexo, sem
ocorrncia de perda dos dados (liberao negociada). possvel, no entanto, em caso de
necessidade, promover uma liberao abrupta da sesso, isto, graas utilizao da primitiva
S_ABORT.request. A diferena entre as duas formas de liberao de uma conexo mostrada
na figura 2.3.45. Em 2.3.45(a) apresentada a liberao abrupta de uma conexo de
Transporte; em 2.3.45(b), apresentada a liberao negociada de uma sesso.
Como se pode ver em 2.3.45(b), ao contrrio dos servios de liberao de conexo
apresentados at o momento, o servio de liberao negociada S_RELEASE um servio
confirmado, caracterizado pelas primitivas request, indication, response e confirm.
Como mostra a figura, mesmo aps ter emitido o pedido de liberao, a entidade
usuria pode continuar a receber primitivas de servio de indicao de transferncia de dados
(no caso, S_DATA.indication), sendo que a desconexo s ser efetivada aps a recepo da
primitiva S_RELEASE.confirm.
108
perda
dado
T_DISCONNECT
request
T_DISCONNECT
indication
(a)
S_RELEASE
request
S_RELEASE
indication
S_DATA
indication
S_RELEASE
response
S_RELEASE
confirm
(b)
A gesto do dilogo
Segundo o modelo OSI, todas as conexes estabelecidas so, a princpio, do tipo full
duplex (ou seja, bidirecionais simultneas, conforma mostrado na figura 2.3.46(a)). Por outro
lado, existem muitas aplicaes nas quais a possibilidade de operao em half duplex pode ser
mais interessante. Este servio implementado a nvel da camada de Sesso graas
definio de uma ficha de dados (data token), como ilustrado na figura 2.3.46(b). A
comunicao em half duplex uma opo negociada no momento do estabelecimento de uma
sesso. Se esta opo adotada, dever ser definido tambm qual dos usurios envolvidos no
dilogo poder tomar a iniciativa (possuidor da ficha). Quando este usurio terminar a sua
transmisso, ele pode ceder a ficha ao usurio par para que ele possa efetuar a sua
transmisso. A passagem de ficha de um usurio a outro implementada atravs da primitiva
S_TOKEN_GIVE.
109
S_DATA
request
S_DATA
indication
S_DATA
request
S_DATA
indication
S_DATA
request
S_DATA
indication
S_DATA
request
S_DATA
request
S_TOKEN_GIVE
request
S_DATA
indication
S_DATA
indication
S_TOKEN_GIVE
indication
S_DATA
indication
(a)
S_DATA
request
(b)
Figura 2.3.46 - (a) comunicao full duplex; (b) comunicao half duplex com ficha.
2.3.6.4.
A sincronizao
SESSO
4 5
6
ponto de sincronizao
(a)
SESSO
DILOGO
ponto de sincronizao
mnimo
ponto de sincronizao
mximo
(b)
Figura 2.3.47 - (a) Pontos de sincronizao; (b) Pontos de sincronizao mximos e mnimos.
Uma diferena fundamental entre os pontos mximos e mnimos reside na capacidade
de resincronizao. No caso de um ponto de sincronizao mximo, aps uma pane,
possvel resincronizar, no mximo, de um ponto de sincronizao mximo para trs. A partir
deste ponto, impossvel recuperar informao. Isto ocorre porque um ponto mximo visto
como uma fronteira de proteo, cuja informao anterior garantida ter sido recebida, o que
111
significa que ela pode ser apagada da extremidade emissora. Isto j no ocorre no caso dos
pontos de sincronizao mnimos.
Alm disso, pelo fato de que os pontos de sincronizao mximos so tidos como
fronteiras de proteo da informao, estes devem ser explicitamente reconhecidos pelo
receptor, o que no necessrio no caso dos pontos de sincronizao mnimos.
2.3.6.5.
Gerenciamento de atividades
ATIVIDADE
arquivo 2
arquivo 1
incio atividade
fim atividade
112
transf. arquivo
1 parte
transf. arquivo
2 parte
consulta
anurio
1 incio atividade 1
fim atividade 2
interrupo atividade 1
retomada atividade 1
incio atividade 2
fim atividade 1
113
O quadro a seguir apresenta a lista das primitivas de servio oferecidas pela camada de
Sesso, indicando as classes de primitivas compondo cada servio (R - request, I - indication,
Rs - response e C - confirm).
So 58 primitivas organizadas em 7 grupos: estabelecimento de conexo, liberao de
conexo, transferncia de dados, gerenciamento de fichas, sincronizao, gerenciamento de
atividades e relatrio de anomalias.
Os dois primeiros grupos so relacionados, respectivamente, inicializao e trmino
das sesses. As primitivas S_CONNECT, conduzem, em seus parmetros, informaes tais
como: SSAPs dos interlocutores, qualidade do servio, nmeros iniciais dos pontos de
sincronizao, etc.
J os servios de liberao de sesso podem ser de trs tipos: o primeiro, caracterizado
pela primitivas S_RELEASE, especificando um servio confirmado de trmino negociado de
sesso (sem perda de dados); os dois outros, para e liberao abrupta de sesso (com eventual
perda de dados), caracterizados pelas primitivas S_U_ABORT e S_P_ABORT, indicando,
respectivamente, terminao de iniciativa do usurio (U - user) e do fornecedor do servio (P
- provider).
O terceiro grupo caracterizado pelas quatro classes de primitivas para a transferncia
de dados (S_DATA, S_EXPEDITED_DATA, S_TYPED_DATA e S_CAPABILITY_DATA)
cada uma para um dos quatro tipos de dados (normais, urgentes, tipados e de capacidade). Os
dados normais e urgentes tendo sido discutidos em outras oportunidades, cabe aqui uma
apresentao dos dois outros tipos de dados.
Os dados tipados so similares aos dados normais do ponto de vista da transferncia, a
diferena fundamental sendo a liberdade de transmisso sem a necessidade de posse da ficha
de dados. Este tipo de dados so utilizados, principalmente, para a troca de mensagens de
controle entre os dois usurios.
Os dados de capacidade so utilizados para a transferncia de mensagens de controle
da prpria camada de Sesso. O servio S_CAPABILITY_DATA, como se pode ver na tabela,
um servio confirmado, fornecendo um reconhecimento dos dados de capacidade. Ainda, ao
contrrio dos dados tipados, estes dados s podem ser transmitidos se a entidade possui a
ficha de transferncia de dados.
O quarto grupo de servios relacionado ao gerenciamento das fichas, que so em
nmero de 4: as fichas de dados (para a transferncia em half-duplex), as fichas de liberao
(para o incio de uma liberao negociada), as fichas de sincronizao mnima (para a insero
de pontos de sincronizao mnimos) e as fichas de sincronizao mxima e atividade (para o
114
R I Rs C Funo
ORIENTADO CONEXO
estabelecimento de conexo
S_DATA
S_EXPEDITED_DATA
S_TYPED_DATA
S_CAPABILITY_DATA
S_TOKEN_GIVE
S_TOKEN_PLEASE
S_CONTROL_GIVE
S_SYNC_MAJOR
S_SYNC_MINOR
S_RESYNCHRONIZE
S_ACTIVITY_START
S_ACTIVITY_END
S_ACTIVITY_DISCARD
S_ACTIVITY_INTERRUPT
S_ACTIVITY_RESUME
S_U_EXCEPTION_REPORT
S_P_EXCEPTION_REPORT
S_UNITDATA
SEM CONEXO
115
116
SI
LI
PARMETROS
(b)
PI
LI
PV
(c)
PGI
LI
PI
LI
PV
(d)
PGI
LI
PI
LI
PV
DADOS
PI
LI
PV
Figura 2.3.50 - Formatos das SPDUs: (a) Formato geral da SPDU; (b) a (d) Formatos do
campo parmetros.
Quando uma SPDU gerada na camada de Sesso, esta enviada no forma de uma
mensagem camada de Transporte. possvel, na camada de Transporte, enviar um conjunto
de SPDUs a nvel de uma mesma mensagem, o que permite otimizar a quantidade de
primitivas de Transporte utilizadas a este mecanismo d-se o nome de concatenao.
Na extremidade de recepo, a entidade de Sesso deve efetuar o processo inverso,
quando da recepo de alguma primitiva de servio de Transporte, recuperando as diversas
SPDUs da mensagem recebida. A este mecanismo, d-se o nome de segmentao.
2.3.7. A CAMADA DE APRESENTAO
a) A converso de dados
A grande diversidade de equipamentos existentes, de diferentes modelos e,
principalmente, fabricantes distintos gerou uma srie de opes no que diz respeito forma
como os dados poderiam ser representados a nvel de cada computador.
Assim nasceram os inmeros cdigos de representao de dados, onde os mais
conhecidos so o cdigo ASCII e EBCDIC.
Estas diferenas, que no oferecem nenhum inconveniente quando as diversas
mquinas esto operando de maneira isolada, podem representar um verdadeiro quebra
cabeas para um engenheiro de sistemas quando duas destas mquinas devem trocar
informaes.
Se a rede de computadores envolvesse somente computadores de um mesmo tipo, no
haveria maiores problemas de representao de dados, exceto que se utilizassem linguagens
diferentes para os programas aplicativos. No entanto, as redes de computadores devem
suportar a interconexo de equipamentos heterogneos.
Infelizmente, a forma de representao dos dados no igual em todos os
computadores (inclusive no que se refere aos processadores fabricados pela Motorola, Intel,
IBM, etc). Por exemplo, dados na forma alfanumrica seguem em geral uma das duas formas
mais usuais de representao j citadas: computadores de grande porte usam cdigo EBCDIC
enquanto PCs e Workstations usam cdigo ASCII. Valores numricos podem ser
representados em forma binria (complemento 1, complemento 2 ou sinal-magnitude), em
forma alfanumrica (cdigo ASCII ou EBCDIC), em forma BCD (Binary Coded Decimal),
etc. Os exemplos seguintes ilustram esta situao:
nmeros inteiros podem ser codificados de forma binria como:
complemento 1: valor negativo computado por simples inverso de bits
+127 = 0111 1111 (msb = 0 => +)
-127 = 1000 0000 (msb = 1 => -)
complemento 2: valor negativo computado por inverso de bits e somando 1 ao
resultado
+127 = 0111 1111
-127 = 1000 0001 (que seria -126 em complemento 1)
118
119
A exemplo do que ocorreu com a sintaxe abstrata, a ISO definiu sua prpria sintaxe
concreta sob o padro ASN.1 BER (Basic Encoding Rules). O padro ASN.1 BER adota uma
abordagem denominada TLV, com 3 campos:
Tag: rtulo do tipo de dado
Length: nmero de bytes do dado
Value: valor efetivo do dado em sintaxe concreta (padro ISO 8825)
Finalmente, a Sintaxe de Transferncia a sintaxe concreta adotada para realizar uma
dada transferncia de informaes entre duas maquinas. Assume-se que, no emissor, a camada
de apresentao deve converter os dados a enviar da sintaxe concreta local para a sintaxe de
transferncia, enquanto, no receptor, os dados recebidos so convertidos da sintaxe de
transferncia para a sintaxe concreta local. Por exemplo: dados convertidos da sintaxe abstrata
PASCAL e sintaxe concreta X para ASN.1 BER na mquina A, so transferidos para a
mquina B e convertidos de ASN.1 BER para sintaxe abstrata C e sintaxe concreta Y.
Uma possvel sintaxe de transferncia a prpria ASN.1 BER, que foi concebida pela
ISO com a inteno de exercer este papel.
Uma dada combinao de sintaxe abstrata e sintaxe de transferncia constitui um
Contexto de Apresentao. No exemplo da figura 2.3.7.1 temos duas mquinas que trocam
dados em 3 contextos de apresentao diferentes.
Observe que a sintaxe de transferncia adotada sempre a ASN.1 BER. Note tambm
que uma mesma estao de rede pode fazer uso de diferentes sintaxes abstratas locais em
diferentes processos de aplicao (no exemplo da figura 2.3.7.1 so as sintaxes abstratas
fornecidas pelas linguagens C e FORTRAN) , de forma que podemos ter mais de um contexto
de apresentao para cada mquina.
user 1
user 1
funo 1
funo 2
funo 1
funo 2
sint. abs. C
sint. abs.
FORTRAN
sint. abs. C
sint. abs.
PASCAL
contexto 1
contexto 2
contexto 1
contexto 3
entidade de apresentao A
entidade de apresentao B
Aplicao
SSDU
exemplo, queremos representar nmeros inteiros em 32 bits, uma forma de faz-lo atravs
de 4 bytes.
Por outro lado, se 95% dos nmeros inteiros a transmitir esto na faixa de 0 a 250,
pode ser mais interessante representa-los por um nico byte, utilizando o valor 255 para
indicar quando um nmero tiver de ser representado verdadeiramente em 32 bits. Neste caso,
seriam necessrio 5 bytes (e no mais 4) para representar o nmero. Entretanto, o ganho em
termos de reduo de informao seria altamente compensador, considerando que a quase
totalidade da informao poderia ser representada unicamente em 1 byte.
As tcnicas de compresso de dados no so unicamente teis neste caso. Um outro
aspecto de aplicao importante destas tcnicas a economia de espao em disco e fitas
magnticas no caso do armazenamento de arquivos. Algumas destas tcnicas sero estudadas
mais adiante.
c) A confidencialidade dos dados
O aparecimento das redes de comunicao para a interconexo de computadores vem
introduzindo uma srie de benefcios nos mais diversos setores da sociedade. Entretanto, as
redes de computadores trouxeram tambm preocupaes que no existiam antes do seu
aparecimento. Um exemplo disto o problema da segurana dos dados armazenados num
computador.
Quando no existiam as redes, a nica forma de se ter acessos a dados confidenciais de
uma empresa, laboratrio, universidade, etc, seria entrar no prdio onde se localizava o
computador e copia-los num disco ou fita magntica ou tirar uma listagem. Dependendo da
importncia das informaes armazenadas (uma base militar ou o computador da Brasil Jet), o
prdio poderia ser vigiado dia e noite com direito de acesso a apenas as pessoas de confiana.
Com as redes de comunicao, o acesso aos dados num computador fica bastante
facilitado, apesar dos esforos de bloqueio, como por exemplo as senhas (passwords). Que o
digam os computadores do Pentgono, que j foram visitados por adolescentes em
microcomputadores.
Assim, uma srie de cuidados devem ser tomados no que diz respeito segurana ou
confidencialidade das informaes armazenadas num computador e mesmo daquelas trocadas
entre computadores, dentre elas:
122
2.3.7.2.
Primitiva
P_CONNECT
P_RELEASE
P_U_ABORT
P_P_ABORT
P_DATA
P_EXPEDITED_DATA
P_TYPED_DATA
P_CAPABILITY_DATA
P_TOKEN_GIVE
P_TOKEN_PLEASE
P_CONTROL_GIVE
R I Rs C Funo
ORIENTADO CONEXO
estabelecimento de conexo
123
P_SYNC_MAJOR
P_SYNC_MINOR
P_RESYNCHRONIZE
P_ACTIVITY_START
P_ACTIVITY_END
P_ACTIVITY_DISCARD
P_ACTIVITY_INTERRUPT
P_ACTIVITY_RESUME
P_U_EXCEPTION_REPORT
P_P_EXCEPTION_REPORT
P_ALTER_CONTEXT
P_UNITDATA
idem (provider)
alterao de contexto
SEM CONEXO
transferncia de dados
A notao ASN.1
ASN.1 (Abstract Syntax Notation One) uma sintaxe abstrata que foi definida na ISO
para solucionar a problemtica da representao dos dados. Isto foi motivado pela necessidade
da existncia de uma forma de representao de dados que fosse suficientemente flexvel e
genrica para que pudesse ser utilizada pelas mais diversas aplicaes existentes.
ASN.1 definida pela norma ISO 8824, que apresenta as estruturas de dados previstas
na sintaxe; outra norma, ISO 8825, define a sintaxe de transferncia, ou seja, a forma como as
estruturas de dados ASN.1 podem ser mapeadas em binrio.
As estruturas de dados ASN.1 foram definidas para prever as complexas estruturas de
dados que poderiam ser manipuladas a nvel de uma dada aplicao. Um registro ou uma
estrutura de dados utilizada numa aplicao bancria pode conter os mais diversos campos,
como por exemplo o nome, o endereo, os nmeros de conta, as taxas de cmbio do dia, a
data e hora, etc. Em outras aplicaes, pode existir a necessidade de troca de estruturas de
dados as mais diversas possveis, sendo que cada aplicao pode ter as suas prprias estruturas
de dados. Ainda, algumas estruturas de dados podem ser tpicas de certas aplicaes, outras
especficas a uma determinada empresa ou instituio.
124
125
Significado
inteiro de valor arbitrrio
verdadeiro / falso
BIT STRING
OCTET STRING
lista de bits
lista de bytes
ANY
NULL
OBJECT IDENTIFIER
nome de um objeto
Como foi dito, estes tipos podem ser combinados para a definio de estruturas de
dados mais complexas, isto pela utilizao de construtores de ASN.1, onde os mais utilizados
so:
Construtor
SEQUENCE
SEQUENCE OF
Significado
seqncia de elementos de diversos tipos
seqncia de elementos de um mesmo tipo
SET
SET OF
CHOICE
126
A compresso de dados
127
128
No caso das letras, como o exemplo citado acima, isto vai significar na construo de
26 tabelas, cada uma contendo as probabilidades das letras seguindo uma letra do alfabeto. Se
uma forte correlao existir entre os smbolos, a taxa de compresso vai ser muito melhor que
aquela obtida com a utilizao da tcnica apresentada anteriormente.
Uma desvantagem desta tcnica a grande quantidade de tabelas requerida para a
definio das probabilidades relativas. No caso de um alfabeto composto de k smbolos, sero
necessrias k2 entradas em tabela.
Um mtodo possvel de compresso a organizao dos smbolos em tipos, por
exemplo, no caso de letras e nmeros, pode-se classific-los em maisculas, minsculas,
caracteres numricos e caracteres especiais. Assim, quatro cdigos podem ser associados aos
quatro tipos e 28 cdigos vo permitir codificar os caracteres. A idia de base desta tcnica
que, a princpio, todo smbolo aps uma letra minscula tem fortes possibilidades de ser
tambm uma letra minscula, todo smbolo seguindo um caracter numrico tambm um
caracter numrico, etc. Quando se quer chavear de um tipo de smbolo a outro, basta inserir o
cdigo associado ao novo tipo.
Uma tcnica similar pode ser utilizada para codificar longas seqncias de dados
binrios contendo grandes quantidades de zeros. Cada smbolo de k bits indica quantos zeros
separam dois 1s consecutivos. Assim, para tratar grandes faixas de zeros, o smbolo 1 indica
que uma faixa de 2k - 1 mais o valor do smbolo seguinte separa os dois uns. Por exemplo,
para a seqncia
000100000100000010000000000000010000001000100000001100000101
que contm as faixas de zeros de comprimentos: 3,5,6,14,6,3,7,0,1,5 e 1, pode-se utilizar a
codificao seguinte:
011 101 110 111 111 000 110 011 111 000 000 001 101 001
onde a faixa de 14 zeros codificada por 111 111 000 (ou seja, 7 + 7 + 0 = 14). Neste
caso, a compresso permitiu reduzir em 34% o tamanho da informao.
Uma aplicao desta tcnica pode ser feita, com algumas modificaes, na transmisso
digital de imagens de televiso colorida. O sinal constitudos de uma seqncia de quadros,
de 25 a 30 por segundo, cada um contendo um vetor retangular de pontos (pixels) da imagem.
Uma imagem de televiso pode ser composta de 1000 linhas de 600 pixels, cada pixel sendo
codificado em 16 bits, 15 bits para a cor (com 32 nveis para cada cor) e 1 bit para informao
de controle (enquadramento vertical ou horizontal).
Uma codificao direta desta informao necessitaria 600000 pixels por quadro, ou
seja, uma taxa de transmisso de 240 a 288 Mbit/s. Com uma codificao binria, seria
necessrio dispor de uma faixa de freqncia de quase 600 MHz. Uma vez que a transmisso
129
analgica ocupa faixas de freqncia de apenas 6 MHz, a transmisso digital, sem compresso
de imagem, poderia tornar-se invivel.
A soluo est no fato que, em transmisso de imagens, existe uma forte probabilidade
de que muitos quadros consecutivos sejam idnticos queles que os precederam. Desta forma,
basta providenciar, a nvel dos televisores, uma memria que possa armazenar o ltimo
quadro recebido e, assim, transmitir apenas as diferenas entre o quadro anterior e o atual.
2.3.7.5.
A criptografia
130
espio passivo
espio ativo
ESPIO
Processo de
codificao
Processo de
decodificao
criptograma
chave de
codificao (k)
chave de
decodificao
Nestes mtodos, cada letra ou grupo de letras literalmente substitudo por outra letra
ou outro grupo de letras. A tcnica mais antiga de criptagem atribuda a Jlio Csar, que
definiu uma tcnica onde cada letra do alfabeto seria substituda por uma letra que estivesse 3
passos sua frente ou seja, a seria codificada em D, b seria codificada em E, c seria
codificada em F, etc, e isto de maneira rotativa, de modo que z seria codificado em C. Desta
forma, a palavra REDE ficaria UHGH, portanto, irreconhecvel (exceto, talvez, para um
homem das cavernas...).
Esta tcnica poderia ainda ser generalizada, pelo deslocamento do alfabeto de k passos
ao invs de 3. A esta tcnica generalizada, d-se o nome de permutao circular.
Uma outra tcnica, a substituio monoalfabtica, uma extenso permutao
circular, mas, desta vez, as letras podem ser substitudas por qualquer outra. Por exemplo, se o
alfabeto
abcdefghijklmnopqrstuvwxyz
substitudo por
N B V C X W M L K J H G F D S Q P O I U Y T R E Z A,
a palavra REDE torna-se, agora, OXCX. Com esta tcnica, existem 26! (26 fatorial =
26
4.10 ) chaves possveis. Mesmo que o espio conhea a tcnica, como ele no conhece a
chave, ele teria dificuldade para descobrir o significado do criptograma. No entanto, esta
131
Texto original:
TRANSFERIR UM MILHAO PARA A
CONTA DE COLLOR
Texto codificado
SUAADONRHAALRRIANOTEMPOC
FMOCERAILRTL
132
RSA (Rivest, Shamir & Adleman): mtodo assimtrico desenvolvido pelo MIT,
onde as chaves de codificao e decodificao (diferentes) so obtidas a partir de
operaes com nmeros primos grandes. A codificao feita sobre o valor binrio
de cada smbolo.
PEM (Privacy Enhanced Mail): permite realizar a autenticao da origem de uma
mensagem recebida via mail na Internet. Trata-se aqui de um sistema de Assinatura
Digital: o objetivo no impedir a decodificao, mas atestar a identidade do
emissor (autenticao). O emissor codifica uma parte da mensagem (assinatura)
usando uma chave somente conhecida por ele. A chave de decodificao (diferente)
pblica. O receptor decodifica a assinatura e verifica a autenticidade da mesma.
2.3.7.6.
O protocolo de apresentao
Significado
Pedido conexo de Apresentao
Aceitao da conexo
Recusa da conexo
Desconexo anormal (iniciativa do usurio)
Desconexo anormal (iniciativa fornecedor)
Transferncia de dados normais
Transferncia de dados urgentes
Transferncia de dados tipados
Transferncia de dados de capacidade
Confirmao de transferncia de capacidade
AC
ACA
RS
RSA
2.3.7.7.
Rs
134
136
ASO A
ASE2
CF
AE = ASO 1
Camada de
Aplicao
AP
AE = ASO 2
Figura 2.3.8.1 - Conceitos da camada de aplicao
b) Elementos da camada de aplicao
Na prtica, a camada de aplicao composta de uma srie de entidades de aplicao
(Application Entities, AE) , conhecidas como elementos de servio de aplicao (Application
Service Elements, ASE) e elementos de usurio (User Elements, UE).
Um UE fornece uma interface entre o usurio e os diversos servios de processamento
de informao da camada de aplicao. O UE pode ser visto como uma biblioteca de
procedures e functions a ser linkada com os processos de aplicao (APs) e no costuma ser
padronizado. Cada AE ter usualmente uma nica UE.
Por outro lado, normalmente uma AE ser composta de diversos ASEs. Existem ASEs
que oferecem servios gerais, que propiciam a transferncia de informaes entre APs
independentemente da natureza da aplicao (ex: definio de contexto, sincronizao entre
APs, etc). Tais ASEs de uso geral so denominados Common Application Service Elements
(CASE). Exemplos de servios providos pelos CASEs atualmente disponveis so:
servios de estabelecimento de conexes entre APs (ACSE = Association Control
Service Element);
servios de disparo de operaes em ASEs remotos (ROSE = Remote Operation
Service Element);
servios de implementao de aes atmicas (CCR = Commitment, Concurrency
and Recovery).
Outros ASEs oferecem servios especficos para determinadas aplicaes em
particular e por isso so denominados Specific Application Service Elements (SASE).
Exemplos de servios providos pelos SASEs atualmente disponveis so:
servios de terminal virtual (VTS = Virtual Terminal Services);
137
AP
UE
cam ada 7
SASE 1
AE
SASE 2
SASE 3
CASE
acesso cam ada 6
Significado
138
A_ASSOCIATE
A_RELEASE
A_U_ABORT
A_P_ABORT
Estabelecimento de conexo
Liberao negociada de conexo
Liberao abrupta de conexo (usurio)
Liberao abrupta de conexo (provedor)
uma transferencia de uma quantia X para seu amigo Jos, que cliente do banco B. Para
completar a transao, algumas aes tem que ser executadas: o computador do banco A deve
descontar a quantia X da conta de Joo e enviar uma mensagem para o banco B; quando
receber a mensagem do banco A, o computador do banco B deve depositar a quantia X na
conta de Jos e enviar uma mensagem de acknowledge ao banco A, indicando que a operao
foi completada. At ai tudo bem, mas suponha que um dos bancos faa a sua parte do servio,
mas o outro no, devido, digamos, a uma falha local ou a um problema na rede. Se, por
exemplo, o banco B recebeu o pedido de depsito, executou-o, mandou a mensagem de
acknowledge mas esta no recebida, o banco A pode pedir novamente a execuo do
servio, o que resultar, para alegria de Jos, em uma repetio da operao de depsito. Isto
requer um protocolo que s execute a transao de forma completa ou absolutamente no
execute. O CCR opera segundo uma politica cliente-servidor, com um protocolo conhecido
como two-phase commit (submisso em duas fases).
Na primeira fase, quando um cliente pede a um conjunto de servidores a execuo de
um servio atmico, cada servidor verifica a disponibilidade local de atender ao pedido. Se o
pedido puder ser atendido, ele coloca a ordem de servio correspondente em uma memria
no voltil local (que no se apaga se o sistema cair, como por exemplo um disco rgido) e
envia ao cliente um acknowledge positivo. Se o servidor no puder atender ao pedido, ele
envia ao cliente um acknowledge negativo e no faz mais nada.
O cliente espera os acknowledges de todos os servidores envolvidos no pedido. Se um
deles for negativo, ele aborta o pedido e avisa a todos os demais servidores que o servio foi
cancelado. Se todos os acknowledges forem positivos, o cliente envia uma segunda ordem a
todos os servidores confirmando que o servio deve ser executado. Os clientes ento
executam o servio e somente aps isto apagam a ordem da memria no voltil local.
As primitivas de servio do CCR so mostradas na tabela a seguir.
Primitiva
C-BEGIN
C-PREPARE
Cliente
Cliente
Inicio de ao atmica
Fim pedido de servio
C-READY
C-REFUSE
C-COMMIT
C-ROLLBACK
Servidor
Servidor
Cliente
Cliente
C_RESTART
Ambos
notificao de queda
forem positivas, o cliente envia o comando C-COMMIT; em caso contrrio, ele envia um
comando C-ROLLBACK. C-RESTART s usado para avisar aos demais participantes do
servio atmico que uma estao caiu mas est de volta a operao normal.
2.3.8.3. Exemplos de SASEs (ASEs para servios especficos)
a) Servios de terminal virtual - VTS
Os terminais so atualmente de grande importncia para a interao entre usurio e
computador. Existem vrios tipos diferentes de terminais, totalmente incompatveis entre si.
Por exemplo, a apresentao dos dados na tela pode seguir 3 modos bsicos:
modo rolo: onde as linhas anteriores rolam para cima quando uma nova linha
aparece, eventualmente desaparecendo da tela. Estes terminais usualmente no
oferecem capacidade de edio e no tem inteligncia local.
modo pgina: que permite que o usurio movimente o cursor para cima e para
baixo, editando qualquer parte da pgina. Estes terminais j dispe de inteligncia
local (microprocessador interno dedicado).
modo formulrio, oferecem na tela um formulrio com campos especficos que
podem ser editados pelo usurio (usados por exemplo em caixas eletrnicos de
bancos).
O problema que se coloca aqui o de como trocar dados entre computadores que
possuem terminais diferentes. Para resolver problemas de incompatibilidade entre terminais
diferentes na conexo entre terminais e outros recursos computacionais via rede, foram
propostas duas abordagens:
servio de terminal paramtrico: aqui as diferenas entre terminais so parametrizadas,
isto , cada terminal associado a um conjunto de parmetros que definem suas
caractersticas operacionais. Este mtodo requer um concentrador de terminais, cuja
funo definir os parmetros adequados a cada terminal ligado a ele. Existem
padres para estes parmetros, tais como o PAD (Packet Assembler/Disassembler) da
CCITT (conhecido tambm como conversor X.25). O inconveniente desta tcnica
que hoje existe uma variedade muito maior de tipos de terminais do que havia na
poca da sua criao, alguns deles requerendo uma quantidade muito grande de
parmetros para definir todas as suas caractersticas operacionais.
servio de terminal virtual: aqui as funes empregadas para acessar um dado tipo de
terminal so abstradas em um modelo, usualmente um objeto ou classe, que recebe os
dados brutos a serem apresentados na tela e realiza a converso destes para o formato
requerido pelo terminal local. Este mtodo mais geral e atende a todos os tipos de
141
terminais existentes. Ele poder tambm acomodar todos os novos tipos de terminais
que forem surgindo, o que requer apenas a criao de um novo objeto que herde as
propriedades bsicas de algum outro terminal virtual parecido.
A ISO props um conjunto de servios de terminal virtual que visa atender as
necessidades de acesso a terminais para aplicaes relativamente simples (ex.: edio de
texto, interao com o sistema operacional, entrada de dados, etc). Estes servios so parte de
um SASE denominado VTS (Virtual Terminal Service), que inclui tambm um protocolo
denominado VTP (Virtual Terminal Protocol). Este SASE define uma srie de objetos
bsicos, cujos mtodos (primitivas de servio) permitem a execuo das operaes indicadas
na tabela a seguir.
Primitiva
Operao
VT-ASSOCIATE
VT-RELEASE
VT-U-ABORT
VT-P-ABORT
desfaz conexo de forma abrupta pelo Provider via ACSE
VT-CONTEXT-SWITCH altera contexto (semntica e sintaxe dos dados)
VT-START-NEG
inicia negociao de parmetros com parceiro
VT-END-NEG
VT-NEG-INVITE
VT-NEG-OFFER
VT-NEG-ACCEPT
VT-NEG-REJECT
VT-DATA
VT-DELIVER
VT-ACK-RECEIPT
VT-GIVE-TOKEN
VT-REQUEST-TOKEN
mensagem a outro MTA no lado receptor. Este, por sua vez, entrega a mensagem ao AP
destinatrio. As mensagens tem um formato padronizado, composto de um envelope
(contendo dados como o endereo do destinatrio e do emissor) e o contedo, que a
mensagem em si.
Algumas das primitivas bsicas colocadas a disposio dos APs pelo MHS so as
seguintes:
Primitiva
Operao
M-LOGON
servidor virtual de arquivos pode gerenciar um nmero arbitrrio de arquivos, onde cada
arquivo caracterizado por atributos tais como: o nome, aes possveis sobre o arquivo
(leitura, insero, substituio, etc...), controle de acesso (somente leitura, somente escrita,
etc...), tamanho do arquivo, identidade do criador, data e hora de criao, identidade do ltimo
modificador, data e hora de modificao, etc.
Sistema Real A
Sistema Real B
ARQUIVO
REAL A
ARQUIVO
REAL B
Ambiente OSI
ARQUIVO
VIRTUAL A
protocolo FTAM
ARQUIVO
VIRTUAL B
ARQUIVO
VIRTUAL C
ARQUIVO
REAL C
Sistema Real C
FADU
R
DU
FADU
NVEL 0
FADU
A
DU
DU
DU
D
DU
DU
NVEL 1
DU
NVEL 2
REGIME:
SELEO
ARQUIVO
F_SELECT
F_CREATE
F_DESELECT
F_DELETE
F_READ_ATTRIB
F_CHANGE_ATTRIB
DE identificao
de
arquivos
que
manipulados
seleo de um arquivo existente
criao de um arquivo
liberao de um arquivo
eliminao de um arquivo
leitura dos atributos do arquivo
modificao de atributos de um arquivo
REGIME:
ARQUIVO
F_OPEN
F_CLOSE
F_LOCATE
F_ERASE
ACESSO
sero
REGIME: TRANSFERNCIA
DE DADOS
F_READ
F_WRITE
F_DATA
F_DATA_END
F_TRANSFER_END
145
respeito a esta segunda classe de aplicaes, podemos destacar como um importante elemento
de servio de aplicao, o ASE denominado MMS (Manufacturing Message Services),
proposto para a camada de aplicao da rede MAP, que ser apresentado mais adiante, quando
tratarmos de redes industriais.
Alm dos ASEs vistos anteriormente, a ISO e a CCITT definiram uma srie de outros
elementos de servio. A tabela a seguir apresenta, de forma resumida, os principais padres
utilizados a nvel de aplicao no modelo OSI.
Nome do ASE
Norma ISO
Recomendao CCITT
X.217 / X.227
X.218 / X.228
X.219 / X.229
X.400 / X.420
X.500 / X.521
X.710 / X.711
146
As razes que podem conduzir a sistemas integrando diferentes subredes podem ser de
naturezas as mais diversas:
muito mais econmico interligar computadores geogrficamente prximos atravs
de uma rede local e compartilhar uma interface nica com uma rede externa do que
conect-los, cada um deles a esta mesma rede externa;
tecnologicamente limitante a interconexo (via uma rede local) de um grande
nmero de computadores separados por grandes distncias; por exemplo, os diversos
computadores localizados em diferentes prdios de um campus de universidade.
Neste caso, mais interessante interligar os computadores de cada prdio por uma
rede local sendo que as diversas redes locais sero interconectadas;
o desempenho e a confiabilidade de um sistema podem ser fortemente aumentados
se, ao invs de interligar um grande nmero de estaes por uma nica rede, esta for
particionada em duas ou mais redes; cada rede local associaria aquelas estaes que
possuam maior trfego entre elas, diminuindo assim o trfego no suporte de
transmisso, sendo que elementos de interconexo das diversas redes garantiriam a
comunicao entre as estaes conectadas a diferentes redes;
funcionalmente mais interessante interligar estaes que realizem trabalhos
pertencentes a atividades compatveis por redes locais adequadas ao perfil destas
atividades; as diferentes redes associadas a cada nvel de atividade continuariam a
permitir a comunicao entre estaes pertencentes a diferentes atividades atravs
dos elementos de interconexo.
O problema da interconexo de redes derivado de trs questes importantes:
a primeira est relacionada funo de roteamento, dado que dois equipamentos
envolvidos num dilogo podem no pertencer mesma subrede;
a segunda est relacionada com a possibilidade (bastante realista) de que duas
subredes interconectadas, apesar de possuirem arquiteturas semelhantes, no
implementem os mesmos protocolos (por ex.: Token-Ring x Ethernet), o que
representa um problema no trivial a ser resolvido;
a terceira, ainda mais complexa, est relacionada com a hiptese de que as subredes
a serem interconectadas, alm de possuirem protocolos diferentes em cada camada,
no sejam baseadas na mesma arquitetura (por exemplo, uma das subredes tem
arquitetura IBM-SNA, a outra segue a arquitetura TCP/IP e uma terceira OSI).
147
Retornando s questes levantadas acima, uma srie de pontos tcnicos devem ser
resolvidos para possibilitar a interconexo de redes. Vamos discutir alguns destes pontos a
seguir.
2.4.2.1.
Endereamento
148
faz-lo permitir que os usurios possam ser identificados por nomes (ou cadeias de
caracteres) em lugar de endereos numricos, difceis de memorizar. Isto significa que os ns
da rede devem manter tabelas que efetuem o mapeamento entre os nomes dos processos
usurios da rede e os seus endereos efetivos.
Entretanto, quando duas ou mais subredes so interconectadas, os padres de
endereamento podem ser distintos e um meio de identificar (de maneira transparente) os
processos situados nas diferentes subredes deve ser implementado. Alm disso, no caso de
adoo de nomes para os processos usurios, como os nomes locais podem se repetir em
subredes diferentes, necessrio um esquema que os diferencie.
A poltica adotada para resolver esta questo aquela do endereamento hierrquico,
como, por exemplo, a definida pelo CCITT (recomendao X.121), onde cada endereo
apresenta trs componentes: um cdigo de pas (3 dgitos), um cdigo da rede (1 dgito) e um
campo para o endereo dentro da rede (10 dgitos). Isto significa que cada pas pode definir
at 10 redes, cada rede tendo 10 dgitos para definir seus endereos, o formato dependendo de
cada rede.
Um outro exemplo deste tipo de soluo o esquema de endereamento oferecido pelo
DNS (Domain Name System). Cada usurio identificado de forma univoca na rede por um
nome na forma user@domnio1.domnio2, que convertido em endereo IP pelos
servidores de nomes domnio1 e domnio2, passando para algo na forma 200.24.120.5.
Este o esquema padro adotado no TCP/IP (Internet).
2.4.2.2.
A fragmentao de mensagens
Este um outro problema importante, dado que diferentes subredes podem trabalhar
com tamanhos distintos de mensagens (os tamanhos mximos). bvio que uma soluo
seria limitar o tamanho mximo das mensagens podendo transitar em todas as subredes como
149
sendo o menor tamanho mximo de todas as subredes, mas esta uma soluo pouco
eficiente.
A soluo mais interessante a seguinte: quando uma mensagem deve transitar entre
diferentes subredes, se ela ultrapassa o tamanho mximo da subrede pela qual ela vai transitar,
esta decomposta em vrias mensagens (ou fragmentos), cujas dimenses sero adaptadas s
limitaes da subrede considerada. evidente que, caso estes fragmentos sejam enviados a
uma nova subrede que suporte o tamanho mximo da subrede de origem, estes podero ser
reagrupados para recompor a mensagem original.
Estes so alguns dos pontos a serem discutidos no momento em que um elemento deve
ser projetado para a interconexo de duas subredes. Outros pontos no menos importantes so:
o controle de erros, o tipo de servio (orientado conexo ou no), o nvel da interconexo, o
controle de fluxo, o controle de congestionamento, a segurana, a tarifao de servios.
2.4.3. A INTERCONEXO SEGUNDO O MODELO OSI
Antes de estudarmos os elementos responsveis da interconexo de redes, vamos
analisar a abordagem do modelo OSI no que diz respeito a este problema particular. Segundo
o que foi estabelecido no modelo OSI no que diz respeito interconexo, a camada de Rede
assume a resoluo destes problemas, sendo para tal subdividida em trs subcamadas, como
mostra a figura 2.4.2: a subcamada de acesso subrede, a subcamada de adaptao da
subrede e a subcamada de interconexo.
A primeira subcamada, representada pelos nveis 3a na figura 2.4.2, responsvel do
gerenciamento do protocolo da subrede considerada, assumindo a recepo e o envio dos
pacotes de controle e implementando as funes de base da camada de Rede.
A segunda subcamada, representada por 3b em 2.4.2, responsvel de todas as
adaptaes entre servios necessrias entre as subredes interconectadas. Caso uma das
subredes no for compatvel com o modelo OSI (caso nada raro), seus servios tero nomes,
funes e parmetros diferentes, que precisam ser adaptados de forma a obter uma
uniformizao de sintaxe e semntica entre as subredes envolvidas.
150
sistema A
sistema B
4a7
4a7
relay
3c
3b
3a
3c'
3b'
3a'
3c'
3b 3b'
3a'
3a
2
2
subrede 2
subrede 1
151
LAN
G
LAN
LAN
WAN
WAN
BRIDGE
LAN-LAN
WAN-WAN
LAN-WAN
LAN-WAN-LAN
G GATEWAY
152
Camada 7
SUBREDE A
SUBREDE B
Camada 7
Camada 6
Camada 6
Camada 5
Camada 5
Camada 4
Camada 4
Camada 3
Camada 3
Camada 2
Repeater
Camada 1
Camada 1
SUBREDE A
Camada 1
Repeater
Camada 2
Camada 1
SUBREDE B
153
SUBREDE B
Camada 7
Camada 7
Camada 6
Camada 6
Camada 5
Camada 5
Camada 4
Camada 4
Camada 3
Camada 3
PONTE
Camada 2
Camada 2
Camada 2
Camada 2
Camada 1
Camada 1
Camada 1
Camada 1
SUBREDE A
PONTE
SUBREDE B
154
com quem ele vai querer dialogar. No modelo OSI, o esquema de endereamento definido
de forma a cobrir os mltiplos formatos de endereamento de rede (ver parte relativa
camada de Rede).
Uma das desvantagens das pontes que o fato de que, todo pacote transitando ao
longo das subredes recebido por cada uma das estaes conectadas a estas subredes,
implicando, em condies normais, num aumento considervel de trfego. Ainda, a
possibilidade de um congestionamento no est muito distante uma vez que uma interface de
rede em pane poder despejar uma grande quantidade de pacotes incompatveis na rede.
Ao contrrio das pontes, um roteador no tem necessidade de analisar todos os pacotes
circulando na rede. Isto significa que, no caso dos roteadores, o problema descrito acima pode
ser evitado pois eles seriam capazes de bloquear aqueles pacotes que no obedecessem a um
determinado perfil.
um equipamento bastante poderoso, dado que ele pode interconectar um nmero
relativamente grande de redes, de uma forma transparente ao usurio do servio. Em
aplicaes onde haja necessidade de interligao de mais de duas subredes, um roteador
dever certamente ser o elemento escolhido para realizar a conexo (em lugar de uma ponte).
Em aplicaes industriais, por exemplo, um bom nmero de empresas se caracteriza
por possuir suas usinas, fornecedores, depsitos, lojas de venda, etc, em locais
geogrficamente dispersos. A fim de trocar informaes entre estes setores, a conexo das
diversas redes locais a uma rede de longa distncia pode ser viabilizada atravs de um
roteador.
Um papel importante desempenhado pelos roteadores est na interconexo de redes
heterogneas. Quando um pacote pertencente a uma subrede implementando um protocolo X
deve ser encaminhado a uma subrede implementando um protocolo Y, o roteador dever
realizar as converses de formato necessrias para que o pacote seja encaminhado respeitando
os requisitos impostos pelo protocolo Y. A interconexo entre subredes atravs de um
roteador ilustrada nas figuras 2.4.7.
2.4.8. AS PASSARELAS (GATEWAYS)
Os gateways so os elementos de interconexo de concepo mais complexa. A sua
importncia no que diz respeito s necessidades de interconexo das redes o fato de que nem
todas as redes de comunicao implantadas e em funcionamento atualmente foram construdas
com base no modelo OSI, muitas solues "proprietrias" e "padres de fato" sendo adotados
na forma de redes locais.
Isto significa que est longe do incomum a necessidade de interligao de redes
baseadas no modelo OSI com redes no-OSI. Isto requer, ento, a construo de um
equipamento de interconexo que seja capaz de compatibilizar as diferenas estruturais e de
protocolo existentes entre as duas redes. Este equipamento o gateway.
156
SUBREDE A
SUBREDE B
Camada 7
Camada 7
Camada 6
Camada 6
Camada 5
Camada 5
Camada 4
Camada 4
ROTEADOR
Camada 3
Camada 3
Camada 3
Camada 3
Camada 2
Camada 2
Camada 2
Camada 2
Camada 1
Camada 1
Camada 1
Camada 1
SUBREDE B
SUBREDE A
ROTEADOR
SUBREDE D
SUBREDE C
157
R ED E M AP (OSI)
GA TEWA Y
R ED E SN A
TR A D U TOR
Aplicao
Apresentao
Sesso
Transporte
A plicao
A presentao
Sesso
Transp orte
U surio
U surio
servios N A U
servios N AU
Flu xo D ados
Fluxo D ados
C ontro le
Transm isso
C ontrole
Transm isso
R ede
R ede
C ontro le
C aminho
C ontrole
C am inho
Enlace
Enlace
C ontrole
Enlace
C ontrole
Enlace
Fsica
L igao
F sica
Ligao
F sica
Fsica
...
158
LC
159
160
Nvel
Hierrquico
Sistem a de
Com unicao
Administrao
corporativa
Planejamento
(Factory)
Gw
rea
(Shop)
M AP, TOP
FM S
M AP-EPA
Mini-MAP
M gU
Clula
(Cell)
FM C
Subsistema
(Subsystem)
Componente
(Component)
...
CLP
CNC
Fieldbus
Torno,
M anipulador,
Centro usinagem,
etc...
Fieldbus
tempo real
M otores,
chaves,
reles, etc...
Planejament o
Custo
mdio
de uma
estao
Tempo
Ocioso entre
transmisses
Vida til e
tamanho
mdio dos
dados
rea
Clula
unidade (subsistema)
Componente
Nmero
de
estaes /
segmento
Trfego
mdio
Hostilidade
do meio
Quadros /
seg
161
162
Como foi dito na seo anterior, as redes de difuso apresentam aspectos interessantes
que as tornam uma soluo bastante adequada aos requisitos de comunicao industrial. Um
problema importante na utilizao das redes de difuso o mtodo de acesso ao meio (que
compartilhado) pois, uma vez que vrios equipamentos devero trocar informaes num dado
instante, a deciso de quem vai ter o direito de uso do meio para o envio de uma mensagem
no uma tarefa evidente, como ser visto nesta seo. Os protocolos de acesso ao meio tem
papel fundamental no tempo de entrega de uma mensagem via rede. Como veremos a seguir,
este tempo importante para aplicaes com caractersticas de tempo real.
163
164
M2
M3
D L = 10
DL = 15
D L = 50
E nd. 01
E n d. 0 2
E nd . 03
M5
M4
D L = 25
DL = 5
E nd. 04
E nd. 05
O n de:
M - m e nsag em
D L - d ead lin e
E nd. - ende re o
165
Software
AP
AP
Aplicativo
Camada de Aplicao
Controle Lgico de enlace (LLC)
Controle de Acesso ao Meio (MAC)
Camada Fsica
Figura 2.4 - Arquitetura para sistemas tempo real
166
Alocao fixa: estes protocolos alocam o meio s estaes por determinados intervalos de
tempo (chamados de bandas), independentemente de haver ou no necessidade de acesso
(ex.: TDMA = Time Division Multiple Access);
Alocao aleatria: permitem acesso aleatrio das estaes ao meio (ex.: CSMA =
Carrier Sense Multiple Access). Em caso de envio simultneo por mais de uma estao,
ocorre uma coliso e as estaes envolvidas tem que transmitir suas mensagens aps a
resoluo do conflito resultante (tambm chamados protocolos de conteno);
Alocao controlada: cada estao tem direito de acesso apenas quando de posse de uma
permisso, que entregue s estaes segundo alguma seqncia predefinida (ex.: TokenPassing, Master-Slaves);
Alocao por reserva: para poder usar o meio, as estaes tem que reservar banda com
antecedncia, enviando pedidos a uma estao controladora durante um intervalo de
tempo pr-destinado e este fim (ex.: CRMA = Cyclic Reservation Multiple Access);
Hbridos: consistem de 2 ou mais das categorias anteriores.
167
169
recepo do quadro de reconhecimento expira sem que este quadro seja recebido. Para
resolver este problema, foi concebido o protocolo CSMA/CD, que veremos a seguir.
- O protocolo CSMA/CD (CSMA with Collision Detection):
Os protocolos descritos at aqui, embora apresentando aspectos interessantes, podem
ser melhorados considerando-se que cada estao poderia detectar, antes da emisso, o estado
de conflito com outras estaes da rede, evitando assim a emisso do quadro considerado.
O protocolo CSMA/CD (Carrier Sense Multiple Access with Collision Detection)
um protocolo baseado neste princpio e muito utilizado nas redes locais (foi proposto
originalmente pelos criadores da rede Ethernet). Neste protocolo, quando mais de uma estao
esta pronta para emitir uma mensagem com o meio livre, estas emitem o quadro, o que vai
gerar uma coliso. A primeira estao que detectar a coliso interrompe imediatamente a sua
transmisso, reiniciando o processo todo aps a expirao de um perodo de tempo aleatrio,
de forma a tornar improvvel a ocorrncia de uma nova coliso (figura 2.5). Para detectar a
coliso, a estao emissora deve escutar aquilo que ela mesma colocou no meio (ao menos a
primeira palavra de cdigo enviada deve ser escutada pela prpria estao emissora). O sinal
enviado requer certo tempo para se propagar no meio, definido como um time slot. Os tempos
de espera aleatrios usados pelas estaes para tentar uma nova transmisso aps uma coliso
so sempre mltiplos de um time slot.
no
Station
Ready ?
yes
nc = 0
New
Frame ?
Ether
Silent ?
no
nc = nc+1
limit = 2nc -1
Wait=random [0, limit]
transmit
no
Collision ?
171
no detectar nenhuma coliso, considera que a nica a usar o meio naquele momento e passa
a enviar o restante dos dados.
O mtodo CSMA/CD propicia uma grande otimizao no uso do meio em relao aos
protocolos anteriores, pois a ocorrncia de uma coliso detectada logo na primeira palavra e
a emisso interrompida, no tendo que ser completamente repetida depois.
No entanto, em todos os mtodos de acesso CSMA temos que, quanto maior o
nmero de estaes e quanto maior o trafego mdio de mensagens na rede, maior a
probabilidade de ocorrncia de colises (esta probabilidade aumenta exponencialmente), de
forma que o tempo de reao aumenta consideravelmente e no pode ser exatamente
determinado. Para muitas aplicaes fabris, especialmente aquelas com requisitos de tempo
real, importante utilizar redes com protocolos de acesso ao meio determinsticos. CSMA/CD
no apresenta esta caracterstica pois no se sabe se havero colises, no se sabe quantas
colises seguidas podem ocorrer e no se conhece de antemo o tempo (aleatrio) de espera
em caso de coliso. J para aplicaes de escritrio os mtodos no determinsticos, como
CSMA/CD, so em geral satisfatrios.
3.2.2.1.4 - Os protocolos MAC determinsticos
Os mtodos de acesso determinsticos so aqueles com tempo de resposta
determinvel, ao menos em pior caso. Estes mtodos podem ser classificados em:
Nos sistemas com comando centralizado, somente uma estao pode agir como
detentora do direito de transmisso. Esta estao recebe o nome de estao Mestre. O direito
de acesso ao meio fsico distribudo por tempo limitado pela estao mestre as demais, que
so denominadas estaes Escravas. Aqui todas as trocas de dados ocorrem apenas entre
mestre e escravos (figura 2.7). A estao mestre realiza uma varredura cclica de cada uma das
estaes escravas, solicitando dados ou verificando se uma delas dispe de dados a enviar. Se
uma estao escrava no dispe de dados a enviar, ela sinaliza esta condio pelo envio de um
quadro com formato especifico para este fim. Se, por outro lado, a estao escrava dispe de
dados a enviar, ela envia o quadro de dados correspondente ao mestre. Note que, em ambos os
casos, o escravo tem que enviar um quadro em resposta varredura (scan) do mestre.
Esta configurao deixa o sistema dependente da estao central, mas a configurao
usual dos sistemas de controle na maioria das aplicaes, onde o mestre exerce a funo de
172
Escravo
Escravo
Escravo
Escravo
Este mtodo mais adequado para sistemas nos quais diversas unidades independentes
desejam trocar livremente informaes entre si.
Neste mtodo, possvel determinar um tempo mximo entre duas oportunidades
consecutivas de transmisso para cada estao. Cada estao pode reter o token por um tempo
limitado, denominado "token retention time", aps o que obrigada a enviar o token (um
quadro com formato especial) para a estao seguinte (a ordem de passagem do token prdefinida, como veremos mais adiante, e forma um anel virtual ou lgico de seqncia de
direito de acesso ao meio). Conhecendo-se o tempo de reteno do token e o nmero de
estaes acopladas rede, pode-se calcular o tempo de rotao do token (token rotation time,
que o tempo que o token leva para passar por todas as estaes uma vez e voltar a estao
inicial). Este tempo o pior caso de tempo de espera para enviar uma mensagem partindo de
uma estao qualquer.
receptor
token
emissor
174
Estao
TAP
Interface
p/ anel
anel unidirecional
Token
na figura 2.10. No caso ali representado, 5 estaes esto envolvidas na coliso inicial (ns
0 at 4), sendo que as mensagens enviadas por cada uma delas tem headers com valores
000 (mais prioritria), 001, 010, 011 e 100 (menos prioritria) respectivamente.
100 dados
Header do frame
Frame a enviar
N 4
N 0
N 1
000 dados
001 dados
N 2
010 dados
N 3
011 dados
mensagem mais prioritria sendo enviada (com prembulo maior) e a estao interrompe
sua transmisso. A mensagem com o preambulo mais longo ter portanto a prioridade
maior. Isto ilustrado na figura 2.11, onde 5 estaes emitem mensagens simultaneamente
com prembulos de comprimentos diferentes.
Preambulo do frame
Frame a enviar
N 4
N 0
N 1
N 2
N 3
Mensagem do n 4
Mensagem do n 3
Mensagem do n 2
Mensagem do n 1
Mensagem do n 0
177
178
ndice 3
ndice 2
ndice 12
ndice 14
ndice 5
ndice 15
179
[0,16]
1
[8,16]
[0,7]
2
[0,3]
[4,7]
[8,11]
10
[0,1]
[2,3]
[4,5]
[6,7]
[12,16]
13
11
12
[8,9]
[10,11]
14
15
[12,13] [14,16]
1C
2,3,5
W= 2,3
L=5
2C
2,3
W=
L=2,3
7T
5
4C
2,3
W=2
L=3
3V
5T
2
10 C
12,14,15
W= 12
L=14,15
9V
12 C
14,15
W= 14
L=15
11 T
12
6T
3
13 T
14
14 T
15
181
182
A bordagem
R e q u i s to s
E x .d e P r o to c o lo s
A tr ib u i o d e P r io T o k e n - R in g c /P r .
r id a d e s c o m te s te d e
D if. a tr a s o s
e s c a l o n a b ilid a d e
M A C c o m r e s o lu o C o m p . P r e m b u lo
O ff- lin e (e m te m p o
d e p r io r id a d e s
F o r c in g H e a d e r s
d e p r o je to )
( C S M A /C A )
C ir c u ito V ir tu a l T R M A C c o m te m p o d e
a c e s s o a o m e io
c o m e s c a lo n a m e n to
lim ita d o
O n - lin e d e
m en sag en s
R eserva com
e s c a l o n a m e n to
g lo b a l
R e q u e r c p ia s lo c a is
d e to d a s a s fila s d e
m en sa g en s,
d ifu n d id a s e m s lo ts
tim e s d e r e s e r v a
TDM A
T o k e n - P a s s in g
W a itin g R o o m
C S M A /D C R
PODA
cuja mnima alterao pode produzir danos de elevado custo. Desta forma, redes industriais de
comunicao tem que oferecer uma elevada confiabilidade.
Para aumentar esta confiabilidade nas mensagens transmitidas, normalmente usado
um teste cclico de redundncia (CRC - Cyclical Redundance Check).
Em sistemas que necessitem de uma operao contnua, pode ser utilizado um meio de
transmisso e estaes de controle redundantes. Alm disso, os cabos utilizados em geral so
blindados.
3.2.2.3. REQUISITOS DO MEIO AMBIENTE
Devido s caractersticas do ambiente industrial, a presena de perturbaes
eletromagnticas, provocadas principalmente pelos acionamentos de motores eltricos de
grande porte ou outras fontes chaveadas (estaes de solda, conversores estticos, etc.), no
pode ser desprezada na escolha do meio de transmisso de uma rede de comunicao.
Para a definio do meio fsico de transmisso e do protocolo de comunicao, estas
caractersticas devem ser consideradas. O meio de transmisso deve possuir uma boa
resistncia mecnica e deve estar eletricamente isolado.
O meio fsico a ser adotado no depende apenas de aspectos tcnicos mas tambm (e
muito especialmente no cho de fbrica) do aspecto de custo. Cabos coaxiais so menos
afetados por perturbaes eletromagnticas do que o par tranado. No entanto, o custo do cabo
coaxial superior ao do par tranado. Alm disso, barramentos construdos com cabo coaxial
e conectores T requerem resistncias terminais (terminadores) para a correta operao da
rede. Isto necessrio para evitar ressonncias ou ecos, onde o sinal propagado na rede
retorna sobre si mesmo. Se o cabo for aberto em qualquer ponto da fbrica, a rede cai.
Futuramente, a adoo de fibras ticas poder vir a ser a melhor soluo tanto do
ponto de vista tcnico quanto econmico. Atualmente ainda h dificuldades na realizao de
bifurcaes com este meio fsico, necessrias para as conexes em T usadas em redes com
topologia em barramento, de modo que as fibras ticas so mais utilizados em sistemas com
topologia em estrela ou anel. A realizao de bifurcaes tem alcanado melhores resultados
adotando acopladores ativos (com eletrnica adicional para converso do sinal tico em
eltrico e vice-versa nos pontos de derivao). Trabalhos vem sendo realizados tambm para a
realizao de bifurcaes passivas, baseadas em prismas. Tanto as bifurcaes ativas quanto
as passivas encarecem a conexo, o que torna a soluo antieconmica para o nvel de cho de
fbrica. Uma soluo que vem ganhando terreno o uso de Hubs, que emulam um barramento
para as placas mas que efetivamente atuam como estaes concentradoras, transformando a
topologia fsica em estrela, o que permite o uso de fibras ticas sem a necessidade de
bifurcaes. Com fibras ticas, alm disso, pode-se trabalhar com freqncias da ordem de
vrios GigaBaud (109 bits por segundo), o que permitiria uma melhoria de performance do
sistema de comunicao (esta, no entanto, no a vantagem chave da fibra tica em redes
184
perturbaes
Par tranado (sncrono)
Cabo coaxial
Distncia
Fibra tica
Taxa
de
Custos
transmisso
185
Estas operaes podem ser feitas normalmente com um nico quadro de comando
acrescido dos respectivos dados, quando existirem.
Para dispositivos programveis encontrados no ambiente industrial (Controladores
Lgicos Programveis, Comandos Numricos Computadorizados, Comandos de Rob, etc.),
normalmente necessrio o envio de programas no inicio da produo de um lote, que
caracterizam mensagens maiores do que as referidas anteriormente. No entanto, estes
programas raramente ultrapassam 10 KBytes em tamanho e dificilmente so utilizados mais
de 3 programas por unidade de fabricao durante um turno de trabalho.
Como conseqncia, uma taxa de transmisso de dados relativamente baixa a nvel da
camada fsica atende as necessidades de comunicao na maioria dos casos (1 Mbps quase
sempre suficiente). Por outro lado, tem-se uma elevada taxa de ocupao do barramento, com
um grande nmero de mensagens sendo trocadas constantemente. Deve-se portanto evitar
mensagens grandes, que podem monopolizar o meio de transmisso por um tempo muito
longo.
186
187
Control). Estas definies foram aceitas pelos demais organismos de padronizao. A norma
resultante hoje reconhecida internacionalmente sob a designao ISO/IEC 8802.
O projeto, em sua forma atual, define uma norma com 12 partes, designadas por IEEE
802.1 at IEEE 802.12, como mostra a figura 2.17, e que tratam de vrios aspectos ligados a
redes de computadores, indo bastante alm da proposta original.
IEEE 802.3
CSMA/CD
(MAC)
IEEE 802.4
Token-Bus
(MAC)
IEEE 802.5
Token-Ring
(MAC)
Banda Banda
base
larga
Banda
larga
Banda
base
(PHY) (PHY)
(PHY)
(PHY)
IEEE 802.12
DPA
(MAC)
...
(PHY)
188
189
Bytes
P rembul o
2 ou 6
2 ou 6
Dest.
F onte
l i mi tador de
i nci o de quadro
0-1500
0-46
Dados
P ad
F CS
190
completado atravs do campo PAD, de preenchimento de quadro, cujo tamanho poder ser
menor ou igual a 46 bytes. Isto necessrio para garantir a deteco de coliso.
O ltimo campo do quadro contm uma palavra de 32 bits para o controle de erros,
utilizando a tcnica de redundncia cclica (CRC, Cyclic Redundancy Check). O polinmio
gerador utilizado G(x)=x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+1.
O funcionamento deste protocolo baseado, ento, no que foi apresentado
anteriormente, onde duas ou mais estaes que detectem a disponibilidade do suporte de
transmisso, vo emitir os seus quadros respectivos gerando uma coliso. Toda estao que
detecte a ocorrncia de coliso deve interromper imediatamente a sua emisso, gerando uma
seqncia de interferncia para advertir as outras estaes da ocorrncia da coliso. As
estaes devero, ento, esperar um perodo de tempo aleatrio para recomear o ciclo de
emisso. O tempo de espera dividido em intervalos de tempo, que correspondem a duas
vezes o tempo de propagao entre as duas estaes mais distantes da rede, este intervalo de
tempo sendo definido como time slot.
Aps a primeira coliso, cada estao vai esperar 0 ou 1 time slot antes de tentar
novamente a emisso. Caso duas estaes escolham o mesmo nmero de time slots, elas sero
envolvidas mais uma vez numa coliso. Aps a segunda coliso, cada uma delas vai escolher,
de maneira aleatria, um tempo de espera compreendido entre 0 e 3 time slots antes de tentar
a emisso. Caso uma terceira coliso ocorra, a faixa de escolha de intervalos de tempo vai
aumentar para 0 a (23 - 1). Em geral, aps i colises, o intervalo de escolha ser de 0 a (2i - 1).
Assim, se 10 colises consecutivas ocorrem (as chances para isto so mnimas mas reais), a
faixa de tempo de espera vai atingir um mximo de 1023 time slots. Aps a dcima sexta
coliso, a tentativa de emisso desabilitada e a estao de trabalho ser informada da
situao, ficando uma camada mais acima como responsvel pela deciso sobre a melhor
forma de tratar o problema. A escolha deste algoritmo se justifica pela possibilidade de
adaptao do tempo de espera em funo do nmero de colises ocorridas.
Por outro lado, o algoritmo CSMA/CD no fornece nenhuma informao sobre o
destino de quadros que tenham sido transmitidos sem a ocorrncia de nenhum incidente. Isto
significa que a ausncia de coliso no garante que o quadro foi recebido pela estao (ou
estaes) destinatria(s), sem nenhuma modificao devido, por exemplo, a sinais parasitas.
Para que a transmisso seja considerada correta, preciso que a estao receptora verifique o
bloco de controle de redundncia cclica e, em caso positivo, transmita um quadro de
reconhecimento. Isto ser feito se for escolhido um servio confivel a nvel da subcamada
acima, a LLC.
A nvel das camada fsica e enlace, a norma IEEE 802.3 prev uma arquitetura
conforme a figura 2.19.
191
Enlace
MAC (Medium Access Control)
como meio de transmisso o cabo coaxial grosso (thick coaxial cable) de 50 Ohm. A MAU
ligada ao cabo por meio de um conector de presso.
Conector de
presso MDI
MAU
Cabo AUI
Cabo coaxial
grosso 50
Ohms
Placa de rede
Conector AUI
Conector BNC
fmea
Conector
BNC macho
Conector T
BNC
Placa de rede
Terminador BNC
macho 50 Ohms
193
Alm das especificaes vistas acima, existe ainda a especificao 10BROAD36, que
opera com taxa de transmisso de 10Mbps, tcnica de sinalizao em Banda Larga e um cabo
de 3600 metros.
A norma IEEE 802.3 prev ainda algumas especificaes de MAU, como:
10BASE-T, que define uma MAU para par tranado em lugar de cabo coaxial e
usualmente empregada para conexo com repetidores multiporta (mais conhecidos
como Hubs);
10BASE-FL, que define uma MAU para fibra tica, usada para conectar uma
estao a um Hub;
10BASE-FB, que define uma MAU para interligar repetidores entre si, usada em
redes backbone;
10BASE-FP, que define uma MAU para operar como estrela passiva;
IEEE 802.3u (Fast Ethernet)
3 verses com 100 Mbps, sempre com HUB:
100BASE-T4: usa 4 pares de cabos UTP categoria 3 (fio telefnico), com
sinalizao em 25MHz cada, com at 100m at HUB, modo half-duplex.
100BASE-TX: usa 2 pares de cabos UTP categoria 5 (usa isolante de teflon), um
para o HUB e outro de retorno, at 100m at o HUB, modo full-duplex;
100BASE-FX: usa 2 fibras ticas multimodo, uma em cada direo, distncia de
at 2 Km at HUB.
Switched Ethernet:
Melhora de performance da ethernet pode ser obtida com fast ethernet, porm requer novas placas de
rede
Outra soluo: manter placas 10BASE-T e ligar a um switcher
IEEE802.3z: 1000BASE-F
194
A norma 802.4 procura cobrir estes aspectos, permitindo a comunicao num suporte
de transmisso do tipo barramento, mas baseado na existncia de uma ficha (token) que
representa o direito de transmisso de uma estao.
Embora as estaes sejam conectadas atravs de um barramento, caracterizando uma
estrutura linear ou arborescente de comunicao, estas podem ser vistas como se
constitussem um anel lgico, onde cada estao conhece o endereo das estaes vizinhas no
anel. Uma vez que o anel lgico inicializado, a estao que possui o endereo mais elevado
pode transmitir o primeiro quadro. Uma vez que esta transmitiu o seu quadro, ela cede o
direito de transmisso estao vizinha, enviando a esta um quadro especial denominado
ficha (token). Desta forma, a ficha se propaga ao longo do anel lgico, tendo como regra
fundamental o fato de que apenas a estao possuidora da ficha tem o direito de transmitir um
quadro. Sendo assim, a ocorrncia de colises praticamente impossibilitada.
Um ponto importante a salientar a total independncia entre a localizao fsica das
estaes na rede e a composio do anel lgico. Quando uma estao transmite a ficha, ela a
enderea estao imediatamente em aval no anel lgico, independente da sua localizao
fsica.
Ainda, por construo, o suporte de transmisso opera em modo difuso, ou seja, todas
as estaes recebem os quadros transmitidos, mas levam em considerao somente aqueles
que lhes sejam diretamente endereados. Alm disso, quando uma estao conectada ao
barramento entra em funcionamento, ela no automaticamente inserida no anel lgico. O
protocolo IEEE 802.4 quem assume a funo de insero ou retirada de uma estao do anel
lgico.
O protocolo opera da seguinte maneira: quando o anel lgico inicializado, as
estaes de trabalho colocam-se seqencialmente segundo a ordem descendente do valor do
seu endereo fsico. A passagem da ficha se d segundo esta mesma ordem. A cada vez que
uma estao torna-se proprietria da ficha, ela possui o direito exclusivo de transmisso sobre
o barramento, este direito podendo ser exercido durante um certo perodo de tempo, aps o
qual ela deve ceder a ficha para a prxima estao do anel. No caso de quadros curtos, um
grande nmero deles podem ser transmitidos durante este perodo, de maneira consecutiva. Se
uma estao possuidora da ficha no tem quadros a enviar, ela passa a ficha adiante estao
seguinte do anel lgico.
O protocolo de barramento com ficha define um mecanismo de prioridades a quatro
nveis, referenciados por 0, 2, 4 e 6, o nvel 0 tendo a mais baixa prioridade e o nvel 6 a mais
alta. Isto pode ser visto como se cada estao fosse dividida em quatro subestaes de quatro
nveis de prioridade. Assim, quando uma estao recebe a ficha, o direito de transmisso
cedido subestao de nvel 6, aps estao 4, e assim por diante, at a estao 0, at que o
perodo de emisso seja esgotado e a ficha tenha de ser retransmitida prxima estao do
anel lgico.
195
1 1 1 2 ou 6
2 ou 6
0-8182
Dest.
Fonte
Dados
FCS
controle quadro
delimitador de fim
delimitador de incio
Prembulo
estaes estejam se candidatando, ocorrer coliso dos seus quadros (pelas mesmas razes da
norma IEEE 802.3), o que requer que a estao proprietria da ficha resolva o conflito. Neste
caso, ela emite um quadro "Resoluo de Conflito" destinada a inicializar o processo de
resoluo de conteno. Ao receber um quadro de resoluo de conflito, todas as estaes que
tinham se candidatado a entrar no anel lgico esperam por um tempo aleatrio entre 0 e 3 time
slots, aps o que verificam se o meio est livre. Se o meio estiver ocupado aps o trmino do
tempo de espera escolhido, as estaes desistem e aguardam uma nova oportunidade para
entrar no anel lgico. Se houver nova coliso, o processo repetido at que somente uma
estao responda a busca de sucessor.
J o abandono do anel mais simples. Se uma estao X, situada entre duas estaes
A e B quer abandonar o anel, ela envia estao A um quadro indicando que sua vizinha
(seguinte) a partir de agora ser a estao B.
A norma IEEE 802.4 especifica ainda quatro tipos diferentes de camadas fsicas:
Rede com canal nico e modulao FSK (Frequency Shift Keying) fase contnua, com
topologia em barra bidirecional, taxa de transmisso de 1Mbps;
Rede com canal nico e modulao FSK fase coerente, topologia em barra bidirecional,
taxas de transmisso de 5Mbps ou 10Mbps;
Rede em banda larga (vrios canais modulados em freqncia sobre o mesmo meio),
topologia em barra bidirecional com headend (central repetidora com conversor de
freqncias do canal de recepo para o canal de envio), taxas de transmisso de 1Mbps,
5Mbps ou 10Mbps;
Rede utilizando fibra tica, topologia lgica em barra (mas fisicamente em estrela com um
Hub como elemento central), requer um par de fibras para cada estao (uma para receber
e outra para transmitir), taxas de transmisso de 5Mbps, 10Mbps ou 20Mbps.
A norma IEEE 802.5 (anel com ficha - "Token Ring")
Esta norma foi definida para privilegiar as redes em anel existentes. Um ponto
importante no que diz respeito concepo das redes em anel a ocupao fsica de um bit no
suporte de transmisso. Caso o dbito normal de um anel seja de R Mbps, isto significa que
um bit transmitido a cada 1/R s. Se a velocidade de propagao do sinal de 200 m/s,
cada bit vai ocupar 200/R metros no suporte de transmisso. Isto significa que, para um anel
operando a 1Mbps e utilizando 1000 metros de suporte fsico, este s poder suportar 5 bits a
cada instante.
Uma rede em anel consiste de um conjunto de ligaes ponto-a-ponto, em modo
unidirecional, como mostra a figura 2.23. Cada n do anel equipado de um acoplador que
permite conectar duas extremidades do cabo. Cada bit chegando na entrada de um acoplador
197
copiado numa memria de espera antes de ser retransmitido ao n seguinte. Este bit pode ser
inspecionado e, mesmo, ter o seu valor modificado antes da retransmisso.
Num anel com ficha, uma seqncia binria particular, denominada ficha, fica
circulando em permanncia quando no existe transmisso de quadro. Quando uma estao
quer emitir um quadro, ela deve adquirir a posse da ficha e substitu-la pelo quadro a enviar.
Uma vez que apenas uma ficha est circulando no anel, a emisso de um quadro uma ao
exclusiva a uma nica estao do anel, o que significa que os conflitos so, assim, eliminados.
Estao
Repeater e
interface
para anel
anel unidirecional
198
Bytes
11 1
2 ou 6
2 ou 6
ilimitado
Dest.
Fonte
Dados
11
FCS
delimitador de fim
(ED)
status quadro
(FS)
199
200
decorrncia desta reflexo, vrias cpias de uma mensagem de rdio podem estar em
propagao no meio e chegar a estao receptora em instantes de tempo diferentes. Quando as
vrias cpias do sinal chegam ao receptor aps percorrerem distancias diferentes, elas se
somam aleatoriamente, podendo resultar em um sinal muito enfraquecido ou mesmo nulo,
como ilustrado na figura 2.26 (se a diferena no comprimento dos caminhos for um mltiplo
do comprimento de onda da portadora do sinal, os vrios componentes podem cancelar-se
mutuamente). O resultado disto que, no mesmo ambiente, podemos ter tima recepo em
alguns locais pssima recepo em outros locais a apenas poucos metros de distncia. Desta
forma, a qualidade da recepo varia muito a medida que uma estao se move no ambiente.
Figura 2.26 - Reflexo das ondas de rdio em um ambiente fechado
Como vrias estaes compartilham o mesmo meio, caracterizando uma rede de
difuso, necessrio utilizar um mtodo de acesso que discipline este compartilhamento. Uma
primeira abordagem seria utilizar CSMA, isto , cada estao escuta o meio e, se estiver livre,
envia seu quadro. Isto, no entanto, no to simples em redes sem fio em decorrncia do
alcance do sinal de rdio, como veremos a seguir.
Suponha a situao ilustrada na figura 2.27, onde quatro estaes sem fio esto
representadas. Suponha que um sinal oriundo de A pode alcanar B, mas no alcana C nem
D. Um sinal oriundo de C alcana B e D, mas no A.
Raio de alcance
(a)
(b)
201
no esto na rea de interferncia uma da outra, nada impede que C envie dados para D
enquanto B envia para A. Esta situao conhecida como o "problema da estao exposta"
(exposed station problem). Em resumo, o que realmente interessa a uma estao pretendendo
enviar um quadro em redes sem fio saber se h ou no atividade na rea do receptor.
Para resolver os problemas acima, a norma IEEE 802.11 utiliza em sua subcamada
MAC (chamada DFWMAC, para Distributed Foudation Wireless MAC) um protocolo de
acesso ao meio conhecido como MACA (Multiple Access with Collision Avoidance). A idia
bsica por trs deste protocolo fazer com que o emissor de um quadro estimule o receptor a
emitir um quadro pequeno que possa ser detectado pelos seus vizinhos antes de mandar os
dados em si.
Suponhamos agora que B quer enviar um quadro para C. Neste mtodo de acesso, a
estao B envia para C primeiro um quadro especial denominado RTS (Request To Send),
contendo o tamanho do quadro de dados que deseja enviar a seguir. C deve responder com
outro quadro especial chamado CTS (Clear To Send), contendo a mesma informao de
tamanho. B inicia a transmisso quando recebe o quadro CTS de C, conforme ilustrado na
figura 2.28. Qualquer estao que captar o quadro RTS estar forosamente prxima a B e
deve se manter em silencio por tempo suficiente para que B receba o CTS. Qualquer estao
que captar o CTS estar forosamente prxima a C e deve tambm se manter em silencio por
tempo suficiente para que C receba o quadro de dados que B vai enviar a seguir, cujo tamanho
pode ser avaliado examinando o quadro CTS. Vejamos como se comportam as demais
estaes: A escuta o RTS de B mas no o CTS de C, de modo que, desde que no queira
mandar dados para B, A pode enviar seus quadros a qualquer outra estao em seu raio de
alcance; Por outro lado, D escuta o CTS de C mas no o RTS de B, o que indica que est
prxima a uma estao que vai receber um quadro de dados logo a seguir e portanto deve se
manter em silencio at que este seja recebido.
CTS
RTS
A
Raio de alcance de B
Raio de alcance de C
(a)
(b)
202
Redes Submarinas:
Comunicao subaqutica tradicionalmente limitada a aplicaes militares (submarinos, torpedos
teleguiados, sonares).
Primeiro sistema de comunicao UWA (Under-Water Acoustic): telefone criado em 1945 para
comunicao com submarinos (guas rasas, modulao FSK de 8 a 11 khz).
Recentemente surgiram vrias aplicaes civis:
Explorao submarina para fins cientficos;
Soldagem e reparao de cascos de navios e dutos por robs submarinos;
Monitorao de poluio;
Veculos submarinos no tripulados (AUV = Autonomous Underwater Vehicles);
Sensores e atuadores submarinos (sismgrafos, vlvulas, etc.);
Comunicao entre mergulhadores;
Montagem/manuteno/operao de plataformas de explorao/produo de petrleo.
Gerao de sinais:
Sinais de rdio: para boa propagao na gua, requerem ondas de baixssima freqncia (30 a 300 Hz) => antenas
grandes e transmissores de alta potencia.
Sinais ticos: principal problema no atenuao, mas disperso.
Sinais acsticos: melhor soluo, podem se propagar na gua por milhares de Km.
203
Longo alcance: 20Km at 2.000Km, modulao FSK de 200Hz at 10KHz, taxas de transmisso baixas (tpico: 1
bps);
Mdio alcance: 1Km at 20Km, uso em guas rasas, modulao FSK de 10KHz at 100KHz, 5Kbps;
Curto alcance: at cerca de 60m, uso para robs de manuteno e mergulhadores em guas rasas, modulao FSK de
1MHz, taxa de 500Kbps.
Pesquisas atuais:
Uso de PSK e QAM (Quadrature Amplitude Modulation) em lugar de FSK;
Testes com sinais capazes de se propagar por todo o planeta (testado sinal gerado Austrlia e lido na
Califrnia/USA);
Desenvolvimento de ALAN (Acoustic LAN): tendncia de usar protocolos MACA e MACAW (IEEE 802.11),
multiplexao de canais por TDM ou CDMA+Spread Spectrum.
204
Com objetivos semelhantes ao MAP, foi desenvolvido pela BOEING a partir de 1983
o projeto TOP ("Technical and Office Protocol"), voltado redes para automao de reas
tcnicas e administrativas. Tambm baseado no modelo OSI de 7 camadas e tem como
finalidade fornecer aos usurios os seguintes servios: correio eletrnico, processamento de
textos, acesso a base de dados, transferncia de arquivos, CAD/CAM distribudo, troca de
documentos, transaes bancrias, entre outros.
A partir de 1986 os projetos MAP e TOP passaram a ser coordenados conjuntamente,
resultando no projeto MAP/TOP.
205
207
MMS, para a troca de mensagens entre equipamentos de produo (que ser visto em
detalhes mais a frente);
FTAM, para o acesso e a transferncia de arquivos;
ROS, para a gesto de nomes (diretrio);
funes de gerenciamento de rede, para a gesto dos recursos, medio de desempenho
e modificao dos parmetros da rede.
208
Especificao
Camada
Aplicao
Apresentao
Sesso
TOP
MAP
ACSE
FTAM
VTS
MAP/EPA
Mini-MAP
MMS
FTAM
ROS
Transporte
Rede
Enlace
Fsica
Banda Base
10 Mbps
Banda larga
10 Mbps
Banda base
5 Mbps
209
MAP
EPA
Aplicaes
Aplicaes
convencionais
com tempos
de resposta
Aplicao
crticos
Apresentao
Sesso
Transporte
Rede
ENLACE LLC tipos 1 e 3
MAC IEEE 802.4 - TOKEN BUS
Fsica
210
Aplicao
Conexes com
LSAPs
LLC tipos 1 e 3
211
VMD
Objetos
MMS
...
...
Estao
Operador 1
...
Estao
Funo EXECUTIVA
PSAPS
Figura 3.4 - Estrutura geral de um VMD
212
Operador N
214
215
Classe
Gesto de
Semforos
Estao
Operador
Gesto de
Eventos
Gesto de
Jornal
Primitivas de Servio
TakeControl
RelinquishControl
DefineSemaphore
DeleteSemaphore
ReportSemaphoreStatus
ReportPoolSemaphoreStatus
ReportSemaphoreEntryStatus
Input
Output
DefineEventCondition
DeleteEventCondition
GetEventConditionAttribute
ReportEventConditionStatus
AlterEventConditionMonitoring
TriggerEvent
DefineEventAction
DeleteEventAction
GetEventActionAttributes
ReportEventActionStatus
DefineEventEnrollment
DeleteEventEnrollment
GetEventEnrollment
ReportEventEnrollment
AlterEventEnrollment
EventNotification*
AcknowledgeEventNotification
GetAlarmSummary
GetAlarmEnrollmentSummary
AttachToEventModifier
ReadJournal
WriteJournal
InitializeJournal
ReportJournalStatus
* servios no confirmados
216
Comentrios
so encarregados da
sincronizao e do controle
do acesso aos recursos de um
VMD pelos processos de
aplicao
permitem o salvamento de
informaes sobre a execuo
de um VMD, particularmente
no que diz respeito
ocorrncia de eventos e
afetao de variveis.
Classe
Gesto de
Contexto
Gesto de
VMD
Gesto de
Domnio
Gesto de
Programas
Acesso a
Variveis
Primitivas de Servio
Initiate
Conclude
Abort*
Cancel
Reject*
Status
UnsolicitedStatus*
GetNameList
Identify
Rename
InitiateDownLoadSequence
DownLoadSegment
TerminateDownLoadSequence
InitiateUpLoadSequence
UpLoadSegment
TerminateUpLoadSequence
RequestDomainDownLoad
RequestDomainUpLoad
LoadDomainContent
StoreDomainContent
DeleteDomain
GetDomainAttribute
DomainFile
CreateProgramInvocation
DeleteProgramInvocation
Start
Stop
Resume
Reset
Kill
GetProgramInvocationAttributes
Read
Write
InformationReport
GetVariableAccessAttributes
DeleteNamedVariable
DefineScatteredAccessAttributes
DeleteVariableAccess
DefineNamedVariableList
GetNamedVariableListAttributes
DeleteNamedVariableList
DefineNamedType
GetNamedTypeAttributes
DeleteNamedType
* servios no confirmados
217
Comentrios
iniciao, liberao, abandono
e rejeio de conexo com
outro usurio MMS
permitem transferir
informaes, tais como
cdigos e dados de programa,
para serem carregados num
domnio de forma dinmica:
as seqncias DownLoad e
UpLoad so atividades que
permitem gerenciar as
transferncias entre Cliente e
Servidor
permitem a definio e o
acesso s variveis de um
VMD e estabelecer a relao
entre as variveis de um
VMD (objetos) e as variveis
real de um equipamento de
produo
218
TENDNCIA
Central / Analog.
Decentral / Digital
...
RS232C
Decentral / Multipoint
RS 422
RS 485
D
A
MUX
...
Fieldbus
.
. .
Proc.
Proc.
Proc.
Proc.
Proc.
Sample /
Hold
...
Cont.
A
0..10 V
Amplificador de
potncia
Adaptador /
Amplificador
Y
X
Sensor
Sensor
D
A
A
Cont.
Amplificador de
potncia
Y
Y
X
A
D
4..20 mA
0..10 V
4..20 mA
Proc.
...
Y
X
Sensor inteligente
Atuador Inteligente
Y
Y
X
X
Sensor inteligente
Amplificador de
potncia
Atuador Inteligente
Atuador
b) vantagens tcnico-operacionais:
219
c) vantagens sistmicas:
d) vantagens mercadolgicas:
Inicialmente se supunha que uma nica rede iria cobrir todas as necessidades de
interconexo no cho de fbrica. Notadamente a proposta MAP, acrescida das verses de
maior performance e menor custo MAP/EPA e MINI-MAP se propunham tambm a integrar
elementos de automao ao nvel hierrquico de componente. No entanto, logo pode ser
verificado que estas propostas eram demasiado caras e muito lentas para as aplicaes tpicas
a nvel hierrquico de componente.
Enquanto os segmentos de banda base do MAP (MAP-EPA e Mini-MAP) permitem a
realizao de tempos de resposta de cerca de 100 ms, sistemas tipo Fieldbus se prope a
reduzir este tempo para a faixa de 1 a 10 ms, como requerido para o controle e superviso de
importantes grandezas envolvidas na automao, tais como velocidade, posio de eixos,
torque, acelerao e fora.
Um aspecto essencial na definio de protocolos de comunicao para o Fieldbus a
reduo a um mnimo estritamente necessrio das informaes adicionais includas nos
telegramas, de forma a permitir uma adequada performance em tempo real. Estas
simplificaes em relao a sistemas tipo MAP e TOP so indispensveis quando se pretende
interligar componentes simples tais como sensores e atuadores. Para sistemas tipo Fieldbus
so definidas, por questes de eficincia, somente as camadas 1, 2 e 7 do modelo de referncia
OSI. As funes das camadas 3 at 6 que so indispensveis para a comunicao so aqui
absorvidas pelas camadas 2 ou 7.
220
O aspecto de custo tambm assume grande importncia, uma vez que os dispositivos a
serem interligados tem em geral custo inferior ao da prpria interface MAP, como pode ser
visto na tabela 4.1. So requeridos aqui ns a um custo da ordem de U$ 50 ou inferior.
Componente
MAP
Cabo Coaxial
Preo mdio
U$ 2,5 / m
Elemento
Campo
CLP
Preo mdio
U$ 3.000
Controlador
Demodulador
U$ 5.000
U$ 1.500
Controle Rob
PC
$20.000
U$ 2.000
Componente
Ethernet / IBM
N CSMA/CD
N Token-Ring
Preo mdio
Sensor/Atuador
U$ 50 a 1000
U$ 500 - 1500
U$ 750 - 1500
I/O Binria
U$ 50 a 1000
221
PROFIBUS
Siemens
Foxboro
Rosemount
USA
ISA SP50
Pre-Norma em preparao
IEC SC65C
Norma em 199?
MIL 1553
industrial
outros
FIP
EUREKA "Fieldbus"
Desenvolvimento e teste de um Fieldbus
para Processos Unitrios ( Ex )
estudos SP-50 da ISA (Intrumentation Society of America), que dever apresentar brevemente
uma proposta de normalizao americana e que leva em considerao partes das propostas FIP
e PROFIBUS bem como as propostas das firmas Faxboro e Rosemount / Philips.
Todas estas propostas sero examinadas pela comisso SC65C/WG6 da IEC
(International Electrotechnical Comission) para a elaborao de uma norma internacional. As
expectativas so de que a passagem da norma americana elaborada pela ISA SP-50 para a
norma internacional da IEC dever representar um passo meramente formal.
Ao lado das questes de normalizao permanecem ainda abertas discusso questes
referentes ao espectro de aplicaes a ser atendido pelo Fieldbus. Por um lado desejada uma
boa compatibilidade e interconectabilidade com os nveis hierrquicos superiores de
automao, por outro devem ser considerados os requisitos tcnicos e econmicos para a
conexo de componentes inteligentes simples e de baixo custo.
Enquanto solues que permitam uma compatibilidade com a definio da camada de
aplicao adotada no sistema MAP atravs da definio de Subsets do MMS so nitidamente
preferidas, permanece aberta a questo da adequao de tais sistemas para o acoplamento
direto de sensores e atuadores em processos com dinmica elevada, como o caso de sistemas
de controle em malha fechada na fabricao. A forma de estruturao fsica de uma tal malha
de controle com Fieldbus mostrada na Figura 4.3.
Processador central
I/O
+
-
Contr.
D/A
D/A
Aktor
Aktor
Atuador
Processo
sistema de controle
digital convencional
A/D
A/D
Sensor
Sensor
Sensor
Fieldbus
Aktor
Aktor
Aktor
Atuador
Processador Mestre
I/O
Sistema de controle
com Fieldbus
+
-
Contr.
Processo
Sensor
Sensor
Sensor
Sensor
223
3.4.2.1. INTRODUO
224
A camada de enlace do FIP no faz uma distino formal entre subcamadas LLC e
MAC, como proposto na norma IEEE 802.
O mtodo de acesso ao meio da rede FIP baseado na difuso ("Broadcasting"). A
difuso organizada por uma entidade centralizada denominada "rbitro de barramento". O
projeto FIP baseou-se no fato de que, nas redes industriais, uma informao gerada em um
determinado ponto pode interessar a vrias outras estaes (por exemplo, o dado gerado por
um sensor de temperatura pode interessar ao controlador, ao atuador e ao terminal de vdeo do
operador, simultaneamente).
A maioria dos dados transmitidos pelo barramento representada por objetos
(variveis). Cada objeto representado por um "nome" nico no sistema. Um objeto , por
definio, elaborado por um nico transmissor (produtor) e levado em conta por qualquer
nmero de receptores (consumidores). Devido ao uso da difuso, os endereos de
transmissores e receptores no precisam ser conhecidos pelas aplicaes.
A comunicao transcorre da seguinte forma (figura 4.4):
ID_DAT
rbitro
RP_DAT
rbitro
Figura 4.4 - Mtodo de acesso ao meio do FIP. a) rbitro difunde identificador. b) Produtor
difunde dados pedidos.
Em uma primeira fase, o rbitro difunde na rede o nome da varivel (objeto) a ser
transmitida (quadro de identificao);
O produtor da varivel difunde, em seguida, a informao ligada ao identificador
(quadro de dados);
225
PRE
FSD
EB
DFS
EB
FSS
FED
EB
FES
PRE : Prembulo
FSD : Frame Start Delimiter
EB : Equalization Bit
DFS : Data Frame Sequence - Controle, dados, FCS
FSS : Frame Start Sequence
FED : Frame End Delimiter
FES : Frame End Sequence
226
Maior importncia foi atribuda aos servios cclicos, de forma que no houve
preocupao com uma otimizao das demais classes.
Classe
Primitiva de servio
Comentrios
Atualizao cclica de
dados
L_PUT.req/cnf
L_SENT.ind
L_GET.req/cnf
L_RECEIVED.ind
atualiza dados
sinaliza envio
busca de dados
sinaliza recepo
Atualizao no peridica
de dados
Transmisso de
mensagem com ACK
L_PARAM.req/cnf
requisita um dado
L_MESSAGE_ACK.req/
ind/cnf
com reconhecimento
Transmisso de
mensagem sem ACK
L_MESSAGE.req/ind
sem reconhecimento
Classe
Primitiva de servio
227
Comentrios
Leitura de
variveis
A_READ.req/cnf
A_READFAR.ind
l nomes de variveis,
estruturas, status,
valores
Escrita de
variveis
Leitura do tipo de
varivel
Acesso listas de
variveis
A_WRITE.req/cnf
A_WRITEFAR.ind
A_GETOBJECT_DESCRIPTION.req/
cnf
A_READLIST.req/cnf
A_WRITELIST.req/cnf
escreve especificao,
valor, status
l especificao
Servios de
sincronizao
A_SEND.ind
A_RECEIVE.ind
sincronizao local e
remota
l e escreve atributos,
valores
O projeto FIP definiu uma srie de funes de gerenciamento de rede, que permitem
coordenar as vrias fases do ciclo de vida da mesma. Para inicializar a rede preciso:
Configurar a rede (definio de parmetros, identificadores e listas de objetos, gerar
tabelas de varredura);
Implementar e testar a configurao.
do fieldbus. Esta proposta atualmente apoiada por cerca de 110 empresas europias e
internacionais (Siemens, ABB, AEG, Bosch, entre outras). Em 1996 tornou-se um padro da
comunidade europia, sob a designao EN50170.
Como nas demais redes fieldbus para aplicaes industriais, para atender aos requisitos
de tempo de resposta, o PROFIBUS implementa o modelo de referncia ISO/OSI reduzido a
trs camadas (1, 2 e 7), descritas a seguir.
3.4.3.2. A CAMADA FSICA
A exemplo da norma IEEE 802, o PROFIBUS define duas subcamadas para a camada
de Enlace de Dados: a subcamada de controle de acesso ao meio (MAC) e a subcamada de
controle de ligao lgica (LLC).
Na subcamada MAC, o PROFIBUS combina dois mtodos determinsticos de acesso
ao meio: as estaes ditas "ativas" encontram-se em um anel lgico, no qual o direito de
acesso ao meio repassado ciclicamente por passagem de token (baseado na especificao
IEEE 802.4), enquanto as estaes ditas "passivas" comportam-se como escravas, isto , s
tem acesso ao meio por requisio da estao ativa detentora do token. O PROFIBUS
representa assim uma combinao dos mtodos "Master/Slave" e "Token-Passing" (figura
4.6). O token s repassado entre as estaes ativas.
Estaes ativas podem entrar e sar do anel lgico de forma dinmica, como previsto
na norma IEEE 802.4. O token repassado na ordem ascendente de endereos, seguindo uma
lista de estaes ativas (LAS, List of Active Stations). Esta lista gerada na inicializao e
atualizada sempre que uma estao entra ou sai do anel lgico.
229
anel lgico
Mestre 1 (ativa)
Mestre 2 (ativa)
Token
Escravo 1
(passiva)
Escravo 2
(passiva)
...
Escravo n
(passiva)
Cada quadro formado por vrios caracteres UART. Um caracter UART composto
de 11 bits: 1 bit de inicio ("start bit"), 8 bits de dados, 1 bit de paridade e 1 bit de finalizao
("stop bit"). Em particular tm-se os seguintes campos em cada quadro:
Primitiva de servio
Comentrios
FDL_DATA
FDL_DATA_ACK
FDL_CYC_REPLY
FDL_CYC_DEACT
FDL_REPLY
FDL_REPLY_UPDATE
FDL_SEND_UPDATE
FDL_CYC_DATA_REPLY
FDL_CYC_DEACT
FDL_DATA_REPLY
FDL_DATA_UPDATE
FDL_DATA_REPLY
FDL_REPLY_UPDATE
FDL_REPLY
FDL_REPLY_UPDATE
232
Classe
Servios de
Acesso a
variveis
Servios de
Notificao de
Eventos
Primitivas de servio
READ
WRITE
INFORMATION_REPORT
PHY_WRITE
PHY_READ
DEFINE_VARIABLE_LIST
DELETE_VARIABLE_LIST
INITIATE_DOWNLOAD_SEQUENCE
DOWNLOAD_SEGMENT
TERMINATE_DOWNLOAD_SEQUENCE
INITIATE_UPLOAD_SEQUENCE
UPLOAD_SEGMENT
TERMINATE_UPLOAD_SEQUENCE
REQUEST_DOMAIN_DOWNLOAD
REQUEST_DOMAIN_UPLOAD
CREATE_PROGRAM
INVOCATION_DELETE_PROGRAM
INVOCATION_START
INVOCATION_STOP
INVOCATION_RESUME
INVOCATION_RESET
ALTER_EVENT_COND._MONITORING
EVENT_NOTIFICATION
ACK_EVENT_NOTIFICATION
Servios de
Leitura de
Status
STATUS
UNSOLICITED_STATUS
STATUS_IDENTIFY
Servios de
Gerenciamento
de Dicionrio
de Objetos
Servios de
Gerenciamento
de Contexto
GET_OV
PUT_OV
INITIATE_PUT_OV
TERMINATE_PUT_OV
INITIATE
REJECT
ABORT
Servios de
Acesso a
Domnios
Servios de
Invocao de
Programas
Comentrios
leitura e escrita de
variveis contidas
em dispositivos
servidores
transferncia de
dados ou programas
de dispositivo cliente
para dispositivo
servidor e vice-versa
partida, parada,
retorno da execuo,
retorno ao estado
inicial e deleo de
programas
servidor notifica
cliente a ocorrncia
de um evento
(alarme)
informaes acerca
do estado dos
dispositivos
servidores
descrio de todos os
objetos na rede
(nomes, endereos,
tipos de dados, etc)
estabelecimento e
encerramento de
associao entre dois
dispositivos e a
rejeio de
mensagens recebidas
233
DTE (Data Terminal Equipment), que aqui inclui as funcionalidades das camadas de
aplicao, de enlace e a parte da camada fsica independente do meio de transmisso
adotado;
DCE (Data Communication Equipment), que aqui inclui as partes da camada fsica
que dependem do meio.
3.4.4.2. A CAMADA FSICA
Subcamada DIS (Data Independent Sublayer): atua como interface com a camada de
enlace, recebendo pedidos de servio desta e repassando os dados recebidos (DTE);
234
Propostas alternativas utilizando fibra tica e sinais de rdio esto sendo estudadas.
Camada de Enlace
DIS
(Data Independent Sublayer)
MDS
(Medium Dependent Sublayer)
MAU
(Medium Attachment Unit)
Meio Fsico
Figura 4.7 - A camada fsica do SP-50
3.4.4.3. A CAMADA DE ENLACE
235
LAS
Estao
qualquer
LM
Token de escalonamento
LM
LM
Token circulado
Token delegado
236
Camada de Aplicao
238
Alm das funcionalidades das camadas j vistas, a proposta SP-50 inclui um conjunto
de funes de gerenciamento de rede, como:
3.4.5. Concluses
239
Categoria
8 Data lines
Linha
DIO 1-8
DAV
Nome
Data I/O
Data Valid
3 Handshake lines
NRFD
NDAC
REN
IFC
5 Interface Management lines SRQ
Interface Clear
Service Request
EOI
ATN
Endo or Identify
Attention
241
Tipicamente definem as duas primeiras camadas do modelo OSI (fsica e enlace). Algumas
caractersticas destas redes so apresentadas na tabela 5.2.
Acesso ao Meio
ETHERNET
CSMA/CD
ARCNET
Token-passing
TOKEN-RING
Token-passing
Velocidade
Nmero de ns
10 Mbps
1024
2.5 Mbps
254
4 ou 16 Mbps
255
Meio de
transmisso
Par tranado
Fibra tica
Cabo coaxial
Star/Bus
Par tranado
Fibra tica
Cabo coaxial
Star/Bus
Par tranado
Cabo coaxial
Topologia
Ring
redes ARCNET, Ethernet e Token-Ring). Oferece servios a nvel das camadas de sesso e
apresentao.
3.5.4.2. LAN-MANAGER
O Sistema operacional para redes da Microsoft o maior concorrente de mercado do
Novell-Netware. Na versao original, devia operar sobre o sistema operacional OS/2 no
servidor. H verses para MVS (IBM) e VMS (DEC). O pacote foi integrado posteriormente
no sistema operacional Windows 95. O LAN-Manager, a exemplo do Netware, oferece
servios a nvel da camadas de sesso e apresentao mas engloba tambm as funcionalidades
do protocolo TCP/IP (ver adiante).
3.5.4.3. LAN-SERVER
Sistema operacional para redes da IBM, inicialmente desenvolvido em conjunto com o
LAN-Manager da Microsoft. Opera sobre o sistema operacional OS/2.
3.5.4.4. PC-LAN
Sistema operacional que opera sobre a rede Token-Ring da IBM, interligando
computadores PC. Requer o NetBios para funcionar.
3.5.4.5. NETBIOS
O NetBios uma Interface para Programas de Aplicao (API, Application Program
Interface) desenvolvido pela IBM que prov servios a nvel das camadas de rede e transporte
para PC-LAN e LAN-Server.
3.5.4.6. TCP/IP
Os protocolos TCP/IP foram desenvolvidos pela UCB (University of California at
Berkeley) para a ARPA ("Advanced Research Projects Agency") em 1969, muito antes da
definio do modelo de referncia ISO/OSI. Sua aplicao original era militar (a ARPA
vinculada ao DoD, Departamento de Defesa dos EUA). O par de protocolos conhecido como
TCP/IP uma herana do projeto ARPANET.
Os servios oferecidos pelo protocolo ARPANET permitem transferir arquivos (ftp),
executar comandos remotamente (telnet), enviar e receber correio eletrnico (mail), entre
outros.
O protocolo TCP ("Transmission Control Protocol") usado para implementar o
sequenciamento e o controle de fluxo de informaes e corresponde aproximadamente
camada de transporte do modelo OSI.
243
244
245
Impresso remota:
LPR (Line Printer Redirection): executa o redirecionamento de arquivos de
impresso para um host atravs de uma rede TCP/IP.
LPD (Line Printer Daemon): servidor de impresso para hosts remotos em uma
rede TCP/IP.
Execuo remota:
RSH (Remote Shell Protocol): executa um shell remotamente em outro host
atravs de uma rede TCP/IP.
REXEC (Remote Execution Command Protocol): um servidor o qual permite a
execuo de um comando REXEC de um host remoto atravs de uma rede TCP/IP.
246
Servidor de Boot:
BOOTP (BOOTstrap Protocol): um servidor de boot remoto para hosts atravs
de uma rede TCP/IP. Muito utilizado por terminais grficos (normalmente
Diskless).
A figura 5.1 mostra uma relao aproximada entre o modelo de referncia OSI/ISO e a
arquitetura usualmente vinculada aos protocolos TCP/IP.
Modelo de Referncia ISO/OSI
Aplicao
FTP
TELNET
...
Apresentao
Sesso
Transporte
Rede
Enlace
Fsica
IP (Internet protocol)
LLC
MAC
Placa
247
Apresentao
LAN-Manager
Sesso
Novell Netware
LAN-Manager
Novell Netware
LAN-Manager
PC-LAN
PC-LAN
LAN-Server
Novell Netware
Transporte
TCP/IP
NETBIOS
Rede
Enlace
Ethernet
Fsica
Token
Ring
ARCNet
SINEC L2: rede fieldbus compatvel com a norma alem PROFIBUS. oferecida em
3 verses:
SINEC L2-DP: sistema desenvolvido para aplicaes que exijam respostas rpidas,
especialmente aquelas envolvendo sistemas remotos de I/O (como CLPs ligados a
sensores e atuadores). Utiliza o padro RS485 ou fibra tica na camada fsica.
Com a interface RS485 pode-se ter um cabo de 1200 metros com uma taxa de
transmisso de 93.75 Kbps, 1000 metros com taxa de 187.5 Kbps, 200 metros com
taxa de 1.5 Mbps ou 100 metros com taxa de 12 Mbps. Suporta at 127 estaes
em 4 segmentos de rede ligados por repetidores. Prev uma operao com mestre
nico (single master) e escravos, adotando portanto somente o protocolo
248
PC - Gerente FMC
PC- Visao
Rede Profibus
RC
Camera
CCD
CNC
Torno
Romi-Mazak
tcd
Esteira transportadora
Micrometro
Laser
Robo IPSO
SP-50
249
Funo de Acesso
Funo de Comando
X
Create_Task
Delete_Task
X
X
Get_Function_ID
RAC_Protect
Read_IO
X
X
X
Write_IO
Update_IO
X
X
Upload_Memory
Download_Memory
OR_IO
X
X
X
AND_IO
XOR_IO
X
X
Status_Read
Status_Write
X
X
Tabela 5.3 - Servios RAC do Bitbus
250
Em 1986 o sistema Bitbus tornou-se um padro, sob a designao IEEE 1118. Mais de
2,5 milhes de dispositivos com interface Bitbus esto no mercado, produzidos por mais de
50 empresas diferentes.
3.5.5.3. CAN (CONTROLLER AREA NETWORK)
Uma rede do tipo fieldbus que vem ganhando ateno crescente a rede CAN
(Controller Area Network), desenvolvida originalmente pela BOSCH para integrar elementos
inteligentes em veculos autnomos (eletrnica "embarcada"). Um automvel moderno, por
exemplo, pode possuir mais de 200 microprocessadores, controlando funes como
carburao eletrnica, frenagem anti-bloqueante (ABS), controle e superviso da temperatura
do leo e do radiador, presso de leo de freio, ajuste automtico de espelhos retrovisores,
banco do motorista, etc.
O sistema CAN teve sua primeira verso lanada em 1984. Em 1987 foi produzido o
primeiro chip que implementa em hardware as funes de comunicao, o 82526, produzido
pela INTEL. A partir de 1991 vrios outros fabricantes foram licenciados para a fabricao de
chips para CAN. Entre eles temos a Phillips (chips 82C200, 87C592, 82CE598 e 82C150), a
Motorola (chip 68HC05), a NEC (chip 72005), alm da Siemens, da Thompson e da
National.
Apesar de ter sido concebido para uso em eletrnica embarcada, os grupos de trabalho
da rea de automao vislumbraram a adequao do sistema para uso como rede local
industrial e formaram uma entidade chamada CiA (CAN in Automation), constituda de
usurios e fabricantes de produtos baseados no protocolo. At abril de 1993, a CiA j contava
com 64 associados no ligados a industria automobilstica.
CAN tem as seguintes caractersticas a nvel da camada fsica (padro ISO/DIS 11898):
Topologia: barramento ou estrela (com concentrador);
Taxa de transmisso: 125 Kbps ou 1 Mbps;
Comprimento mximo do barramento: 40 m para 1 Mbps; at 1 Km para 125 Kbps;
Nmero mximo de ns: 16;
Codificao de bits: NRZ (Non Return to Zero);
Meio de transmisso: no especificado na norma, mas usualmente usado par tranado
ou fibra tica.
A nvel da subcamada MAC, temos:
Mtodo de acesso ao meio: Forcing Headers (ver seo 2.2.1.3) com prioridades para
mensagens.
251
Frame CAN
S
O
F
11 bit
IDENTIFIER
Control Length
Field
0 to 8 bytes Data
Arbitration
Field
CRC
A E
C O
K F
Data Field
SOF - Start of Frame
EOF End of Frame
CRC - Cyclic Redundancy Check (CRC 16)
ACK - Acknowledgment
252
N 1 Transmite:
0
10110110100
00000001
E
xxxx 11 O
F
N 2 Transmite:
0
N 2 perde arbitragem
e pra transmisso!
10110111
No meio:
0
10110110100
00000001
E
xxxx 01 O
F
Modelos de comunicao:
Frame no contm campos especficos para endereo destino/origem.
Campo IDENTIFIER pode conter endereo de uma estao, grupo de estaes
(multicasting) ou mensagens so difundidas para todas as estaes (broadcasting).
Campo IDENTIFIER pode identificar o contedo da mensagem (dados), que
difundida para todas as estaes.
Gerador da mensagem: PRODUTOR.
Estaes interessadas no contedo da mensagem: CONSUMIDORES.
CAN tambm no define uma especificao para a camada de Aplicao, mas o grupo
CiA definiu uma especificao para aplicaes em automao, composta dos seguintes
elementos de servio:
253
A rede VAN (Vehicle Area Network) foi normalizada em 1990 na Frana pelo Bureau
de Normalisation de l'Automobile para operar em eletrnica embarcada. A partir de 1992
passou a ser adotada pela Renault e pela Peugeot.
A rede VAN possui as seguintes propriedades a nvel da camada fsica:
Topologia: barramento;
Taxa de transmisso: 100 Kbps at 250 Kbps;
Nmero mximo de ns: 16;
Camada 7
Camada 2
Application Layer
DeviceNet
Physical Signaling
Camada 1
Transceiver
Transmission Media
DeviceNet
Ramificaes
Daisy-chain
Par tranado com dois fios:
255
PS
Selados:
T - Tap
Drop lines
Multiport Tap
- 0 a 6m
Abertos:
Droplines
Daisy chaining:
Distancias e velocidades:
256
Droplines
Tap
Tap
Dropline
At 6 metros do Tap
Conector plug-in
para dispositivo
Data
Rate
Usar em painis de
controle que
agrupam
dispositivos
Ramificaes
Barramento
Dist. TAP
Cumulativo
125K
500m
26 x 6m
156m
250K
250m
13 x 6m
78m
500K
100m
6 x 6m
36m
Camada fsica:
Topologias: barramento, rvore, estrela
Taxa transmisso: 5 Mbps
Estaes endereveis: at 99
Distncias:
Cabo coaxial RG-6: 1.000 m com 2 ns, 500 m com 32 ns, 250 m com 48 ns (sem repetidores), mximo de 5.000 m
com 5 repetidores
Fibra: 3.000 m sem repetidores, at 30 km com 5 repetidores
258
Camada de enlace:
Controle de erros no frame por Cyclic Redundancy Check, polinmio CCITT modificado com 16 bits.
Campo de dados com at 510 bytes.
MAC: CTDMA (Concurrent Time Domain Multiple Access), que regula a oportunidade de transmitir de cada n em
intervalos de tempo ajustveis chamados NUT (Network Update Time). A menor NUT de 2ms.
Informaes com restries temporais so enviadas na parte escalonada da NUT. Dados sem restries temporais
(ex.: Dados de configurao) so enviados nos intervalos restantes de tempo.
Camada de aplicao:
Orientao a objetos
Modos de comunicao:
Master/Slave
Multi-Master
Peer-to-Peer
Produtor/consumidor
Leitura de dados:
Mudana de estado
Cclico
Por solicitao
dados atualizados das entradas do mesmo escravo. Em seguida, o primeiro escravo envia o
quadro completo (agora com seus dados locais no campo reservado) para o prximo escravo
no anel. O processo se repete at que o quadro tenha percorrido todos os escravos do anel e
retornado ao mestre. A comunicao se d, portanto, sempre entre o mestre e os escravos. Este
princpio ilustrado na figura 5.4.
Master
Slave 1
FCS M4 M3 M2 M1
Slave 2
Slave 3
Slave 4
L
M1
At.
M1
L
M2
At.
M2
L
M3
At.
M3
L
M4
At.
M4
4 bit parameter
4 bit data
Test bit
Command-bit
Start bit
Stop bit
Figura 5.5 - Quadro do mestre ASI
262
4 bit data
Test bit
Start bit
Stop bit
ASI
Master
Slave 1
Slave 2
I/O 1
...
Slave 31
I/O 120
I/O 4
I/O 124
263
Slave
ASI
sensor
264
MMS
NM
OD
Apresentao
Sesso
VAZIO
Transporte
Rede
LLC 802.2 tipo 3
Enlace
Fsica
Baseband
5 / 10 Mbps
Fibra tica
10 Mbps
Um timer programvel;
Sistema completo de memria, contendo 10 Kbyte ROM, 1 Kbyte RAM e 512 Bytes
EEPROM para parmetros de rede;
3 temporizadores tipo Watch-Dog (1 para cada processador);
266
Para que a rede eltrica de um prdio, fbrica ou residncia possa ser configurada como
um barramento de rede LON, so usados capacitores para interligar segmentos diferentes de
fio, resultando em curto-circuitos somente para sinais de alta freqncia, como os usados para
transmitir dados via rede, mas representando linha aberta para o sinal de 60 Hz da rede de
energia.
A nvel da camada de enlace, subcamada MAC, utilizado um protocolo de acesso ao
meio CSMA preditivo p-persistente com deteco de coliso e atribuio de prioridades s
mensagens. Este protocolo preditivo, ou seja, prev o trfego na rede, somente quando
usado servio com reconhecimento. A subcamada LLC suporta somente servios sem conexo
(com ou sem reconhecimento) e oferece funes de montagem de quadros e checagem de
erros com CRC.
LonWorks oferece ainda uma srie de elementos para interconexo de subredes LON,
incluindo roteadores (por exemplo, RTR-10) e pontes. Uma rede LON pode assim ser
composta de vrias subredes, com meios fsicos diversos, conforme a figura 5.10.
267
N
N
Fibra tica
N
Router
Par tranado
N
Router
Rede eltrica
N
N
Router
N RF
N RF
N RF
268
E
token
Temperatura
Motor
CLP
M
Controller
M
Vazo
E
E
Peso
269
Vrios anis podem ser interligados entre si por meio de estaes do tipo P-NETController, que executam a funo de roteadores ou gateways, como ilustrado na figura 5.12.
E
E
M
Controller
E
E
M
E
E
M
Controller
270
271
Sendo assim, a rede usada principalmente para enviar valores de referncia de velocidade do
CNC aos acionamentos e receber valores atualizados dos mesmos.
Na camada de enlace, SERCOS faz distino entre dois tipos de dados:
Dados cclicos, com caractersticas de tempo real, usados para controle em malha
fechada;
Dados de servio, usados para configurao, envio de parmetros, etc.
A arquitetura da rede diferente para cada um dos dois tipos de dados acima referidos.
Para dados de servio usada uma pilha com 3 camadas (fsica, enlace e aplicao), como
usual nas redes tipo fieldbus. Para os dados cclicos ainda includa uma camada de
sincronizao abaixo da de aplicao, cuja funo bsica realizar a sincronizao dos timers
de todas as estaes, de modo a permitir a aquisio de dados em instantes de tempo idnticos
em todas as estaes e a aplicao de novos valores de referncia para as malhas de controle
tambm de forma sincronizada. A subcamada LLC usa um servio sem conexo e sem
reconhecimento, de forma que quadros errados no so retransmitidos.
A camada de aplicao nica para ambos os tipos de dados e composta de servios
tipo leitura e escrita de variveis remotas (READ/WRITE).
SERCOS vem sendo utilizada tambm para interligar dispositivos em outras aplicaes
alm das mquinas-ferramenta. Entre as aplicaes mais usuais esto o controle de eixos de
robs industriais e conexo de sensores e atuadores binrios.
3.5.5.14. MODBUS
O protocolo MODBUS foi criado em 1978 pela Modicon (hoje Schneider Automation).
O protocolo visava originalmente implementar uma maneira simples de transferir dados entre controladores,
sensores e atuadores usando uma porta RS232 (serial convencional).
Aps sua criao, tornou-se padro industrial de-facto adotado por muitas empresas com uma segunda opo
para intercmbio de dados.
MODBUS um protocolo proprietrio da Schneider Automation. No entanto, a Schneider Automation optou
por uma licena sem royalties e as especificaes do protocolo esto disponveis em seu web-site gratuitamente.
Home-Page: http://modbus.org/
MODBUS uma estrutura de troca de mensagens usada para comunicao tipo mestre/escravos entre
dispositivos inteligentes.
Como o protocolo MODBUS somente uma estrutura de troca de mensagens, ele independente da camada
fsica subjacente.
272
MODBUS usualmente implementado usando RS232, RS422, ou RS485 sobre uma variedade de meios de
transmisso (fibra, rdio, celular, etc.).
Algumas variantes do protocolo original foram criadas posteriormente.
MODBUS PLUS: um protocolo de maior velocidade baseado em token passing e que usa a estrutura de
mensagens do MODBUS original. Os chips MODBUS PLUS so disponibilizados pela Schneider Automation
atravs de um programa chamado MODCONNECT.
MODBUS TCP/IP: usa TCP/IP e Ethernet para transportar a estrutura de mensagens MODBUS.
MODBUS/TCP requer uma licena, mas as especificaes so de acesso pblico e no h royalties. MODBUS
TCP est disponvel na pgina: http://www.modicon.com/openmbus.
ADDRESS
FUNCTION
DATA
CHECKSUM
Address: contm 2 caracteres ASCII ou 8 bits RTU. Endereos vlidos de escravos esto na faixa de 0 a 247
decimal. Endereos individuais esto na faixa de 1 a 247 (0 para broadcasting).
Function: contm 2 caracteres (ASCII) ou 8 bits (RTU). Cdigos vlidos vo de 1 a 255 decimal. Este campo
indica ao escravo que ao este deve executar. Exemplos: ler grupo de entradas; ler dados de um grupo de
registradores; ler status do escravo para diagnstico; escrever em um grupo de sadas ou registros; permitir
carregamento, gravao ou verificao do programa no escravo. Quando o escravo responde ao mestre, este
campo indica se a operao ocorreu sem erros (ecoa dado recebido) ou se uma resposta de exceo (ecoa dado
recebido com Msb em 1).
Data: usa 2 dgitos hexadecimais na faixa de 00 a FFh. Estes podem ser 2 caracteres ASCII ou um RTU.
Contm dados adicionais para uso do escravo (endereos de portas de I/O ou registros, quantidades de itens a
manipular, etc.). Se no houverem erros, este campo retorna o valor solicitado ao escravo. Se houver erro, este
campo retorna um cdigo de exceo. Este campo pode ser vazio.
Checksum: so usados 2 tipos de checagem de erros (LRC ou CRC), dependendo do modo de transmisso
(ASCII ou RTU)
Mais detalhes: MODBUS protocol guide na pgina http://www.modicon.com/techpubs/toc7.html.
Usurio
Apresentao
servios NAU
Fluxo Dados
Sesso
Transporte
Controle
Transmisso
Rede
Controle
Caminho
Enlace
Controle
Enlace
Fsica
Ligao
Fsica
274
BIBLIOGRAFIA
[1]Tanenbaum, A. S. : "Computer Networks". 3rd Edition, Prentice-Hall, 1996.
[1]Halsall, F. : "Data Communications, Computer Networks and OSI". Addison Wesley,
1988.
[2]Soares, L.F.G.; Lemos, G.; Colcher, S. : "Redes de Computadores: das LANs, MANs e
WANs s redes ATM". Editora Campus, 2a. Edio, 1995.
[3]Electronics Industries Association (EIA) : "EIA-RS511 - Manufacturing Message
Specification". Draft 6, May 1987.
[4]Glass, B. : "Understanding NetBios". Byte, pp. 301-306, January 1989.
[5]Graube, M. : "The Carrier-Band Network and Mini-MAP: Low Cost Solution". Control
Engineering, pp. 30-31, October 1986.
[6]IEEE : "Project 802, Local Networks Standards". IEEE, New York, 1983.
[7]IBM : "MAP - Manufacturing Automation Protocol". IBM, 1990.
[8]ISO : "Information Processing Systems - Open Systems Interconection - Basic Reference
Model". ISO / TC97 / SC16, 1983.
[9]Leite, J. R. E. : "O Modelo de Referencia para a Interconexo de Sistemas Abertos".
Telebrs, pp. 11-15, Junho 1985.
[10]MAP/TOP : "Manufacturing Automation Protocol / Technical Office Protocol, Version
3.0". Users Group of SME, July 1987.
[11]Mendes, M. J. : "Comunicao Fabril e o Projeto MAP/TOP". Editora Kapeluz,
Argentina, 1989.
[12]Mohr, H. B. : "Avaliao de Desempenho de Rede PDV em Ambiente Industrial". Tese de
Doutorado, UFSC / RWTH-Aachen, Julho 1989.
[13]Pimentel, J. R. : "Communication Networks for Manufacturing". Prentice-Hall, New
Jersey, USA, 1990.
[14]Shoch, J. F. : "Evolution of the Ethernet local computer network". IEEE Computer, pp.
10-27, August 1982.
[15]Zimmerman, H. : "OSI Reference Model - The ISO Model of Architecture for Open
Systems Interconnection". IEEE trans. Commun., Vol. 28, pp. 425-432, April 1980.
[16]Wood, G. G. : "International Standards Emerging for Fieldbus". Control Engineering,
Vol. 2, pp. 22-25, October 1988.
[17]Stemmer, M. R. : "Einsatzmoeglichkeiten digitaler Feldbussysteme in geschlossenen,
maschineninternen Regelkreisen". Tese de Doutorado, RWTH-Aachen, Alemanha, Julho
1991.
[18]Arvind, K.; Ramamritham, K.; Stankovic, J.A. : A Local Area Network Architecture for
Communication in Distributed Real-Time Systems. The Journal of Real-Time Systems,
pp. 115-147, Kluwer Academic Publishers, 1991.
275
[19]Le Lann, G.; Rivierre, N. : Real-time Communications over Broadcast Networks: the
CSMA-DCR and the DOD-CSMA-CD Protocols. Rapport de Recherche, INRIA, Frana,
1993.
[20]Kurose, J.F.; Schwartz, M.; Yemini, Y. : Multiple-Access Protocols and TimeConstrainde Communication. Computing Surveys 16(1), pp. 43-70, March 1984.
[21]Tindell, K.; Burns, A.; Wellings A.J. : Analysis of Hard Real-Time Communications.
The Journal of Real-Time Systems, nr. 9, pp. 147-171, Kluwer Academic Publishers, 1995.
[22]Le Lann, G. : On Real-Time and Non Real-Time Distributed Computing. Workshop on
Distributed Algorithms, Springer Verlag, Sep. 1995.
[23]Diversos autores : "Feldbus". Edio especial da revista "Elektronik Plus", Franzis-Verlag
GmbH, Mnchen, Alemanha, 1992.
[24]Echolon : "LonTalk protocol specification". Version 3.0, USA, 1994.
276