Você está na página 1de 207

U UN NI IV VE ER RS SI ID DA AD DE E F FE ED DE ER RA AL L D DE E S SA AN NT TA A C CA AT TA AR RI IN NA A

D DE EP PA AR RT TA AM ME EN NT TO O D DE E I I N NF FO OR RM M T TI IC CA A E E D DE E E ES ST TA AT T S ST TI IC CA A
C CU UR RS SO O D DE E P P S S- -G GR RA AD DU UA A O O E EM M C CI I N NC CI IA A D DA A C CO OM MP PU UT TA A O O
A AR RQ QU UI IT TE ET TU UR RA A D DE E R RE ED DE ES S
D DE E C CO OM MP PU UT TA AD DO OR RE ES S
P PR RO OF F. . V VI I T T R RI I O O B BR RU UN NO O M MA AZ ZZ ZO OL LA A
m ma az zz zo ol l a a@ @i in nf f. .u uf fs sc c. .b br r
M Ma ai io o / / 2 20 00 00 0
VITRIO BRUNO MAZZOLA obteve o ttulo de Engenheiro Eletricista pela Universidade
Federal de Santa Catarina (UFSC) em 1981 e o ttulo de Mestre em Engenharia Eltrica pela
mesma instituio em 1985. Em 1991, obteve o diploma de Doutor em Informtica Industrial
pela Universit Paul-Sabatier em Toulouse (Frana). professor da UFSC desde 1985,
tendo atuado por mais de 10 anos junto ao Departamento de Engenharia Eltrica, tendo
desenvolvido suas atividades de pesquisa no Laboratrio de Controle e Microinformtica
(LCMI). Atualmente, ocupa o cargo de Professor Titular da UFSC, estando lotado no
Departamento de Informtica e de Estatstica (INE), onde entre outras atividades, atua como
Coordenador de Pesquisas do INE. Com relao participao junto a sociedades
cientficas, foi Diretor-Secretrio da Sociedade Brasileira de Automtica entre 1993 e 1995 e
ocupou o cargo de Diretor-Regional Sul e de membro do Conselho Tcnico-Administrativo
desta mesma Sociedade no binio 1996-1998. Suas reas de atuao so, prioritariamente,
Redes de Computadores e Engenharia de Software.
Endereo para contato:
Prof. Vitrio Bruno Mazzola
Departamento de Informtica e de Estatstica
Universidade Federal de Santa Catarina
Campus Universitrio Trindade
88040-900 Florianpolis SC
Tel.: (048) 331-9498 / 9971-3975
Fax: (048) 331-9566
E-mail: mazzola@inf.ufsc.br
http://www.inf.ufsc.br/~mazzola
i
S SUMRI O UMRI O
CAPTULO 1 INTRODUO S REDES DE COMUNICAO
1. Histrico das Redes de Comunicao.................................................................1.1
2. Importncia das Redes de Comunicao............................................................1.2
3. Extenso e Topologia............................................................................................1.2
4. Aspectos Arquiteturais ..........................................................................................1.4
5. Tecnologias de Transmisso de Dados...............................................................1.9
CAPTULO 2 O MODELO DE REFERNCIA OSI
1. Introduo..............................................................................................................2.1
2. Fundamentos e Arquitetura...................................................................................2.1
3. Servios e Protocolos...........................................................................................2.3
4. A Arquitetura OSI e as Funes das Camadas ...................................................2.4
5. A Comunicao no OSI ........................................................................................2.7
6. Os Conceitos do Modelo OSI ...............................................................................2.7
7. As Primitivas de Servio.....................................................................................2.10
CAPTULO 3 AS SETE CAMADAS DO MODELO OSI
1. Introduo..............................................................................................................3.1
2. A Camada Fsica..................................................................................................3.1
3. A Camada de Enlace de Dados ...........................................................................3.5
4. A Camada de Rede.............................................................................................3.10
5. A Camada de Transporte....................................................................................3.16
6. A Camada de Sesso.........................................................................................3.21
7. A Camada de Apresentao...............................................................................3.28
8. A Camada de Aplicao......................................................................................3.36
ARQUITETURA DE REDES DE COMPUTADORES SUMRIO PROF. VITRIO BRUNO MAZZOLA
ii
CAPTULO 4 AS REDES LOCAIS
1. Introduo..............................................................................................................4.1
2. Classificao das Redes de Computadores........................................................4.1
3. Parmetros de Comparao................................................................................4.2
4. Caractersticas das Redes Locais .......................................................................4.3
5. Histrico................................................................................................................4.4
6. Definies Bsicas ...............................................................................................4.4
7. RM-OSI e as Redes Locais ..................................................................................4.5
8. Os Sistemas Operacionais de Rede....................................................................4.6
9. O Padro IEEE 802...............................................................................................4.7
10. Ethernet 802.3.....................................................................................................4.10
11. A Rede Local Ethernet ........................................................................................4.12
12. Configurao da Ethernet ...................................................................................4.15
13. Fast Ethernet.......................................................................................................4.15
14. Token Ring e IEEE 802.5....................................................................................4.16
15. Cabeamento Estruturado....................................................................................4.18
CAPTULO 5 REDES LOCAIS INDUSTRIAIS
1. Introduo..............................................................................................................5.1
2. Nveis Hierrquicos da Integrao Fabril ..............................................................5.1
3. As Redes na Empresa..........................................................................................5.2
4. Aspectos da Comunicao em Ambiente Industrial.............................................5.2
5. Caractersticas Bsicas das Redes Industriais ...................................................5.4
6. Projetos de Padronizao de Redes Industriais ..................................................5.6
7. Projeto MAP...........................................................................................................5.7
8. Redes Fieldbus ...................................................................................................5.16
CAPTULO 6 INTERCONEXO DE REDES
1. Introduo..............................................................................................................6.1
2. Aspectos da Conectividade ..................................................................................6.2
3. A Interconexo segundo o Modelo OSI.................................................................6.3
4. As Diferentes Possibilidades de Interconexo .....................................................6.4
5. As Pontes..............................................................................................................6.4
6. Os Roteadores......................................................................................................6.6
7. As Passarelas.......................................................................................................6.8
ARQUITETURA DE REDES DE COMPUTADORES SUMRIO PROF. VITRIO BRUNO MAZZOLA
iii
CAPTULO 7 ENGENHARIA DE PROTOCOLOS
1. Introduo..............................................................................................................7.1
2. As Etapas de Concepo dos Protocolos de Comunicao...............................7.1
3. Especificao de Protocolos de Comunicao ...................................................7.2
4. A Validao de Protocolos de Comunicao .....................................................7.11
5. A Implementao dos Protocolos de Comunicao..........................................7.19
6. O Teste de Protocolos de Comunicao...........................................................7.19
7. Concluso.......................................................................................................... 7.20
CAPTULO 8 REDES DE PETRI
1. Introduo........................................................................................................... 8.1
2. Redes de Petri Definio Bsica................................................................... 8.1
3. Propriedades das Redes de Petri ...................................................................... 8.6
4. Representao de Dados e de Aspectos Temporais...................................... 8.12
5. Redes de Petri Coloridas ................................................................................. 8.15
6. Redes de Petri Predicados-Transies........................................................... 8.18
7. Redes de Petri Temporizadas ......................................................................... 8.21
8. Redes de Petri Temporais ............................................................................... 8.22
9. Concluso......................................................................................................... 8.24
CAPTULO 9 A TCNICA ESTELLE
1. Introduo..............................................................................................................9.1
2. As Tcnicas de Descrio Formal Padronizadas................................................9.1
3. A Tcnica de Descrio Formal Estelle...............................................................9.2
4. Os Trabalhos Realizados em torno de Estelle...................................................9.18
CAPTULO 10 ESTADO DA ARTE EM REDES
1. Introduo............................................................................................................10.1
2. A Rede Digital de Servios Integrados - ISDN....................................................10.1
3. A Rede FDDI.......................................................................................................10.8
4. A Pesquisa em Redes de Comunicao - Estado da Arte................................10.9
BIBLIOGRAFIA............................................................................................................... B.1
1.1
Captulo 1 Captulo 1
A AS S R REDES DE EDES DE C COMPUTADORES OMPUTADORES
1. HISTRICO DAS REDES DE COMUNICAO
A evoluo da microeletrnica e da informtica tem possibilitado a obteno de
processadores e outros componentes de computadores cada vez mais potentes e velozes,
num tamanho mais reduzido e num preo cada vez mais acessvel a um maior nmero de
pessoas.
Os microprocessadores existentes hoje em dia e que ocupam o espao menor do
que uma caixa de fsforos substituem e ultrapassam as capacidades dos computadores de
alguns anos atrs, que ocupavam salas inteiras. Estes eram mquinas bastante complexas
no que diz respeito sua utilizao e que ficavam em salas isoladas onde muito poucas
pessoas tinham acesso, sendo operadas apenas por especialistas (analistas de sistema).
Os usurios daqueles computadores normalmente submetiam seus programas aplicativos
como jobs (ou tarefas) que executavam sem qualquer interao com o processamento do
programa.
Uma primeira tentativa de interao com o computador ocorreu no incio dos anos 60,
com a tcnica de time-sharing, que foi o resultado do desenvolvimento das tele-impressoras
e da tecnologia de transmisso de dados. Nesta tcnica um conjunto de terminais era
conectado a um computador central atravs de linhas de comunicao de baixa velocidade,
o que permitia aos usurios interagir com os seus programas. A necessidade de conexo de
terminais para o processamento interativo foi o ponto de partida para o estabelecimento de
necessidades de comunicao nos computadores. A tcnica de time-sharing permitia a um
grande conjunto de usurios o compartilhamento de um nico computador para a resoluo
de uma grande diversidade de problemas e as aplicaes desenvolvidas foram cada vez
mais se multiplicando e se diversificando (clculos complexos, produo de relatrios,
ensino de programao, aplicaes militares, etc...). Este aumento na demanda implicava
numa necessidade crescente de atualizaes e incrementos nas capacidades de clculo e
de armazenamento nas unidades central o que nem sempre era vivel ou possvel, dado que
os computadores do tipo mainframes nem sempre eram adaptados para suportar
determinadas extenses.
Nos anos 70, com o surgimento dos minicomputadores, foi possvel adaptar as
capacidades de processamento s reais necessidades de uma dada aplicao. Alm disso,
dado que a nvel de uma empresa um grande nmero de usurios operavam sobre
conjuntos comuns de informaes, a necessidade do compartilhamento de dados, de
dispositivos de armazenamento e de perifricos entre os vrios departamentos de uma
empresa deu um novo impulso aos trabalhos no sentido de se resolver os problemas de
comunicao entre os computadores. Este novo tipo de aplicaes exigia uma velocidade e
uma capacidade de transmisso muito mais elevadas que no caso da conexo de terminais
a um computador central. Assim, com a utilizao de minicomputadores interconectados,
obtinha-se uma capacidade de processamento superior quela possvel com a utilizao dos
mainframes. Outro aspecto interessante que as redes podiam ser estendidas em funo
CAP. 1 INTRODUO S REDES DE COMPUTADORES PROF. VITRIO BRUNO MAZZOLA
1.2
das necessidades de processamento das aplicaes. Alm disso, a modularidade natural
das redes de computadores era tal que uma falha num minicomputador (ou de comunicao
da rede) tinha um efeito bastante limitado em relao ao processamento global.
Atualmente, as vantagens dos sistemas distribudos e interconectados so uma
evidncia reconhecida para as aplicaes mais diversas, desde a automao de escritrios
at o controle de processos, passando por aplicaes de gerenciamento bancrio, reservas
de passagens areas, processamento de texto, correio eletrnico, etc...
2. IMPORTNCIA DAS REDES DE COMUNICAO
Um grande nmero de empresas possui atualmente uma quantidade relativamente
grande de computadores operando nos seus diversos setores. Um exemplo deste fato
aquele de uma empresa que possui diversas fbricas contendo cada uma um computador
responsvel das atividades de base da fbrica (controle de estoques, controle da produo
e, o que tambm importante, a produo da folha de pagamentos). Neste exemplo, apesar
da possibilidade de operao destes computadores de maneira isolada, evidente que sua
operao seria mais eficiente se eles fossem conectados para, por exemplo, permitir o
tratamento das informaes de todas as fbricas da empresa. O objetivo da conexo dos
diferentes computadores da empresa permitir o que poderamos chamar de
compartilhamento de recursos, ou seja, tornar acessveis a cada computador todos os
dados gerados nas diversas fbricas da empresa.
Um outro ponto importante da existncia das Redes de Comunicao relacionado a
um aumento na confiabilidade do sistema como um todo. Pode-se, por exemplo, ter
multiplicados os arquivos em duas ou mais mquinas para que, em caso de defeito de uma
mquina, cpias dos arquivos continuaro acessveis em outras mquinas. Alm disso, o
sistema pode operar em regime degradado no caso de pane de um computador, sendo que
outra mquina pode assumir a sua tarefa. A continuidade de funcionamento de um sistema
ponto importante para um grande nmero de aplicaes, como por exemplo: aplicaes
militares, bancrias, o controle de trfego areo, etc.
A reduo de custos uma outra questo importante da utilizao das Redes de
Comunicao, uma vez que computadores de pequeno porte apresentam uma menor
relao preo/desempenho que os grandes. Assim, sistemas que utilizariam apenas uma
mquina de 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.
3. EXTENSO E TOPOLOGIA
3.1. Redes locais e redes de longa distncia
Na seo anterior foram apresentados dois exemplos de implementao de Redes
de Comunicao: no primeiro caso, o sistema era composto de diversos computadores
espalhados cada um numa fbrica da empresa.
No segundo caso, o sistema era composto de diversos microcomputadores,
podendo todos estar localizados na mesma sala ou em salas vizinhas num mesmo edifcio.
A diferena na dimenso das Redes de Comunicao introduz diferentes problemas
e necessidades e deve ento, fazer objeto de uma classificao. No que diz respeito ao
exemplo dos microcomputadores, a rede classificada como sendo uma Rede Local (ou
LAN - Local rea Network), caracterizada particularmente por uma pequena extenso,
limitando-se normalmente interconexo de computadores localizados numa mesma sala,
num mesmo prdio ou num campus.
No exemplo da empresa possuindo diversas fbricas, a rede utilizada permitiria
conectar computadores localizados em diferentes prdios numa mesma cidade ou mesmo
CAP. 1 INTRODUO S REDES DE COMPUTADORES PROF. VITRIO BRUNO MAZZOLA
1.3
em cidades distantes de uma dada regio. Esta caracteriza uma Rede de Longa Distncia
ou Rede Geograficamente Distribuda (ou WAN - Wide rea Network).
3.2. As diferentes topologias
Um ponto importante no que diz respeito concepo de uma rede de comunicao
a definio da maneira como as diferentes estaes sero associadas. Inicialmente,
podemos distinguir dois tipos principais de concepo: os canais em modo ponto-a-ponto e
os canais de difuso.
Nos canais em ponto-a-ponto, a rede composta de diversas linhas de
comunicao, cada linha sendo associada conexo de um par de estaes.
Neste caso, se duas estaes devem se comunicar sem o compartilhamento de um
cabo, a comunicao ser feita de modo indireto, atravs de uma terceira estao. Assim,
quando uma mensagem (ou pacote) enviada de uma estao a outra de forma indireta (ou
seja, atravs de uma ou mais estaes), ela ser recebida integralmente por cada estao
e, uma vez que a linha de sada da estao considerada est livre, retransmitida estao
seguinte.
Esta poltica de transmisso tambm conhecida por store and forward ou
comutao de pacotes. A maior parte das redes de longa distncia so do tipo ponto-a-
ponto.
As redes ponto-a-ponto podem ser concebidas segundo diferentes topologias. As
redes locais ponto-a-ponto so caracterizadas normalmente por uma topologia simtrica; as
redes de longa distncia apresentam geralmente topologias assimtricas. A figura 1.1
apresenta as diferentes topologias possveis nas redes ponto-a-ponto.
Uma outra classe de redes, as redes de difuso, so caracterizadas pelo
compartilhamento, por todas as estaes, de uma linha nica de comunicao. Neste caso,
as mensagens enviadas por uma estao so recebidas por todas as demais conectadas
ao suporte, sendo que um campo de endereo contido na mensagem permite identificar o
destinatrio.
Na recepo, a mquina verifica se o endereo definido no campo corresponde ao
seu e, em caso negativo, a mensagem ignorada. As redes locais pertencem geralmente a
esta classe de redes. Nas redes de difuso, existe a possibilidade de uma estao enviar
uma mesma mensagem s demais estaes da rede, utilizando um cdigo de endereo
especial; neste caso, todas as estaes vo tratar a mensagem recebida.
Figura 1.1 - Topologias ponto-a-ponto: estrela, anel, malha regular, malha irregular e rvore.
CAP. 1 INTRODUO S REDES DE COMPUTADORES PROF. VITRIO BRUNO MAZZOLA
1.4
Pode-se ainda especificar uma mensagem de modo que esta seja enviada a um
subgrupo de estaes da rede. A figura 1.2 apresenta algumas topologias possveis no caso
das redes a difuso. Numa rede em barramento, uma nica mquina autorizada a cada
instante a transmitir uma mensagem a estao mestre do barramento. As demais
estaes devem esperar autorizao para transmisso.
Para isto, um mecanismo de arbitragem deve ser implementado para resolver
possveis problemas de conflito (quando duas ou mais estaes querem enviar uma
mensagem), este mecanismo podendo ser centralizado ou distribudo.
No caso das redes de satlite (ou rdio), cada estao dotada de uma antena
atravs da qual pode enviar e receber mensagens. Cada estao pode escutar o satlite e,
em alguns casos, receber diretamente as mensagens enviadas pelas demais estaes.
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.
4. ASPECTOS ARQUITETURAIS
4.1. Servios necessrios comunicao
Como visto nas sees precedentes, as redes de computadores podem se
caracterizar por diferentes configuraes e topologias. Apesar da diversidade no que diz
respeito a este aspecto, todas as possveis configuraes tm um objetivo comum a
transferncia de dados.
Figura 1.2 - Topologias das redes de difuso: barramento, satlite e anel
CAP. 1 INTRODUO S REDES DE COMPUTADORES PROF. VITRIO BRUNO MAZZOLA
1.5
O problema que se coloca ento relacionado especificao dos procedimentos e
mecanismos que devem ser implementados para viabilizar o funcionamento da rede. A
resoluo deste problema baseada principalmente no conhecimento prvio das funes
que devem ser suportadas pela rede, assim como do ambiente no qual ela vai ser inserida.
Estes aspectos sero mostrados aqui atravs de alguns exemplos. O primeiro exemplo
baseado nas polticas de time-sharing j descrita na seo 1. Vamos considerar o caso em
que temos apenas um terminal conectado a um computador, como mostrado na figura 1.3.
Considerando que um usurio vai servir-se do terminal para processar informaes
no computador central, para que isto seja possvel, necessrio que o computador central
seja dotado do programa necessrio ao tratamento daquelas informaes. Em caso positivo,
o terminal e o computador devem estabelecer um dilogo que permita o bom desenrolar das
operaes de tratamento das informaes. Este dilogo dever permitir, por exemplo, que o
usurio comunique sua inteno (de processar as informaes!) ao computador e, em
seguida, envie as informaes a serem processadas. Uma vez efetuado o tratamento, o
computador deve retornar os resultados ao terminal.
Esta seqncia de operaes, apesar de aparentemente elementar, requer a
satisfao de uma srie de condies. Vamos supor, por exemplo, que o computador central
e o terminal tenham sido fabricados de forma totalmente independente um do outro, o que
pode ter resultado numa diferente filosofia no que diz respeito ao formato das informaes.
Um primeiro obstculo a ser vencido aquele da linguagem; o terminal deveria ento
se adaptar linguagem do computador central.
Resolvido o problema de compreenso, um outro problema encontrado diz respeito
aos possveis erros de transmisso que podem ocorrer durante a comunicao, uma vez
que as linhas de comunicao esto sujeitas a rudos e outros fenmenos podendo provocar
perdas de informao.
Uma outra questo pode ainda estar relacionada velocidade de funcionamento dos
dois elementos. Se considerarmos que o computador central opera numa velocidade
superior do terminal, por exemplo, o terminal corre o risco de ser bombardeado pelo fluxo
de dados vindo do computador, o que vai exigir ento o estabelecimento de um mecanismo
de controle do fluxo de informao.
Resumindo, a rede de comunicao deve, alm de suprir as funes de transmisso
e tratamento de informaes, oferecer servios de adaptao, deteco e correo de erros
de transmisso e controle de fluxo.
Vamos considerar agora que, ao invs de um nico terminal, vamos conectar um
maior nmero deles ao computador central (figura 1.4).
Aqui, cada terminal pode, a princpio e a qualquer momento, tomar a iniciativa da troca de
dados com o computador. Isto significa que cada terminal ter de ser caracterizado por um
endereo especfico, cuja utilizao correta vai permitir evitar que o computador central envie
as informaes aos terminais de maneira indevida.
Figura 1.3 - Terminal conectado a um computador central
CAP. 1 INTRODUO S REDES DE COMPUTADORES PROF. VITRIO BRUNO MAZZOLA
1.6
Figura 1.4 - Configurao com vrios terminais
Por outro lado, se o nmero de terminais conectados ao computador central torna-se
relativamente elevado (a fim de permitir a utilizao mxima da capacidade de
processamento deste), ser necessrio organizar as interaes entre terminais e o
computador central em sesses, de tal forma que, ao trmino de uma sesso entre um
terminal e o computador central, este ter liberados determinados elementos (envolvidos
naquela sesso) que podero atender outros terminais em estado de espera.
Ainda, considerando que nem todos os terminais vo efetuar o mesmo tipo de
tratamento de forma simultnea, dever-se-, ento, especificar a aplicao associada.
Assim, todas as necessidades vistas neste exemplo devero ser associadas s
funcionalidades definidas no exemplo anterior. Mas os problemas no terminam por aqui... (
impossvel, no momento, prever onde terminaro os problemas!)
Vamos considerar ainda um exemplo, mais particularmente o de uma rede contendo
diversos computadores, terminais, etc... , cada um destes elementos constituindo um n da
rede (figura 1.5). Neste exemplo, os dois elementos envolvidos numa comunicao no
sero mais necessariamente adjacentes; alm disso, podem existir diversas maneiras de
conect-los, o que vai corresponder a diferentes caminhos. No exemplo mostrado na figura,
os ns 1 e 5 podem ser conectados por pelos menos uns 10 caminhos e a escolha de qual
caminho utilizar dever ento ser realizada, o que no uma tarefa to simples quanto
possa parecer.
Ainda, se a rede da classe ponto-a-ponto (ou comutao de pacotes), o sistema de
comunicao deve assegurar a correta transmisso (transporte) da informao de um ponto
a outro. Particularmente, ser necessrio garantir que as mensagens enviadas sero
recuperadas e reconstitudas na ordem correta no ponto de chegada.
Um requisito tambm importante o aspecto da codificao das mensagens de
modo a evitar o acesso a informaes de parte de usurios alheios ao sistema considerado.
A esta funo, pode-se eventualmente acrescentar a tcnicas de compresso de dados,
necessria se a informao enviada demasiadamente redundante e o custo da
comunicao alto.
4.2. Questes organizacionais
Uma vez listadas as diferentes necessidades relacionadas a uma rede de
comunicao, a questo que se coloca a da viabilidade de um projeto de rede, dada a
quantidade de funes a implementar.
CAP. 1 INTRODUO S REDES DE COMPUTADORES PROF. VITRIO BRUNO MAZZOLA
1.7
1
2
3
5
4
Figura 1.5 - Configurao com vrios computadores e terminais.
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 da comunicao entre duas empresas.
Vamos supor que o Diretor de uma Empresa A quer comunicar com o Diretor de uma
Empresa B. Ele convoca a sua Secretria Administrativa e solicita, informalmente, que esta
construa um texto relativo ao assunto a ser tratado. A Secretria Administrativa elabora o
documento e o entrega ao Office Boy que vai envelop-lo e encaminh-lo ao Chefe do Setor
de Malote. Este ltimo encaminha o documento ao Servio Postal para conduo Empresa
B.
Considerando que a Empresa B apresenta uma estrutura similar Empresa A (como
ilustrado na figura 1.6), os mesmos elementos atuam, cada um em suas funes para
fazer com que a correspondncia chegue s mos do Diretor da Empresa.
Diretor
Empresa
Secretria
Administrativa
Office
Boy
Chefe
Malote
Empresa A
Servio Postal
Empresa B
Diretor
Empresa
Secretria
Administrativa
Office
Boy
Chefe
Malote
Figura 1.6 - Filosofia de concepo das redes, ilustrada por um processo de relaes entre empresas.
CAP. 1 INTRODUO S REDES DE COMPUTADORES PROF. VITRIO BRUNO MAZZOLA
1.8
Este processo 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.
Podemos considerar que a comunicao entre dois ns de uma rede uma tarefa
global que afeta um sistema complexo e, consequentemente, 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 de um sistema que seja aceitvel, 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.
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 1.7 ilustra uma arquitetura hierarquizada em 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 de forma a evitar que estas necessitem conhecer certos aspectos da
implementao destes servios.
A camada n assume a comunicao com a camada n de uma outra mquina. Para
faz-lo, 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. 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 1.7, pelas linhas tracejadas ligando cada par de processos
de uma camada.
CAP. 1 INTRODUO S REDES DE COMPUTADORES PROF. VITRIO BRUNO MAZZOLA
1.9
Camada 7
Camada 6
Camada 5
Camada 4
Camada 3
Camada 2
Camada 1
Meio de Transmisso
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
SISTEMA B SISTEMA A
Interface
6/7
Interface
6/7
Interface
5/6
Interface
5/6
Interface
4/5
Interface
4/5
Interface
3/4
Interface
3/4
Interface
2/3
Interface
2/3
Interface
1/2
Interface
1/2
Figura 1.7 - Modelo hierarquizado em 7 camadas.
Cada camada comunica-se com as camadas adjacentes atravs de uma interface,
que define as operaes elementares e os servios que a camada inferior oferece camada
considerada.
No momento da definio do nmero de camadas que vai compor uma rede e do
papel que cada uma delas deve cumprir, uma tarefa importante ser a definio completa
das interfaces entre as camadas; isto vai implicar que na definio do servio oferecido por
cada camada.
Uma vantagem da correta definio das interfaces a facilidade da 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.
5. TECNOLOGIAS DE TRANSMISSO DE DADOS
5.1. Principais Caractersticas
Podemos definir transmisso como a tcnica do transporte do sinal por um meio, de
um ponto a outro afastado. Em particular, a transmisso de dados apresenta diversas
caractersticas referentes ao sentido da transmisso, nmero de canais utilizados,
sincronismo entre transmissor e receptor e velocidade de transmisso.
Um equipamento pode ser projetado de tal forma que a transmisso sobre um
determinado meio seja feita em uma das seguintes formas (sentido):
Simplex - quando a transmisso feita em um nico sentido.
Half-duplex - quando a transmisso feita nos dois sentidos mas no ao
mesmo tempo.
Full-duplex - quando a transmisso feita nos dois sentidos simultaneamente.
CAP. 1 INTRODUO S REDES DE COMPUTADORES PROF. VITRIO BRUNO MAZZOLA
1.10
Uma mensagem definida como um conjunto de smbolos. Cada smbolo, por sua
vez, para efeito de transmisso de dados, caracterizado por um conjunto de configuraes
do sinal que representam bits. Por necessidade de codificao, os smbolos ficam
associados a caracteres, que so, na realidade, configuraes de sinais. Na verdade, uma
mensagem nada mais que uma seqncia de bits. Para transferir essa seqncia de bits,
podemos fazer de duas formas: serial ou paralela. Na transmisso paralela, os bits que
compem um caracter so transportados de forma simultnea, cada um possuindo seu
prprio canal, conforme mostra a figura 1.8.
Na transmisso serial, os bits que compem um caracter so transportados um aps
o outro, utilizando apenas um canal, como ilustrado na figura 1.9.
1
1
0
1
0
0
1
0
1
1
0
1
0
0
1
0
EMISSOR RECEPTOR
canal 0
canal 1
canal 2
canal 3
canal 4
canal 5
canal 6
canal 7
Figura 1.8 - Transmisso paralela.
1 1 0 1 0 0 1 0
1 1 0 1 0 0 1 0
1
1
0
1
0
0
1
0
EMISSOR
RECEPTOR
Figura 1.9 - Transmisso serial.
Como os bits chegam um de cada vez, o equipamento receptor dever saber qual bit
o primeiro do caracter, a fim de que possa decodificar o smbolo recebido, ou quais bits
so realmente de informao. Este um problema de sincronizao. Sincronizao pode
ser vista, ento, como o mtodo do equipamento transmissor fazer a separao dos
caracteres ou das mensagens para o equipamento receptor. Existem dois modos de se
fazer sincronizao e eles so conhecidos como transmisso sncrona e transmisso
assncrona. Todos os dois modos dizem respeito transmisso serial.
Na transmisso serial assncrona, a sincronizao alcanada precedendo-se cada
caracter de um elemento de start e colocando-se, aps os bits de dados um elemento de
stop. Geralmente os dados so transmitidos serialmente em um nmero fixo de bits,
dependendo do cdigo usado.
Na transmisso serial sncrona, a sincronizao alcanada transmitindo-se os bits
de um caracter seguidos imediatamente pelos bits do prximo caracter, no havendo
elementos de start/stop entre eles. O conjunto de caracteres que formam uma mensagem
dividido em blocos. O tamanho destes blocos varia desde alguns poucos caracteres at
centenas deles, dependendo dos equipamentos envolvidos na transmisso.
CAP. 1 INTRODUO S REDES DE COMPUTADORES PROF. VITRIO BRUNO MAZZOLA
1.11
A sincronizao na transmisso sncrona se faz antes que um bloco de informao
seja enviado pelo equipamento transmissor. Ela alcanada pelo envio de uma configurao
de bits chamada "caracter de sincronizao" que precede o bloco a ser transmitido. Neste
caso, a sincronizao feita mediante um ou dois bytes de sincronismo que so
configuraes de bits designadas para este fim. Do mesmo modo que iniciada, a
comunicao sncrona encerrada, no por um bit, mas por um ou mais caracteres de fim
de transmisso.
Os caracteres iniciais e finais de um bloco em transmisso sncrona constituem o
envelope do bloco, que pode ou no ser uma mensagem completa e tem funes anlogas
as do envelope de uma carta, inclusive a de conter tambm o endereo do destinatrio. A
ordem correta dos bits que constituem o envelope do bloco definida por um conjunto de
regras chamado protocolo de comunicao. So exemplos destes protocolos para
transmisso sncrona: BSC, SDLC e HDLC.
As vantagens de transmisso assncrona so: gerao de caracteres por meio de
dispositivos eletromecnicos e transmisso de caracteres irregularmente espaados no
tempo. As desvantagens so: uma parte considervel do que transmite no transporta
informao til: a sincronizao depende dos start/stop que podem no ser detectados por
causa de distores do sinal. Uma utilizao da transmisso assncrona quando no se
necessita de transmisso freqente de informao.
A transmisso sncrona apresenta, como vantagem, uma melhor proteo contra
erros, pois ao trmino de cada bloco uma configurao de bits para deteco de erros pode
ser enviada; mais eficiente pois a proporo de mensagem transmitida como informao
em relao configurao de sincronizao maior que na transmisso assncrona; no
to sensvel distoro e opera a velocidades bem mais altas que no modo assncrono. As
desvantagens so: caso haja erro de sincronizao, todo bloco perdido; os caracteres so
enviados em blocos e no antes destes poderem ser formados, obrigando que os
equipamentos sejam dotados de memria de armazenamento para a coleta dos caracteres
at que se forme o bloco com o comprimento usado pelo equipamento. Memria, nesse
caso, so buffers, o que encarece seu custo.
5.2. Largura de Banda e Capacidade de Canal
A taxa em que podemos enviar dados sobre um canal proporcional largura de
banda do canal (ou bandwidth). O termo largura de banda no tem qualquer relao com as
freqncias que so transmitidas no canal. Ele indica apenas a diferena entre os limites
inferior e superior das freqncias que so suportadas pelo canal. Por exemplo, um canal
que admite freqncias da ordem de 1500 a 5000 Hz, tem uma largura de banda igual a
5000-1500 = 3500Hz. Da mesma forma, um canal que admite freqncias que vo desde
18000 Hz a 21500 Hz tambm apresenta uma largura de banda 3500 Hz (21500 - 18000).
A largura de banda de um canal de comunicao constitui uma medida da mxima
taxa de informao que pode ser transmitida pelo canal. Largura de banda significa o
espectro de freqncia que o canal capaz de transmitir. Sobre a questo de quantos
estados de sinalizao podem ser transmitidos e distinguidos separadamente no receptor de
um sistema de comunicao de dados pode-se dizer que, examinados os fatores que
influenciam esse nmero de estados, podemos definir o conceito de capacidade do canal.
Rudo, distoro e flutuaes na atenuao do sinal portador tm influncia no
nmero de estados de sinalizao. Este nmero de estados observado na unidade de
tempo (segundo). Quanto maior o nmero de estados que podem ser transmitidos e
distinguidos, maior ser a capacidade do canal. Podemos ento concluir que a capacidade
do canal est intimamente relacionada com a velocidade de transmisso, pois quanto maior
o nmero de estados mais bits por segundo podero ser transmitidos. Da medir-se
capacidade na unidade bits/segundo.
Diferentes tipos de sinais (voz humana, msica, dados, imagem) necessitam de
diferentes capacidades de canal, as quais so indicadas em termos de largura de banda e
CAP. 1 INTRODUO S REDES DE COMPUTADORES PROF. VITRIO BRUNO MAZZOLA
1.12
outros fatores que influenciam a capacidade de um canal. Conhecida, pois, a largura de
banda de um canal de comunicao, pode-se estabelecer a mxima taxa de sinalizao que
o mesmo pode conduzir sem erro, o que denominado de capacidade do canal de
comunicao.
5.3. Distoro e Rudo na Transmisso
Atenuao, rudo e retardo so termos usados de um modo geral para descrever
as modificaes que um sinal sofre quando transmitido em um circuito ou canal. Essas
alteraes resultam de imperfeies na propagao do sinal, ao longo do suporte de
transmisso (atenuao e retardo) e de perturbaes (rudos) que atuam no s no suporte
de transmisso como tambm nos estgios de processamento do sinal que compem o
receptor. Quando a alterao sofrida pelo sinal muito grande, pode ocorrer a deteco
trocada da informao binria, isto , deteco de "1" quando foi transmitido o "0" ou
deteco de "0" quando foi transmitido o "1". Estas deteces trocadas caracterizam os
chamados erros de transmisso.
O desempenho de um sistema de transmisso de dados avaliado atravs do seu
grau de confiabilidade na transmisso dos bits. A taxa de erros de um sistema de
transmisso representa a probabilidade de ocorrncia de erros de transmisso.
Para redes de longa distncia existe uma padronizao internacional que determina
uma taxa de erros mxima em um canal a fim de que o mesmo possa ser considerado
adequado para a transmisso de dados. O ITU recomenda uma taxa de erros no superior a
10
-5
, isto , 1 bit errado a cada 100.000 bits transmitidos. Para redes locais, de maneira
geral, admite-se taxas de erros tpicas da ordem de 10
-9
a 10
-12
.
A transmisso sem erros um requisito essencial de quase todas as aplicaes de
comunicao de dados e portanto, uma srie de mecanismos deve ser implementada para
detectar e corrigir possveis erros. A maneira usual utilizada para detectar a alterao de bits
de informao transmitidos, consiste na adio de bits de redundncia na mensagem a ser
transmitida. Dentre as vrias tcnicas usadas para esta finalidade pode-se citar: bits de
paridade por caracter, paridade longitudinal e cdigos de redundncia cclica (CRC).
5.4. Comutao
A funo de comutao, ou chaveamento, em uma rede de comunicao refere-se
alocao dos recursos da rede (meios de transmisso, repetidores, sistemas
intermedirios, etc.) para a transmisso pelos diversos dispositivos conectados. A alocao
destes recursos est intimamente ligada forma de multiplexao dos meios de
transmisso, que ser discutida mais adiante. As formas de comutao so denominadas
comutao de circuitos, comutao de mensagens e comutao de pacotes.
A comutao de circuitos pode ser realizada se existir um caminho dedicado de
comunicao entre duas estaes. Esta comunicao envolve 3 fases: estabelecimento do
circuito, transferncia de informaes e desconexo do circuito. Na comutao de circuitos o
caminho alocado durante a fase de estabelecimento da conexo permanece dedicado
quelas estaes at que uma delas, ou ambas, decida desfazer o circuito. Caso o trfego
entre as estaes no seja contnuo e constante a capacidade do meio fsico ser
desperdiada. O caminho dedicado entre a origem e o destino pode ser: um caminho fsico
formado por uma sucesso de enlaces fsicos, uma sucesso de canais de freqncia
alocados em cada enlace ou uma sucesso de canais de tempo alocados em cada enlace.
Este tipo de comutao bastante utilizada em sistemas telefnicos.
Na comutao de mensagens no necessrio o estabelecimento de um caminho
dedicado entre as estaes. Se uma estao deseja transmitir uma mensagem ela adiciona
o endereo de destino da mesma poder ser transmitida pela rede de n em n, utilizando
apenas um canal por vez. A mensagem armazenada e retransmitida em cada n (store-
and-forward).
CAP. 1 INTRODUO S REDES DE COMPUTADORES PROF. VITRIO BRUNO MAZZOLA
1.13
A comutao de pacotes semelhante comutao de mensagens, sendo que a
principal diferena est no tamanho da mensagem sendo transmitida, que neste caso tem
tamanho reduzido e limitado. Neste caso as mensagens com tamanho acima de um limite
devem ser fragmentadas em unidades menores denominadas pacotes. Os pacotes que
formam uma mensagem podem estar sendo transmitidos simultaneamente pela rede em
diferentes enlaces, o que reduz o atraso de transmisso total da mensagem. Redes com
comutao de pacotes requerem ns de comutao com menor capacidade de
armazenamento e procedimentos de recuperao de erros mais eficientes do que para
comutao de mensagens.
5.5. Multiplexao
Quando a banda passante de um meio fsico for maior ou igual banda passante
necessria para um sinal podemos transmitir mais de um sinal neste meio fsico. Esta
tcnica denominada multiplexao.
As duas principais tcnicas de multiplexao so: multiplexao por diviso de
freqncia (FDM) e multiplexao por diviso de tempo (TDM). A primeira tcnica divide
a largura de banda em diversas larguras de banda menores, cada qual com seu prprio
domnio de freqncias. Cada uma destas componentes pode ser usada individualmente
como se ela fosse uma linha separada. A segunda tcnica intercala os bits, que fluem das
linhas de baixa velocidade, dentro da linha de maior velocidade. Em ambos os mtodos o
resultado que uma linha transmite em paralelo um nmero de sinais de linhas de
velocidades mais baixas.
Uma desvantagem da FDM a relativa dificuldade de expanso porque, uma vez
determinado o nmero de sub-canais sobre a linha compartilhada, pode ser difcil adicionar
novos sub-canais j que as freqncias em um grupo devem ser reatribudas. Na TDM na
qual o tempo disponvel dividido para os terminais; a largura de banda interna da linha de
alta velocidade ocupada pelo sinal de uma das linhas de baixa velocidade por unidade de
tempo, ento a largura de banda dedicada ao trfego da prxima linha de baixa velocidade
e assim por diante. O multiplexador examina os sinais das linhas de baixa velocidade com
uma ordem pr-definida. A linha de alta velocidade ocupada com um nico sinal em um
determinado instante. Esta tcnica assim, totalmente diferente da FDM, na qual todos os
sinais so enviados ao mesmo tempo, porm cada um ocupando uma diferente poro da
largura de banda.
A FDM ajusta-se naturalmente dentro do mundo dos sinais analgicos e a TDM tem
sido amplamente usada com sinais digitais. A TDM geralmente mais eficiente do que a
FDM porque mais sub-canais podem ser colocados. FDM usa guardas-de-banda para
separar freqncias alocadas. Similarmente, alguma perda do tempo ocorre com TDM. As
fatias de tempo alocadas devem ser separadas por um espao de tempo umas das outras.
A TDM pode ser utilizada quando a capacidade (em quantidade de bits por segundo)
do meio de transmisso, em muitos casos excede a taxa mxima de gerao de bits da
estaes conectadas ao meio fsico. Quando isto ocorre vrios sinais podem ser
transportados por um nico caminho fsico, intercalando-se pores de cada sinal durante o
tempo. A TDM pode ser sncrona ou assncrona. Na TDM sncrona o domnio do tempo
dividido em intervalos de tamanho fixo denominados frames, que por sua vez so
subdivididos em subintervalos denominados slots. Cada estao deve esperar o seu slot
dentro de cada frame quando ento poder transmitir dentro do tempo daquele slot utilizando
a taxa de transmisso mxima suportada pelo meio fsico. A TDM assncrona procura
eliminar o desperdcio de capacidade existente no TDM sncrono, eliminando a alocao
prvia do canal. Neste caso parcelas de tempo so alocadas dinamicamente de acordo com
a demanda das estaes, em compensao as unidades de informao devem conter um
cabealho com os endereos origem e destino.
O nico objetivo dos multiplexadores a diminuio do custo das linhas em uma
rede. Uma tendncia evidente o crescente uso de inteligncia nos multiplexadores para
CAP. 1 INTRODUO S REDES DE COMPUTADORES PROF. VITRIO BRUNO MAZZOLA
1.14
diminuir, ainda mais o custo das linhas (aumentar a economia). Multiplexadores inteligentes
podem ser vistos como equipamentos de processamento da comunicao mais gerais e
incluem os concentradores e processadores front-end.
Um concentrador, em sua forma mais simples, nada mais que um multiplexador
inteligente , com memria de armazenamento e um processador. Nos multiplexadores existe
uma correlao direta entre as velocidades de entrada e sada, enquanto que nos
concentradores, que tambm incluem um software de controle, um grande nmero de linhas
de baixa velocidade podem compartilhar um pequeno nmero de canais de alta velocidade.
Atravs de armazenamento, enfileiramento e alocao estatstica de canais disponveis, os
dados da fonte so "concentrados" em um canal de alta velocidade. Uma diferena
fundamental entre multiplexadores e concentradores que o primeiro trabalha com mesma
taxa de entrada e sada de dados, enquanto que um concentrador inteligente pode ajustar
dinamicamente suas alocaes de largura de banda para modificaes no trfego.
A tcnica TDM se caracteriza por alocar uma fatia de tempo n n-sima linha de
baixa velocidade, mesmo que no exista nenhum trfego sobre esta linha. Uma modificao
para otimizar esta tcnica a TDM estatstica (STDM) que uma forma de concentrao.
Uma fatia de tempo s ser alocada se existir trfego na linha. Em geral, o uso da STDM
mais vantajoso que a TDM pois evita a m utilizao da linha. No entanto, se o trfego de
vrias fontes (ou destinos) uniformemente distribudo no tempo, ento o uso da TDM ser
menos caro e proporcionar uma melhor utilizao da linha.
Um processador front-end um concentrador de propsito especial que instalado
na frente do computador hospedeiro (HOST) e executa a tarefa de gerenciar a interface entre
o HOST e a rede de comunicao. O principal objetivo da utilizao de um processador
front-end aliviar o HOST das tarefas de processamento de comunicao reduzindo o
tempo e o espao dedicados pelo HOST para estas tarefas e, portanto, aumentar a sua
disponibilidade para o processamento de dados.
5.6. Modulao
Computadores so equipamentos que armazenam, processam e codificam
informaes em bits, que correspondem a dois nveis discretos de tenso ou corrente,
representado pelos valores lgicos 0 ou 1. Este tipo de informao chamada de digital. As
informaes geradas por fontes sonoras apresentam variaes contnuas de amplitude,
constituindo-se no tipo de informao que comumente denominamos de analgica. Desta
forma podemos afirmar que existem dois tipos de sinais gerados para transmisso: sinais
analgicos e sinais digitais. importante notar que qualquer tipo de informao, analgica
ou digital, pode ser transmitida atravs de um sinal analgico ou digital. A transmisso de
informao digital atravs de sinais analgicos possvel atravs de tcnicas de
modulao, que transformam os sinais digitais em sinais analgicos atravs da variao
contnua de um de seus parmetros.
Neste ponto, conveniente fazer uma diferenciao entre as unidades bits por
segundo (bps) e bauds. A taxa em bauds indica o nmero de vezes que a caracterstica do
sinal portador da informao (sinal modulado) se altera por segundo. Se o estado do sinal
representa a presena ou ausncia de um bit, ento a taxa em bauds a mesma que a taxa
em bps. Por outro lado, quando usamos transmisso multinvel, cada estado do sinal
representa mais de um bit (2 bits na modulao dibit e 3 bits na modulao tribit, etc) e
observamos que a taxa em bauds menor que a taxa em bps. Por exemplo, considerando
uma modulao dibit, onde o sinal pode estar em quatro estados e cada estado representa
um dibit (2 bits), se a velocidade de sinalizao for de 200 bauds, isto , se a condio do
sinal se alterar 200 vezes por segundo, teremos 400 bits transmitidos por segundo, ou seja,
para cada alterao de condio do sinal, estaremos transmitindo dois bits representativos
de um estado.
Um exemplo sobre a diferena entre as velocidades bauds e bps a utilizao do
canal telefnico para transmisso de sinal de dados. A largura de banda deste canal de
CAP. 1 INTRODUO S REDES DE COMPUTADORES PROF. VITRIO BRUNO MAZZOLA
1.15
3100 Hz (ciclos/segundo) e na prtica usado para transmitir sinal de dados at 2400
bauds. Se desejarmos transmitir a uma velocidade de transmisso de 4800 bps neste canal,
deveremos usar um sinal dibit, ao qual corresponder a mesma velocidade de sinalizao de
2400 bauds. Neste caso, a velocidade de transmisso duas vezes a velocidade de
sinalizao. Da mesma forma que se desejarmos transmitir 7200 bps, deveremos usar um
sinal tribit e teremos velocidade de transmisso igual a trs vezes a velocidade de
sinalizao.
Modulao o processo pelo qual se imprime uma informao em uma onda
portadora, pela variao de um de seus parmetros (amplitude, freqncia ou fase). O
processo inverso, no qual a informao retirada da onda portadora, denominado
demodulao. O equipamento que realiza a adequao dos sinais binrios ao canal de
transmisso denominado modem (modulador-demodulador).
Existem trs tcnicas bsicas de modulao:
modulao por amplitude (AM)
modulao por freqncia (FM)
modulao por fase (PM)
No caso especfico do sinal modulador ser um sinal digital, essas tcnicas tomam as
seguintes denominaes:
modulao por chaveamento da fase (ASK)
modulao por chaveamento da freqncia (FSK)
modulao por chaveamento de fase (PSK)
5.7. Sistemas em Banda Larga e em Banda Bsica
Duas tcnicas de transmisso so as mais empregadas: sinalizao em banda
bsica (baseband) e sinalizao em banda larga (broadband). Na sinalizao em banda
bsica (ou sinalizao digital) o sinal simplesmente colocado na rede sem se usar
qualquer tipo de modulao, aparecendo diretamente na rede e no como deslocamentos de
freqncia, fase ou amplitude de uma portadora. Sinalizao em banda bsica vem sendo
adotada nos projetos de redes por no necessitar de modems e por possibilitar a
transmisso em alta velocidade. Esta tcnica no adequada para transmisso a longas
distncias e para circuitos sujeitos a rudos, interferncias e erros aleatrios. Na sinalizao
em banda bsica todo o espectro (banda) de freqncia do meio utilizado para produzir o
sinal. No ambiente de redes locais a sinalizao em banda bsica bastante adequada.
A sinalizao em banda larga (ou sinalizao analgica) realiza a multiplexao em
freqncia (FDM). Com esta sinalizao o espectro de freqncia do meio dividido em
vrios canais, cada um podendo suportar diferentes trfegos. Um caso especial de sistema
de banda larga o sistema de baixo custo que utiliza apenas um canal, denominado banda
larga de nico canal. A sinalizao em banda larga geralmente utilizada em redes locais
Sinalizao em banda larga geralmente utilizada em redes locais em barra. Nas redes em
banda larga cada canal pode ser utilizado para transportar qualquer tipo de sinal, por
exemplo, sinais analgicos, como imagem ou voz, ou sinais digitais. Os canais podem ser
classificados como dedicados ou chaveados. Tanto os canais dedicados quanto os canais
chaveados podem ser ponto-a-ponto ou multiponto.
2.1
Captulo 2 Captulo 2
O M O MODELO DE ODELO DE R REFERNCI A EFERNCI A OSI OSI
1. INTRODUO
A grande importncia da interconexo dos computadores atravs de redes de
comunicao deu origem a uma necessidade que foi tornando-se evidente medida que os
desenvolvimentos neste domnio foram acentuando-se a normalizao das redes de
comunicao.
Iniciou-se, ento, no seio da ISO - International Organization for Standardization, uma
reunio de esforos no sentido de definir uma proposta de arquitetura normalizada para as
redes de comunicao. Dada a grande diversidade dos equipamentos e das solues
existentes no que diz respeito comunicao, o resultado deste trabalho foi de fato a
padronizao de um modelo (modelo de referncia) sobre o qual deveriam ser baseadas as
arquiteturas de redes de comunicao de forma a permitir a interconexo de equipamentos
heterogneos, tornando transparente ao usurio a forma como esta interconexo fosse
implementada.
Um sistema fundado em tal modelo de referncia dito um sistema aberto, uma vez
que este est aberto comunicao com outros equipamentos, de diferentes classes,
fabricantes, modelos, etc...
Baseada nesta filosofia, a proposta, definida numa srie de documentos produzidos
por aquela organizao, foi denominada de Modelo de Referncia para a Interconexo de
Sistemas Abertos ou RM-OSI (Reference Model for Open Systems Interconnection), cujos
conceitos principais sero apresentados nas sees que seguem.
2. FUNDAMENTOS E ARQUITETURA
O conjunto de camadas ou nveis compondo um conjunto de regras de comunicao
numa rede, denominada 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. 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.
Conforme j introduzido anteriormente, a figura 2.1 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.
A camada n assume a comunicao com a camada n de uma outra mquina. Para
faz-lo, 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
CAP. 2 O MODELO DE REFERNCIA OSI PROF. VITRIO BRUNO MAZZOLA
2.2
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 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.
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 como uma COMUNICAO VIRTUAL e representada,
na figura 2.1, pelas linhas tracejadas ligando cada par de processos de uma camada. Cada
camada comunica-se com as camadas adjacentes atravs de uma interface, que define as
operaes elementares e os servios que a camada inferior oferece camada considerada.
No momento da definio do nmero de camadas que vai compor uma rede e do papel que
cada uma delas deve cumprir, uma tarefa importante ser a definio completa das
interfaces entre as camadas; isto vai implicar que na definio do servio oferecido por cada
camada. Uma vantagem da correta definio das interfaces a facilidade da 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.2 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.
Considera-se que esta transmisso introduz algumas modificaes na mensagem
(por exemplo, uma compresso de dados), o que justifica uma nova representao desta por
M. Esta mensagem , por sua vez, transmitida camada 5, atravs da interface das
camadas 5/6.
Camada 7
Camada 6
Camada 5
Camada 4
Camada 3
Camada 2
Camada 1
Meio de Transmisso
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
SISTEMA B SISTEMA A
Interface
6/7
Interface
6/7
Interface
5/6
Interface
5/6
Interface
4/5
Interface
4/5
Interface
3/4
Interface
3/4
Interface
2/3
Interface
2/3
Interface
1/2
Interface
1/2
Figura 2.1 - Modelo hierarquizado em 7 camadas.
CAP. 2 O MODELO DE REFERNCIA OSI PROF. VITRIO BRUNO MAZZOLA
2.3
No exemplo considerado na figura, a mensagem no sofre modificaes, mas esta
camada efetua o controle de fluxo. A camada 4 responsvel da decomposio da
mensagem a fim de respeitar as restries de tamanho que podem ser impostas pelas
camadas inferiores. Assim, M decomposta em M1 e M2.
Para isto, inserido tambm na mensagem (ou nas partes da mensagem) um
cabealho H4 contendo uma informao de controle, como, por exemplo, um nmero de
ordem que vai permitir, posteriormente na camada 4 do sistema destinatrio, a reconstruo
da mensagem a partir das partes recebidas. Outras informaes podem ainda estar
contidas neste cabealho, como, por exemplo, o tamanho da mensagem, o instante de
envio, etc...
Na camada 3, feita a escolha das linhas de sada e um novo cabealho, H3,
introduzido s mensagens. Na camada 2, alm de um cabealho, H2, introduzido tambm
um sufixo, T2, contendo informaes especficos a esta camada. A mensagem finalmente
entregue camada 1 para emisso via meio fsico.
No sistema destinatrio, o processo inverso se desenrola, sendo que as mensagens
vo subindo, de camada em camada, e os cabealhos retirados nas camadas respectivas,
de modo a evitar que estes sejam transferidos s camadas que no lhes dizem respeito.
Um aspecto importante mostrado na figura 2.2 o da comunicao virtual ocorrendo
entre as diferentes camadas pares. As camadas em cada nvel possuem uma viso da
comunicao horizontal, mesmo se as mensagens so na realidade transmitidas s
camadas inferiores pertencentes ao mesmo sistema.
3. SERVIOS E PROTOCOLOS
Embora sejam freqentemente confundidos, servio e protocolo so dois conceitos
distintos. O importante nesta distino de poder estabelecer a relao entre os dois
conceitos.
O servio corresponde a um conjunto de operaes que uma camada capaz de
oferecer camada imediatamente superior. Ele define o que uma camada capaz de
executar sem se preocupar com a maneira pela qual as operaes sero executadas.
O servio est intimamente relacionado com as interfaces entre duas camadas, a
inferior sendo a fornecedora do servio e a superior, a usuria deste.
M
m
m
H4 M2 H4 M1
H3 H4 H4 M1 H3 M2
H2 H3 H4 M1 H3 H4 H2 M2
M
m
m
H4 M2 H4 M1
H3 H4 H4 M1 H3 M2
H2 H3 H4 M1 H3 H4 H2 M2
Protocolo
da Camada 2
Protocolo
da Camada 3
Protocolo
da Camada 4
Protocolo
da Camada 5
Protocolo
da Camada 6
Protocolo
da Camada 7
TRANSMISSOR RECEPTOR
Figura 2.2 - Ilustrao da comunicao virtual numa arquitetura de rede.
CAP. 2 O MODELO DE REFERNCIA OSI PROF. VITRIO BRUNO MAZZOLA
2.4
Por outro lado, o protocolo define um conjunto de regras que permitem especificar
aspectos da realizao do servio, particularmente, o significado dos quadros, pacotes ou
mensagens trocadas entre as entidades pares de uma dada camada. A nvel de uma
camada, o protocolo pode ser mudado sem problemas, desde que as interfaces com a
camada superior no sejam alteradas, ou seja, que aquela continue a ter a mesma
visibilidade no que diz respeito aos servios realizados pela camada considerada; isto
corresponde, na verdade, a um certo desacoplamento entre os conceitos de servio e
protocolo.
4. 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.3, 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;
nmero de camadas deveria ser suficientemente grande para evitar a realizao
de funes muito diversas por uma mesma camada;
nmero de camadas deveria ser suficientemente pequeno para evitar uma alta
complexidade da arquitetura.
Como se pode ver na figura, o modelo prev a comunicao entre sub-redes atravs
de processadores de interface de mensagem, ou IMPs (Interface Message Processors). Na
figura, vemos ainda as unidades de dados trocadas a nvel da arquitetura: APDU, PPDU, ...,
BIT. Vamos descrever, a seguir, as principais funes realizadas por cada uma das
camadas definidas no modelo.
A Camada Fsica responsvel da transferncia de bits num circuito de
comunicao.
Aplicao
Apresentao
Sesso
Transporte
Rede
Enlace
Fsica
Aplicao
Apresentao
Sesso
Transporte
Rede
Enlace
Fsica
Protocolo da Camada 7
Protocolo da Camada 6
Protocolo da Camada 5
Protocolo da Camada 4
SISTEMA B SISTEMA A
7
6
5
4
3
2
1
7
6
5
4
3
2
1
Rede
Enlace
Fsica
Rede
Enlace
Fsica
IMP IMP
IMP - Interface Message Processor
Figura 2.3 - Arquitetura de sete camadas do modelo OSI.
CAP. 2 O MODELO DE REFERNCIA OSI PROF. VITRIO BRUNO MAZZOLA
2.5
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;
modo de transmisso adotado ( unidirecional, bidirecional, ...);
modo de conexo adotado (ponto-a-ponto, multiponto, ...);
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 do fracionamento das mensagens recebidas do emissor em
unidades de dados denominadas quadros, 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 adicional (no incio e fim de cada quadro) de modo a permitir o
reconhecimento destes.
Um problema tpico deste nvel o da ocorrncia de uma perturbao sobre a linha
de transmisso que provoque a destruio (perda) do quadro enviado. 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 emissor no ter capacidade de absorver a informao mesma
taxa. Este mecanismo deve permitir informar ao emissor a necessidade de armazenamento
dos dados a transmitir (controle de fluxo).
A Camada de Rede responsvel da gesto de sub-redes; ela define a forma como
os pacotes de dados sero encaminhados do emissor ao receptor. 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 recebe os dados enviados da camada de sesso,
decomp-los, se for o caso, em unidades de dados menores 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.
CAP. 2 O MODELO DE REFERNCIA OSI PROF. VITRIO BRUNO MAZZOLA
2.6
Esta camada cria, normalmente, uma conexo de rede para cada conexo de
transporte requerida pela camada de Sesso, embora, se as necessidades de velocidade
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, por
conseqncia, 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-a-
fim, ou seja, o programa executando no sistema fonte dialoga com o programa executando
na 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.3.
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.
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 dos estabelecimentos 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 bidirecional.
Um servio tambm importante aquele da sincronizao do dilogo. Por exemplo,
se um arquivo deve ser transferido atravs de uma sesso e este deve durar duas horas.
Se, 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 em 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 utiliza algumas funes freqentemente necessrias de
modo a poupar o usurio deste trabalho. Esta camada assume particularmente as funes
associadas 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 compreenso 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.
CAP. 2 O MODELO DE REFERNCIA OSI PROF. VITRIO BRUNO MAZZOLA
2.7
A Camada de Aplicao implementa um conjunto de protocolos bastante
diversificado e orientado a aplicaes bem definidas. Um exemplo disto o protocolo de
terminal virtual, que permite gerar a utilizao de um determinado programa (por exemplo,
um editor de textos) de forma independente do tipo de terminal conectado rede. Outro
servio importante o de transferncia de arquivos, que permite adaptar o tipo do arquivo
transferido forma implementada pelo sistema de arquivamento do sistema considerado.
Na parte dedicada a esta camada veremos, alm destas, outras classes de servios
implementados a este nvel.
5. A COMUNICAO NO OSI
A forma como os dados so transferidos ao longo do modelo OSI ilustrada na figura
2.4. Como se pode ver, o processo emissor vai enviar uma certa quantidade de dados ao
processo receptor.
Ele envia, ento, os dados camada de Aplicao que introduz a estes um cabealho
de aplicao, AH, e envia a mensagem resultante camada de Apresentao.
Esta camada, por sua vez, introduz mensagem recebida um cabealho de
apresentao, PH, enviando a mensagem, em seguida camada inferior. importante
ressaltar aqui que esta camada no toma conhecimento da existncia e significado do
cabealho de aplicao, considerando este como parte dos dados compondo a mensagem.
Este processo de transferncia de camada a camada vai se repetindo at o nvel fsico,
quando os dados sero, enfim, transmitidos ao sistema destino.
Neste sistema, os diversos cabealhos introduzidos nas camadas de rede do
sistema fonte vo sendo interpretados e eliminados nas camadas correspondentes at que
os dados cheguem ao processo receptor.
O conceito fundamental da transferncia de dados que cada camada foi projetada
como se ela fosse realmente horizontal, quando na verdade a transmisso se d de modo
vertical.
Isto fica claro, por exemplo, quando a camada de Transporte emissora recebe um
dado da camada de Sesso; ela insere um cabealho de transporte e envia a mensagem
camada de Rede emissora. Este processo, portanto, para a camada de Transporte, no
mais do que um detalhe tcnico. Um exemplo anlogo aquele de um diplomata de um pas
fazendo um discurso, na sua prpria lngua, nas Naes Unidas. Este considera estar se
dirigindo aos seus colegas diplomatas de outros pases, embora, na prtica, ele esteja
dirigindo-se ao seu intrprete.
PROCESSO
RECEPTOR
PROCESSO
EMISSOR
DADOS
DADOS AH
DADOS PH
DADOS SH
DADOS TH
DADOS NH
DADOS LH
BITS
Aplicao
Apresentao
Sesso
Transporte
Rede
Enlace
Fsica
Aplicao
Apresentao
Sesso
Transporte
Rede
Enlace
Fsica
Figura 2.4 - Ilustrao da comunicao no modelo OSI.
CAP. 2 O MODELO DE REFERNCIA OSI PROF. VITRIO BRUNO MAZZOLA
2.8
6. OS CONCEITOS DO MODELO OSI
Como visto anteriormente, o objetivo de cada camada definida no modelo OSI
fornecer um determinado conjunto de servios camada imediatamente superior. A nvel do
modelo de referncia OSI, foi feita uma srie de definies que vo permitir identificar cada
componente do modelo de forma clara e no ambgua. objetivo desta seo introduzir
estes conceitos.
6.1. Terminologia OSI
A nvel de cada camada existem elementos ativos que implementam os servios e
protocolos relacionados com aquela camada. A estes elementos ativos, d-se o nome de
entidade e estas podem ser entidades de software ou de hardware. s entidades localizadas
em diferentes sistemas, mas associadas a um mesmo nvel (ou camada), d-se o nome de
entidades pares. As entidades recebem tambm uma denominao complementar em
funo da camada qual elas esto relacionadas por exemplo, entidade de aplicao,
entidade de apresentao, etc...
As entidades de uma camada N (ou entidades N) implementam um servio que
utilizado pela camada N+1. Assim, a camada N dita ser um fornecedor de servio e a
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 lentos 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 ter acesso aos 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 outras informaes de controle. A SDU a informao
transmitida via rede entidade par e, em seguida, camada N+1. A informao de controle
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.5 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.
6.2. Servios orientados conexo e sem conexo
Como j foi dito, as camadas podem oferecer diferentes classes de servios s
camadas superiores, estes servios podendo ser orientados conexo ou sem conexo.
No que diz respeito ao servios orientados conexo, podemos citar, como exemplo
tpico o sistema telefnico. Para que seja possvel falar a algum no telefone, necessrio,
CAP. 2 O MODELO DE REFERNCIA OSI PROF. VITRIO BRUNO MAZZOLA
2.9
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 no sistema, independente de outras.
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 no podem ser jamais 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.
Os servios confiveis orientados conexo apresentam duas variantes. No primeiro
caso, as fronteiras das mensagens so sempre preservadas. Se duas mensagens de 1
Kbytes so enviadas, elas chegaro sob a forma de duas mensagens de 1 Kbytes e nunca
como uma nica mensagem de 2 Kbytes.
J na segunda variante, se uma mensagem de 2 Kbytes recebida, no h como
identificar se ela foi enviada realmente como uma nica mensagem de 2 Kbytes, como duas
mensagens de 1 Kbytes, ou ainda como 2048 mensagens de 1 byte.
ICI SDU
ICI SDU SDU
SAP
Camada
N+1
Camada
N
Interface
Cabealho
N-PDU
IDU
Figura 2.5 - Ilustrao dos diferentes conceitos associados ao modelo de referncia OSI.
Em algumas aplicaes, necessrio resguardar as fronteiras entre as mensagens
enviadas; por exemplo, no caso do envio de um documento a uma impressora interessante
poder preservar as fronteiras entre as pginas.
No que diz respeito aos dois tipos de servios (orientados conexo e sem conexo),
nem todas as aplicaes requerem a utilizao de conexo. 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 necessidade de estabelecimento de conexo e tampouco a uma
confiabilidade de 100% no que diz respeito chegada das mensagens. Os servios sem
conexo e no-confiveis so denominados servios de datagrama.
CAP. 2 O MODELO DE REFERNCIA OSI PROF. VITRIO BRUNO MAZZOLA
2.10
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 MODALIDADES EXEMPLO
Transf. confivel de mensagens com ou sem conexo seqenciamento de pginas
Transf. confivel de dados com ou sem conexo transferncia de arquivos
Transf. sem controle de erros com ou sem conexo voz digitalizada
Datagrama s/ reconhecimento sem conexo correio eletrnico
Datagrama c/ reconhecimento sem conexo corr. eletrnico registrado
Pedido-Resposta sem conexo consulta a bases de dados
7. AS PRIMITIVAS DE SERVIO
Um servio definido formalmente por um conjunto de primitivas (ou operaes)
disponveis a um usurio ou a outras entidades para o acesso quele servio. Estas
primitivas permitem indicar a ao a ser executada pelo servio ou ainda um pedido de
informao sobre uma ao executada previamente.
No modelo OSI, as primitivas de servio so divididas em quatro classes: as
primitivas de pedido (request), as primitivas de indicao (indication), as primitivas de
respostas (response) e as primitivas de confirmao (confirm).
A tabela a seguir mostra o significado de cada uma destas primitivas no que diz
respeito execuo de um servio.
PRIMITIVA SIGNIFICADO
REQUEST Pedido enviado por uma entidade que solicita um servio
INDICATION Atravs dela, a entidade par informada de uma solicitao de servio
RESPONSE A entidade par responde ao pedido de servio
CONFIRM A entidade solicitante informada do resultado do servio
Um exemplo da utilizao das primitivas de servio o pedido de um
estabelecimento de conexo. Para requisitar o estabelecimento de uma conexo, a entidade
que quer iniciar o dilogo envia uma primitiva de servio de pedido de abertura de conexo,
CONNECT.request que vai se refletir, na entidade destinatria, por uma primitiva de
indicao, CONNECT.indication.
A entidade que recebeu a indicao vai enviar uma primitiva de resposta,
CONNECT.response, para informar se esta aceita ou no a conexo. Finalmente, a
entidade emissora vai saber do resultado do seu pedido pela recepo de uma primitiva de
servio de confirmao, CONNECT.confirm.
Parmetros podem ser associados s primitivas; no caso do servio de conexo, por
exemplo, os parmetros podem especificar os seguintes aspectos relacionados conexo
desejada: a mquina com a qual se deseja dialogar, o tipo de servio desejado, o tamanho
mximo das mensagens, etc...
Se a entidade invocada no est de acordo com os parmetros contidos na primitiva
de indicao recebida, esta pode fazer uma contra-proposta, atravs dos parmetros da
primitiva de resposta, que ser transmitida entidade emissora atravs dos parmetros da
primitiva de confirmao.
CAP. 2 O MODELO DE REFERNCIA OSI PROF. VITRIO BRUNO MAZZOLA
2.11
Os servios no modelo OSI podem ser de dois tipos: confirmados ou no-
confirmados. No caso dos servios confirmados, as quatro classes de primitivas so
definidas, ou seja, pedido (request), indicao (indication), resposta (response) e
confirmao (confirm). Isto significa que a entidade que requisitou o servio ter sempre uma
informao sobre as condies de realizao deste, at mesmo se este foi realizado com
sucesso ou no.
Nos servios no-confirmados, apenas as duas primeiras classes de primitivas so
utilizadas, ou seja, pedido e indicao. Neste tipo de servios, a entidade emissora do pedido
no receber nenhuma informao sobre as condies de realizao do servio requisitado,
nem mesmo se este foi realizado.
A tabela a seguir apresenta um conjunto de primitivas associadas a um servio
orientado conexo.
PRIMITIVA SIGNIFICADO
CONNECT.request pedido de estabelecimento de uma conexo
CONNECT.indication indicao entidade invocada
CONNECT.response utilizada para indicar a aceitao ou no da conexo
CONNECT.confirm informa entidade emissora se a conexo aceita
DATA.request pedido de envio de dados
DATA.indication sinalizao da chegada de dados
DISCONNECT.request pedido de trmino da conexo
DISCONNECT.indication indicao do pedido entidade par
Neste exemplo, CONNECT um servio confirmado enquanto os servios DATA e
DISCONNECT so no-confirmados. A figura 2.6 permite ilustrar as trocas de primitivas de
servio entre as camadas no caso de um servio confirmado. O exemplo utilizado o
servio CONNECT.
SISTEMA A
Camada N+1
Camada N
connect.req
connect.cnf
SISTEMA B
Camada N+1
Camada N
connect.ind
connect.rsp
Figura 2.6 - Ilustrao da troca de primitivas de servio (confirmado).
3.1
Captulo 3 Captulo 3
A AS S S SETE ETE C CAMADAS DO AMADAS DO M MODELO ODELO OSI OSI
1. INTRODUO
A definio de um modelo de referncia para a interconexo de sistemas abertos, o
modelo OSI foi, sem dvida, uma contribuio positiva para a padronizao das arquiteturas
de comunicao.
Entretanto, a definio das camadas presentes do modelo OSI est relacionada
definio de solues em termos de servios e protocolos que implementem as funes
relacionadas a cada uma destas camadas.
O objetivo desta parte apresentar os principais problemas e as respectivas
solues relacionadas com cada uma das camadas do modelo OSI.
Como poder ser visto ao longo desta parte, as sete camadas do modelo OSI podem
ser organizadas em duas classes distintas:
as camadas baixas, que compreendem desde a camada fsica at a camada de
transporte e cujos servios e protocolos esto relacionados com a transmisso
dos dados propriamente dita;
as camadas altas, que compreendem desde a camada de sesso at a camada
de aplicao, cujos servios e protocolos so mais orientados a resolver questes
envolvendo as aplicaes que iro utilizar o suporte de comunicao considerado.
2. A CAMADA FSICA
O objetivo da camada Fsica assegurar o transporte dos dados, representados por
um conjunto de bits, entre dois equipamentos terminais, via um suporte de transmisso.
Abordaremos, nesta parte do documento, os principais aspectos e problemas
relacionados transmisso de dados, como, os suportes de transmisso, os modos de
transmisso, a multiplexao e a comutao.
Ainda nesta seo, sero vistos alguns exemplos de interfaces fsicas padronizadas
e adotadas em muitas aplicaes e arquiteturas de comunicao.
2.1. Os Suportes de Transmisso
Os suportes de transmisso podem se caracterizar pela existncia ou no de um
guia fsico. Na primeira classe esto os cabos eltricos, as fibras ticas e, na segunda
classe, as ondas de rdio, as ondas de luz, etc...
2.1.1. O par de fios tranados
Em diversas aplicaes, necessrio se manter uma conexo direta e permanente
entre dois computadores. O suporte de transmisso mais clssico utilizado at o momento
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.2
o par de fios tranados, o qual composto de dois fios eltricos em cobre, isolados, e
arranjados longitudinalmente de forma helicoidal. Esta tcnica de enrolar os fios permite
diminuir os efeitos das indues eletromagnticas parasitas provenientes do ambiente no
qual este estiver instalado.
A utilizao mais tpica deste suporte de transmisso a rede telefnica, onde,
graas s suas caractersticas eltricas, os sinais podem percorrer vrias dezenas de
quilmetros, sem a necessidade de amplificao ou regenerao de sinal.
Estes podem, ainda, ser utilizados para a transmisso de sinais analgicos quanto
de sinais digitais, a banda passante atingida sendo funo da sua composio
(particularmente, dimetro e pureza dos condutores, natureza dos isolantes e do
comprimento do cabo). A taxa de transmisso obtida pela utilizao deste suporte de
transmisso situa-se na faixa de algumas dezenas de Kbits/s, podendo atingir, em
condies particulares, na faixa dos Mbits/s em pequenas distncias.
O fato de representar um baixo custo e uma grande faixa de utilizao o torna um dos
suportes mais utilizados atualmente e, provavelmente, nos prximos anos.
2.1.2. Os cabos coaxiais
Os cabos coaxiais so tambm altamente empregados como suporte de
transmisso. Dois tipos de cabos so tipicamente utilizados: o primeiro tipo apresenta uma
impedncia caracterstica de 50 ohms, utilizado nas transmisses digitais denominada
transmisso em banda de base; o segundo tipo, com uma impedncia caracterstica de 75
ohms, mais adequado para a transmisso de sinais analgicos. Eles so constitudos de
dois condutores arranjados de forma concntrica: um condutor central, a alma, envolto por
um material isolante de forma cilndrica. Esta capa isolante , por sua vez, envolta por uma
trana metlica condutora em cobre. Finalmente, o conjunto envolto numa capa de
proteo em plstico isolante.
Em relao aos pares de fios tranados, os cabos coaxiais apresentam melhores
caractersticas eltricas, oferecendo um boa relao entre a banda passante e a proteo
contra interferncias eletromagnticas.
A largura de banda vai depender igualmente da qualidade da composio do cabo e
do seu comprimento. Para distncias em torno de 1 km, possvel obter uma taxa de
transmisso em torno de 10 Mbits/segundo, podendo-se obter taxas superiores para
distncias mais curtas. Os cabos coaxiais so altamente utilizados como suporte de
transmisso nas Redes Locais Industriais.
A informao transmitida pelos cabos coaxiais geralmente codificada sob a forma
de um sinal binrio, onde os dgitos 0 e 1 so representados por dois diferentes nveis... por
exemplo, 1 volt para o bit 1 e 0 volt para o bit 0. Esta forma de codificao, embora seja uma
conveno bastante adequada, no permite ao receptor do sinal detectar o incio e o fim da
transmisso de um dgito binrio.
2.1.3. As fibras ticas
As fibras ticas so o meio de transmisso pelo qual os sinais binrios so
conduzidos sob a forma de impulsos luminosos. Um impulso luminoso representa um bit a
1, enquanto a ausncia deste impulso representa um bit a 0. A luz visvel uma onda
luminosa cuja freqncia est na ordem de 10
8
Hz, o que d ao sistema uma banda
passante potencial bastante grande. As taxas de transmisso num suporte a fibra tica ficam
na faixa dos Gbit/s (10
9
bit/s).
Um sistema de transmisso a base de fibra tica composto de trs principais
elementos: o suporte de transmisso (a fibra tica), o dispositivo de emisso e o dispositivo
de recepo da onda luminosa.
A fibra tica constituda de um fio de vidro bastante fino, base de silcio e outros
componentes. Ela consiste de um ncleo no qual se propaga a luz e uma capa externa de
proteo que mantm a luz no interior do ncleo. O dispositivo de emisso consiste, ou de
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.3
um diodo emissor de luz (LED) ou de um diodo laser. O dispositivo de recepo
constitudo geralmente de um fotodiodo ou de um fototransistor.
O princpio da transmisso das fibras ticas o da reflexo da luz na interface entre
dois meios. Quando um raio luminoso deixa um meio homogneo para se propagar num
outro meio, o seu percurso sofre um desvio na interface entre os dois meios. Entretanto,
existe um ngulo de incidncia limite, a partir do qual o raio luminoso, ao invs de ser
refratado ele ser refletido na interface, sendo mantido no meio no qual ele havia sido
introduzido. Desta forma, a luz poder ser propagada ao longo do meio, em distncias de
alguns quilmetros.
Atualmente, os suportes de comunicao base de fibra tica so utilizados em
redes de comunicao em longa distncia, substituindo sistemas mais antigos base de
cabos coaxiais. Isto dever continuar a ocorrer nos prximos anos, contribuindo para que se
tenha, num futuro prximo, em distncias relativamente grandes, sistemas de comunicao
oferecendo altas taxas de transmisso garantindo assim o salvamento de grandes volumes
de informao.
2.2. Aspectos da Transmisso de Dados
O meio de transmisso consiste geralmente de um conjunto de recursos e regras
que permitem a transmisso de informao de um ponto a outro numa rede de
comunicao. A transmisso a nvel de bit uma das formas mais simples de transferncia
de informao. Este processo ilustrado pela figura 3.1(a), onde podemos observar os
seguintes elementos:
a fonte de informao, que pode ser um computador ou um terminal, por exemplo,
que gera as informaes que devero ser transmitidas, estas sendo
representadas, usualmente, por um conjunto de dgitos binrios, ou bits;
o transmissor, que responsvel da adaptao ou converso do conjunto de
informaes, de bits, para sinal eltrico ou eletromagntico, adaptando-o ao meio
de transmisso;
o suporte de transmisso, encarregado do transporte dos sinais representando a
informao e que pode ser caracterizado por uma das tcnicas apresentadas na
seo precedente; o suporte de transmisso quem realiza a ligao fsica
entre os elementos envolvidos na comunicao;
FONTE DE
INFORMAO
BINRIA
TRANSMISSOR RECEPTOR SUPORTE DE TRANSMISSO
RUDO
DESTINATRIO
DA
INFORMAO
BINRIA
(a)
(b)
RUDO
SUPORTE DE TRANSMISSO
FONTE OU
INFORMAO
BINRIA
DESTINATRIO
FONTE OU
INFORMAO
BINRIA
DESTINATRIO
TRANSMISSOR
RECEPTOR
TRANSMISSOR
RECEPTOR
Figura 3.1 - (a) Sistema de transmisso ponto-a-ponto unidirecional; (b) modelo bidirecional.
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.4
o receptor, responsvel pela reconstituio da informao a partir dos sinais
recebidos via suporte de transmisso, e que, inclusive pode ter sofrido distores
provocadas por rudos existentes no meio;
o destinatrio da informao, que pode ser um computador, um terminal ou outro
equipamento e que vai consumir a informao gerada pelo elemento fonte.
Geralmente, a transmisso a nvel de bits pode ser realizada de forma bidirecional,
esta podendo ainda ser realizada de forma alternada ou simultnea. Assim, a cada n dever
estar associado um equipamento transmissor e um receptor compondo o conjunto
transceptor como mostrado na figura 3.1(b).
A transmisso de dados, quando realizada nos dois sentidos denominada duplex.
No caso em que ela se realiza alternadamente, ou seja, ora num sentido, ora no outro, ela se
denomina half-duplex. No caso em que ela se realiza simultaneamente nos dois sentidos,
esta ser denominada full-duplex.
Os modos de transmisso caracterizam as diferentes formas como os bits de
informao transmitidos so delimitados e encaminhados ao longo da linha de comunicao.
No que diz respeito forma como os bits so encaminhados ao longo de uma linha
de comunicao, pode-se distinguir o modo de transmisso paralelo e o modo serial,
conforme j mencionado anteriormente.
Na transmisso paralela, os bits so transportados simultaneamente por um suporte
composto de vrias linhas em paralelo. um modo de transmisso mais adequado
comunicao entre equipamentos localizados a curtas distncias. A ligao interna na
arquitetura de computadores ou entre computadores e perifricos prximos so exemplos da
aplicao da transmisso paralela.
Na transmisso serial, mais adequada a comunicao entre equipamentos
separados por grandes distncias, os bits so encaminhados serialmente atravs de uma
nica linha de comunicao.
Pode-se considerar outros parmetros para a classificao dos modos de
transmisso, como, por exemplo, o fator tempo. No caso particular das transmisses
seriais, a forma de delimitar os bits pode levar em conta duas diferentes filosofias a
transmisso sncrona e a transmisso assncrona.
Na transmisso sncrona, os bits de dados so transmitidos segundo uma cadncia
pr-definida, obedecendo a um sinal de temporizao (clock). O receptor, por sua vez,
conhecendo os intervalos de tempo permitindo delimitar um bit, poder identificar a
seqncia dos bits fazendo uma amostragem do sinal recebido.
Na transmisso assncrona, no existe a fixao prvia de um perodo de tempo de
emisso entre o transmissor e o receptor. A separao entre os bits feita atravs de um
sinal especial com durao varivel. Um caso tpico de transmisso assncrona a
transmisso de caracteres; neste caso, a cada grupo de bits constituindo um caractere so
adicionados bits especiais para representar o incio (start bit) e final deste (stop bit). Neste
tipo de comunicao, apesar de assncrona ao nvel de caracteres, ocorre uma
sincronizao ao nvel de bit.
Um outro aspecto a ser destacado aqui aquele da forma como os sinais so
transmitidos num suporte de comunicao, particularmente no que consiste maneira como
a banda passante do canal de comunicao explorada.
No primeiro modo, a transmisso em banda de base (baseband), a banda passante
do suporte de transmisso atribuda totalmente a um nico canal de transmisso. Neste
modo, os sinais so transmitidos atravs do meio de comunicao multiplexados no tempo.
No segundo modo, a transmisso em barda larga (broadband), a banda passante do
suporte de transmisso dividida num determinado nmero de canais de faixa de freqncia
estreita, permitindo que estes possam ento ser transmitidos utilizando uma tcnica de
multiplexao em freqncia. A banda passante dos canais normalmente definida em
funo da taxa de transmisso desejada e do modo de modulao empregado. Neste modo
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.5
de transmisso, cada canal pode atingir uma taxa de transmisso de at 3 Mbits/s, inferior,
portanto, transmisso em banda de base.
3. A CAMADA DE ENLACE DE DADOS
A camada de Enlace de Dados tem por funo oferecer um caminho para o
transporte das informaes entre entidades da Camada de Rede, que ser estudada na
parte seguinte do documento. Dentre os fatores com os quais a camada de Enlace deve
preocupar-se esto:
a forma como os bits provenientes da camada Fsica sero agrupados em
quadros;
os mecanismos de deteco e correo de erros a serem implantados, uma vez
que as informaes trocadas atravs da camada Fsica no so isentas de erros
de transmisso, pelos fatores que foram levantados na parte anterior deste
documento;
os mecanismos de controle de fluxo para limitar o volume de informao trocados
entre entidades fonte e destino;
a gesto das ligaes entre as entidades.
3.1. As Classes de Servios de Enlace
A camada de Enlace de Dados oferece servios classificados em trs principais
categorias, estas dependendo do sistema no qual elas sero implantadas:
servio sem conexo e sem reconhecimento;
servio sem conexo com reconhecimento;
servio orientado conexo.
Na primeira classe de servios, a mquina fonte da informao envia os quadros de
dados mquina destinatria sem recepo de reconhecimento da informao enviada;
alm disso, no existe estabelecimento prvio de conexo e, por conseqncia, no existe
liberao desta ao final do dilogo. Se um quadro de dados perdido no suporte de
transmisso como conseqncia de um rudo, no existe nenhum mecanismo que permita
solucionar o problema. Esta classe de servios adequada quando implantados sobre um
suporte de comunicao cuja taxa de erros muito baixa ou que a correo dos erros
prevista nas camadas superiores. Eles podem ser empregados particularmente no caso de
aplicaes tempo real e em redes locais.
A segunda classe de servios, embora ainda no defina o estabelecimento prvio de
conexo, prev a existncia de quadros de reconhecimento, de modo que a mquina fonte
ser notificada pela mquina destinatria da recepo do quadro previamente enviado. Um
mecanismo que pode ser implantado no caso de perda do quadro o que corresponde
no recepo do quadro de reconhecimento aps um certo tempo (timeout) a
retransmisso daquele. Num servio sem conexo, existe a possibilidade da retransmisso
de quadros provocando a recepo mltipla do mesmo quadro (duplicao de mensagem).
A terceira classe de servios a mais sofisticada, uma vez que ela define a
necessidade do estabelecimento prvio de conexo e a liberao destas ao final do dilogo.
Neste caso, cada quadro enviado numerado e a camada de Enlace garante que cada
quadro enviado ser recebido, uma nica vez, e que o conjunto de quadros enviados ser
recebido ordenado da mesma forma que foi enviado. Esta classe de servios oferece
camada de Rede um canal de comunicao confivel.
Os servios orientados conexo so caracterizados por trs principais etapas:
a etapa de estabelecimento de conexo, durante a qual so definidos todos os
parmetros relacionados conexo, como por exemplo, os contadores de
seqncia de quadros;
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.6
a etapa de transmisso de dados, durante a qual so realizadas todas as trocas
de informao correspondentes ao dilogo entre duas mquinas;
a etapa de liberao da conexo, que caracteriza o fim do dilogo e na qual todas
as variveis e outros recursos alocados conexo sero novamente disponveis.
A comunicao entre as camadas de Rede e de Enlace feita atravs de primitivas
de servio (request, indication, response e confirm) como definidas na parte relativa
apresentao do modelo OSI. Um esquema permitindo demonstrar o modo de utilizao das
primitivas mostrado na figura 3.2. Neste esquema, representa-se nas extremidades a
camada de Rede, caracterizada pelos dois sistemas envolvidos no dilogo (no caso, A e B)
e no centro a camada de Enlace.
Os deslocamentos verticais das primitivas representam o tempo decorrido entre as
ocorrncias destas. Por exemplo, no caso das primitivas de request e indication, o tempo
decorrido entre o envio da primeira pela camada de Rede do sistema A e a recepo da
segunda pela camada de Rede do sistema B.
3.2. O conceito de quadro
Para que o servio seja oferecido camada de Rede, a camada de Enlace utiliza-se
dos servios fornecidos pela camada Fsica que, como j foi descrito na parte precedente,
responsvel da transmisso de bits de um ponto a outro na rede de comunicao, sendo
que o conjunto de bits transmitido pode sofrer distores produzindo erros de transmisso.
Uma conseqncia tpica pode ser que o nmero de bits recebidos seja inferior ao
nmero de bits enviados ou os valores de alguns bits podem ter sido modificados.
Com o objetivo de permitir um controle de erro eficiente, a camada de Enlace
decompe as mensagens em pores menores denominadas quadros, aos quais so
adicionados cdigos especiais de controle de erro. Desta forma, o receptor pode verificar se
o cdigo enviado no contexto de um quadro indica ou no a ocorrncia de erros de
transmisso e ele pode, assim, tomar as providncias necessrias para evitar as
conseqncias devido quele erro.
A definio e delimitao dos quadros pode obedecer a diferentes polticas. Uma das
polticas adotadas pode ser a contagem de caracteres. Nesta poltica, introduzido um
caractere especial que indica o nmero de caracteres compondo o quadro. Deste modo, a
nvel da camada de Enlace do receptor, basta que a entidade leia este caractere e em
seguida conte o nmero de caracteres para definir o tamanho do quadro. O inconveniente
desta tcnica, portanto, o fato de que o caractere que define o tamanho do quadro pode ser
modificado, o que significa que o receptor vai ler, erroneamente os quadros transmitidos. A
figura 3.3 ilustra este problema.
camada de rede camada de rede camada de enlace
request
indication
response
confirm
sistema A
sistema B
Figura 3.2 - Primitivas de servio trocadas entre as camadas de Rede e de Enlace.
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.7
5 1 2 3 4 5 6 7 8 9 8 0 1 2 3 4 5 6
contadores de caracteres
quadro1 (5 car.) quadro2 (5 car.) quadro3 (8 car.)
(a)
5 1 2 3 4 7 6 7 8 9 8 0 1 2 3 4 5 6
(b)
erro contador de caracteres
Figura 3.3 - Sequncia de caracteres: (a) sem erro; (b) com erro.
Uma tcnica que apresenta uma soluo a este problema consiste na adio de
seqncias especiais de caracteres de modo a representar o incio e fim da transmisso de
um quadro.
A figura 3.4 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, dado que os bits
podem assumir qualquer combinao de valores, uma seqncia de bits coincide com uma
das seqncias de caracteres citada, a entidade receptora na camada de Enlace pode ser
enganada por esta seqncia e, assim, receber erroneamente o quadro.
A soluo a este problema vem atravs da introduo, pela entidade de Enlace
emissora, de um caractere DLE a cada vez que, uma seqncia de bits correspondente
parte de dados, coincidir com um caractere DLE. Desta forma, basta entidade de dados
receptora eliminar os caracteres DLE dos dados antes de transmit-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.
Uma tcnica ainda 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 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. 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 3.5 ilustra
a aplicao desta tcnica. Em 3.5(a) so apresentados os dados originais e, em 3.5(b), os
mesmos dados com a introduo dos bits de transparncia.
3.3. O controle de erro
Os erros podendo ocorrer sobre os suportes de transmisso podem ter 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, capazes de provocar, numa linha transmitindo dados a 9600 bit/s, a perda de 96
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.8
bits. Os rudos impulsivos so causados pelos arcos devido ao chaveamento de rels ou
outros dispositivos eletromecnicos.
O que se tem notado, entretanto, que, independentemente do fenmeno causador
de erro, estes tendem a gerar normalmente verdadeiros pacotes de erros e no erros
simples.
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. Esta funo baseada na informao, entidade
emissora da mensagem do que ocorreu na extremidade de recepo.
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 consciente 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 isto evitado
pela adio de temporizadores, estabelecendo assim um tempo mximo de espera pelo
reconhecimento, antes da retransmisso. 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 (timeout).
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
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.
DLE STX A B DLE C DLE ETX
DLE STX A B DLE C DLE ETX DLE
(a)
(b)
Figura 3.4 - (a) Dados enviados pela camada de Rede com seqncias de delimitao; (b) idem, com
introduo dos caracteres de transparncia.
bit de transparncia
0 1 1 0 1 1 1 1 1 1 1 1 0 1
0 1 1 0 1 1 1 1 1 1 1 1 0 1 0
(a)
(b)
Figura 3.5 - (a) dados originais; (b) dados com adio do bit de transparncia.
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.9
3.3.1. Os cdigos de correo de erro
Existem praticamente duas tcnicas para a correo de erro. 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 corrig-lo) e
requisitar a retransmisso do quadro. Ao primeiro tipo de informao dado o nome de
cdigo corretor e ao segundo tipo de informao cdigo detector.
3.3.2. Os cdigos de deteco de erro
Os cdigos corretores so utilizados para as transmisso de dados em casos
particulares como, por exemplo, quando os canais so unidirecionais ou quando
impossvel requisitar a retransmisso de um quadro.
Quando possvel, porm, uma soluo mais adequada atravs de uma tcnica de
deteco com retransmisso por razes de eficincia.
Um mtodo de deteco de erros largamente utilizado a definio de cdigos de
deteco de erros polinomiais, tambm denominados CRC (cyclic redundancy code). Nos
cdigos polinomiais, considera-se que os bits de uma cadeia de caracteres so os
coeficientes de um polinmio, coeficientes estes, capazes de assumir apenas dois valores:
0 ou 1. Assim, um bloco de k bits visto como uma srie de coeficientes de um polinmio de
k termos, indo de x
k-1
a x
0
. A palavra 110001 contm 6 bits ela representa ento o
seguinte polinmio: x
5
+ x
4
+ x
0
.
A utilizao de cdigos de deteco polinomiais baseada na escolha de um cdigo
especial que caracteriza um polinmio gerador, ou G(x). Uma exigncia em relao a este
polinmio que os bits mais significativo e menos significativo (correspondendo,
respectivamente aos coeficientes de mais alta ordem e de mais baixa ordem do polinmio)
sejam de valor 1. A tcnica consiste em adicionar a um bloco de dados (caracterizando um
polinmio M(x)) um conjunto de bits de controle de modo que o quadro (dados + bits de
controle) seja divisvel por G(x). Na recepo, a entidade de Enlace efetua a diviso dos bits
compondo o quadro pelo polinmio gerador. Caso o resto seja diferente de zero,
caracterizada ento a ocorrncia de um erro de transmisso.
Alguns exemplos de cdigos polinomiais adotados na deteco de erros so:
CRC-12 = x
12
+ x
11
+ x
3
+ x
2
+ x
1
+ 1
CRC-16 = x
16
+ x
15
+ x
2
+ 1
CRC-CCITT = x
16
+ x
12
+ x
5
+ 1
4. A CAMADA DE REDE
O objetivo da camada de Rede assegurar o transporte de unidades de dados
denominadas pacotes do sistema fonte ao sistema destinatrio, definindo uma trajetria
apropriada. Esta trajetria pode significar a passagem por diversos ns intermedirios da
rede, o que significa que a camada de Rede deve ter o conhecimento de todos os aspectos
topolgicos da rede considerada e, com esta informao, ser capaz de escolher o caminho
a ser traado pelas mensagens. Nesta escolha, interessante que seja levado em conta o
estado corrente da rede, particularmente no que diz respeito ao trfego das mensagens,
evitando assim a sobrecarga de certos trechos das linhas de comunicao. Ainda, se o
sistemas fonte e destinatrio esto conectados a redes diferentes, estas diferenas devem
ser levadas em conta e compensadas pela camada de Rede.
Duas funes essenciais da camada de Rede, descritas brevemente aqui, refletem,
respectivamente, os problemas de roteamento e coliso sero tratados nesta parte do
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.10
documento. Os mecanismos relacionados funes de interconexo merecero uma parte
dedicada, mais adiante, no curso.
4.1. Servios oferecidos pela camada de Rede
Segundo a bibliografia, 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.
O resultado desta discusso foi a definio, a nvel do modelo OSI, de duas classes
de servio, sem conexo e orientado conexo, sendo que uma certa liberdade foi dada no
sentido de se definir a que nvel o servio com conexo seria implantado, ou mesmo se este
seria implantado. Abriu-se, assim, a possibilidade de se ter, nos diferentes nveis, as duas
classes de servio, isto sendo ilustrado pela figura 3.6.
Os SAPs so localizados na interface entre duas camadas, permitindo que uma
camada tenha acesso aos servios oferecidos pela camada inferior. Como se pode ver na
figura, da camada de Enlace para cima, os servios podem ser sem ou orientados
conexo.
Uma conexo de Rede vista, da tica do modelo OSI, como um par de filas FIFO
(FIrst In FIrst Out), cada uma orientada num sentido, conectado entre dois NSAPs
(endereos de rede). A figura 3.7 ilustra o estado da conexo, considerando a adoo de um
servio orientado conexo. A figura 3.7(a) ilustra o estado da conexo antes do seu
estabelecimento; 3.7(b) aps o estabelecimento da conexo e, 3.7(c), aps o envio de trs
pacotes de dados.
4.1.1. As primitivas de servio
O quadro a seguir apresenta as primitivas de servio disponveis pela camada de
Rede do modelo OSI, tanto para o servio orientado conexo como para o 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)
N_FACILITY.request (qos)
N_FACILITY.indication (dest_address, qos, reason)
N_REPORT.indication (dest_address, qos, reason)
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.11
APLICAO
APRESENTAO
SESSO
TRANSPORTE
REDE
ENLACE
FSICA
servio orientado
conexo
servio sem
conexo
SAP
Figura 3.6 - Ilustrao das classes de servio do modelo OSI.
NSAPs
usurio
1
usurio
2
camada Rede
NSAPs
(a) (b) (c)
usurio
1
usurio
2
camada Rede
camada Rede
NSAPs
usurio
1
usurio
2
Figura 3.7 - 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).
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 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 iniciador atravs da primitiva
N_CONNECT.indication; por outro lado, a recusa implementada atravs da primitiva
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.12
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 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 porcentagem 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.
4.1.2. O endereamento de Rede
Uma funo importante desta camada o fornecimento de uma codificao espacial
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.
Assim, 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 de o destinatrio de um pacote. O endereo de NSAP 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;
DSP (Domain Specific Part) contm o endereo especfico do NSAP no domnio
considerado.
4.2. A funo de Roteamento
Como dito na parte introdutria, a funo principal da camada de Rede efetuar o
encaminhamento dos pacotes trocados entre duas entidades oferecendo uma comunicao
fim-a-fim. Durante a trajetria os pacotes sofrero uma srie de saltos, sendo que a deciso
de que caminho utilizar feita a nvel da camada de Rede, esta deciso podendo levar em
conta (ou no) a situao da rede do ponto de vista do trfego de informao.
Num primeiro ponto, dado este ltimo aspecto, pode-se distinguir os diferentes
algoritmos de roteamento em duas principais classes: os algoritmos adaptativos e no
adaptativos. Os algoritmos no adaptativos no levam em conta a situao de trfego da
rede, fazendo o denominado roteamento esttico; j os adaptativos o fazem, considerando
modificaes de topologia da rede e do trfego real.
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.13
As sees que seguem vo discutir alguns dos conjuntos de algoritmos de
roteamento existentes.
4.2.1. Algoritmo do caminho mais curto
Este algoritmo baseado numa representao da subrede na forma de um grafo,
onde os ns so os IMP e os arcos so as linhas de comunicao. E escolha de uma
trajetria , ento, baseada neste grafo, o objetivo sendo encontrar o caminho mais curto
entre dois IMPs.
O conceito de caminho mais curto pode levar em conta diferentes aspectos:
o nmero de ns entre os dois pontos;
a distncia geogrfica entre os pontos;
os tempos de espera em cada n da trajetria;
etc...
No terceiro caso, por exemplo, os arcos so etiquetados com um valor que
representa o tempo mdio de espera entre o envio e a recepo de um pacote de teste,
expedido periodicamente.
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 a etiqueta
infinito, ou .... 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 3.8 ilustra o funcionamento deste algoritmo. Vamos considerar o grafo
apresentado em 3.8(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 3.8(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 3.8(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 3.8(d), 3.8(e) e 3.8(f).
4.2.2. Roteamento multicaminhos
Este algoritmo leva em conta a possibilidade de existncia de diversos caminhos
entre dois ns de valores quase equivalentes. Desta forma, o desempenho da rede pode ser
melhorado, se o trfego assumido por vrios caminhos, reduzindo assim a carga de uma
dada linha de comunicao.
Esta tcnica de roteamento implantada da seguinte forma: cada IMP mantm
atualizada uma tabela com uma linha para cada IMP da rede. Para cada IMP, tem-se as
diferentes linhas de sada para este destino, classificadas em ordem decrescente, do melhor
ao menos eficiente, com um peso relativo.
Antes do envio de um pacote, o IMP gera um nmero aleatrio para definir o caminho,
utilizando os pesos como probabilidade. As tabelas so criadas de maneira esttica pelo
administrador do sistema e carregadas em cada IMP na inicializao da rede. O grafo da
figura 3.9(a) ilustra o desenvolvimento deste algoritmo, sendo que em 3.9(b) est
apresentada a tabela para o IMP J. Se J recebe um pacote destinado a A, ele pode optar por
um dos trs caminhos, consultando a tabela na linha associada ao n A. A primeira escolha
o caminho direto a A, as outras sendo via I e H, respectivamente.
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.14
2
6
1
2
7
2
4
2
3 3
2
A
B
G
E
F
C
H
D A
B (2,A)
G (6,A)
E ( ,-)
F ( ,-)
C ( ,-)
H ( ,-)
D ( ,-)
(a)
(b)
(c)
(d)
(e)
(f)
A
B (2,A)
G (6,A)
E (4,B)
F ( ,-)
C (9,B)
H ( ,-)
D ( ,-) A
B (2,A)
G (5,E)
E (4,B)
F (6,E)
C (9,B)
H ( ,-)
D ( ,-)
A
B (2,A)
G (5,E)
E (4,B)
F (6,E)
C (9,B)
H (9,G)
D ( ,-) A
B (2,A)
G (5,E)
E (4,B)
F (6,E)
C (9,B)
H (8,F)
D ( ,-)
Figura 3.8 - Ilustrao do algortimo de Dijkstra.
A B C
D
E
F G
H
I J K L
A A 0,63 0,21 0,16
I H
B A 0,46 0,31 0,23
H I
C A 0,34 0,33 0,33
I H
D H
0,50 0,25 0,25 A I
E A 0,40
0,40 0,20 I H
F A 0,34
0,33 0,33 H I
G H 0,46
0,31 0,23 A K
H H 0,63 0,21 0,16
K A
I I 0,65 0,22 0,13 A H

K K 0,67 0,22 0,11 H A
L K 0,42 0,42 0,16 H A
(a) (b)
Figura 3.9 - Ilustrao do algoritmo multicaminho: (a) grafo da rede; (b) tabela para o n J.
A deciso , ento, baseada na gerao de um nmero aleatrio entre 0,00 e 0,99.
Se o nmero inferior a 0,63, a linha A ser escolhida, se estiver entre 0,63 e 0,83, a linha
passando por I ser escolhida; seno, ser a linha que passa por H.
A vantagem desta tcnica sobre a anterior a possibilidade de definir diferentes
classes de trfego sobre diferentes caminhos. Uma outra vantagem a confiabilidade ganha,
uma vez que vrias linhas podem ser perdidas sem que a rede perca a sua conectividade.
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.15
4.3. O controle de congestionamento
Durante o funcionamento de uma aplicao distribuda construda sobre uma rede,
vo existir instantes em que o fluxo de mensagens sendo trocadas pode atingir valores
bastante importantes, de tal forma que os ns intermedirios, responsveis do tratamento
dos pacotes, no sejam mais capazes de tratar os pacotes para retransmisso. Isto,
naturalmente, vai ter como conseqncia uma degradao no funcionamento da rede,
podendo trazer prejuzos (lentido, perdas de pacotes) ao desempenho da aplicao e
comprometendo o seu correto funcionamento. As causas desta sobrecarga, conhecida por
congestionamento, podem ser de vrias naturezas. Um exemplo disto pode ser a lentido
dos ns na realizao do roteamento ou um mal funcionamento do mecanismos de controle
de fluxo.
O congestionamento consiste, normalmente de um processo a realimentao
positiva, o nmero de mensagens tendendo a crescer se a rede est congestionada. 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.
4.3.1. 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.
4.3.2. A destruio de pacotes
Um outro mecanismo que adotado para o controle de congestionamento 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 consequncia, 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.
4.3.3. 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 de
congestionamento.
Outras tcnicas de controle de congestionamento so ainda implementadas, como
por exemplo:
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.16
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.
5. A CAMADA DE TRANSPORTE
A funo da camada de Transporte permitir a transferncia de informaes do
sistema emissor ao sistema receptor de forma confivel e econmica, independentemente
da natureza da informao ou das redes suportando a comunicao.
A importncia dos servios fornecidos por esta camada est no fato que muitas
aplicaes existentes podem funcionar simplesmente com a existncia de um servio
confivel de transporte de informao, o que quer dizer que os servios que poderiam ser
fornecidos pelas camadas superiores so dispensvel. Um exemplo disto a interconexo
de estaes no sistema UNIX.
Nesta parte do documento, sero apresentadas as principais definies relacionadas
aos servios e protocolos de transporte, particularmente do ponto de vista do modelo OSI.
5.1. O servio oferecido camada de Sesso
Segundo o modelo OSI, os usurios da camada de Transporte so as entidades de
Sesso, s quais deve ser oferecido o servio confivel de transporte dos bits de informao
fim-a-fim, este servio sendo fornecido atravs de uma entidade de software ou de hardware
denominada entidade de transporte.
De maneira similar camada de Rede, a de Transporte pode fornecer duas classes
de servio, ou seja, sem conexo e orientados conexo.
Os servios de Transporte orientados conexo so caracterizados pelas trs
etapas j descritas para outros nveis do modelo OSI, isto , estabelecimento de conexo,
transferncia de dados e liberao da conexo.
Estes servios so bastante similares aos servios oferecidos pela camada de
Rede, o que poderia colocar em dvida a necessidade desta camada. No entanto, a sua
existncia se justifica pela necessidade de servios de superviso da camada de Rede do
ponto de vista das entidades efetivamente envolvidas na comunicao. Uma superviso fim-
a-fim, uma vez que, at o nvel Rede, as comunicaes se fazem ponto-a-ponto.
Outra contribuio importante da camada de Transporte que ela permite a
utilizao de primitivas de servio padro pelas diversas aplicaes construdas sobre a
rede efetuando um perfeito isolamento em relao s camadas superiores e tornando
transparentes as possveis alteraes tecnolgicas que poderiam ocorrer nos nveis
inferiores. Por esta razo, costuma-se fazer uma distino entre os nveis de 1 a 4 e os de 5
a 7. Os primeiros quatro nveis seriam mais orientados ao transporte efetivo das
informaes e os trs nveis superiores, mais orientados s aplicaes que sero
construdas sobre a rede.
Poderamos sintetizar o servio fornecido pela camada de Transporte como de
supervisor da qualidade de servio oferecido pela camada de Rede. Isto significa que, se a
camada de Rede confivel, a camada de Transporte no ter muito a fazer.
Por outro lado, se o servio de Rede deficiente, a camada de Transporte assume a
funo de suprir as diferenas entre a qualidade de servio que a camada de Sesso
necessita e aquilo que a camada de Rede pode oferecer.
Para isto, o conceito de qualidade de servio (QOS para Quality Of Service) um
aspecto importante na concepo da camada de Transporte, baseado sobre um certo
conjunto de parmetros, entre os quais:
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.17
o tempo de estabelecimento de uma conexo;
a probabilidade de falha de um estabelecimento;
a taxa de dbito da conexo;
o tempo de trnsito;
a taxa de erro residual;
a probabilidade de incidente de transferncia;
o tempo de desconexo;
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 ser oferecido 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 tambm aqueles parmetros.
Se ela verifica no poder determinados parmetros nos valores mnimos permitidos, neste
caso ela vai rejeitar a conexo.
5.2. As primitivas de servio de Transporte
As primitivas de servio de Transporte do modelo OSI so apresentadas no quadro a
seguir, existindo para os servios orientados conexo e sem conexo.
SERVIO ORIENTADO CONEXO
T_CONNECT.request (called, calling,exp_data,qos,user_data)
T_CONNECT.indication (called, calling, exp_data,qos,user_data)
T_CONNECT.response (qos, responder, exp_data, user_data)
T_CONNECT.confirm (qos, responder, exp_data, user_data)
T_DISCONNECT.request (user_data)
T_DISCONNECT.indication (reason, user_data)
T_DATA.request (user_data)
T_DATA.indication (user_data)
T_EXPEDITED_DATA.request (user_data)
T_EXPEDITED_DATA.indication (user_data)
SERVIO SEM CONEXO
T_UNITDATA.request (called, calling,qos,user_data)
T_UNITDATA.indication (called, calling,qos,user_data)
Como podemos ver, as primitivas de servio de Transporte se assemelham bastante
quelas do servio de Rede. Existe, porm, uma diferena fundamental entre os dois nveis.
No caso do nvel Rede, considera-se que o servio oferecido corresponde ao
funcionamento real do sistema, representando inclusive suas falhas. Desta forma, podem
ocorrer perdas de pacotes ou a emisso de comandos N_RESET de sua prpria iniciativa.
J no caso do nvel Transporte, os comandos N_RESET no so propagados aos
usurios (as camadas superiores), uma vez que o objetivo principal desta camada o
tratamento de todos os problemas de comunicao evitando que os usurios do servio
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.18
tomem conhecimento das ms condies de funcionamento da rede de comunicao (se tal
o caso!).
Uma outra diferena entre os dois servios so os usurios destes... no caso do
servio de Rede, os usurios so as entidades de Transporte, normalmente elementos
associados ao sistema operacional considerado ou a uma carta especfica instalada nos
sistemas.
J os usurios do servio de Transporte podem ser programas escritos pelos
programadores de aplicaes, uma vez que, como j foi dito, muitas aplicaes podem
comunicar-se diretamente atravs do uso direto das primitivas de servio de Transporte (no
fazendo uso dos servios de Sesso ou de Apresentao).
As possveis relaes entre as primitivas de servio da camada de Transporte so
apresentadas na figura 3.10. As duas extremidades das ilustraes caracterizam os
usurios do servio de Transporte, o fornecedor sendo representado pelo espao separando
os dois usurios.
Em 3.10(a) ilustrada um estabelecimento normal de conexo, onde o usurio da
esquerda envia uma primitiva T_CONNECT.request camada de Transporte. O usurio da
direita vai receber ento uma primitiva T_CONNECT.indication, cujos parmetros vo
conduzir os valores, particularmente, da qualidade de servio a serem negociados. Este
aceita o estabelecimento da conexo, retornando camada de Transporte uma primitiva
T_CONNECT.response, que ser refletida, via servio de Transporte, no usurio da
esquerda na forma de uma primitiva T_CONNECT.confirm. A figura 3.10(b) apresenta uma
tentativa de estabelecimento de conexo, rejeitada, porm, pelo usurio da direita, que utiliza
as primitivas de servio T_DISCONNECT.request e T_DISCONNECT.indication para
sinalizar a rejeio. O caso similar na figura 3.10(c), porm, desta vez, o prprio
fornecedor do servio de Transporte quem rejeita a conexo, enviando uma primitiva
T_DISCONNECT.indication ao usurio da esquerda. No que diz respeito liberao da
conexo, pode-se considerar trs diferentes maneiras: a primeira, ilustrada em 3.10(d),
considera o caso em que a liberao iniciada por um dos usurios (no caso o da
esquerda). A conexo liberada no momento em que o usurio da direita recebe uma
primitiva T_DISCONNECT.indication, reflexo da primitiva T_DISCONNECT.request emitida
pelo usurio que iniciou a liberao.
Em 3.10(e) considerado o caso em que os dois usurio iniciam, simultaneamente,
a liberao da conexo, neste caso, a conexo liberada sem a emisso de outras
primitivas de servio; finalmente, em 3.10(f), a liberao iniciada pelo prprio servio de
Transporte, que vai emitir primitivas T_DISCONNECT.indication aos dois usurios
conectados. J as figuras 3.10(g) e 3.10(h), representam, respectivamente, a etapa de
transferncia de dados, para dados normais e expressos.
5.3. Os protocolos de Transporte
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 seqenciamento 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; j, no nvel Transporte, o endereo do
destinatrio deve ser explicitamente definido;
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.19
T_CONNECT
request
T_CONNECT
indication
T_CONNECT
response
T_CONNECT
confirm
T_CONNECT
request
T_CONNECT
indication
T_DISCONNECT
request
T_DISCONNECT
indication
T_CONNECT
request
T_DISCONNECT
indication
(a) (b) (c)
T_DISCONNECT
request
T_DISCONNECT
indication
T_DISCONNECT
request T_DISCONNECT
indication
(d) (e) (f)
T_DISCONNECT
request
T_DISCONNECT
indication
T_DATA
request
T_DATA
indication
(g) (h)
T_EXPEDITED_DATA
request
T_EXPEDITED_DATA
indication
Figura 3.10 - As diversas interaes entre as primitivas de servio de Transporte.
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:
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.20
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
seqenciamento;
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 permitir entidade receptora de identificar corretamente a conexo qual esta unidade
de dados deve ser associada. Independente da classe de protocolo considerada, deve
sempre existir um mecanismo de liberao de conexo, esta liberao sendo, porm,
diferente dependendo da classe de protocolo considerada.
6. A CAMADA DE SESSO
Como foi mencionado anteriormente, o modelo hierrquico de comunicao proposto
no modelo OSI pode fazer distino em duas classes de camadas: as camadas inferiores,
concretizadas pelas camadas de 1 a 4, j vistas, cujos servios so orientados ao transporte
de informao propriamente dito, tratando essencialmente de problemas de comunicao
como, por exemplo, codificao e transmisso de bits, controle de fluxo e de erros,
seqenciamento, roteamento, controle de trfego e gerenciamento de conexes; as
camadas superiores, concretizadas pelas camadas de 5 a 7, cujos servios se orientam
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.21
mais s aplicaes escritas pelos usurios no sentido de facilitar ou simplificar as suas
tarefas, fornecendo servios padronizados os mais diversos.
A camada de Sesso a primeira camada (no sentido bottom-up) enquadrada na
segunda classe. Ao contrrio de outras camadas j estudadas e outras que sero vistas
mais adiante, a camada de Sesso foi introduzida no momento da definio do modelo OSI.
As demais camadas presentes no OSI foram, de certo modo, inspiradas de modelos pr-
existentes na concepo de redes j existentes na poca como, por exemplo, ARPANET.
Esta , na verdade, uma das camadas mais simples do modelo OSI, oferecendo uma
quantidade relativamente limitada, longe dos servios oferecidos por camadas como a de
Transporte, por exemplo.
Nesta parte do documento, veremos ento os servios oferecidos pela Sesso e
como estes so implementados atravs dos protocolos.
6.1. Servios oferecidos camada de apresentao
Segundo o modelo OSI, os usurios dos servios de Sesso so as entidades de
Apresentao, a posio desta camada estando ilustrada na figura 3.11. 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... Apesar de que, ao nvel de Sesso, so
oferecidas primitivas de servio para a comunicao sem conexo, neste modo, no
possvel explorar os servios orientados aos usurios, disponveis nesta camada.
No que diz respeito conexo de Sesso (ou sesso, como definido acima), pode-
se estabelecer as diferentes possveis relaes entre uma conexo de Sesso e uma
conexo de Transporte, como mostra a figura 3.12. Em 3.12(a), mostrada uma
correspondncia de 1 a 1 entre uma conexo de Sesso e uma de Transporte. Por outro
lado, como mostrado em 3.12(b), pode-se utilizar uma mesma conexo de Transporte para
suportar diferentes sesses consecutivas (ver exemplo da agncia de reservas de
passagens em Tanenbaum 90). Ainda, pode-se ter o quadro inverso, onde, pela quebra de
uma conexo de Transporte, a abertura de uma nova providenciada para garantir a
continuidade de uma mesma sesso. Este ltimo cenrio, ilustrado em 3.12(c), se
caracteriza, por exemplo, quando as entidades de Transporte assumem a tarefa de
retomada de dilogo aps uma pane.
6.2. Sesso x Transporte: similaridades e diferenas
Esta a principal funo da camada de Sesso e, 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.
TSAP
SSAP
ENTIDADE
DE SESSO
1 a 3
4
5
6
7
TRANSPORTE
APRESENTAO
protocolo de
sesso
SPDUs
servios oferecidos
camada de apresen-
tao
servios oferecidos
camada de sesso
TSAP
SSAP
ENTIDADE
DE SESSO
TRANSPORTE
APRESENTAO
Figura 3.11 - Posio da camada de Sesso no modelo OSI.
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.22
Transporte
Sesso
Transporte
Sesso
Transporte
Sesso
(a) (b) (c)
Figura 3.12 - Diferentes relaes entre conexo de Sesso e de Transporte: (a) correspondncia 1 a 1;
(b) uma conexo de Transporte para vrias sesses; (c) vrias conexes de Transporte para uma nica
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 que causa a terminao
abrupta da conexo, pondendo ocorrer inclusive perda dos dados ainda em trnsito. 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 3.13. Em 3.13(a)
apresentada a liberao abrupta de uma conexo de Transporte; em 3.13(b), apresentada
a liberao negociada de uma sesso. Como se pode ver em 3.13(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.
Um outro ponto de bastante similaridade entre as camadas de Sesso e Transporte
o endereamento. Da mesma forma que no Transporte, a nvel de Sesso necessrio
indicar um SSAP (Ponto de Acesso ao Servio de Sesso ou Session Service Access
Point) na fase de estabelecimento de sesso.
Normalmente, um endereo de SSAP nada mais que um endereo de TSAP
enriquecido com outras informaes. Ainda, uma diferena entre Sesso e Transporte est
nos tipos de dados transmitidos. Como foi visto no caso da camada de Transporte, existem
dois tipos de fluxos de dados os dados normais e os dados expressos (ou urgentes).
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.23
T_DISCONNECT
request
T_DISCONNECT
indication
T_DATA
request perda
dado
S_RELEASE
request
S_RELEASE
indication
S_DATA
request
S_DATA
indication
S_RELEASE
response
S_RELEASE
confirm
(a) (b)
Figura 3.13 - (a) liberao abrupta; (b) liberao negociada.
J na camada de Sesso, alm destes dois tipos de dados, podem ocorrer outros
dois os dados tipados (typed data) e os dados de capacidade (capacity data). Estes tipos
de dados sero explicados mais adiante, neste documento.
6.3. 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 3.14(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 3.14(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.
Ainda, se um dos usurios querendo efetuar uma transmisso no possui a ficha
naquele instante, ele pode requisit-la a seu par atravs da emisso de uma primitiva
S_TOKEN_PLEASE.request.
O usurio receptor da primitiva S_TOKEN_PLEASE.indication pode ou no querer
ceder a ficha. Em caso negativo, o usurio que a requisitou no far outra coisa seno
esperar a boa vontade do seu interlocutor (ou ainda, enviar dados urgentes que no
necessitam a possesso da ficha).
A ficha s passa a ter algum sentido no caso de comunicao half duplex. Se full
duplex a opo adotada, ela no levada em conta.
6.4. A sincronizao
A camada de Sesso deve cobrir igualmente os problemas relacionados
sincronizao. Esta tarefa til para a manuteno da coerncia do estado entre dois
usurios interlocutores em caso de erro ou outro problema.
Apesar de que a camada de Transporte tenha, por princpio, a funo de cobrir todos
os problemas relacionados retomada aps ou erros ou panes, esta camada cobre
unicamente os problemas relacionados transmisso de dados propriamente dita, no
levando em conta os problemas podendo ocorrer nas camadas superiores. Estes erros
podem ocasionar perdas de dados que a camada de Transporte incapaz de detectar (uma
vez que esta no a sua funo!).
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.24
(a) (b)
S_DATA
request
S_DATA
indication
S_DATA
request
S_DATA
indication
S_DATA
request
S_DATA
indication
S_DATA
request
S_DATA
indication
S_DATA
request
S_DATA
indication
S_DATA
request
S_DATA
indication
S_TOKEN_GIVE
request
S_TOKEN_GIVE
indication
S_DATA
request
S_DATA
indication
Figura 3.14 - (a) comunicao full duplex; (b) comunicao half duplex com ficha.
A camada de Sesso vem, ento ao socorro do sistema efetuando a tarefa de
sincronizao, atravs da insero a nvel dos dados de pontos de sincronizao, que
permitem manter a sesso num estado correspondendo a um antigo ponto de
sincronizao.
A figura 3.15(a) ilustra o procedimento de insero de pontos de sincronizao. Um
exemplo disto pode ser ilustrado na transmisso de um documento via rede, no qual este
pode ser decomposto em pginas s quais se pode associar os pontos de sincronizao.
Neste caso, a resincronizao vai consistir na retransmisso do documento a partir de uma
dada pgina que estava sendo transmitida quando o problema ocorreu.
A sincronizao implementada da seguinte forma: o usurio emissor insere, nas
suas mensagens, pontos de sincronizao, cada ponto contendo um nmero de srie.
Quando um usurio envia uma primitiva (request) para inserir um ponto de sincronizao, o
outro usurio vai receber uma primitiva de indicao correspondente, isto ocorrendo de igual
maneira no caso de uma resincronizao.
importante notar aqui que a camada de Sesso oferece unicamente as
ferramentas para a soluo dos problemas de erros e incoerncia por
sincronizao/resincronizao. Na realidade, quem ativa estas ferramentas quando da
ocorrncia de um problema so as entidades das camadas superiores. O mecanismo de
sincronizao define dois tipos distintos de pontos de sincronizao os pontos de
sincronizao mximos e mnimos.
1 2 3 4 5 6 7 8 9
SESSO
ponto de sincronizao
1
2 3 4
5
6 7 8
9
ponto de sincronizao
mximo
ponto de sincronizao
mnimo
DILOGO
(a)
SESSO
(b)
Figura 3.15 - (a) Pontos de sincronizao; (b) Pontos de sincronizao mximos e mnimos.
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.25
Os pontos de sincronizao mximos so utilizados para delimitar trechos da
informao denominados dilogos, que representam uma decomposio lgica da
informao (captulos de um livro, por exemplo). J os pontos de sincronizao mnimos so
utlizados para separar pores menores da informao. No caso de um livro, esta poro
poderia ser as pginas dos captulos. A figura 3.15(b) ilustra os 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 significa que ela pode ser apagada da extremidade emissora. Isto j no
ocorre no caso dos pontos de sincronizao mnimos.
Alem 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.
6.5. Gerenciamento de atividades
Outra funo importante da camada de Sesso o controle de atividades. Esta tarefa
baseada no conceito de decomposio do fluxo de dados em atividades, independentes
umas das outras. O conceito de atividade vai depender da aplicao considerada, o usurio
sendo o responsvel desta definio.
Um exemplo tpico de utilizao do conceito a transferncia de arquivos, onde cada arquivo
deve ser separado, de alguma forma dos demais. A forma de faz-lo atravs da definio,
de cada arquivo, como sendo uma atividade, como mostra a figura 3.16. Para faz-lo, antes
da emisso de cada arquivo, o usurio deve enviar uma primitiva
S_ACTIVITY_START.request para marcar o incio de uma atividade; isto vai gerar, no lado
do receptor, uma primitiva S_ACTIVITY_START.indication sinalizando o incio do envio de
uma nova atividade (neste caso particular, o arquivo).
O fim da transferncia de um arquivo marcado, ento, pelo envio, por parte do
emissor, de uma primitiva S_ACTIVITY_END.request. O interesse da definio de atividade
o fato que certas aplicaes podem ter a garantia de atomicidade, evitando erros devido a
panes ocorridas entre aes de uma mesma atividade.
Um exemplo de aplicao o de uma operao bancria realizada atravs de um
terminal informatizado. A operao normal se desenrola da maneira seguinte:
o proprietrio da conta emite um comando informando o seu nmero de conta (e a
senha correspondente) o computador do banco verifica o nmero e a senha, e
bloqueia o cdigo correspondente a fim de evitar o acesso concorrente;
o proprietrio da conta envia um novo comando informando o nmero da conta
para onde o dinheiro deve ser transferido o computador verifica o nmero da
conta e bloqueia o cdigo correspondente pela mesma razo j apresentada;
o proprietrio, finalmente, emite um terceiro comando informando o montante a ser
transferido o computador efetiva, ento, a transferncia para a conta
destinatria.
Um caso tpico deste cenrio aquele em que uma pane (falta de energia, por
exemplo) ocorre no terminal sendo utilizado pelo cliente proprietrio da conta imediatamente
aps o primeiro comando. O computador vai bloquear o cdigo correspondente conta, mas
os demais comandos no sero efetuados. A aplicao do conceito de atividade via camada
de Sesso permite solucionar este problema, garantindo a atomicidade da operao. A
operao completa pode ser vista como uma atividade.
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.26
arquivo 2 arquivo 1
ATIVIDADE
incio atividade
fim atividade
SESSO
ATIVIDADE
Figura 3.16 - Conceito de atividade aplicado a uma transferncia de arquivo.
Assim, aps a recepo de uma primitiva S_ACTIVITY_START.indication, o
computador do banco ficaria armazenando as mensagens (de comando) at a recepo de
uma primitiva S_ACTIVITY_END.indication. S neste momento, os comandos seriam
efetivados pelo computador.
Uma outra propriedade interessante das atividades a capacidade de ser
interrompida e retomada sem a perda das informaes. Isto pode ser feito atravs da
primitiva S_ACTIVITY_INTERRUPT que permite iniciar uma nova atividade e retomar aquela
ao final desta segunda atividade a partir do ponto onde ela tinha sido interrompida.
Um exemplo tpico aquele da transferncia de um arquivo de tamanho relativamente
grande, no qual, durante a transferncia, seja necessrio, com relativa urgncia, efetuar a
consulta a uma base de dados (anurio telefnico, agenda, por exemplo). Este exemplo
ilustrado na figura 3.17.
6.6. As primitivas de servio de Sesso
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).
transf. arquivo
1 parte
transf. arquivo
2 parte
consulta
anurio
1
incio atividade 1
interrupo atividade 1
incio atividade 2
fim atividade 2
retomada atividade 1
fim atividade 1
2 3 4 5 6
1
2
3
4
5
6
Figura 3.17 - Exemplo da interrupo de um atividade para a realizao de outra.
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.27
PRIMITIVA R I Rs C FUNO
ORIENTADO CONEXO
S_CONNECT estabelecimento de conexo
S_RELEASE
S_U_ABORT
S_P_ABORT

liberao negociada de conexo


liberao abrupta (usurio)
liberao abrupta (fornecedor)
S_DATA
S_EXPEDITED_DATA
S_TYPED_DATA
S_CAPABILITY_DATA


transferncia de dados normais
transferncia de dados urgentes
transferncia de dados tipados
transf. de dados de capacidade
S_TOKEN_GIVE
S_TOKEN_PLEASE
S_CONTROL_GIVE

passagem de ficha de dados


pedido de ficha
passagem de todas as fichas
S_SYNC_MAJOR
S_SYNC_MINOR
S_RESYNCHRONIZE

insero de pto. de sincro. mximo


insero de pto. de sincro. mnimo
pedido de resincronizao
S_ACTIVITY_START
S_ACTIVITY_END
S_ACTIVITY_DISCARD
S_ACTIVITY_INTERRUPT
S_ACTIVITY_RESUME

incio de uma atividade


fim de uma atividade
abandono de uma atividade
interrupo de uma atividade
retomada de uma atividade
S_U_EXCEPTION_REPORT
S_P_EXCEPTION_REPORT

relatrio de anomalia (usurio)


relatrio de anomalia (fornecedor)
SEM CONEXO
S_UNITDATA transferncia de dados (s/ conexo)
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 cada 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 gerenciamento das atividades e da sincronizao). S_TOKEN_GIVE
permite efetuar a transferncia de uma ou mais fichas entidade remota, as fichas a
transferir sendo indicadas nos parmetros das primitivas.
O quinto grupo contm os servios relativos sincronizao, seja para insero de
pontos de sincronizao (atravs dos servios S_SYNC_MAJOR e S_SYNC_MINOR,
dedicados, respectivamente, introduo de pontos de sincronizao mximos e mnimos),
seja para a resincronizao a partir de um ponto dado (S_RESYNCHRONIZE).
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.28
O sexto grupo, atravs dos servios, S_ACTIVITY_START, S_ACTIVITY_END,
S_ACTIVITY_DISCARD, S_ACTIVITY_INTERRUPT e S_ACTIVITY_RESUME dedicado
ao gerenciamento das atividades (incio, fim, abandono, interrupo e retomada).
O stimo grupo dedicado gerao de relatrios de anomalia, tanto da parte de um
dos usurios (S_U_EXCEPTION_REPORT) quanto da camada de Sesso
(S_P_EXCEPTION_REPORT).
7. A CAMADA DE APRESENTAO
Quando foi concebida, a camada de Apresentao era responsvel unicamente das
funes de converso entre dados representados em ASCII e EBCDIC. Em seguida, novos
servios foram introduzidos de forma que, atualmente, pode-se descrever a tarefa desta
camada por tudo o que possa estar relacionado representao dos dados a serem
transmitidos, particularmente as funes de: converso de dados, criptografia e
compresso.
As sees que seguem apresentaro os principais problemas e as solues
encontradas na realizao destas funes.
7.1. As primitivas de servio da camada de apresentao
O quadro a seguir apresenta a lista de primitivas de servio de Apresentao. Como
se pode notar, quase todas as primitivas so idnticas quelas apresentadas na parte
anterior, relativa camada de Sesso.
PRIMITIVA R I Rs C FUNO
ORIENTADO CONEXO
P_CONNECT estabelecimento de conexo
P_RELEASE
P_U_ABORT
P_P_ABORT

liberao negociada de conexo


liberao abrupta (usurio)
liberao abrupta (fornecedor)
P_DATA
P_EXPEDITED_DATA
P_TYPED_DATA
P_CAPABILITY_DATA


transferncia de dados normais
transferncia de dados urgentes
transferncia de dados tipados
transf. de dados de capacidade
P_TOKEN_GIVE
P_TOKEN_PLEASE
P_CONTROL_GIVE

passagem de ficha de dados


pedido de ficha
passagem de todas as fichas
P_SYNC_MAJOR
P_SYNC_MINOR
P_RESYNCHRONIZE

insero de pto. de sincro. mximo


insero de pto. de sincro. mnimo
pedido de resincronizao
P_ACTIVITY_START
P_ACTIVITY_END
P_ACTIVITY_DISCARD
P_ACTIVITY_INTERRUPT
P_ACTIVITY_RESUME

incio de uma atividade


fim de uma atividade
abandono de uma atividade
interrupo de uma atividade
retomada de uma atividade
P_U_EXCEPTION_REPORT
P_P_EXCEPTION_REPORT

relatrio de anomalia (usurio)


relatrio de anomalia (fornecedor)
P_ALTER_CONTEXT alterao de contexto
SEM CONEXO
P_UNITDATA transferncia de dados (s/ conexo)
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.29
No caso dos servios orientados conexo, por exemplo, os usurios desta camada,
ou seja, as entidades da camada de Aplicao podem abrir uma sesso utilizando a primitiva
P_CONNECT.request, que se reflete, na camada de Apresentao, pelo envio de uma
primitiva S_CONNECT.request, j descrita quando da apresentao da camada de Sesso.
De fato, a maior parte das primitivas de servio de Apresentao atravessam desta
forma a camada. A novidade mostrada na camada so as primitivas P_ALTER_CONTEXT,
que compem o servio de alterao de contexto de Apresentao.
Um contexto a unidade na qual so reagrupados as estruturas de dados utilizadas
pelas entidades de Aplicao. Ao longo de uma sesso, possvel utilizar um contexto
durante um determinado tempo e utilizar um outro num outro momento. O servio
P_ALTER_CONTEXT permite fazer a modificao.
A camada de Apresentao viabiliza a negociao sobre que forma de representao
ser adotada para os dados manipulados pela aplicao.
A negociao baseada no fornecimento, por parte de um usurio, de todas as
estruturas de dados que ele deseja utilizar, sendo que o usurio par pode ou no aceitar a
proposta.
Durante o dilogo, ainda possvel que novas propostas de estruturas de dados
sejam negociadas pelos dois usurios.
7.2. 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 possvel, 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.
Nos estudos apresentados das camadas inferiores, particularmente na apresentao
dos protocolos existentes, muitas estruturas de dados foram apresentadas na forma de
figuras, com seus campos sendo apresentados por retngulos. Estas estruturas podem ser
formalizadas por registros, filas, vetores, etc...
A camada de Aplicao, cujas entidades so os usurios da camada de
Apresentao, caracterizada por muitas estruturas de dados, transmitidas na forma de
APDUs (Application Protocol Data Units), compostas de diferentes campos, cada campo
tendo um determinado tipo (booleano, inteiro, etc...).
A notao ASN.1 permite formalizar os diversos tipos de dados podendo compor os
campos de uma APDU, reagrupando-os inclusive num mdulo de biblioteca para cada
aplicao tpica. Desta forma, possvel a uma aplicao enviar uma estrutura de dados
camada de Apresentao, dando a ela o nome da estrutura ASN.1 correspondente. A
camada de Apresentao poder, ento, conhecer o tipo e o tamanho de cada campo
compondo a estrutura de dados e, desta forma, codific-los para a transmisso. A entidade
de Apresentao receptora, por sua vez, conhecendo a estrutura ASN.1 dos dados
recebidos, pode fazer todas as converses que sejam necessrias para adaptar mquina
receptora.
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.30
O interesse da existncia de ASN.1 que esta notao serve como uma linguagem
comum para todas as mquinas. Isto evita que todas as mquinas tivessem de conhecer
todas as possveis formas de representao de cada uma das mquinas com as quais elas
teriam de se comunicar. Com ASN.1, basta apenas que cada mquina conhea como
codificar seus dados nesta notao. A norma ISO 8824 define a notao de sintaxe abstrata
ASN.1, onde os principais pontos sero apresentados a seguir. Um primeiro exemplo de
como um dado pode ser descrito em ASN.1, vamos fazer um paralelo entre uma estrutura
de dados Pascal e uma estrutura de dados ASN.1.
Vamos considerar que pretendemos representar por uma estrutura em Pascal as
principais caractersticas dos dinossauros. Isto poderia ser feito atravs de uma estrutura do
tipo record, onde cada campo teria seu tipo especfico e representando uma caracterstica
dos dinossauros. Um exemplo disto mostrado a seguir:
type dinossauro = record
nome : array [1..12] of char;
tamanho : integer;
carnivoro : boolean;
ossos : integer;
descoberta : integer;
end;
No caso de ASN.1, a mesma estrutura de dados poderia ser representada da
seguinte forma:
dinossauro ::= SEQUENCE {
nome OCTET STRING, --12 chars
tamanho INTEGER,
carnivoro BOOLEAN,
ossos INTEGER,
descoberta INTEGER
}
Como se pode notar, no existem muitas diferenas entre a forma de especificar um
record Pascal e uma seqncia ASN.1. De fato, tipos complexos ASN.1 so gerados a partir
de tipos de base, denominados tipos primitivos. Os tipos primitivos ASN.1 so apresentados
na tabela a seguir.
TIPO SIGNIFICADO
INTEGER inteiro de valor arbitrrio
BOOLEAN verdadeiro / falso
BIT STRING lista de bits
OCTET STRING lista de bytes
ANY conjunto de todos os tipos
NULL nenhum tipo
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 SIGNIFICADO
SEQUENCE seqncia de elementos de diversos tipos
SEQUENCE OF seqncia de elementos de um mesmo tipo
SET conjunto (no ordenado) de elementos de diversos tipos
SET OF conjunto (no ordenado) de elementos de um mesmo tipo
CHOICE escolha de um tipo entre uma lista de tipos
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.31
O construtor SEQUENCE permite construir uma estrutura de dados cujos campos
sejam de tipos diferentes. Ele bastante similar a um registro Pascal, como j foi visto no
exemplo anteriormente apresentado. SEQUENCE OF permite construir vetores de
elementos de um mesmo tipo. O construtor SET similar ao SEQUENCE, com uma
diferena apenas os elementos de um SET no ordenados como no caso do
SEQUENCE.
Da mesma forma, SET OF similar a SEQUENCE OF, a mesma diferena sendo
vlida para este caso.
O construtor CHOICE permite especificar um dado cujo formato pode assumir
diversas opes. Um exemplo da utilizao deste construtor mostrado abaixo.
PDU_Comando ::= CHOICE {
Comando_local,
Comando_remoto
}
Alm dos tipos primitivos e construtores, existem ainda os tipos pr-definidos de
ASN.1, como por exemplo:
NumericString, que define uma lista de numerais de 0 a 9 mais os brancos;
PrintableString, que define uma lista cujos elementos podem ser as letras
maisculas, as minsculas, os nmeros e os caracteres ( ) + - . , / : = ?
GeneralizedTime, para definir datas e horas.
Existe ainda, em ASN.1, a possibilidade de expressar estruturas de dados onde
alguns dos campos possam ou no estar presentes em tempo de execuo so os
campos opcionais. Isto representado atravs da clusula OPTIONAL.
Ainda, pode-se atribuir a um dado um valor inicial (por default) atravs da clusula
DEFAULT.
Finalmente, ASN.1 define ainda o conceito de etiqueta (ou TAG), que permite
identificar um valor associando-o a um dado campo. Para mais detalhes sobre ASN.1,
aconselha-se uma consulta s normas ISO 8824/8825 e outros documentos disponveis
sobre esta notao.
7.3. A compresso de dados
De um ponto de vista genrico, os dados transmitidos atravs de um canal podem
ser vistos como uma seqncia de smbolos S
1
, S
2
, ..., S
N
, pertencentes a um dado
alfabeto (bits, dgitos decimais, letras, palavras de uma lngua, etc...).
As tcnicas de compresso de dados existentes so baseadas sobre trs diferentes
aspectos da representao de dados: a limitao do alfabeto, as freqncias relativas dos
smbolos, o contexto de aparecimento dos smbolos. Estes trs pontos de vista sero
analisados a seguir.
7.3.1. Codificao de um alfabeto finito de smbolos
Muitas aplicaes so baseadas na representao dos dados atravs de alfabetos
finitos de smbolos. Um exemplo disto so as aplicaes relacionadas utilizao de
terminais, onde os dados so representados pelo alfabeto ASCII.
Consideremos o exemplo do gerenciamento de uma biblioteca, onde um livro poderia
ser identificado pelo seu ttulo, o ttulo de um livro podendo ser expresso em 20 caracteres
(ou 140 bits).
Isto significa que, com uma palavra de 140 bits, poderamos identificar at 2
140
livros.
No entanto, no existem biblioteca no mundo que possua esta quantidade de livros. Assim,
se, ao invs de identificarmos os livros pelo seu ttulo escolhermos um sistema de
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.32
numerao, poderemos diminuir em muito a quantidade de bits necessria para a
identificao de um livro de qualquer biblioteca.
7.3.2. Codificao dependente da freqncia
Em determinadas aplicaes, muitos smbolos de um alfabeto so muito mais
utilizados que outros. Nos textos em Ingls, por exemplo, a letra E aparece 100 vezes mais
freqentemente que a letra Q, a palavra THE aparecendo 10 vezes mais que BE.
Baseados nestas informaes, os dados podem ser codificados de tal forma que
smbolos ou seqncias de smbolos sabidamente mais freqentes que outros sejam
representados de uma forma especial, simplificada no que diz respeito quantidade de
informao necessria.
As tcnicas consistem normalmente em codificar os smbolos mais freqentes por
cdigos curtos e os menos freqentes por cdigos mais longos. Um exemplo desta tcnica
de compresso foi apresentada em 6.1.2.
7.3.3. Codificao baseada no contexto
A tcnica apresentada acima baseada na ocorrncia de smbolos ou determinadas
seqncias de maneira isolada, como se a probabilidade de ocorrncia dos smbolos ou
seqncias fosse independente daquela que os precede. Na verdade, estas probabilidades
podem ser altamente dependentes da informao precedente. Por exemplo, no caso de um
texto em Portugus, a probabilidade de ocorrer a letra T aps a letra Q muitas vezes
inferior que a probabilidade de ocorrer uma letra U aps Q. A probabilidade de ocorrncia
de uma letra P aps uma letra N numa palavra nula, a menos que um erro de ortografia
tenha sido cometido.
Uma tcnica mais sofisticada que aquela de levar em conta este aspecto
calculando a probabilidade relativa de ocorrncia de cada smbolo aps os demais smbolos
de um alfabeto.
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 k
2
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 caractere numrico
tambm um caractere 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 2
k
- 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:
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.33
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 Mbits/s. Com uma codificao binria, seria
necessrio dispor de uma faixa de freqncia de quase 600 MHz. Uma vez que a
transmisso 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.
7.4. A criptografia
A criptografia uma tcnica bastante antiga, introduzida principalmente pelas
organizaes militares, particularmente na troca de mensagens em tempo de guerra.
Nessas ocasies, um problema da criptografia era a dificuldade de decodificao das
mensagens criptografadas, muitas vezes tendo de ser feitas nos campos de batalha em
condies totalmente adversas. Outro problema era a dificuldade na mudana de uma
tcnica a outra, particularmente devido dificuldade em informar o grande nmero de
pessoas que deveria estar consciente da mudana.
O processo de criptografia de uma mensagem ilustrado pela figura 3.18. As
mensagens a serem criptografadas so codificadas graas a uma funo parametrizada por
uma chave, gerando, na sada o texto criptografado ou o criptograma. Este texto
transmitido por um mensageiro ou rdio, este podendo ser escutado por um espio.
A diferena entre o espio e o destinatrio que, como o primeiro no tem a chave
de decodificao, ele dificilmente vai poder decodificar a mensagem. Os espies podem
efetuar dois tipos de ao sobre os criptogramas, copi-los unicamente para conhecer o seu
contedo (espio passivo) ou modific-los de modo a confundir o destinatrio destes (espio
ativo).
Um princpio das tcnicas de criptografia a suposio de que o espio conhece
sempre as tcnicas gerais da criptografia, ou seja, que pelo menos o esquema apresentado
na figura 3.18 conhecido. Por outro lado, criar a cada vez um mtodo diferente de
criptagem a cada vez que um outro considerado conhecido representa um trabalho
considervel.
A forma mais eficiente de tentar esconder o jogo atravs da introduo das
chaves. As chaves consistem de seqncias de caracteres relativamente curtas que
permitem escolher um mtodo de criptagem em funo do seu valor. A vantagem disto
que, enquanto uma tcnica de criptagem pode ser modificada numa escala de anos, uma
chave pode ser modificada quando se julgar necessrio.
Os mtodos de criptografia podem ser organizados em duas principais classes: os
mtodos por substituio e os mtodos por transposio cujos principais pontos sero
vistos a seguir.
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.34
chave de
codificao (k)
chave de
decodificao
Processo de
codificao
ESPIO
criptograma
M M
espio passivo espio ativo
Processo de
decodificao
Figura 3.18 - O processo de criptografia.
7.4.1. A criptagem por substituio
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.
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
a b c d e f g h i j k l m n o p q r s t u v w x y z
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! (4.10
26
) 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 dificuldade pode ser diminuda se forem
consideradas as propriedades naturais da lngua utilizada. Na lngua inglesa, por exemplo,
existem letras que so mais freqentemente utilizadas, como por exemplo, as letras e, t, o,
..., os digramas mais freqentes so th, in, er, ... e os trigramas mais utilizados so the, ing,
and e ion. E o trigrama mais utilizado da lngua portuguesa? Nos ltimos meses, deve ter
sido CPI.
Desta forma, a decodificao de um criptograma obtido com a substituio
monoalfabtica, feita associando-se a letra mais freqente letra mais freqente da lngua
considerada, os digramas mais freqentes queles mais freqentes da lngua considerada,
etc...
7.4.2. A criptagem por transposio
Na criptagem por substituio, apesar da substituio das letras, os cdigos mantm
a ordem correta das letras nas palavras e frases. Na codificao por transposio, as letras
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.35
no so substitudas, mas de fato, transpostas de tal forma a esconder o verdadeiro
significado do texto.
Uma tcnica de criptagem mostrada na figura 3.19, denominada transposio por
colunas. Nesta tcnica as linhas sero trocadas pelas colunas numeradas em funo de
uma chave que , normalmente, uma palavra no contendo nenhuma letra repetida. No
exemplo, a chave considerada a palavra PESCAR, onde a ordem das colunas associadas
a cada uma das letras vai ser 4-3-6-2-1-5. Assim, um texto como...
T TR RA AN NS SF FE ER RI IR R U UM M M MI IL LH H O O P PA AR RA A A A C CO ON NT TA A D DE E C CO OL LL LO OR R o criptograma obtido ser ...
S SU UA AA AD DO ON NR RH HA AA AL LR RR RI IA AN NO OT TE EM MP PO OC CF FM MO OC CE ER RA AI IL LR RT TL L. .
8. A CAMADA DE APLICAO
A camada de Aplicao tem por funo o gerenciamento dos programas de usurio
(programas de aplicao) que executam em mquinas conectadas e utilizam o sistema de
comunicao para a troca de informaes.
Os programas de aplicao executando via um sistema de comunicao baseada no
modelo OSI vo utilizar-se dos servios de comunicao oferecidos pela camada de
Apresentao, descrita na parte anterior do documento.
Esta camada a que mantm o contato direto com os usurios da arquitetura de
comunicao, abrindo caminho para todos os servios oferecidos pelas camadas inferiores.
Dentro desta parte, sero estudados os principais aspectos relacionados camada
de Aplicao, particularmente, a sua estrutura e os conceitos associados e alguns exemplos
de servios oferecidos a nvel de Aplicao.
8.1. Estrutura da camada de Aplicao
A grande diversidade das aplicaes podendo ser construdas sobre uma arquitetura
de comunicao e a questo da heterogeneidade dos sistemas, fator importante da
concepo do modelo OSI, conduziu, no mbito da ISO, definio de uma arquitetura
unificada para a camada de Aplicao, ALS (Application Layer Structure), definida pela
norma ISO 9545.
Nesta definio, a norma no prope servio de Aplicao, mas introduz um conjunto
de conceitos relacionados estrutura da camada, que pode servir como base para a
definio de outras normas ou propostas de servios de Aplicao.
P E S C A R
4 3 6 2 1 5
T R A N S F
E R I R U M
M I L H A O
P A R A A C
O N T A D E
C O L L O R
Texto original:

TRANSFERIR UM MILHAO PARA A
CONTA DE COLLOR


Texto codificado

SUAADONRHAALRRIANOTEMPOC
FMOCERAILRTL
Figura 3.19 - Exemplo da transposio por colunas.
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.36
8.1.1. Caractersticas especficas da camada de Aplicao
Dado que a camada de Aplicao a mais alta do modelo OSI, ela no fornece
servio a nenhuma outra camada, a noo de conexo ficando, ento, inadequada a nvel de
Aplicao. Por outro lado, a comunicao entre entidades de Aplicao pares deve ser
suportada por alguma forma de relao que permita a troca de informaes de controle dos
protocolos de Aplicao, esta forma de relao sendo definida como uma Associao de
Aplicao.
Os elementos compondo a arquitetura da camada de Aplicao vo se utilizar das
facilidades oferecidas pela camada de Apresentao para a manipulao e a representao
de dados, e os mecanismos de controle de dilogo oferecidos pela camada de Sesso. As
interaes entre os programas aplicativos permitem modelizar a operao cooperativa entre
os sistemas abertos reais, necessitando porm o compartilhamento de uma quantidade de
informaes que viabilize estas interaes, a fim de que o tratamento das atividades seja
feito de maneira coerente.
Trs tipos de informao so, particularmente, relacionados natureza das
interaes entre os programas aplicativos:
o conjunto de objetos sujeito s atividades de tratamento de informao;
os procedimentos de controle e de cooperao do tratamento distribudo para a
comunicao entre programas;
os estados das interaes passadas entre programas de aplicao.
8.1.2. Conceitos relacionados camada de Aplicao
As sees que seguem permitem introduzir alguns elementos relacionados
arquitetura da camada de Aplicao, particularmente, os Processos de Aplicao, as
Entidades de Aplicao, as Associaes de Aplicao, etc...
Um Processo de Aplicao ou AP (Application Process) representa, de forma
abstrata os elementos de um sistema aberto real que realiza o tratamento de informao no
contexto de uma aplicao particular. Dependendo da natureza da aplicao considerada,
um processo de Aplicao pode ter necessidade de trocar informaes com outros
processos de Aplicao, as interaes necessrias a esta troca podendo ser realizadas a
partir de um nmero distinto de partes invocveis simultaneamente ou seqencialmente. A
atividade de um Processo de Aplicao caracterizada, formalmente por uma instncia ou
Invocao de Processo de Aplicao ou API (Application Process Invocation).
Uma Entidade de Aplicao ou AE (Application Entity) representa as capacidades de
comunicao (dentro do contexto OSI) de um Processo de Aplicao. Uma ou vrias
Entidades de Aplicao permitem definir o que o ambiente OSI leva em conta para a
comunicao de um processo de comunicao. Uma Entidade de Aplicao representa um
nico Processo de Aplicao. Por outro lado, um mesmo Processo de Aplicao pode
reagrupar diversas Entidades de Aplicao. Alm disso, diferentes Processos de Aplicao
podem ser representados por Entidades de Aplicao de mesmo tipo, um Processo de
Aplicao podendo reagrupar diversas Entidades de Aplicao de tipos diferentes. Uma
Invocao de Entidade de Aplicao ou AEI (Application Entity Invocation) uma utilizao
das capacidades de uma AE para as atividades de comunicao especficas de um
Processo de Aplicao.
Uma Associao de Aplicao ou AA (Application Association) uma relao
cooperativa estabelecida entre duas AEIs para a troca de informaes. Uma ou mais AAs
so criadas quando duas AEIs devem trocar informaes no contexto de uma dada
aplicao. Isto significa que uma AEI pode manter, simultnea ou sequencialmente, mais de
uma AA com uma ou diversas AEIs.
Um Elemento de Servio de Aplicao ou ASE (Application Service Element)
compreende um par servio-protocolo normalizado que pode constituir uma Entidade de
Aplicao. Ele corresponde a um subconjunto das funes ou facilidades de comunicao
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.37
oferecidas para o suporte de cooperao entre Entidades de Aplicao. Estas funes e
facilidades so definidas pela especificao de um conjunto de Unidades de Dados de
Protocolo de Aplicao ou APDUs (Application Protocol Data Units) assim como os
procedimentos associados sua utilizao, definindo o Protocolo de Aplicao entre dois
ASEs.
Finalmente, um conceito importante o de um Contexto de Aplicao, que
corresponde ao conjunto de regras e funes a serem implementadas ao longo da durao
de uma Associao de Aplicao para a gesto das trocas de informaes entre AEIs.
As possveis relaes entre os conceitos aqui descritos so ilustradas pela figura 3.20.
Outros conceitos importantes no que diz respeito estrutura da camada de Aplicao
so os Objetos de Associao Simples e a Funo de Controle de Associao Simples.
Os Objetos de Associao Simples ou SAO (Single Association Object) so os elementos
que representam as funes e as informaes de estado relacionadas s operaes de uma
associao de aplicao simples, o conceito de simples estando relacionado ao sentido
de nico. Os componentes bsicos de um SAO so o Elemento de Servio de Controle
de Associao ou ACSE (Association Control Service Element) e a Funo de Controle de
Associao Simples ou SACF (Single Association Control Function) que sero definidas
mais adiante. Um SAO representa igualmente a operao de um conjunto de ASEs
existentes numa AEI para uma associao de Aplicao particular.
A Funo de Controle de Associao Simples o elemento que representa a
coordenao das interaes e a utilizao dos elementos de um SAO.
8.1.3. Exemplos de Estruturas de AEIs
A forma como uma AEI pode ser composta a partir dos diversos elementos definidos
acima ilustrada a partir de dois exemplos, apresentados nas figuras 3.21 e 3.22,
respectivamente.
Em 3.21, apresentado um caso simples de uma AEI envolvida numa associao de
Aplicao nica. Ela composta ento de um SAO, constitudo por dois ASEs e uma funo
de controle.
Em 3.22, apresentada uma AEI envolvida em trs associaes. No caso de
mltiplas associaes, algumas atividades de uma mesma aplicao podem ser distribudas
sobre vrias associaes. Neste caso, estas atividades devem ser coordenadas e
ordenadas atravs de um conjunto de funes da prpria aplicao. Este conjunto defunes
reagrupado, no modelo da camada de Aplicao, por um elemento denominado Funo de
Controle de Associaes Mltiplas ou MACF (Multiple Association Control Function).
AE
CONTEXTO DE
APLICAO
ASSOCIAES CONSECUTIVAS
OU SIMULTNEAS
AEI
AP API
AE AEI
ASEs ASEs
AE
AEI
AP API
Figura 3.20 - Conceitos da arquitetura da camada de Aplicao.
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.38
ACSE
S
A
C
F
ASE
SAO
AEI
Camada de Aplicao
Camada de
Apresentao
A
S
S
O
C
I
A


O
D
E

A
P
L
I
C
A


O
Figura 3.21 - Uma AEI simples.
ACSE
S
A
C
F
ASE 1
SAO 1
AEI
Camada de Aplicao
Camada de
Apresentao
ASE 2
ACSE
S
A
C
F
ASE 3
SAO 2
ASE 4
ACSE
S
A
C
F
ASE 3
SAO 3
ASE 5
MACF
Figura 3.22 - AEI com mltiplas associaes.
Na figura 3.22, uma das associaes utilizada de maneira totalmente independente
das demais, enquanto as duas outras so utilizadas num mesmo conjunto de atividades que
requerem a existncia de uma MACF, como mostrado na figura.
8.2. ACSE e os servios de gesto das conexes
A gesto de conexes um dos problemas a serem resolvidos pela camada de
Aplicao, de forma a evitar que cada aplicao desenvolvida tenha de resolver esta questo
sua maneira. Assim, a nvel desta camada, foi definido um Elemento de Servio de
Controle de Associao, o ACSE (Association Control Service Element) que assume esta
tarefa.
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.39
Como a totalidade das aplicaes conhecidas requer, normalmente os servios de
gesto de conexo, este elemento de servios deve estar sempre presente a nvel dos
contextos de Aplicao.
Nas sees que seguem, apresentaremos os servios supridos por este elemento
de servio, assim como as interfaces deste com os servios das camadas inferiores.
8.2.1. Os servios oferecidos pelo ACSE
Os servios oferecidos pelo ACSE so definidos pelas primitivas apresentadas no
quadro a seguir.
PRIMITIVA SIGNIFICADO
A-ASSOCIATE
A-RELEASE
Estabelecimento de conexo
Liberao negociada de conexo
A-ABORT
A-P-ABORT
Liberao abrupta de conexo (usurio)
Liberao abrupta de conexo (fornecedor)
A_ASSOCIATE um servio confirmado que permite estabelecer uma associao a
partir de um elemento de servio de aplicao. Dentre os parmetros da primitiva de servio,
enviada a proposio de contexto de Aplicao. Em caso de aceitao por parte do
receptor da indicao, a associao ser, ento, estabelecida.
O servio A_RELEASE um servio confirmado que permite liberar, de maneira
ordenada, uma associao estabelecida entre duas AEIs, caracterizando uma liberao
negociada, como definido na parte relativa camada de Sesso.
A_ABORT um servio no confirmado que permite abortar, ou liberar de forma
abrupta uma associao existente. Como j descrito anteriormente, neste caso podem
ocorrer perdas de informaes sendo trocadas atravs da associao. A ativao deste
servio de iniciativa do usurio do ACSE. A_ABORT pode ser ativado pelo iniciador do
servio A_ASSOCIATE, no caso em que no exista concordncia a respeito do contexto de
aplicao a utilizar.
A_P_ABORT o servio que efetua o mesmo que A_ABORT, sendo que, desta vez,
a iniciativa do fornecedor do servio.
8.2.2. As interfaces do ACSE com os servios de Apresentao
O ACSE tem acesso a servios de duas das camadas inferiores, particularmente, a
camada imediatamente inferior, de Apresentao, e a camada de Sesso.
No que diz respeito aos servios de Apresentao, uma primeira correspondncia
que se pode estabelecer o de uma associao com uma conexo de Apresentao. Deste
ponto de vista, existem uma correspondncia de 1 para 1, ou seja, uma associao de
Aplicao corresponde a uma conexo de Apresentao. O ACSE necessita utilizar
unicamente os servios de base da camada de Apresentao, ou seja, os servios
P_CONNECT, P_RELEASE e P_U_ABORT. O iniciador do servio A_ASSOCIATE deve
determinar o contexto de Apresentao pretendido.
8.3. Os servios de acesso e transferncia de arquivos (FTAM)
Em 1987, foi publicada pela ISO a verso definitiva da norma de servios de acesso e
transferncia de arquivos, FTAM (File Transfer, Access and Management), com o nmero
ISO 8571.
A norma cobre um dos assuntos mais importantes da interconexo de sistemas,
uma vez que ela normaliza o protocolo que permite oferecer os servios de acesso e
transferncia de arquivos.
FTAM permite a transferncia do todo ou de parte de um arquivo, ao destinatrio ou a
uma estao (sistema) distante, oferecendo ainda servios de controle de erros, retomada
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.40
imediata ou no, controle de acesso a arquivos (acesso seletivo, proteo, ...) e modificao
dos atributos de um arquivo.
O tratamento de arquivos via FTAM baseado no conceito de arquivo virtual, que
permite representar, para os servios FTAM o arquivo real. A relao entre estes elementos
apresentada na figura 3.23. A noo de arquivo virtual permite tornar transparente ao
usurio as diferentes formas de armazenamento e os mtodos de acesso dos sistemas de
arquivo real. FTAM permite estabelecer as relaes entre o sistema de arquivos real e os
sistemas de arquivos virtuais.
8.3.1. O servidor virtual de arquivos
Um servidor virtual de arquivos reagrupa todas as informaes relativas aos
arquivos, estas, permitindo conhecer o estado de um arquivo num dado instante. O modelo
definido para o servidor de arquivos virtuais contm atributos os mais genricos possveis
quanto representao dos aspectos de um servidor de arquivos reais.
Este modelado como uma entidade enderevel com a qual um usurio remoto
pode se comunicar, utilizando os servios FTAM. A princpio, um nmero arbitrrio de
usurios pode ser associado a um mesmo servidor virtual de arquivos num dado instante.
Ainda, um 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, ...), controle de acesso (somente
leitura, somente escrita, ...), tamanho do arquivo, identidade do criador, data e hora de
criao, identidade do ltimo modificador, data e hora de modificao, etc... A seleo de um
arquivo caracterizada por duas etapas: o estabelecimento de uma associao entre o
usurio querendo selecion-lo e o servidor virtual de arquivos; o fornecimento da identidade
do arquivo a selecionar.
A estrutura de acesso aos arquivos num servidor virtual de arquivos assume a forma
arborescente, coerente com as estruturas mais genricas dos sistemas reais de arquivos.
Esta estrutura ilustrada pela figura 3.24, onde se pode ver um nico n raiz (R), ns
internos (A, E) e folhas (B, C, D, F) conectadas por arcos dirigidos.
Sistema Real C
ARQUIVO
REAL C
Ambiente OSI
ARQUIVO
VIRTUAL C
ARQUIVO
VIRTUAL B
protocolo FTAM
ARQUIVO
VIRTUAL A
Sistema Real A
ARQUIVO
REAL A
Sistema Real B
ARQUIVO
REAL B
Figura 3.23 - Relao entre arquivos virtuais e arquivos reais.
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.41
Um n da rvore pode pertencer a um nico nvel, podendo, por sua vez, servir de
acesso sua subrvore, conhecida como uma Unidade de Dados de Acesso a Arquivo ou
FADU (File Access Data Unit). O contedo de um arquivo pertencente ao servidor de
arquivos mantido numa ou mais Unidade de Dados ou DU (Data Unit). Uma DU um
objeto de dados tipado (escalar, vetor, conjunto, ...), contendo elementos de dados atmicos
denominados Elementos de Dados, aos quais normalmente associada uma sintaxe
abstrata (caractere, byte, inteiro, ...). Os servios associados a um servidor virtual de
arquivos so acessados via primitivas de servio, que sero apresentadas na seo a
seguir.
8.3.2. As primitivas de servio de FTAM
Os servios oferecidos por FTAM para o acesso e a transferncia de arquivos so
organizados em unidades denominadas regimes. Os regimes correspondem a etapas da
manipulao de arquivos, o quadro a seguir apresenta o conjunto de primitivas associado a
cada um deles.
O FTAM, como foi apresentado, constitui-se de um importante elemento de servio
de aplicao (ASE) para as aplicaes que exijam manipulao ou transferncia de arquivos,
sejam aplicaes de automao de escritrio ou de automao da manufatura. No que diz
respeito a esta segunda classe de aplicaes, podemos destacar como um importante
elemento de servio de aplicao, o ASE MMS (Manufacturing Message Services).
CONEXO DE APLICAO autorizao e informaes para operao
F_INITIALIZE inicializao da associao
F_TERMINATE terminao negociada de associao
F_ABORT terminao abrupta da associao
SELEO DE ARQUIVO identificao de arquivos a manipular
F_SELECT seleo de um arquivo existente
F_CREATE criao de um arquivo
F_DESELECT liberao de um arquivo
F_DELETE eliminao de um arquivo
F_READ_ATTRIB leitura dos atributos do arquivo
F_CHANGE_ATTRIB modificao de atributos de um arquivo
ACESSO A ARQUIVO abertura, fechamento, etc...
F_OPEN abertura de um arquivo
F_CLOSE fechamento de arquivo
F_LOCATE localizao de um arquivo
F_ERASE eliminao de contedo de um arquivo
TRANSF. DE DADOS transferncia de dados entre arquivos
F_READ leitura do contedo de um arquivo
F_WRITE escrita sobre um arquivo
F_DATA transferncia de dados
F_DATA_END transferncia de fim de dados
F_TRANSFER_END fim de transferncia de dados
CAP. 3 AS SETE CAMADAS DO MODELO OSI PROF. VITRIO BRUNO MAZZOLA
3.42
DU
DU
NVEL 0
NVEL 1
NVEL 2
R
A
B C
E
F
D
FADU
FADU
FADU
DU
DU DU DU
DU
Figura 3.24 - Estrutura de acesso do servidor virtual de arquivos.
4.1
Captulo 4 Captulo 4
A AS S R REDES EDES L LOCAI S OCAI S
1. INTRODUO
A soluo para o compartilhamento de recursos fsicos e lgicos juntamente com a
vantagem de se ter um sistema descentralizado foi alcanada atravs da interconexo das
CPUs entre si. a isso que se propem as redes de computadores. A soluo para a
comunicao de computadores em termos de longa distncia foi a tecnologia de comutao
de pacotes, que solucionou o problema da linha telefnica dedicada. Para pequenas
distncias a soluo foi a implantao de redes locais.
De uma forma geral, o objetivo de uma rede tornar disponvel a qualquer usurio
todos os programas, dados e outros recursos independente de suas localizaes fsicas.
Outro objetivo proporcionar uma maior disponibilidade e confiabilidade, dada a possibilidade
de migrao para outro equipamento quando a mquina sofre alguma falha. O uso de uma
rede de computadores proporciona um meio de comunicao poderoso devido a sua
velocidade e confiabilidade.
2. CLASSIFICAO DAS REDES DE COMPUTADORES
Uma rede de computadores formada por um conjunto de mdulos processadores
capazes de trocar informaes e compartilhar recursos, interligados por um sistema de
comunicao. O sistema de comunicao vai se constituir de um arranjo topolgico
interligando os vrios mdulos processadores atravs de enlaces fsicos, atravs dos meios
de transmisso, e de um conjunto de regras com fim de organizar a comunicao, os
protocolos de comunicao.
Redes Locais (LANs - Local Area Networks) surgiram dos ambientes de institutos de
pesquisa e universidades. Elas surgiram para viabilizar a troca e o compartilhamento de
informaes e dispositivos perifricos preservando a independncia das vrias estaes de
processamento e permitindo a integrao em ambientes de trabalho cooperativo. Pode-se
caracterizar uma rede local como sendo uma rede que permite a interconexo de
equipamentos de comunicao de dados numa pequena regio. Nas redes locais as
distncias entre os mdulos processadores se enquadram na faixa de alguns metros a
alguns poucos quilmetros. Esta definio bastante vaga, considerando pequenas
distncias entre 100m e 25km, embora as limitaes associadas s tcnicas utilizadas em
redes locais no imponham limites a essas distncias.
Quando a distncia de ligao comea a atingir distncias metropolitanas chamamos
estes sistemas de Redes Metropolitanas (MANs - Metropolitan Area Networks). Uma rede
metropolitana apresenta caractersticas semelhantes s redes locais, porm cobrindo
distncias maiores e operando em velocidades maiores. Esta definio surgiu com o
aparecimento do padro de protocolos para redes metropolitanas IEEE 802.6, que faz parte
do padro IEEE 802 e denominado DQDB (Distributed Queue Dual Bus).
CAP. 4 AS REDES LOCAIS PROF. VITRIO BRUNO MAZZOLA
4.2
Redes Geograficamente Distribudas (WANs - Wide Area Networks), ou Redes
de Longa Distncia, so utilizadas para compartilhar recursos especializados por uma
maior comunidade de usurios geograficamente dispersos. Em funo dos custos de
comunicao serem bastante altos estas redes so, em geral, pblicas, isto , o sistema de
comunicao, chamado sub-rede de comunicao, mantido, gerenciado e de propriedade
pblica. Em funo dos custos as velocidades empregadas so relativamente baixas, de
alguns kilobits/segundo, podendo chegar a megabits/segundo.
3. PARMETROS DE COMPARAO
A escolha de um tipo de rede para suporte a um dado conjunto de aplicaes uma
tarefa difcil. Cada arquitetura de rede possui caractersticas que afetam sua adequao a
uma aplicao em particular. Muitos podem ser os atributos que fazem parte do rol possvel
de ser considerado para comparao. Dentre eles esto custo, tempo de resposta,
velocidade, desempenho, confiabilidade, modularidade, compatibilidade, e facilidade de
adaptao na mudana de tecnologia. Estes pontos sero discutidos brevemente a seguir.
3.1. Custo
O custo de uma rede composto pelo custo das estaes de processamento, das
interfaces com o meio fsico de comunicao e o custo do prprio meio fsico. Uma vez que
os custos das estaes esto cada vez menores necessrio que o custo das interfaces
seja minimizado.
O que ir determinar o custo das interfaces proporcional ao desempenho que se
espera da rede. Redes de baixo a mdio desempenho usualmente empregam poucas
estaes com uma demanda de taxas de dados e volume de trfego pequeno, permitindo o
uso de interfaces de baixo custo. Redes de alto desempenho j requerem interfaces de
custo mais elevado.
3.2. Retardo de Transferncia
Retardo de acesso o tempo que uma estao espera, a partir do momento que
uma mensagem est pronta para ser transmitida, at o momento em que ela consegue
transmitir com sucesso esta mensagem. Retardo de transmisso o intervalo de tempo
decorrido desde o incio da transmisso de uma mensagem por uma estao de origem at
o momento em que a mensagem chega estao de destino. Por fim retardo de
transferncia eqivale soma dos retardos de acesso e de transmisso.
O retardo de transferncia , na maioria dos casos, uma varivel aleatria, porm em
algumas redes o seu valor pode ser calculado, ou melhor, ele determinstico. A rede deve
ser adequada ao tipo particular de aplicao para o qual ela foi concebida. Por exemplo, para
aplicaes de controle em tempo real, o retardo de transferncia limitado de vital
importncia.
3.3. Desempenho
Pode-se definir como desempenho a capacidade efetiva de transmisso da rede. Por
exemplo as redes locais de alta velocidade (High-Speed Local Networks - HSLN) so
projetadas de forma a fornecer um alto desempenho na comunicao entre dispositivos,
embora o custo de conexes seja mais elevado.
Na verdade os termos velocidade, desempenho e retardo de transferncia esto
intimamente relacionados. A escolha de um mecanismo de interconexo orientado para a
natureza das aplicaes essencial para o bom desempenho de uma rede.
CAP. 4 AS REDES LOCAIS PROF. VITRIO BRUNO MAZZOLA
4.3
3.4. Confiabilidade
Confiabilidade pode ser avaliada em termos de tempo mdio entre falhas (Medium
Time Between Failures - MTBF), tolerncia a falhas, degradao amena, tempo de
reconfigurao aps falhas e tempo mdio de reparo (Medium Time to Repair - MTTR). O
MTBF geralmente medido em horas.
A degradao amena est ligada aplicao e mede a capacidade da rede continuar
operando em presena de falhas, embora com desempenho menor. Reconfigurao aps
falhas requer que alternativas redundantes sejam acionadas to logo uma falha ocorra. O
tempo mdio de reparo pode ser diminudo com o auxlio de redundncia, mecanismos de
autoteste e diagnstico, e manuteno eficiente.
3.5. Modularidade
Modularidade pode ser caracterizada como o grau de alterao de desempenho e
funcionalidade que uma rede pode sofrer sem mudar seu projeto original. Os maiores
benefcios de uma arquitetura modular incluem a facilidade para modificao, facilidade para
crescimento e facilidade para o uso de um conjunto de componentes bsicos. A
modularidade est intimamente ligada s aplicaes do sistema. Uma rede bem projetada
deve poder se adaptar modularmente s vrias aplicaes a que dedicada, como tambm
prever futuras utilizaes.
3.6. Compatibilidade
Tambm conhecida como interoperabilidade, a compatibilidade pode ser vista como
a capacidade que a rede possui para se ligar a dispositivos de vrios fabricantes, a nvel de
software ou de hardware. Esta caracterstica bastante importante e valiosa por dar ao
usurio grande flexibilidade e poder de barganha perante os fabricantes.
3.7. Sensibilidade Tecnolgica
Este tpico diz respeito modularidade. Uma rede deve ter a capacidade de suportar
todas as aplicaes para a qual ela foi projetada, mais aquelas que no futuro possam ser
requeridas, incluindo transmisso de vdeo, voz e interconexo com outras redes, por
exemplo.
4. CARACTERSTICAS DAS REDES LOCAIS
Geralmente uma rede local serve a uma rea geograficamente limitada, isto , um
ambiente de trabalho, um edifcio, um campus universitrio, uma fbrica, etc. As distncias
podem variar de metros at alguns poucos quilmetros e a velocidade de transmisso da
ordem de milhes de bits por segundo. A maioria dos produtos existentes na rea utiliza uma
forma simples de interligao fsica entre os equipamentos e talvez esta seja uma das
caractersticas mais atrativas das redes locais.
Estas caractersticas, no entanto, no so suficientes para garantir o sucesso de
uma rede local. Para o usurio final, muito importante ter um mecanismo de transmisso
de informao eficiente, sem que haja a necessidade de conhecer os detalhes tcnicos para
efetuar a ligao com a rede.
Uma rede local pode ser descrita atravs das seguintes caractersticas:
completamente contida dentro de uma rea geogrfica limitada;
equipamentos interconectados porm independentes;
alto grau de interconexo entre os equipamentos da rede;
transmisso de informao geralmente na forma digital;
CAP. 4 AS REDES LOCAIS PROF. VITRIO BRUNO MAZZOLA
4.4
interface com a rede feita atravs de equipamentos e meios de transmisso
relativamente baratos;
possvel comunicao entre dois equipamentos quaisquer da rede.
Outros aspectos que no so definidos explicitamente incluem:
distncias envolvidas;
equipamentos envolvidos;
velocidade de transmisso;
topologia da rede;
meio fsico utilizado;
protocolos e mtodos de acesso usados;
existncia ou no de um n controlador.
A escolha de um tipo de rede para suporte a um dado conjunto de aplicaes uma
tarefa por vezes difcil. Cada arquitetura de rede possui caractersticas que afetam sua
adequao a uma aplicao em particular. Muitos podem ser os atributos que fazem parte
do rol possvel de ser considerado para comparao. Dentre eles esto: custo, tempo de
resposta, velocidade, desempenho, confiabilidade, modularidade, compatibilidade, e
facilidade de adaptao na mudana de tecnologia.
5. HISTRICO
As redes locais surgiram inicialmente em centros de pesquisa e universidades. Elas
constituem uma parte da evoluo da pesquisa em redes de transmisso de dados em geral
e da tecnologia de comutao de pacotes em particular.
Uma das primeiras redes desenvolvidas usando as tcnicas que agora so
associadas s redes locais foi um sistema de controle de terminais remotos no qual o custo
e a dificuldade de proporcionar enlaces com cabos normais foi proibitivamente alto. Tal
sistema, conhecido como rede ALOHA no Hawai, tinha como objetivo interligar um grande
nmero de terminais a um computador central. A caracterstica principal do sistema ALOHA
o uso de um canal de rdio difuso por todos os usurios. Na rede ALOHA, cada terminal
de usurio compete com os outros pela utilizao do canal de rdio.
Uma das primeiras redes locais desenvolvidas foi o Distributed Computing System
(DCS) da Universidade da Califrnia em 1971/72. O DCS consiste em um conjunto de
microcomputadores conectados atravs de um anel por onde fluem, velocidade de 3,5
Mbps (megabits por segundo), as mensagens trocadas entre processos residentes nos
diferentes computadores. O objetivo do projeto foi construir um sistema distribudo em
termos de hardware, software e controle.
Nos anos seguintes, diversos projetos de redes locais estavam em andamento. Um
dos mais importantes foi a rede Ethernet, desenvolvida conjuntamente pela Xerox, Intel e
Digital. Esta rede tinha como objetivos ser um sistema de comunicao de baixo custo para
interligar minis e micros e ter o controle distribudo. A Ethernet hoje um dos sistemas de
rede local mais vendidos no mundo. O padro Token Ring, definido pela IBM, tambm tem
sua parcela de mercado atualmente.
6. DEFINIES BSICAS
Podemos dizer que atualmente uma redes local (LAN - Local Area Network) ,
basicamente, um grupo de PCs (desktops) ou estaes de trabalho interligados a
servidores. Os usurios de uma LAN executam suas tarefas a partir de seus PCs. Estas
tarefas normalmente so edio de texto, planilhas eletrnicas ou aplicaes grfica e o
acesso a aplicaes disponveis nos servidores.
Os mdulos mais importantes de uma LAN so:
CAP. 4 AS REDES LOCAIS PROF. VITRIO BRUNO MAZZOLA
4.5
servidores;
estaes de trabalho;
recursos de comunicao.
Um servidor um computador com elevada capacidade de processamento, cuja
funo disponibilizar servios rede. Em geral esta mquina processa grandes volumes de
dados, requerendo CPUs rpidas e dispositivos de armazenamento de alta capacidade e
rpido acesso. Alguns dos servidores mais utilizados so:
servidor de aplicao;
servidor de arquivos;
servidor de impressora;
servidor de rede;
servidor de banco de dados.
Atualmente o hardware servidor composto por um PC-Pentium mono ou
multiprocessado, ou ento mquinas RISC de fabricantes como HP, Sun, Digital ou IBM. O
sistema operacional do servidor pode ser enquadrado como Sistema Operacional de Rede
(SOR). Os SOR mais adotados pelo mercado so:
Netware 4.1 (Novel Inc.);
Windows NT Server (Microsoft Corp);
LAN Server 4.0 (IBM);
Unix (IBM, Sun, HP, SCO e outras);
Banyan ENS 6.0 (Banyan-Vines).
Os SOR so fundamentais na definio de uma rede local. Um estudo criterioso deve
ser realizado visando a escolha do SOR mais adequado s necessidades de uma LAN. Este
estudo deve levar em considerao diversos aspectos tais como: quantidade de PCs,
aplicaes envolvidas, necessidade de interfaces com outros SOR e com os sistemas
operacionais dos prprios PCs, aderncia a padres, desempenho, etc.
Atravs dos PCs e das estaes de trabalho os usurios acessam arquivos e
aplicaes no servidor e executam tarefas locais. Conforme veremos posteriormente, as
aplicaes Cliente/Servidor so compartilhadas, ou seja, uma parte executada no mdulo
Cliente e outra parte no mdulo Servidor
Os desktops mais populares consistem de um PC 486 ou Pentium, com MS-
Windows (3.11 ou 95). Existem outras boas opes como OS/2 e o Windows NT Client.
Os recursos de comunicao constituem a definio da infra-estrutura de hardware e
de software necessria para a comunicao entre os diversos componentes de uma LAN.
Os recursos mais comuns so os hubs, as placas de rede, repetidores (repeaters), pontes
(bridges), roteadores (routers), cabeamento, etc.
A comunicao entre os elementos da rede deve ser o mais transparente possvel,
permitindo que as aplicaes sejam independentes da plataforma de comunicao adotada.
7. O RM-OSI E AS REDES LOCAIS
Redes locais possuem caractersticas que afetam principalmente os nveis mais
baixos de protocolo. Esses nveis no devem deixar de levar em considerao o elevado
desempenho, o baixo retardo, a baixa taxa de erros, o roteamento simples (em geral nico) e
as aplicaes a que se destinam as redes locais.
O RM-OSI, embora teoricamente, pode ser utilizado tanto em redes geograficamente
distribudas como para redes locais. No entanto ele foi pensado para uso em redes
CAP. 4 AS REDES LOCAIS PROF. VITRIO BRUNO MAZZOLA
4.6
geograficamente distribudas. Sua aplicabilidade em redes locais no pode deixar de levar
em considerao as caractersticas intrnsecas destas redes.
As distncias limitadas a que so destinadas as redes locais permitem que seu
protocolo de nvel fsico possa utilizar um meio de alta velocidade com baixssimas taxas de
erros. Este fato vai influenciar em muito os outros nveis de protocolo.
Vrias diferenas existem na camada de enlace de dados, a comear pela
delimitao dos quadros. Ao contrrio das redes de longa distncia, nas redes locais o
mtodo mais apropriado para delimitao de quadro pode ser a simples presena ou
ausncia de sinal no meio.
Devido ao alto desempenho do meio de transmisso e sua baixa taxa de erros, no
cabe ao nvel de enlace utilizar muitos bits de redundncia para a recuperao de erros. Mais
ainda, se levarmos em considerao que para determinadas aplicaes os requisitos de
tempo real so bem mais importantes do que sua confiabilidade exagerada da transmisso.
Muitas vezes nem a recuperao de erros por retransmisso desejvel neste nvel. Ao
nvel de enlace caberia apenas um esforo mximo para entregar pacotes de nvel 3 sem
erros, mas no a sua recuperao caso esse servios ocorram.
Em redes locais as regras que disciplinam o acesso ao meio fsico para transmisso
de dados so chamadas protocolos de acesso. Como exemplo pode-se citar as regras para
controle de acesso ao barramento compartilhado. Nas redes locais a transmisso de dados
feita por difuso ou possuem roteamento nico. Neste sentido os protocolos de ligao
poderiam estar no nvel 2 do RM-OSI, uma vez que tratam do envio do pacote de uma
mquina para outra, mas igualmente poderiam ser colocados no nvel de rede uma vez que
se trata do envio de um pacote da estao de origem at a estao de destino, isto , fim-a-
fim. Existem tambm proposta que os colocam no nvel fsico, uma vez que determinam a
ligao fsica ao meio. O comit de padronizao de redes locais, o IEEE 802, os coloca
como parte do nvel 2.
Como nas redes locais a transmisso de dados feita por difuso ou possuem
roteamento nico o nvel de rede no tem aqui grande relevncia. Em muitas redes o nvel de
transporte vai ser construdo imediatamente acima do nvel de enlace. Opcionalmente
devemos permitir que o nvel de transporte seja construdo acima do nvel inter-redes.
O nvel 3 em redes locais teria ento como funo o roteamento de pacotes entre
estao origem e destino em redes diferentes ou na interconexo de redes locais entre si.
Neste nvel ainda o mais adequada a utilizao de datagrama no confivel, deixando para
os nveis superiores a recuperao, se necessria, dos erros. A arquitetura Internet TCP/IP,
que utiliza essa abordagem, uma alternativa bastante utilizada para interligao de redes
locais de computadores.
Em redes locais o nvel de transporte, ao tornar transparente para os nveis
superiores toda a parte de transmisso, pode ainda tirar vantagem que o meio lhe oferece,
como por exemplo, a confirmao de vrios circuitos virtuais em uma nica mensagem em
uma rede do tipo difuso.
A implementao dos demais nveis de protocolo depende muito das aplicaes da
rede. O RM-OSI pode ser seguido na ntegra, podendo suas funes serem realizadas por
processos de um sistema operacional distribudo, onde a interface do nvel 4 seria vista
simplesmente como primitivas de comunicao do ncleo desse mesmo sistema
operacional.
8. OS SISTEMAS OPERACIONAIS DE REDE
Os sistemas operacionais de rede (SOR) utilizados em redes locais, so uma
extenso dos sistemas operacionais locais dos computadores interconectados,
complementando-os com um conjunto de funes bsicas, e de uso geral, necessrias
operao das estaes, de forma a tornar transparente o uso dos recursos compartilhados.
A interface entre as aplicaes e o sistema operacional baseia-se, usualmente, em
interaes do tipo solicitao/resposta. No modo de interao cliente-servidor a entidade
CAP. 4 AS REDES LOCAIS PROF. VITRIO BRUNO MAZZOLA
4.7
que solicita um servio chamada cliente e a que presta o servio o servidor. Nas
estaes que funcionam como clientes, o SOR, ao receber uma solicitao de um recurso
localizado remotamente, monta uma mensagem de pedido e envia ao mdulo servidor da
estao onde ser executado o servio. Na estao remota, o SOR recebe a mensagem,
providencia a execuo do servio solicitado, monta uma ou mais mensagens com o
resultado da execuo e as envia de volta para o SOR na estao requerente. Quando o
SOR na estao que requisitou o servio recebe a mensagem de resposta, ele faz a entrega
aplicao local. Nota-se que as funes do SOR nos mdulos cliente e servidor so
bastante diferentes. Resumindo, podemos classificar os mdulos de um SOR instalados
nas estaes em dois tipos:
SORC: mdulo cliente do sistema operacional;
SORS: mdulo servidor do sistema operacional.
Na arquitetura de redes Peer-to-Peer, em todas as estaes as estaes o SOR
possui os dois mdulos SORC e SORS. Na arquitetura de redes Cliente-Servidor, as
estaes da rede dividem-se em estaes clientes, que s possuem as funes do mdulo
cliente acopladas ao seu sistema operacional local, e em estaes servidoras. As estaes
servidoras possuem necessariamente as funes do mdulo servidor e podem,
opcionalmente, possuir tambm as funes do mdulo cliente.
A arquitetura cliente-servidor possui duas variaes, definidas pela forma como so
utilizados os servidores:
arquitetura cliente-servidor com servidor dedicado;
arquitetura cliente-servidor com servidor no dedicado.
A diferena bsica entre elas a disponibilidade ou no da estao servidora para
utilizao por usurios locais. Estaes servidoras, ou mais comumente chamadas de
servidores, possuem software de suporte a determinados servios e, por vezes, algum
hardware especial.
9. O PADRO IEEE802
O projeto IEEE 802 teve origem na Sociedade de Computao do Instituto de
Engenheiros Eletricistas e Eletrnicos dos EUA, ou IEEE Computer Society. O comit 802
publicou um conjunto de padres que foram adotados como padres nacionais americanos
pelo American National Standards Institute (ANSI). Estes padres foram posteriormente
revisados e republicados como padres internacionais pela ISO com a designao ISO
8802.
O objetivo foi o estabelecido de uma arquitetura padro, orientada para o
desenvolvimento de redes locais, que apresentasse as seguintes caractersticas:
correspondncia mxima com o RM-OSI;
interconexo eficiente de equipamentos a um custo moderado;
implantao da arquitetura a custo moderado.
A estratgia adotada na elaborao da arquitetura IEEE 802 a de definir mais de um
padro de forma a atender aos requisitos dos sistemas usurios da rede. Na verdade, a
arquitetura IEEE 802 pode ser vista como uma adaptao das duas camadas inferiores da
arquitetura RM-OSI da ISO. Nesta arquitetura existem 3 camadas, ou seja, uma equivalente
camada fsica e duas sub-camadas que juntas equivalem a camada de enlace. Elas so
assim denominadas:
camada fsica (PHY);
sub-camada de controle de acesso ao meio (MAC);
sub-camada de controle de enlace lgico (LLC).
CAP. 4 AS REDES LOCAIS PROF. VITRIO BRUNO MAZZOLA
4.8
Para atender o modelo elaborado devemos observar que as funes de comunicao
mnimas e essenciais de uma rede local, equivalentes aos nveis inferiores do RM-OSI,
podem ser assim definidas:
fornecer um ou mais SAPs (pontos de acesso ao servio) para os usurios da
rede;
na transmisso, montar os dados a serem transmitidos em quadros com campos
de endereo e deteco de erros;
na recepo, desmontar os quadros, efetuando o reconhecimento de endereo e
deteco de erros;
gerenciar a comunicao no enlace.
Estas quatro funes so fornecidas pelo nvel de enlace do RM-OSI. A primeira
funo, as sub-funes a ela relacionadas, so agrupadas pelo IEEE 802 na camada Logical
Link Control (LLC). As trs restantes so tratadas em uma camada separada, chamada
Medium Access Control (MAC), que podem, ento ser otimizadas para as diferentes
topologias de redes locais, mantendo uma interface nica, a camada LLC, para os usurios
da rede local.
Em um nvel fsico mais baixo esto as funes normalmente associadas ao nvel
fsico: codificao/decodificao de sinais, gerao e remoo de prembulos para
sincronizao e transmisso/recepo de bits. Como no RM-OSI, essas funes foram
atribudas ao nvel fsico no modelo de referncia elaborado pelo IEEE 802.
A figura 4.1 apresenta a relao entre alguns dos principais padres IEEE 802 e o
RM-OSI. importante ressaltar que j existem outros padres IEEE 802.X, que j foram ou
sero aqui citados, tais como IEEE 802.11 (FDDI) e IEEE 802.12 (100VGAnyLAN).
O padro IEEE 802.1 um documento que descreve o relacionamento entre os
diversos padres IEEE 802 e o relacionamento deles com o modelo de referncia OSI. Este
documento contm tambm padres para gerenciamento da rede e informaes para
ligao inter-redes. O padro ANSI/IEEE 802.2 (ISO 8802/2) descreve a sub-camada
superior do nvel de enlace, que utiliza o protocolo Logical Link Control Protocol. Os outros
padres que aparecem na figura 4.1 especificam diferentes opes de nvel fsico e
protocolos da sub-camada MAC para diferentes tecnologias de redes locais. So eles:
padro IEEE 802.3 (ISO 8802/3), rede em barra utilizando CSMA/CD como
mtodo de acesso;
padro IEEE 802.4 (ISO 8802/4), rede em barra utilizando passagem de
permisso como mtodo de acesso;
OSI IEEE
802.1
LLC 802.2
ENLACE
MAC
FSICO 802.3 802.4 802.5 802.6
Figura 4.1 - Relao entre os padres IEEE 802 e RM-OSI
CAP. 4 AS REDES LOCAIS PROF. VITRIO BRUNO MAZZOLA
4.9
padro IEEE 802.5 (ISO 8802/5), rede em anel utilizando passagem de permisso
como mtodo de acesso;
padro IEEE 802.6 (ISO 8802/6), rede em barra utilizando o Distributed Queue
Dual Bus (DQDB) como mtodo de acesso.
O padro IEEE 802.4, denominado Token Bus, o padro para redes em barra com
sinalizao em banda larga utilizando a passagem de permisso como mtodo de acesso
ao meio de transmisso. Ele define o mtodo de acesso passagem de permisso sobre
uma topologia fsica barramento, simulando um anel lgico. Este padro no muito
conhecido, porm ele oferece a opo de um mtodo de acesso determinstico sobre uma
topologia em barramento.
O padro IEEE 802.6, denominado DQDB, o padro para redes metropolitanas
(MANs - Metropolitan Area Network). Segundo a definio do grupo IEEE 802.6, o propsito
de uma rede metropolitana prover servios integrados, tais como texto, voz e vdeo, em
uma grande rea geogrfica. DQDB uma sub-rede que pode ser usada como uma parte
componente de uma MAN. Tipicamente uma MAN consiste em sub-redes DQDB
interconectadas.
Nos captulos posteriores sero feitas discusses detalhadas sobre os padres IEEE
802.3 e IEEE 802.5, que so os mais utilizadas em redes locais. A seguir sero descritas,
resumidamente, as principais funes de cada uma das camadas do padro IEEE 802.
9.1. Camada Fsica
Esta camada tem como funo prover os servios bsicos de transmisso e
recepo de bits atravs de conexes fsica. Assim, ela define as caractersticas eltricas
(nveis de tenso, impedncia, etc.), as caractersticas mecnicas (tipo de conectores,
dimenses do suporte fsico de transmisso, etc.) e as caractersticas funcionais e de
procedimentos (tempo de durao de bit ou velocidade de transferncia de bits, inicializao
das funes de transmisso e recepo de bits, etc.) das conexes fsicas.
9.2. Sub-camada de Controle de Acesso ao Meio
A sub-camada de Controle de Acesso ao Meio (MAC) especifica os mecanismos que
permitem gerenciar a comunicao a nvel de enlace de dados. Em particular, a sub-camada
MAC fornece os servios que permitem disciplinar o compartilhamento de um meio de
transmisso comum aos sistemas usurios da rede. As unidades de transferncia de
informao ao nvel da sub-camada MAC correspondem aos quadros MAC.
A existncia da sub-camada MAC na arquitetura IEEE 802 reflete uma caracterstica
prpria das redes locais, que a necessidade de gerenciar enlaces de dados com origens e
destinatrios mltiplos num mesmo meio fsico de transmisso, como no caso das
topologias em anel e barramento. Alm disso, a existncia da sub-camada MAC permite o
desenvolvimento da sub-camada superior (LLC) com um certo grau de independncia da
camada fsica, no que diz respeito topologia e ao meio de transmisso propriamente dito.
Por outro lado, a prpria sub-camada MAC bastante sensvel a esses elementos.
Os mecanismos de controle de acesso distribudo apresentam uma forte
dependncia quanto topologia da sub-rede de comunicao. Um resultado das diferentes
caractersticas topolgicas a existncia de tcnicas de controle de acesso exclusivas a
uma determinada topologia. Alguns mecanismos de acesso podem ser implementados em
topologias diferentes (barramento e anel) mas esta no a regra geral.
9.3. Sub-camada de Controle de Enlace Lgico
A sub-camada de Controle de Enlace Lgico (LLC) a camada da arquitetura IEEE
802 que se encarrega de prover s camadas superiores os servios que permitem uma
comunicao confivel de seqncia de bits (quadros) entre os sistemas usurios da rede. A
CAP. 4 AS REDES LOCAIS PROF. VITRIO BRUNO MAZZOLA
4.10
especificao da sub-camada LLC prev a existncia de trs tipos de servios bsicos,
fornecidos camada superior.
Um primeiro servio oferecido pela sub-camada LLC permite que as unidades de
informao sejam trocadas sem o estabelecimento prvio de uma conexo a nvel de enlace
de dados. Neste tipo de servio no h, portanto, nem controle para recuperao de erros ou
anomalias, nem controle da cadncia de transferncia das unidades de dados (controle de
fluxo). suposto que as camadas superiores possuam tais mecanismos de modo a tornar
desnecessria sua duplicao nas camadas inferiores.
Um segundo servio fornecido pela sub-camada LLC consiste no estabelecimento de
uma conexo a nvel de enlace de dados, antes da fase de troca de dados propriamente dita,
de modo a incorporar as funes de recuperao de erros, de seqenciamento e de controle
de fluxo.
O terceiro refere-se a um servio sem conexo com reconhecimento utilizado em
aplicaes que necessitam de segurana mas no suportam o overhead de
estabelecimento de conexo.
10. ETHERNET E IEEE 802.3
Este captulo tem por objetivo mostrar o padro IEEE 802.3 e o principal produto que
segue este padro, a Ethernet. Este um esquema que est no mercado desde os anos 70
e continua sendo um padro respeitado at hoje. O produto Ethernet foi desenvolvida
conjuntamente pelas empresas Xerox, Intel e Digital. O mtodo de acesso ao meio de
transmisso utilizado neste padro o CSMA/CD. Este mtodo ser descrito a seguir.
10.1. CSMA/CD
A tcnica CSMA/CD (Carrier Sense Multiple Access with Collision Detection) foi
baseada na rede ALOHA no Hawai, que iniciou sua operao em 1970, e que consistia de
uma forma de comunicao de um computador central e seus terminais espalhados pelas
vrias ilhas do arquiplago. Eram utilizadas duas freqncias de rdio: uma para difuso de
mensagens do computador central para os terminais e outra para mensagens dos terminais
para o computador. Uma vez que existe apenas um transmissor no primeiro canal, nenhuma
dificuldade encontrada. O problema aparece no segundo canal, onde todos os terminais
transmitem em uma mesma freqncia. Esta situao a mesma encontrada em uma rede
com topologia em barramento.
Uma rede com topologia em barramento apresenta as seguintes caractersticas:
canal de transmisso eletricamente aberto, transmisso por difuso (nos dois sentidos) e
estaes de acesso passivas. Uma vez que o barramento um canal de transmisso
aberto, no existe a necessidade de se prover mecanismos para a retirada das mensagens
transmitidas, o esvaziamento do meio feito naturalmente. Isto dificulta a implantao de um
servio de resposta automtica, mas as caractersticas inerentes a esta topologia permitem
a implantao de tcnicas de controle de acesso com funes totalmente distribudas.
Uma rede em barramento comumente chamada de rede em difuso. Um sistema
de difuso aquele no qual uma mensagem transmitida no meio ouvida, mais ou menos
simultaneamente, por todos os ns de comunicao ligados rede. No mtodo CSMA/CD,
uma estao s transmite sua mensagem aps escutar o meio de transmisso e
determinar que o mesmo no est sendo utilizado. Qualquer n de comunicao pode ouvir
qualquer mensagem transmitida, no importando se o destinatrio ele, outro n, ou ambos.
Caso a estao detecte o meio ocupado, ela deve aguardar at que o sinal desaparea para
ento iniciar a sua transmisso. Pode ocorrer que duas ou mais estaes estejam
aguardando que o meio fique desocupado e ao detectarem silncio ambos transmitam suas
mensagens. Isto ocasionar uma coliso de mensagens das estaes ao transmitirem
simultaneamente. Existe, ento, a necessidade de se estabelecer uma poltica de
compartilhamento deste meio de transmisso entre as vrias estaes que esto utilizando
o barramento.
CAP. 4 AS REDES LOCAIS PROF. VITRIO BRUNO MAZZOLA
4.11
Quando duas mensagens so transmitidas ao mesmo tempo, diz-se que elas
colidiram e o resultado que as informaes de ambas so corrompidas ou perdidas. Os
mtodos de acesso para redes com topologia em barramento devem, portanto, atender
situaes como: evitar o mximo possvel a ocorrncia de colises e no caso de ocorrncia
de coliso, as mensagens perdidas ou danificadas devem ser identificadas para posterior
retransmisso. Uma vez que duas ou mais estaes tenham transmitido simultaneamente
ocasionando coliso de mensagens, um esquema de prioridade deve ser providenciado para
evitar que ocorram novas colises envolvendo as mesmas estaes.
A maneira de se evitar que a coliso s seja percebida quando uma resposta no for
recebida, escutar o meio de transmisso antes (carrier sense) e durante (collision
detection) a transmisso da mensagem. Desta forma, a estao emissora poder identificar
se existe outro sinal misturado com o seu e, uma vez detectada a coliso, todas as estaes
envolvidas param de transmitir e tentam transmitir outra vez aps um tempo de espera. Uma
vez que a janela de transmisso relativamente curta, o tempo perdido na transmisso
muito pequeno quando comparado com o tamanho mdio das mensagens transmitidas.
Para evitar que as mesmas mensagens colidam novamente, o tempo que cada
estao aguarda para transmitir novamente calculado de forma randmica o que no evita
que a mensagem desta estao colida com a mensagem de uma outra. Neste caso, o
procedimento se repete, mas o tempo de espera para uma nova tentativa maior que o
anterior, penalizando a estao que colide muitas vezes. Aps um nmero especfico de
tentativas sem sucesso, a estao envia uma mensagem ao seu usurio indicando a
impossibilidade de efetuar o servio solicitado. medida que a carga da rede cresce, cada
equipamento tem a sua taxa de transmisso reduzida, desta forma, com a reduo total da
carga da rede, as transmisses vo se ajustando gradativamente.
Em relao a definio do tamanho mnimo e mximo dos quadros MAC, vrias
consideraes podem ser feitas. Quanto maior o tamanho do quadro maior ser a eficincia
na utilizao do canal, por outro lado se ele for muito pequeno, para haver deteco de
coliso, as mensagens devem ter um tamanho mnimo pr-estabelecido, uma vez que o
tempo de propagao finito. Existem outros fatores que tendem a limitar o tamanho do
quadro que incluem a limitao do tamanho dos buffers de recepo e transmisso dos
quadros e a necessidade de diminuir o retardo de transferncia.
Este mtodo de acesso foi um dos escolhidos como padro, e de fato o mtodo
mais difundido em redes locais. Na prtica, o mtodo CSMA/CD muito eficiente,
apresentando uma ocupao do meio acima de 90%. O resultado que o CSMA/CD tem
sido escolhido para a maioria dos projetos de redes locais. O principal exemplo de utilizao
do CSMA/CD dado pela rede Ethernet que uma rede local comercializada pela Xerox e
utilizada como base para muitos de seus produtos.
10.2. O padro IEEE 802.3
O padro IEEE 802.3 (ISO 8802/3) foi projetado para redes em barra utilizando
CSMA/CD como mtodo de acesso. O padro prov a especificao necessria para redes
em banda bsica operando em 1 a 10 Mbps, e para redes em banda larga operando a 10
Mbps.
Ao tratar de redes em banda bsica a 10 Mbps, o padro converge para a
especificao da rede Ethernet. Nesta etapa sero detalhadas a sintaxe e a semntica do
protocolo de controle de acesso ao meio.
A figura 4.2 apresenta o formato do quadro MAC. O campo de prembulo possui sete
octetos usados para sincronizao do transmissor e receptor. Cada octeto formado pela
seqncia 10101010. O campo delimitador de incio de quadro, SFD (Start Frame Delimiter),
composto da seqncia 10101011 e indica o incio de um quadro.
Para que as unidades de dados sejam adequadamente transmitidas e recebidas,
cada estao conectada rede deve possuir um endereo que o identifique de modo nico.
De um modo ainda mais geral, quando duas ou mais redes so interconectadas, deve-se
CAP. 4 AS REDES LOCAIS PROF. VITRIO BRUNO MAZZOLA
4.12
garantir que os endereos dos dispositivos continuem identificando-os univocamente. Para
atender a esses requisitos, o projeto IEEE 802 permite que sejam utilizadas duas formas de
endereamento.
Na primeira delas responsabilidade da organizao que instala a rede atribuir
endereos aos dispositivos nela conectados. Os endereos podem ter 16 ou 48 bits de
comprimento. Os endereos manipulados dessa forma so denominados localmente
administrados. A segunda forma de endereamento utiliza endereos de 48 bits e um
esquema de endereamento universal. Neste esquema, blocos de endereos distintos so
distribudos aos fabricantes que responsabilizam-se pela atribuio de endereos aos
produtos que fabricam. Esse esquema garante que no haja duplicao de endereos,
mesmo quando redes distintas so interligadas. O uso do esquema universal simplifica o
gerenciamento porm aumenta o overhead da transmisso. Os fornecedores de produtos de
rede devem decidir se usaro uma ou ambas as formas, cabe aos usurios a escolha da
forma que iro utilizar em suas redes.
Os campos de endereo especificam o(s) endereo(s) de destino do quadro e o
endereo da estao que originou o quadro, respectivamente. Cada campo de endereo
contm 16 ou 48 bits, como j mencionado. No entanto, devem ter o mesmo comprimento
para todas as estaes em uma rede particular. O primeiro bit do campo de endereo de
destino identifica o endereo como sendo individual (bit = 0) ou de grupo (bit = 1).O endereo
de grupo com todos os outros bits restantes iguais a 1 reservado para o grupo a que todas
as estaes pertencem, ou endereo de difuso. Um quadro enviado com endereo de
difuso deve ser copiado por todas as estaes. Qualquer outro grupo que no o de difuso
deve ser definido por regras em nveis mais altos de protocolo. Para endereos de 48 bits, o
segundo bit usado para distinguir os endereos administrados localmente (bit = 1) dos
administrados globalmente (bit = 0), isto , endereos universais.
O campo de comprimento possui dois octetos cujo valor indica o nmero de octetos
de dados da camada LLC. O campo de dados da camada MAC contm uma seqncia de n
octetos, n menor que o nmero mximo especificado na implementao particular.
Conforme j mencionado, um tamanho mnimo de quadro requerido para o funcionamento
correto do mtodo CSMA/CD. Assim, se necessrio, o campo de dados deve ser estendido
com a incorporao de bits extras (o campo PAD) antes do campo FCS.
O campo FCS (Frame Check Sequence) contm um verificador de redundncia
cclica (CRC - Cyclic Redundancy Check) de quatro octetos, cujo valor computado a partir
do campo de endereo de destino, inclusive, tomando como base o polinmio gerador:
G(x) = x
32
+ x
26
+ x
23
+ x
22
+ x
16
+ x
12
+ x
11
+ x
10
+ x
8
+ x
7
+ x
5
+ x
4
+ x
2
+ x +1
56 bits 8 bits 16 ou 48 bits 16 ou 48 bits 16 bits 368 bits - 12 Kbits 32 bits
prembulo SFD destinatrio remetente comprimento dados LLC PAD FCS
Figura 4.2 - Formato do quadro MAC 802.3
11. A REDE LOCAL ETHERNET
A rede local Ethernet foi otimizada para troca de dados a altas velocidades entre
equipamentos processadores de informao dentro de reas geogrficas de tamanho
moderado, permitindo maximizar as comunicaes entre uma grande variedade de
equipamentos oriundos de diversos fabricantes. A implementao desta rede seguiu as
seguintes especificaes: os dois nveis mais baixos das camadas do RM-OSI, ou seja, as
camadas fsica e de enlace de dados, bem como as interfaces entre eles; a interface entre a
camada de enlace de dados e as camadas de nveis mais altos da arquitetura do sistema; e
duas interfaces na camada fsica que permitem a compatibilidade entre equipamentos
utilizados em diferentes implementaes da Ethernet.
CAP. 4 AS REDES LOCAIS PROF. VITRIO BRUNO MAZZOLA
4.13
A camada fsica da Ethernet proporciona 10 Mbps em um canal cujo meio de
transmisso o cabo coaxial ou o par tranado. Esta especifica todas as caractersticas
essenciais da Ethernet, tais como: codificao, temporizao, nveis de voltagem e
interfaces de compatibilidade. Executa tambm a recepo dos bits de prembulo para
sincronismo dos quadros.
A transmisso de uma mensagem iniciada por uma requisio das camadas mais
altas da estao. A estao deve passar os dados, endereo de origem e destino, e tipo de
formato dos dados para o buffer de armazenamento da camada de enlace de dados, atravs
de respectiva interface. A camada de enlace de dados LLC constri um quadro, colocando
cada componente da informao em seu respectivo campo e ento anexa uma seqncia
de checagem de quadro para deteco de erro na transmisso. Antes de transmitir um
quadro, a camada de enlace de dados tenta evitar coliso avaliando o trfego do canal pela
monitorao do sinal de portadora da camada fsica. Neste exato instante a camada fsica
est apta para detectar a presena de portadora ou no, nesse caso definida como um sinal
eltrico em banda base que est presente no cabo coaxial quando temos um quadro sendo
transmitido. A camada fsica sinaliza para a camada de enlace de dados quando h trfego
detectado no canal.
Quando o canal est livre, a camada de enlace de dados passa o quadro a ser
transmitido para a camada fsica atravs de um fluxo de bits serial. Porm, antes de enviar
os bits do quadro, a camada fsica envia um prembulo codificado que permite aos
receptores de todos os ns da rede sincronizar seus relgios.
A camada fsica, ento, comea a translao dos bits da mensagem em codificao
de fase Manchester, gerando um sinal eltrico dentro do cabo coaxial, ou do par tranado,
que representa os bits da mensagem. Assim, a camada fsica do n transmissor monitora o
canal durante todo o tempo da transmisso, ou seja, monitora o nvel de energia (nvel do
sinal eltrico) do canal. Ela sabe de antemo qual o nvel ideal de energia de um canal
durante a transmisso. Se acontecer uma coliso, teremos mais energia no canal, sendo
logo detectada. Essa deteco de coliso do sinal s pode ser feita por um n enquanto
encontra-se no estado de transmisso.
Quando a transmisso for completada sem conteno, a camada de enlace de
dados informa s camadas mais altas, aguardando outras requisies de novas
transmisses. Quando um n comea a transmisso, as camadas fsicas de todos os ns
da rede sentem o sinal da portadora e alertam suas respectivas camadas de enlace de
dados para que no haja nenhum conflito devido a tentativas de transmisso. Neste ponto,
todos os demais ns da rede se transformam em ns receptores. A camada fsica de cada
n receptor sincroniza-se atravs dos bits do prembulo, recebe estes bits j codificados, e
translada a fase codificada do sinal de volta para os dados binrios, descartando o
prembulo.
O fluxo de bits passado para a camada de enlace de dados dos ns de destino. O
fluxo de bits coletado at que o sinal de portadora desaparea, indicando o fim do quadro. A
camada de enlace de dados checa o endereo de destino do quadro, logo que o fluxo de bits
entra para determinar se est endereado a este n ou no. Se estiver, a mensagem
inspecionada para avaliar o alinhamento dos bits e, ento passada para as camadas de
protocolos mais altas com uma indicao de sua condio. Se no, o fluxo de bits para a
camada de enlace de dados parado logo depois do prembulo e do endereo de destino, e
assim, o quadro no aceito.
possvel que dois ou mais ns possam determinar que o canal esteja livre
simultaneamente, tentando iniciar uma transmisso. Quando isso ocorre, suas
transmisses se sobrepem, interferindo uma na outra. O resultado denomina-se de coliso.
Um n pode experimentar uma coliso durante sua janela de coliso (intervalo de tempo
antes que o sinal tenha tido tempo de viajar de um extremo a outro da rede, e voltar),
tambm chamado de slot-time. Uma vez que o tempo da janela de coliso passou, dito que
o n obteve o canal, desde que todos os demais ns detectaram o sinal de portadora neste
intervalo de tempo, desistindo assim da transmisso.
CAP. 4 AS REDES LOCAIS PROF. VITRIO BRUNO MAZZOLA
4.14
O quadro da Ethernet est especificado com um tamanho mnimo de 64 bytes, por
uma razo: o slot-time aproximadamente o mesmo tempo que leva para transmitir 64
bytes de dados a 10 Mbps sobre a configurao mxima da Ethernet (2,8 Km entre dois ns
comunicantes). Assim, quando um dado n est transmitindo uma mensagem, um outro n
que ainda no detectou o sinal de portadora tambm comea a transmitir ir ocorrer uma
coliso no trajeto. Contudo, o primeiro n ainda estar transmitindo o mesmo quadro inicial,
pois quando ele sentir que houve uma coliso ter passado um slot-time. Portanto, essa a
nica maneira do n associar o sinal de coliso com o quadro que est sendo transmitindo.
Poder ocorrer de o n perceber o sinal de coliso aps ter terminado a transmisso
de sua mensagem. Neste caso, ele no associar a coliso com a sua transmisso, no
retransmitindo o quadro. A esta altura, o quadro s poder ser retransmitindo por uma
requisio das camadas mais altas. Quando ocorre uma coliso durante a transmisso, a
camada fsica do n transmissor detecta o sinal de coliso. A camada de enlace de dados
percebe isso e comea com os procedimentos de conteno. Primeiro, o quadro que est
sendo transmitido permanece sua transmisso por um curto intervalo de tempo, denominado
jam, para que a coliso seja percebida pelos demais ns que tambm estiverem
transmitindo. Ento, a camada de enlace de dados suspende a transmisso e planeja uma
tentativa de retransmisso. O perodo de tempo que um n espera antes de tentar uma nova
transmisso um mltiplo do slot-time (esse nmero selecionado randomicamente por
cada n envolvido). Se mais algumas colises ocorrerem, o n ir proceder com uma nova
tentativa dentro dos padres da anterior. Eventualmente, a transmisso completada com
sucesso, ou a tentativa abandonada por suposio que o canal est desvanecido ou que
est com problemas de sobrecarga. Nos ns receptores, os bits de uma coliso so
recebidos e decodificados pela camada fsica como se fossem bits de um quadro, pois o
sinal de deteco de coliso no reconhecido nos ns receptores. A camada de enlace de
dados pode distinguir entre um quadro recebido fragmentado, como resultado de uma
coliso, e um quadro vlido, verificando simplesmente seu tamanho.
As caractersticas bsicas da rede Ethernet so descritas a seguir. Estes
parmetros so descritos com o objetivo de analisar algumas caractersticas consideradas
relevantes, sem ser exaustivo no assunto.
11.1. Velocidade de Transmisso
A Ethernet considerada como uma rede local que apresenta alta velocidade de
transmisso de sinais de dados, devido a combinao de mecanismo de controle de acesso
CSMA/CD (proporcionando acesso distribudo a todos os ns), sinalizao em banda de
base e cabo coaxial de alta performance. Pode-se conectar at 1.024 ns na Ethernet,
garantindo uma taxa de transferncia de 10 Mbps, sendo que todos os ns apresentam
oportunidades iguais de enviar seus quadros, desde que o canal esteja livre. Uma das
principais caractersticas se traduz na difuso das mensagens sobre o meio fsico de
transmisso, dando oportunidade de todos os ns ouvirem as mensagens.
11.2. Desempenho
A Ethernet no apresenta nenhuma instabilidade quando submetida a cargas
pesadas. Mesmo nas horas de maior movimento, o mecanismo de acesso CSMA/CD
proporciona capacidade plena distribuda aos ns.
11.3. Qualidade
Existem certas implementaes que controlam o funcionamento da rede, tornando-a
mais segura:
falhas no cabo de transmisso podem ser localizadas atravs de um temporizador que
acionado quando um quadro transmitido; e o tempo de cada coliso anotado; se o
defeito for no cabo, o tempo de coliso ser constante, sendo assim possvel localizar-se
CAP. 4 AS REDES LOCAIS PROF. VITRIO BRUNO MAZZOLA
4.15
o ponto que apresenta defeito atravs de uma relao tempo/velocidade, associadas a
frmulas especficas;
os ns e componentes defeituosos podem ser prevenidos para se auto-desligarem da
rede em caso de suas transmisses ultrapassarem o tamanho permitido pela Ethernet;
tem-se uma controladora monitorando continuamente os aspectos operacionais da rede;
por exemplo, aps cada transmisso o circuito sensor de coliso testado.
11.4. Custo
Os equipamentos da rede Ethernet apresentam um custo relativamente baixo em
comparao com o que a rede pode proporcionar: compatibilidade de recursos; flexibilidade
de instalao em vrios tipos de lugares quer seja num edifcio, num campus, num
complexo industrial, etc; grande capacidade de incorporao de novos ns no sistema sem
com isso perturbar o funcionamento da rede; e, simplicidade em sua configurao e na
conexo, uma vez que os cabos podem correr dentro das paredes ou sobre o teto.
12. CONFIGURAO DA ETHERNET
A configurao completa depende principalmente de tipo de cabo sendo utilizado. A
tabela 4.1 define algumas caractersticas destas configuraes.
Tabela 4.1 - Configuraes Ethernet
Parmetro 10Base-T 10Base-2 10Base-5
Tipo de cabo par tranado no
blindado
cabo coaxial fino cabo coaxial grosso
Topologia estrela (hub) barramento barramento
Conector utilizado RJ-45 conector T +
BNC
tranceiver + cabo +
DB-15
Comprimento mximo do cabo 100 m 185 m 500 m
Comprimento mximo da rede 2500 m (usando um
backbone coaxial)
925 m 2500m
Nmero de ns por segmento 1 30 100
Distncia mnima entre dois ns no h 0,5 m 2,5 m
Tcnica de sinalizao banda base com codificao Manchester
Velocidade 10 Mbps
13. FAST ETHERNET
As redes Fast Ethernet representam uma evoluo das redes Ethernet no que tange
taxa de transmisso, sendo padronizada atravs das normas IEEE 802.3u. O quadro Fast
Ethernet o prprio quadro Ethernet.
So especificadas trs configuraes fsicas diferentes para as redes Fast Ethernet,
correspondentes aos padres 100BaseTX, 100BaseFX e 100BaseT4. Estas so assim
definidas:
100BaseT4: baseia-se na utilizao de um hub ao qual esto conectadas
estaes atravs de cabos de par tranado no blindado, com distncia mxima
de 100 m da estao at o hub; o clock interno de 25 MHz;
100BaseTX e 100BaseFX: baseiam-se na utilizao de um hub ao qual esto
conectadas estaes atravs de cabos de par tranado ou fibra tica, com
CAP. 4 AS REDES LOCAIS PROF. VITRIO BRUNO MAZZOLA
4.16
distncia mxima de 100m (TX) ou 400m (FX) da estao at o hub; o clock
interno de 125 MHz.
14. TOKEN RING E IEEE 802.5
Esta tcnica adotada com o padro IEEE 802.5 e na prtica constitui-se na principal
opo de implementao do mecanismo de controle de acesso por ficha. A topologia em
anel apresenta as seguintes caractersticas fsicas: transmisso unidirecional e ponto a
ponto, estaes de acesso ativas, isto , funcionam como repetidoras, e canal de
transmisso fechado. Um mecanismo de controle de acesso para a sub-rede de
comunicao estruturada em anel envolve a definio de procedimentos quanto insero
de mensagem no anel, recepo de mensagem e remoo de mensagem do anel.
Este mecanismo baseado em uma mensagem de controle que, uma vez
inicializada, circula entre todos os ns da rede, transportando o direito de transmisso no
meio compartilhado. O procedimento de insero de mensagem num anel com acesso
controlado por ficha obedece s seguintes etapas:
a estao que deseja transmitir aguarda a chegada da ficha;
uma vez de posse da ficha, a estao transmite a sua mensagem;
ao final da transmisso, a estao devolve a ficha enviando-a ao prximo n da
rede.
A restituio da ficha pode ser feita imediatamente aps o trmino da transmisso da
mensagem transmitida. Dependendo das dimenses do anel fsico e da velocidade de
transmisso usada, a forma de restituio da ficha pode permitir a existncia de vrias
mensagens simultaneamente em trnsito no anel, denominada ficha mltipla, o que oferece
um melhor desempenho em situaes onde as mensagens so relativamente curtas. Note
que o termo mltipla no se refere ao nmero de fichas e sim ao nmero de mensagens
circulando no anel. Por exemplo, no caso em que o tempo de propagao da mensagem no
anel bem menor que o tempo de transmisso, o fim da transmisso ocorre antes do
retorno do incio da mensagem transmitida e, no caso de restituio da ficha ao final da
transmisso, teremos mais de uma mensagem circulando no anel. A estratgia de restituir a
ficha somente aps o retorno da mensagem conhecida como ficha simples e facilita a
implantao de funes de superviso e controle (recuperao de erros, reconhecimento,
etc). Uma vez que o incio da mensagem passa por todos os ns de comunicao antes da
ficha, fica fcil implantar um esquema que avise a todas as estaes, previamente, sobre a
prioridade de acesso ficha a ser restituda.
A remoo da mensagem do anel tarefa do n de comunicao que originou a
mensagem. Essa estratgia simplifica a implantao dos servios baseados na difuso de
mensagens e tambm dos servios de controle de erros e reconhecimento. As funes de
gerncia e manuteno da ficha podem ser centralizadas ou distribudas e devem atender
situaes tais como a perda ou duplicao da ficha.
Um exemplo de token-ring so as redes locais FDDI (Fiber Distributed Data
Interface), que se constitui de uma rede de alto desempenho que geralmente utilizada
como backbone para interconectar outras redes locais entre si. As redes FDDI sero vistas
mais adiante neste captulo.
14.1. O Padro IEEE 802.5
ANSI/IEEE 802.5 (ISO 8802-5) o padro para redes em anel utilizando passagem
de permisso como mtodo de acesso. O padro prov a especificao necessria para
redes em banda bsica operando a 4 ou 16 Mbps, utilizando como meio de transmisso o
par tranado.
O acesso ao meio fsico controlado pela passagem da permisso no anel. No
mtodo ficha simples (single token), depois da transmisso dos quadros, a estao verifica
CAP. 4 AS REDES LOCAIS PROF. VITRIO BRUNO MAZZOLA
4.17
se seu endereo retornou no campo SA. Em caso negativo, a estao transmite 0s e 1s at
que tenha retornado, s ento a estao transmite a permisso para o prximo n. O
protocolo de acesso ao meio permite o uso de prioridades.
Todo quadro transmitido, inclusive a permisso, tem um campo designando a
prioridade corrente(PPP) e outro para a reserva de prioridade (RRR). Uma estao s pode
transmitir um quadro se receber a permisso e se o seu quadro tiver prioridade maior ou
igual designada no campo PPP da permisso.
Se a estao receber uma permisso com prioridade maior que a necessria para
transmisso de suas mensagens ela faz uma reserva de permisso, atravs dos bits RRR,
solicitando a diminuio da prioridade. importante notar que o campo de prioridades
sempre verificado, em cada estao do anel, sempre no recebimento de uma permisso e
tambm na passagem de uma mensagem para outro destinatrio. O mecanismo de controle
de prioridades relativamente complexo e pode ser visto em detalhes na bibliografia
recomendada.
De forma a permitir uma maior eficincia na utilizao do anel, uma opo multiple
token (chamada early-token-release - ETR) foi adicionada ao padro IEEE 802.5. Neste
mtodo permitido que uma estao envie uma permisso livre assim que terminar de
transmitir seus quadros, independente dela ter comeado ou no a receber seus quadros de
volta. Estaes que implementam o mecanismo ETR so compatveis com as que no
possuem essa facilidade, podendo operar conjuntamente.
Cada estao da rede possui funes de uma estao monitora de forma a
recuperar o anel de vrios tipos de erros tais como perda ou duplicao da permisso,
sincronizao no anel, criao da permisso.
A verso atual do padro IEEE 802.5, especifica como meio de transmisso o par
tranado blindado operando a 4 ou 16 Mbps com no mximo 250 repetidores ligados ao anel;
ou o par tranado comum operando a 4 Mbps com no mximo 250 repetidores ligados ao
anel. Est sendo elaborada pelo IEEE uma reviso deste padro que inclui o par tranado
sem blindagem operando a 16 Mbps. Essa reviso inclui a definio de dois tipos de
concentradores, um passivo e outro ativo, que permite a ligao de uma grupo de estaes
ao meio. A reviso especifica tambm o uso de um caminho redundante entre
concentradores, atravs de um anel backup.
A referncia do padro IEEE 802.5 de 1992 define uma rede token ring como sendo
um sistema cuja topologia lgica em anel e a topologia da fiao uma estrela. Segundo
esta topologia anel-estrela cada estao conectada a uma TCU (Trunk Coupling Unit). A
TCU tem como funo prover os meios necessrios para inserir uma estao no anel, ou
retir-la, funcionando como um rel de bypass. O concentrador, ponto central da topologia
em estrela da fiao, contm um conjunto de TCUs. Os concentradores so ligados em
srie atravs de portas de entrada e sada, formando os anis principal e de reserva.
15. CABEAMENTO ESTRUTURADO
Atualmente, consenso geral que um projeto bem feito do cabeamento em uma rede
o primeiro passo para garantir a implantao de uma rede com sucesso. A escolha correta
do tipo de cabo para um segmento em um projeto de uma rede local uma parte vital para o
seu bom funcionamento. Considerando projetos de mdio e grande porte, onde vrias redes
de diferentes topologias e mtodos de acesso convivem interligadas, as opes de
instalao se tornam a parte mais custosa do projeto. Esforos tem surgido no sentido de
organizar e compilar as opes de instalao de forma a fornecer um conjunto bsico de
configuraes para os tipos de instalaes mais comuns. Essas configuraes definem o
que comumente tem sido chamado de cabeamento estruturado.
Dentro deste contexto, vrios rgos de padronizao, tais como ISO/IEC, EIA/TIA e
IEEE, entre outros, alm de algumas empresas privadas, tm se preocupado em
desenvolver padronizaes de sistemas de cabeamento estruturado. Estes sistemas
CAP. 4 AS REDES LOCAIS PROF. VITRIO BRUNO MAZZOLA
4.18
apresentam como principais vantagens a alta escalabilidade e disponibilidade, facilidade de
manuteno e mobilizao das estaes, entre outras.
Os sistemas de cabeamento estruturado so normalmente, organizados segundo
uma estrutura hierrquica, que engloba:
tomada de comunicao: consiste de um espelho e conectores atravs dos quais os
equipamentos dos usurios finais so conectados ao sistema de cabeamento de um
prdio;
quadros de distribuio: correspondem a sistemas a partir dos quais so distribudas
as tomadas de comunicao para equipamentos de rede ou para outros quadros de
distribuio; os primeiros so denominados quadros de distribuio satlite e os
segundos quadros de distribuio intermedirios;
sistema de distribuio horizontal: corresponde ao sistema de distribuio de
cabeamento usado na conexo entre tomadas de comunicao e os quadros de
distribuio ou entre dois quadros de distribuio, todos existentes em um mesmo andar
de um prdio;
sistema de distribuio vertical: refere-se ao sistema de distribuio de cabeamento
usado na conexo de um quadro de distribuio predial e os quadros de distribuio
intermedirios, localizados em cada andar deste prdio;
sistema de distribuio de campus: engloba o sistema de cabeamento empregado na
interconexo do quadro de distribuio do campus e os quadros de distribuio de cada
um de seus prdios.
5.1
Captulo 5 Captulo 5
R REDES EDES L LOCAI S OCAI S I I NDUSTRI AI S NDUSTRI AI S
1. INTRODUO
No captulo anterior foram apresentados os principais resultados no que diz respeito
as redes locais de computadores. A importncia das arquiteturas de comunicao para
redes locais , sem dvida, um resultado que trouxe contribuio significativa em todos os
setores de atuao da sociedade, tendo permitido automatizar uma grande quantidade de
processos antes realizados por tcnicas tradicionais e ineficazes.
O desenvolvimento das redes locais de computadores no ocorreu apenas na rea
da automao de escritrio, mas tambm na automao industrial.
Este captulo vai apresentar os resultados obtidos nesta rea.
2. NVEIS HIERRQUICOS DA INTEGRAO FABRIL
A fabricao de produtos ou o fornecimento de um servio da parte de uma empresa
pe em jogo uma srie de atividades e etapas, dedicadas manuteno e ao aprimoramento
do produto ou do servio. A implementao destas etapas atravs de processos com maior
ou menor grau de automatizao fica a critrio da empresa.
A tendncia de informatizao crescente das empresas e outras organizaes, por
um lado, permite acelerar cada processo fazendo parte das atividades de fabricao de um
produto ou do oferecimento de um servio e, por outro lado, cria uma nova necessidade no
que diz respeito ao modo como as informaes sero trocadas.
As redes locais industriais permitem levar em conta as particularidades de um
processo de fabricao do ponto de vista das necessidades de comunicao, tais como o
compartilhamento de recursos, evolutividade, gerenciamento da heterogeneidade e os
diversos tipos de dilogo podendo ocorrer no ambiente industrial. Ainda, a nvel de um
processo de fabricao, certos requisitos tornam-se fundamentais, envolvendo
principalmente os fatores econmicos que o cercam. A garantia de um tempo de resposta
mdio ou mximo, o dbito de informao, a robustez (confiabilidade dos equipamentos e da
informao), a flexibilidade (evolutividade e heterogeneidade dos equipamentos) so alguns
exemplos destes requisitos.
Nos ltimos anos, um esforo considervel tem sido realizado no sentido de definir
arquiteturas de comunicao que respondam s caractersticas e aos requisitos
mencionados acima. O exemplo mais evidente de resultados deste esforo a arquitetura
MAP (Manufacturing Automation Protocol), definida por iniciativa da General Motors e
baseada no modelo OSI.
Por outro lado, considerando que as necessidades de comunicao em cada classe
de atividades de uma empresa pode assumir diferente importncia, outras propostas de
arquiteturas podem ser consideradas, como por exemplo as arquiteturas da classe
barramento de campo (fieldbus), mais dedicadas ao cho de fbrica, como o nome sugere.
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.2
O objetivo desta parte do documento, alm de apresentar algumas propostas de
arquiteturas de redes locais industriais, discutir os principais aspectos relacionados com
esta classe particular de redes.
Dados os requisitos e caractersticas apresentados anteriormente, um ponto que
deve ser levantado como conseqncia disto a necessidade de descentralizao das
funes de comunicao a serem implementadas. Este aspecto pode ter importncia
fundamental na escolha das solues de comunicao a serem adotadas a nvel de uma
indstria. As redes do tipo ponto-a-ponto, por exemplo, so um exemplo tpico de
centralizao das funes de comunicao, uma vez que os equipamentos compondo os
ns da rede fazem papel de comutadores das mensagens transmitidas entre dois ns que
no estejam ligados diretamente. Solues do tipo rede de difuso so largamente adotadas
levando em conta as possibilidades de descentralizao da comunicao.
preciso assumir a realidade de que no existe uma rede nica que poderia
corresponder s necessidades de todas as classes ou nveis de atividade existentes em uma
fbrica, a soluo sendo, de fato, a adoo de vrias redes interconectadas, cada rede
servindo de suporte comunicao no contexto de uma ou diversas atividades.
3. AS REDES NA EMPRESA
J h algum tempo vem se verificando uma tendncia para a descentralizao da
inteligncia e da capacidade decisria dos componentes de sistemas de automao
industrial. Estes sistemas so decompostos em diferentes nveis hierrquicos de
automao, cujos elementos inteligentes so interligados entre si atravs de redes
industriais, conforme mostrado na figura 5.1.
A tendncia desta estruturao hierrquica se aproximar cada vez mais do
processo, de forma a obter-se cada vez mais subsistemas independentes e dotados de uma
inteligncia local, sem no entanto perder as vantagens de uma superviso e conduo
central do sistema como um todo. Esta descentralizao traz consigo uma srie de vanta-
gens tcnicas, tais como a diminuio da sobrecarga de processamento da unidade central,
entre outras.
Cada nvel da hierarquia fabril representado por um conjunto de aes e
processamentos que possuem requisitos de comunicao diferentes. A caracterstica
predominante nos nveis hierrquicos inferiores a transferncia de mensagens curtas com
alta freqncia, entre um nmero elevado de estaes.
Nos nveis hierrquicos superiores h a predominncia de transferncia de
mensagens longas entre um nmero menor de estaes e a uma freqncia
consideravelmente mais baixa, este aspecto sendo ilustrado pela figura 5.2.
Deste modo, no existe um sistema de comunicao nico capaz de atender a todas
as aplicaes existentes na organizao industrial, mas sim uma srie de sub-redes locais
adequada aos requisitos de comunicao de cada nvel.
As sub-redes sero conectadas linha tronco ("Backbone") atravs de "Gateways",
"Bridges" e "Routers" de modo que todas as estaes possam ser acessadas, formando um
sistema de comunicao coso que atenda toda a fbrica, conforme os preceitos da filosofia
CIM (Computer Integrated Manufacturing).
4. ASPECTOS DA COMUNICAO EM AMBIENTE INDUSTRIAL
A maioria das redes de comunicao existentes no mercado procuraram atender a
demanda existente na automao de escritrios. A grande maioria destas redes so
baseadas no protocolo CSMA/CD (Carrier Sense Multiple Access with Collision Detection),
com o qual se iniciaram os desenvolvimentos de redes locais (LANs) e que ser estudado
mais adiante. A comunicao de dados em ambiente industrial apresenta, no entanto,
caractersticas e necessidades que tornam a maioria das redes para automao de
escritrio inadequadas.
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.3
Administrao
Corporativa
Planejamento
(Factory)
rea
(Shop)
Clula
(Cell)
Subsistema
(Subsystem)
Componente
(Component)
S A S A S A S A
CAD, CAE, CAP,
CAPP, CAQ, etc...
FMS
FMC
Torno, Manipulador,
Centro de Usinagem,
etc...
Motores, Chaves,
Rels, etc...
SISTEMA DE
COMUNICAO
MAP, TOP
MAP-EPA,
Mini-MAP
Fieldbus
Fieldbus
Tempo-Real
Figura 5.1 - As redes de comunicao e o modelo CIM
Administrao
Corporativa
Planejamento
rea
Clula
Subsistema
Componente
Nmero de
Estaes
Vida til dos
Dados
Quantidade
de Quadros
Tempo entre
Transmisses
Figura 5.2 - Caractersticas da comunicao em CIM
Algumas destas caractersticas so:
ambiente hostil para operao dos equipamentos (perturbaes eletromagnticas,
elevadas temperaturas, sujeira, etc);
a troca de informaes se d, na maioria das vezes entre equipamentos e no
entre um operador e o equipamento;
os tempos de resposta e a segurana dos dados so crticos em diversas
situaes;
uma grande quantidade de equipamentos pode estar conectada na rede.
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.4
5. CARACTERSTICAS BSICAS DAS REDES INDUSTRIAIS
Os seguintes aspectos tecnolgicos bsicos diferenciam as redes locais para
aplicaes industriais das demais redes:
5.1. Tempo de acesso ao meio fsico
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
acesso ao meio, pois, uma vez que vrios equipamentos devero trocar informaes num
dado instante, a deciso de quem vai ter o direito de acesso ao meio para o envio de uma
mensagem no uma tarefa evidente, como ser visto nesta seo.
Do ponto de vista da programao distribuda, o meio de transmisso das redes
locais constitui um recurso compartilhado entre as estaes a ela conectadas. Os mtodos
de definio de direito de acesso utilizados nas redes locais so os denominados protocolos
de acesso ao meio.
Com relao ao seu comportamento temporal, podemos organizar os protocolos de
acesso ao meio em duas principais classes: os protocolos determinsticos e os no
determinsticos.
Os protocolos de acesso determinsticos so caracterizados pela concesso do
direito ao acesso independentemente das necessidades de transmisso de cada n da
estao. Dentre os protocolos conhecidos desta classe, podemos destacar o protocolo
TDMA (Time Division Multiple Access), onde o acesso dado a cada estao considerando
faixas de tempo bem definidas. Este mtodo apresenta um baixo desempenho, uma vez que
muito tempo pode ser perdido no caso de estaes que no tenham mensagens a transmitir.
Outro exemplo de protocolos de acesso determinsticos so aqueles baseados na
passagem de ficha (token passing), onde uma ficha correspondendo ao direito de
transmisso passada de estao a estao da rede. Ao receber a ficha, uma estao que
no tenha mensagens a transmitir repassa a ficha estao seguinte na lista de estaes
compondo a rede. Vamos analisar alguns destes protocolos mais adiante nesta seo.
Os protocolos de acesso no determinsticos, podem ser tambm denominados
protocolos de competio, uma vez que as estaes querendo transmitir vo competir pelo
meio de transmisso. Estes protocolos so mais adaptados s condies de transmisso da
rede local. Um exemplo desta classe so os protocolos de tipo CSMA, cujas variaes sero
estudadas nos pargrafos a seguir.
5.2. Confiabilidade
Em aplicaes industriais onde so transmitidos muitos cdigos de comando, leitura
de medidores e comando de atuadores, um erro de um Bit qualquer pode ter conseqncias
desastrosas. A transferncia de programas para mquinas de Comando Numrico, por
exemplo, exige um sistema altamente confivel, pois so transmitidos cdigos de comando
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). Define-se
como Distncia de Hamming (Hd) de um CRC o nmero mnimo de Bits que devem estar
alterados em uma mensagem para que o CRC no consiga detectar esta mudana. Em
ambientes industriais usualmente recomendada uma Distncia de Hamming de pelo
menos 4.
Em sistemas que necessitem de uma operao contnua, pode ser utilizado um meio
de transmisso e estaes de controle redundantes.
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.5
5.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 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 eltricamente 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 consideravelmente superior ao do par tranado.
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), o que torna a soluo anti-
econmica para o nvel de cho de fbrica. Com fibras ticas, no entanto, pode-se trabalhar
com freqncias da ordem de 100 MBaud, o que permitiria uma melhoria de performance do
sistema. Diversos trabalhos de pesquisa vem sendo realizados no sentido de resolver os
problemas tcnicos existentes.
A figura 5.3 apresenta uma comparao sumria entre os trs tipos de meio.
5.4. Tipo de mensagens e volume de informaes
Nos nveis hierrquicos superiores de automao (por ex. a nvel de planejamento)
so freqentemente trocados telegramas de vrios KByte, que requerem tempos de
transmisso de alguns segundos at vrios minutos. Nas aplicaes mais prximas ao
processo, normalmente so enviadas mensagens curtas, tais como:
Par Tranado
(assncrono)
Custo
Sensibilidade
a
perturbaes
Distncia
Taxa de
Transmisso
Par Tranado
(sncrono)
Cabo Coaxial
Fibra tica
Figura 5.3 - Meios de transmisso
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.6
ligar ou desligar uma unidade;
fazer leitura de um sensor / medidor;
alterar o estado de um atuador;
verificar o estado de uma chave ou rel.
Estas operaes podem ser feitas normalmente com um nico cdigo acrescido dos
respectivos dados, quando existirem. Como conseqncia, pode haver uma baixa taxa de
transmisso de dados com um elevado nmero de mensagens transmitidas.
Para dispositivos programveis encontrados no ambiente industrial (CLPs, CNCs,
RCs, etc), normalmente necessrio o envio de programas no inicio da produo de um
lote. 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.
6. PROJETOS DE PADRONIZAO DE REDES INDUSTRIAIS
As exigncias de comunicao entre unidades para a integrao flexvel dos
sistemas de automao, descritas nos itens anteriores, evidenciam a necessidade de uma
especificao de redes locais para aplicaes industriais diferente daquela adotada em
automao de escritrio. Existem diversas redes proprietrias para ambiente fabril,
desenvolvidas por grandes empresas e que normalmente utilizam um protocolo especfico
desenvolvido pelo prprio fabricante. Estas redes no permitem a interligao de
equipamentos de outros fabricantes. Desta forma o usurio fica na total dependncia de um
nico fornecedor.
A arquitetura das redes de comunicao industrial deve integrar sistemas
heterogeneos de diferentes fabricantes, suportando tanto a operao de cho de fbrica
quanto as funes de apoio produo. A definio de padres de protocolos de
comunicao e a sua adoo por diferentes fabricantes dever permitir a interconexo e at
mesmo a intercambiabilidade das vrias unidades de processamento. Neste caso,
equipamentos produzidos por fabricantes diferentes podem ser facilmente incorporados
instalao, simplesmente conectando-os ao sistema de comunicao. Entre as diversas
iniciativas para padronizao para redes industriais, podemos destacar: Projeto PROWAY,
Projeto MAP (incluindo MAP/EPA e MINI-MAP), projeto TOP e Projeto FIELDBUS.
6.1. Projeto PROWAY
Em 1975 um grupo da IEC (International Electrotechnical Comission) iniciou seus
trabalhos para a normalizao de redes de comunicao para controle de processos.
Destes trabalhos resultou a proposta PROWAY (Process Data Highway). O Proway passou
por diversas fases (Proway A, B e C) em funo dos trabalhos de padronizao
internacionais. Proway A e B utilizavam o protocolo HDLC da ISO na camada de enlace,
adequando-se assim apenas a sistemas tipo mestre/escravos. Proway C adotou a tcnica
de token-passing. Sua arquitetura composta de 4 camadas do modelo de referencia
ISO/OSI, denominadas "Line" (camada fsica), "highway" (camada de enlace), "network"
(camada de rede) e "application" (camada de aplicao).
6.2. Projeto MAP
O projeto MAP ("Manufacturing Automation Protocol") foi uma iniciativa da General
Motors, iniciada em 1980, com a finalidade de definir dentro do modelo OSI um ambiente de
comunicao voltado para a automao da manufatura. MAP define mecanismos de
comunicao entre equipamentos de cho de fbrica, tais como Robs, CNCs, CLPs,
terminais de coleta de dados, Computadores, etc.
Esta proposta encontra boa aceitao a nvel mundial por parte de usurios e
fornecedores de bens de automao, mas ainda esta sendo questionada pelos altos custos
de cada estao.
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.7
Para aplicaes voltadas ao controle da manufatura com tempos crticos foi definida
a verso MAP/EPA (Enhanced Performance Architecture) para conseguir tempo de resposta
menores. A Verso MAP/EPA apresenta para algumas estaes da rede a arquitetura MAP
completa (7 camadas) e uma arquitetura simplificada com as camadas 1,2 e 7 do modelo
OSI como caminho alternativo para satisfazer os requisitos de tempo. A verso mais
simplificada conhecida como MINI-MAP e implementa somente as camadas 1, 2 e 7 do
modelo OSI. O projeto MAP ser discutido mais detalhadamente mais adiante.
6.3. Projeto TOP
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.
6.4. Projeto FIELDBUS
O Fieldbus uma soluo de comunicao para os nveis hierrquicos mais baixos
dentro da hierarquia fabril, interconectando os dispositivos primrios de automao
instalados na rea de campo (Sensores, atuadores, chaves, etc) e os dispositivos de
controle de nvel imediatamente superior (CLPs, CNCs, etc).
Ainda esto sendo definidos os padres para o Fieldbus. Os principais grupos
envolvidos nos trabalhos de padronizao so:
Avaliadores: IEC, ISA, EUREKA, NEMA
Proponentes: PROFIBUS, FIP, ISA-SP50
O Fieldbus e suas principais propostas de padronizao sero discutidos em detalhe
mais adiante.
7. O PROJETO MAP
O projeto MAP tem como mrito a apresentao de uma proposta concreta para a
comunicao no ambiente de fbrica, estabelecendo as condies necessrias para a
integrao dos componentes de automao em um ambiente integrado segundo a filosofia
CIM (Computer Integrated Manufacturing). Ao contrrio do que se propunha inicialmente, hoje
est claro que no existe uma soluo nica de rede que atenda aos requisitos de todos os
nveis de comunicao em uma fbrica.
O projeto MAP nasceu no incio dos anos 80 por iniciativa da GM (General Motors). Na
poca, apenas 15% dos equipamentos programveis de suas fbricas eram capazes de se
comunicar entre si.
Alm disso, os custos de comunicao eram muito elevados, avaliados em 50% do
custo total da automao, isto devido s conexes especiais necessrias entre cada
equipamento. Ainda, cada nova instalao ou expanso no sistema existente estava
associada a uma despesa no desprezvel. Considerando que, na poca, estava previsto
que a quantidade de equipamentos programveis deveria sofrer uma expanso de 400 a
500% num prazo de 5 anos, o problema de comunicao tornou-se, efetivamente, uma
prioridade a nvel da empresa.
Diante do grave problema, a deciso deveria ser tomada no sentido de definir a
soluo, cujas opes eram as seguintes:
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.8
continuar a produo utilizando mquinas programveis isoladas (stand-alone) de
uma variedade de fabricantes e solucionar o problema da maneira como vinha sendo
feito;
basear os processos de produo na aquisio de equipamentos de um nico
fabricante;
desenvolver uma proposta padronizada que permitisse interconectar todos os
equipamentos da planta.
Dadas as perspectivas de evoluo e o grande desenvolvimento dos equipamentos
de automao, a primeira proposta era, naturalmente, invivel. Com relao segunda
proposta, era (e continua sendo) impossvel encontrar um nico fabricante capaz de fornecer
todos os equipamentos necessrios (robs, mquinas de comando numrico, CLPs,
sensores, etc) ao processo de fabricao.
A soluo viria, ento, pela terceira opo, que foi o ponto de partida para o projeto
MAP, atravs da criao de uma fora tarefa reunindo profissionais das diversas divises da
GM, cujo objetivo inicial era investigar a possibilidade de utilizao do modelo de referncia
OSI como base para a proposta padronizada da empresa.
Um ano mais tarde, em 1981, a GM uniu-se a outras empresas -Digital Equipment
Corporation (DEC), Hewlett-Packard (HP) e IBM -definindo a soluo do problema baseada
na utilizao de uma arquitetura de comunicao para rede local baseada no modelo a sete
camadas do OSI. Uma primeira preocupao deste grupo de trabalho foi a seleo de alguns
dos padres de protocolo definidos para o modelo OSI que pudessem ser adotados na
arquitetura MAP.
A partir dai o projeto foi ganhando corpo e adeses por parte de outras empresas,
tornando-se uma realidade nos anos 90 e dando origem a outras propostas de arquiteturas
de comunicao orientadas a outros nveis das atividades da empresa.
7.1. A arquitetura MAP
Uma vez adotado o modelo OSI como referncia para a arquitetura de comunicao,
o problema era selecionar as propostas a serem implementadas a nvel de cada camada.
Para as camadas 1 e 2, foram selecionados, respectivamente, as normas IEEE 802.4
(barramento com ficha) e IEEE 802.2 (LLC).
Do ponto de vista da camada Fsica, foi escolhido o suporte de comunicao em
banda larga (broadband). A escolha foi baseada nas razes seguintes:
possibilidade de definio de vrios canais de comunicao sobre um mesmo
suporte de comunicao, o que permitiria a coexistncia de vrias redes,
minimizando as modificaes de cablagem durante a transio para MAP;
permitiria a troca de outros sinais, como voz e imagem para determinadas
aplicaes, tais como a superviso, o circuito fechado de TV, a teleconferncia, etc;
broadband parte da norma IEEE 802.4 e estava sob estudos suportar o padro
IEEE 802.3 (CSMA/CD);
a GM j possua muitas instalaes operando em broadband.
As razes que conduziram escolha do barramento com ficha foram as seguintes:
inicialmente, era o nico protocolo suportado em broadband;
muitos equipamentos programveis j eram providos com o protocolo de
enlace suportado por broadband e IEEE 802;
a possibilidade de implementar um esquema de prioridades de mensagens;
em caso de falhas fsicas, mensagens de alta prioridade poderiam ser
enviadas num tempo limitado.
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.9
Apesar das razes expostas acima para a escolha do barramento com ficha, esta foi
uma escolha relativamente debatida, principalmente porque a arquitetura MAP a nica a
adot-la e os circuitos integrados implementando IEEE 802.4 so utilizados exclusivamente
para esta arquitetura. Alm disso, outras propostas tinham sido adotadas pelos grandes
fabricantes: Ethernet (IEEE 802.3) no caso da DEC e IEEE 802.5 no caso da IBM.
A nvel da camada de Enlace, embora as funes associadas sejam principalmente a
deteco e recuperao de erros, optou-se por um protocolo que no implementasse estes
servios, o LLC tipo 1, deixando estas funes a cargo dos nveis superiores (mais
particularmente, o nvel Transporte).
O servio de Rede sem conexo, cada mensagem sendo roteada individualmente
atravs da rede. A norma ISO 8348, adotada a este nvel, permite definir um conjunto de
regras de endereamento atravs da rede. O protocolo de roteamento utilizado aqui foi
definido pelo projeto MAP e atualmente normalizado na ISO sob o nmero 9542.
A nvel do Transporte, foi adotada a classe 4 do protocolo de Transporte da ISO (TP4,
ISO 8072/73), orientado conexo, com controle de erros. O servio de Transporte oferece,
ento, um canal de comunicao confivel, sem perdas, erros, nem duplicao de
mensagens. TP4 assegura ainda as funes de fragmentao e montagem de mensagens,
o que permite que as mensagens trocadas a este nvel sejam de qualquer dimenso.
A norma ISO 8326/27 foi adotada para a camada de Sesso, assegurando as
funes de comunicao full-duplex e de resincronizao.
Na camada de Apresentao, os problemas de representao de dados so
resolvidos com a adoo da sintaxe abstrata ASN.1, que serve de linguagem comum s
diferentes formas de representao dos dados, caractersticas de cada equipamento.
Dentre as funes oferecidas aos processos de aplicao, foram definidas, na
camada de Aplicao, as seguintes normas:
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.
A figura 5.4 apresenta as escolhas efetuadas a nvel do projeto MAP, incluindo as
verses EPA e Mini-MAP. Como a partir da verso 3.0 ocorreu uma unificao dos projetos
MAP e TOP, a figura apresenta tambm as normas adotadas para a arquitetura TOP.
7.2. A arquitetura MAP-EPA
Dadas as necessidades especficas de cada nvel hierrquico de uma empresa,
verificou-se que a proposta MAP original no permitia cobrir todos os nveis considerados,
sendo mais adequada aos nveis superiores. Uma razo principal disto que, apesar da
excelente qualidade dos servios oferecidos, a arquitetura a sete camadas oferece um
overhead que passa a ser indesejvel nos nveis mais baixos das atividades de uma
empresa.
Uma primeira soluo a este problema foi a definio de uma verso simplificada da
arquitetura MAP, denominada MAP-EPA (Enhanced Performance Architecture). A figura 5.5
apresenta a proposta MAP-EPA.
Esta proposta foi baseada na definio de duas pilhas de protocolos, a pilha normal
Full-MAP e a pilha MAP-EPA, desprovida das camadas de Rede, Transporte, Sesso e
Apresentao.
Do ponto de vista das camadas baixas, o protocolo IEEE 802.4 continuava sendo
adotado, porm sobre um suporte de transmisso em banda de base (baseband) a 5 Mbit/s.
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.10
Banda Base
(10 Mbps)
Banda Larga
(10 Mbps)
Banda Base (5 Mbps)
VAZIO
Aplicao
Apresentao
Sesso
Transporte
Rede
Enlace
Fsica
Camadas
Espec.
LLC 802.2 Tipo1
MAC 802.3 CSMA/CD
LLC 802.2 Tipo 1
MAC 802.4 Token Bus
LLC 802.2 Tipos 1 e 3
MAC 802.4
ISO 8072 e 8073 Classe 4
ISO 8326 e 8327
ISO 8348 s/ conexo
ISO 8822 - ASN.1
ACSE, FTAM
VTP
MMS, FTAM, ROS
TOP MAP MAP-EPA MiniMAP
Figura 5.4 - Especificao MAP/TOP 3.0
MAP EPA
Aplicao
Apresentao
Sesso
Transporte
Enlace LLC 802.2 Tipos 1 e 3
MAC 802.4 Token Bus
Rede
Fsica
Aplicaes
tempo-real
Figura 5.5 - Arquitetura MAP-EPA
Nesta arquitetura, um processo de aplicao tem a opo de enviar seus dados
atravs da pilha normal ou, em casos onde o requisito seja um tempo de resposta rpida,
pela pilha MAP-EPA. Evidentemente, o fato das camadas 3 a 6 estarem ausentes acarreta a
perda dos servios oferecidos por estas.
7.3. A arquitetura Mini-MAP
Uma terceira opo relacionada com a norma MAP foi a arquitetura Mini-MAP,
baseada igualmente na supresso das camadas 3 a 6 para eliminar o overhead dos
protocolos daquelas camadas. A arquitetura Mini-MAP composta unicamente do segmento
simplificado de MAP-EPA, e foi assim definida para evitar o alto custo das pilhas de
protocolos paralelas de MAP-EPA (figura 5.6). Esta nova proposta era dedicada aos nveis
mais baixos, permitindo a comunicao em aplicaes mais simples como, por exemplo,
entre sensores inteligentes.
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.11
O fato de no possuir a camada de Transporte fez introduzir um protocolo de Enlace
mais sofisticado que o da proposta MAP, o LLC tipo 3, datagrama com reconhecimento.
7.4. Os servios de mensagem industrial (MMS)
MMS (Manufacturing Message Services) foi normalizado na ISO como sendo o
conjunto de servios de comunicao oferecido s aplicaes industriais, particularmente
para viabilizar, dentro do ambiente OSI, as interaes entre equipamentos de produo
programveis.
MMS o resultado dos trabalhos realizados no contexto do projeto MAP, para a
definio de um conjunto de servios de comunicao orientados s aplicaes industriais.
A primeira proposta de MMS/RS-511 foi apresentada em junho de 1985, na forma de
um documento organizado em duas partes:
Manufacturing Message Services: Definio dos Servios;
Manufacturing Message Specification: Especificao do Protocolo.
Atualmente, MMS tornou-se norma internacional, fazendo parte da camada de
Aplicao da verso 3.0 de MAP, publicada em agosto de 1988. Os dois documentos
mencionados acima apresentam, de forma geral, como os servios e o protocolo podem ser
aplicados no contexto da utilizao de um equipamento de produo genrico, sem levar em
conta as particularidades de uma classe de equipamentos especfica. Para complementar a
norma existente, outros documentos foram e esto sendo produzidos, denominados normas
de acompanhamento ("Companion Standards"), cujo objetivo levar em conta as
especificidades de classes de equipamentos tais como os robs, as mquinas de comando
numrico, os sistemas de viso, os controladores lgicos programveis e os sistemas de
controle de processos.
O objetivo de MMS oferecer servios de comunicao que permitam a um sistema
aberto (no sentido OSI) acessar os recursos existentes em outros sistemas abertos
conectados rede de comunicao. Eles permitem cobrir grande parte das necessidades de
comunicao entre sistemas de produo, como, por exemplo, o carregamento remoto de
programas, o controle remoto de um equipamento, a elaborao de relatrios de produo,
etc.
Os programas escritos pelos programadores de aplicao vo acessar (direta ou
indiretamente) as primitivas de servio MMS, que vo manipular objetos virtuais
representando os recursos reais disponveis num equipamento de produo distante.
Aplicao
LLC Tipos 1 e 3
MAC 802.4
Banda Base
(5 Mbps)
Conexo com LSAPs
Figura 5.6 - Arquitetura Mini-MAP
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.12
Os objetos MMS
Os usurios dos servios MMS so os processos de Aplicao (APs - Application
Processes) executando num equipamento de produo ou num computador de superviso.
A comunicao entre dois APs atravs dos servios MMS realizada segundo um modelo
Cliente-Servidor, onde o usurio Cliente aquele que requisita operao sobre os recursos
disponveis num equipamento de produo distante, este sendo modelizado por um usurio
Servidor.
O objeto de base definido em MMS o Dispositivo Virtual de Produo ou VMD
(Virtual Manufacturing Device), que representa, no contexto dos servios MMS, um
equipamento real de produo. Todo processo de aplicao modelizado por um Servidor
MMS possui, no mnimo, um objeto VMD (figura 5.7). O principal componente do VMD a
Funo Executiva, responsvel pela gesto de acesso aos diferentes recursos do
equipamento considerado, tais como memria, processadores, portas de E/S, etc...
O VMD define uma classe de objetos denominados domnios (Domains), que
permitem reagrupar os programas e os dados necessrios execuo do equipamento
considerado. Estes programas e dados podem ser definidos de maneira esttica ou
dinmica por meio dos servios MMS.
A execuo de programas gerenciada atravs de objetos denominados Invocao
de Programa (Program Invocation), que podem, tambm, ser criados esttica ou
dinamicamente. Um operador humano pode se comunicar com um equipamento de
produo, fazendo a entrada e sada de dados graas definio de um objeto Estao
Operador, sendo que um VMD pode gerenciar uma ou mais estaes de operador.
A norma prev, ainda, objetos permitindo gerenciar a sincronizao de processos e o
acesso concorrente a recursos, que so os objetos Semforos; para a deteco e o
tratamento de eventos, os objetos Condio de Evento, Ao de Evento e Inscrio de
Evento; e para a produo de relatrios de produo, os objetos Jornais.
Foram definidos tambm objetos denominados variveis (variables), que podem ser
alocados dentro de um VMD. A cada classe de objetos MMS associada uma classe de
servios responsveis da sua manipulao, sob demanda de um usurio Cliente remoto.
Os servios MMS
A norma MMS define 84 servios, dos quais 3 no confirmados, organizados em 9
classes distintas. Os servios de Gesto de Contexto so utilizados para o estabelecimento
e a manuteno do dilogo entre usurios MMS, nenhum servio podendo ser ativado sem
que o contexto tenha sido estabelecido, suportado por uma associao. O servio Initiate o
servio definido para o estabelecimento da associao, este sendo mapeado diretamente
sobre o servio A_ASSOCIATE do ACSE. Esta classe de servios reagrupa, ainda, servios
para a terminao negociada do contexto (Conclude), a liberao abrupta (Abort). Uma
requisio de servio pode ser anulada por um usurio MMS cliente, atravs da ativao do
servio Cancel.
...
Funo Executiva
.
.
.
...
VMD
Objetos
MMS
Estao
Operador 1
Estao
Operador N
Figura 5.7 - Estrutura geral de um VMD
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.13
Ainda, o fornecedor de servio MMS pode sinalizar a ocorrncia de um erro de
protocolo atravs do envio de uma primitiva de servio (indicao) Reject, informando o tipo
de erro detectado.
Os servios de Suporte de VMD permitem a um usurio Cliente MMS obter
informaes de estado sobre um objeto VMD, assim como sobre os objetos gerenciados por
este. As informaes possveis de serem obtidas so:
Estado lgico do VMD (Status);
Lista dos objetos do VMD (GetNameList);
Caractersticas do equipamento de produo (Identify).
Finalmente, ainda possvel modificar os identificadores dos objetos de um VMD, isto
atravs do servio Rename.
Os servios de Gesto de Domnio so utilizados para o carregamento e
armazenamento distncia de programas e dados de um equipamento de produo. Estas
operaes so baseadas na realizao de duas seqncias de servios MMS, a primeira
para o carregamento remoto, DownLoadSequence, a outra para a recuperao do contedo
de domnios, UpLoadSequence.
Um usurio MMS ativa a seqncia DownLoad para pedir a criao e o carregamento
de informaes para um domnio. Esta seqncia caracterizada por trs etapas:
inicializao da seqncia e criao de um domnio (InitiateDownLoadSequence);
transferncia das informaes para o domnio (DownLoadSegment);
terminao da seqncia (TerminateDownLoadSequence).
Os servios de Gesto de Programa permitem a um usurio MMS manipular, de
maneira remota, os programas num VMD, para a criao, eliminao e controle de
execuo. As operaes podendo ser efetuadas sobre um objeto Invocao de Programa
so as seguintes:
criao e eliminao (CreateProgramInvocation e DeleteProgramInvocation);
controle de execuo de um programa (Start, Stop, Resume, Reset e Kill);
obteno de atributos (GetProgramInvocationAttributes).
Os servios de Acesso s Variveis permitem a um cliente MMS definir e acessar
variveis definidas num VMD de um servidor MMS. O acesso s variveis reais de um
equipamento possvel graas definio de um conjunto de objetos variveis MMS,
manipulados pelos 14 servios definidos nesta classe. Os servios Read e Write, por
exemplo, permitem acessar, respectivamente em leitura e escrita, uma varivel. Existem
ainda servios permitindo definir os diferentes objetos associados s variveis, tais como
DefineNamedVariable, DefineScatteredAccess, DeleteVariableAccess, DefineNamed-
VariableList, DeleteNamedVariableList, DefineNamedType e DeleteNamedType.
Os servios de Gesto de Semforos permitem gerenciar o acesso concorrente aos
recursos compartilhveis de um VMD. Os objetos associados a esta classe so os
Semforos, organizados em duas classes especficas:
os Semforos Banalizados (Token Semaphores), que gerenciam um nmero N de
fichas de mesmo tipo;
os Semforos Etiquetados (Pool Semaphores), que gerenciam uma lista de fichas
etiquetadas, cada uma associada a um recurso particular do VMD.
Um usurio MMS pode requisitar o acesso a um recurso do VMD atravs do servio
TakeControl, indicando o semforo responsvel por aquele recurso. Um aspecto
interessante desta classe de servios a existncia de um modificador
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.14
AttachToSemaphore, que permite condicionar a execuo de um servio MMS posse de
um semforo.
Esta classe oferece, ainda, servios para a liberao, a criao e a obteno de
informaes de estado sobre os objetos semforo.
Os servios de Gesto da Estao de Operador implementam a comunicao,
atravs de uma estao de operador, com um VMD. Eles permitem, particularmente, a
entrada e a obteno de dados relativos execuo do VMD considerado.
Os servios de Gesto de Eventos oferecem facilidades para um Cliente MMS definir
e tratar a ocorrncia de eventos num VMD. O tratamento de eventos associado definio
de trs objetos:
as Condies de Evento, que representam as prcondies associadas a um dado
eventos num VMD (modificao de uma varivel, fim de execuo de um programa,
etc);
as Aes de Evento, que representam o que deve ser feito quando um evento
detectado (execuo de um servio MMS, por exemplo);
as Inscries de Evento, que permitem associar uma Condio de Evento a uma ou
mais Aes de Evento.
Um usurio MMS notificado da ocorrncia de um evento atravs do servio
EventNotify, esta notificao podendo ser reconhecida pelo usurio atravs do servio
AcknowledgeEventNotification. A ocorrncia de um evento pode servir a ativar a execuo de
um servio MMS, isto sendo feito atravs do modificador AttachToEvent. Nesta classe,
tem-se, ainda, servios para a criao, destruio de objetos, obteno de informaes
(estado, atributos, etc) dos objetos e modificao de atributos dos objetos de evento.
Os servios de Gesto de Jornais fornecem facilidades para o armazenamento e a
recuperao, de maneira ordenada, a partir dos objetos Jornais, das informaes e variveis
associadas a eventos, assim como de texto que pode servir como comentrios ou
explicaes. Estes servios so utilizados principalmente para a produo de relatrios
sobre o funcionamento de um equipamento de produo.
Ainda, a norma MMS prev uma classe de servios para o tratamento de arquivos,
particularmente para pequenos servios de criao, eliminao, etc. No caso de aplicaes
que requisitem servios mais sofisticados para o acesso e a transferncia de arquivos, a
entidade de Aplicao dever, ento, ser composta do elemento de servio de Aplicao
FTAM, que oferece estes servios.
Os quadros a seguir apresentam uma sntese das diferentes classes de servios do
MMS.
8. REDES FIELDBUS
A evoluo dos microprocessadores conduziu a estruturao hierrquica fabril at o
nvel de simples componentes de automao, envolvendo elementos diretamente ligados ao
processo a ser controlado ou supervisionado, tais como sensores, atuadores e
controladores.
Atravs da aplicao de microprocessadores em sistemas sensrios possvel
realizar um pr-processamento do sinal diretamente no local de medio, diminuindo assim
a probabilidade de deturpao do sinal por perturbaes eletromagnticas, s quais sinais
analgicos so em geral muito suscetveis. Alm disto, a unidade que requer os dados do
sensor aliviada destas funes. O mesmo principio aplicado aos atuadores, que passam
a poder interpretar e executar comandos complexos advindos da unidade central.
Uma vez que os sinais utilizados por tais componentes inteligentes j se encontram
em forma digital, conveniente definir sistemas de comunicao de dados tambm digitais
para substituir as clssicas interfaces analgicas de corrente e tenso. As interfaces de
corrente (4..20 mA) so bem mais difundidas em ambientes industriais, devido a menor
suscetibilidade s interferncias eletromagnticas.
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.15
Classe Primitivas de Servio Comentrios
Gesto de
Semforos
TakeControl
RelinquishControl
DefineSemaphore
DeleteSemaphore
ReportSemaphoreStatus
ReportPoolSemaphoreStatus
ReportSemaphoreEntryStatus
so encarregados da
sincronizao e do controle
do acesso aos recursos de
um VMD pelos processos de
aplicao
Estao
Operador
Input
Output
controlam a entrada e sada
de informaes via estaes
de operador
Gesto de
Eventos
DefineEventCondition
DeleteEventCondition
GetEventConditionAttribute
ReportEventConditionStatus
AlterEventConditionMonitoring
TriggerEvent
DefineEventAction
DeleteEventAction
GetEventActionAttributes
ReportEventActionStatus
DefineEventEnrollment
DeleteEventEnrollment
GetEventEnrollment
ReportEventEnrollment
AlterEventEnrollment
EventNotification*
AcknowledgeEventNotification
GetAlarmSummary
GetAlarmEnrollmentSummary
AttachToEventModifier
permitem a definio e o
tratamento de eventos via
servios MMS. A
possibilidade de associar a
execuo de um servio
MMS ocorrncia de um
evento um aspecto
interessante, implementado
pelo Modificador
AttachToEvent
Gesto de
Jornal
ReadJournal
WriteJournal
InitializeJournal
ReportJournalStatus
permitem o salvamento de
informaes sobre a
execuo de um VMD,
particularmente no que diz
respeito ocorrncia de
eventos e afetao de
variveis.
Gesto de
Contexto
Initiate
Conclude
Abort*
Cancel
Reject*
iniciao, liberao,
abandono e rejeio de
conexo com outro usurio
MMS
Gesto de
VMD
Status
UnsolicitedStatus*
GetNameList
Identify
Rename
oferece servios de VMD,
particularmente informaes
sobre os objetos
* servios no confirmados
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.16
Classe Primitivas de Servio Comentrios
Gesto de
Domnio
InitiateDownLoadSequence
DownLoadSegment
TerminateDownLoadSequence
InitiateUpLoadSequence
UpLoadSegment
TerminateUpLoadSequence
RequestDomainDownLoad
RequestDomainUpLoad
LoadDomainContent
StoreDomainContent
DeleteDomain
GetDomainAttribute
DomainFile
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
Gesto de
Programas
CreateProgramInvocation
DeleteProgramInvocation
Start
Stop
Resume
Reset
Kill
GetProgramInvocationAttributes
permitem que um usurio
Cliente MMS gerencie a
execuo remota de
programas num usurio
Servidor
Acesso a
Variveis
Read
Write
InformationReport
GetVariableAccessAttributes
DeleteNamedVariable
DefineScatteredAccessAttributes
DeleteVariableAccess
DefineNamedVariableList
GetNamedVariableListAttributes
DeleteNamedVariableList
DefineNamedType
GetNamedTypeAttributes
DeleteNamedType
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
* servios no confirmados
Inicialmente foram definidas e grandemente difundidas interfaces digitais para
interligao ponto-a-ponto, tipo RS 232 C que, no entanto, devido utilizao de sinal
referenciado ao terra (v24) se mostram mais adequadas utilizao em aplicaes de
escritrio. Para reduzir a influncia das perturbaes foram desenvolvidas interfaces com
sinal diferencial (v11), tipo RS 422 e RS 423. Estas interfaces oferecem no entanto a
desvantagem de que no permitem o acoplamento simultneo de vrios elementos inteli-
gentes entre si. Para suprir esta necessidade foram desenvolvidas interfaces multiponto,
adequadas a interconexo dos elementos em redes tipo barramento (bus), como por
exemplo a RS 485. Esta tendncia mostrada na figura 5.8.
Para uma rede aplicada interligao de elementos simples a nvel de cho de
fbrica utilizada a denominao genrica de "barramentos de campo", ou Fieldbus.
O Fieldbus pode ser definido como uma linha de comunicao serial, digital, bidirecio-
nal (de acesso compartilhado) para a interligao dos dispositivos primrios de automao
(instrumentos de medio, atuao e controle final e outros pequenos dispositivos "inte-
ligentes" com capacidade de processamento local) a um sistema integrado de automao e
controle de processos.
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.17
As principais vantagens e benefcios da utilizao do Fieldbus em relao s
conexes convencionais podem ser resumidas como segue:
Vantagens econmicas
drstica reduo da cablagem pela utilizao de um meio fsico compartilhado;
reduo do nmero de canais de comunicao com o processo;
reduo do tempo e complexidade do projeto de layout;
Vantagens tcnico-operacionais
facilidade de instalao e manuteno, pela manipulao de um menor nmero de
cabos e conexes;
facilidade de deteco, localizao e identificao de falhas, atravs de funes de
monitorao automtica;
maior modularidade no projeto e instalao, aumentando a flexibilidade de expanso
de funes e mdulos;
Vantagens sistmicas
aumento da consistncia e da confiabilidade da informao advinda dos instrumentos
de campo, atravs da digitalizao e pr-processamento;
possibilidade de sincronizao dos instantes de amostragem de Entrada/Sada;
melhoria do desempenho global da aplicao pela descentralizao do
processamento;
maior facilidade de interconexo entre nveis hierrquicos diferentes de automao;
Vantagens mercadolgicas
reduo dos custos de sistemas atravs da aquisio seletiva de dispositivos
compatveis de diferentes fornecedores, eliminando a dependncia de somente um
fornecedor;
desacoplamento do software de superviso da dependncia de um fornecedor
especfico do Hardware;
TENDNCIA
Keyboard
A
D
D
A
X
Y
X
Y
MUX
Sample/
Holder
Adaptador
/Amp.
sensores atuador
0..10 v
4..20 mA
4..20 mA
0..10 v
Amp.
Potncia
Keyboard
A
D
X
Y
X
Y
sensores
inteligentes
atuador
inteligente
P
C
P P
D
A
Keyboard
A
D
X
Y
X
Y
sensores
inteligentes
atuador
inteligente
P
C
P
P
D
A
FIELDBUS
Centralizado /
Analgico
Decentralizado / Digital
Decentralizado /
Multipontos
RS232C RS 422
Figura 5.8 - Tendncias na interligao de sensores / atuadores.
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.18
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.
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 que segue. So requeridos aqui ns a um custo da ordem de
U$ 50 ou inferior.
Componente MAP Preo mdio Elemento Campo Preo mdio
Cabo Coaxial U$ 2,5 / m CLP U$ 3.000
Controlador U$ 5.000 Controle Rob $20.000
Demodulador U$ 15.000 PC U$ 2.000
Componente Ethernet / IBM Preo mdio Sensor/Atuador U$ 50 a 1000
N CSMA/CD U$ 500 - 1500 I/O Binria U$ 50 a 1000
N Token-Ring U$ 750 - 1500
O Fieldbus deve atender igualmente aos requisitos impostos pelos sistemas
discretos (Manufatura) e os sistemas contnuos de produo (Controle de Processos).
Podem-se considerar em principio trs classes distintas de aplicao:
sistemas "Stand-Alone", nos quais as transaes ocorrem somente entre
dispositivos ligados em um mesmo segmento de rede. Aqui teramos, por exemplo,
sensores e atuadores ligados a um CNC dentro de uma mquina.
sistemas em cascata, nos quais dispositivos conectados a segmentos distintos
podem trocar informaes por meio de um "bridge". Situao tpica a encontrada
em um SDCD (Sistema Distribudo de Controle Digital).
sistemas hierrquicos, nos quais o segmento Fieldbus esta interligado via "gateway"
a uma rede interligando dispositivos de um nvel hierrquico superior da automao
fabril. o tipo de situao encontrado em uma estrutura CIM.
O fluxo de dados nestas aplicaes pode se dar em dois sentidos:
no sentido vertical, entre nveis hierrquicos diferentes, de modo a permitir a
superviso do sistema. Para esta forma de comunicao devero ser oferecidos
servios de instalao, start-up, parametrizao da aplicao, visualizao de dados
para superviso, etc. Estes servios no so crticos no tempo.
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.19
no sentido horizontal, entre elementos do mesmo nvel, compondo um sistema
distribudo. Os servios oferecidos para este tipo de comunicao se destinam
basicamente atualizao e consumo de dados e a checagem de "status". A
execuo destes servios crtica no tempo.
Em funo do tipo de aplicaes que se prope a atender, um conjunto de requisitos
bsicos so impostos ao Fieldbus:
necessidade de elevado desempenho para atender as aplicaes com requisitos de
tempo crticos;
mtodo e meio de transmisso simples e de preo acessvel. Os sistemas tipo
Fieldbus utilizam transmisso tipo Baseband. Como meio de transmisso adota-se o
par tranado;
necessidade de consistncia de dados;
necessidade de servios compatveis com redes dos nveis hierrquicos superiores.
Em geral, se procura uma compatibilidade com os servios oferecidos pelo MMS;
Diversos fabricantes de sistemas de comunicao industriais tem desenvolvidos
suas prprias solues para o Fieldbus que, no entanto, no apresentam todos os requisitos
necessrios s diversas aplicaes na rea de cho de fbrica. Para suprir esta deficincia,
vrios esforos nacionais e internacionais tem sido feitos no sentido de definir uma norma
universalmente aceita para o Fieldbus, conforme mostrado na figura 5.9.
Dentre os sistemas Fieldbus atualmente em discusso, os mais fortes candidatos
normalizao so o PROFIBUS (Process Fieldbus, proposta alem) e o FIP (Factory
Instrumentation Protocol, proposta francesa). Nos Estados Unidos foi definido o grupo de
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.
Siemens
Foxboro
Rosemount
MIL 1553
outros...
PROFIBUS
ISA SP-50
FIP
USA
F
D
Norma nacional em
abril/91
Norma em preparao
variantes tipo SINEC L2
eF
Norma nacional incio
1988
ESPRIT CNMA/
Fieldbus
Sistemas Fieldbus p/
Processos deFabricao
EUREKA
Fieldbus
Desenvolvimento e teste
de um Fieldbus para
Processos Unitrios
IEC SC65C
Norma em 199?
Figura 5.9 - Atividades de Normalizao do Fieldbus.
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.20
Processo
Cont. Atuador
Sensor
Processo
Processador Central
Cont.
Sensor
Processador Central
Atuador
Fieldbus
Figura 5.10 - Malha Fechada de Controle por Fieldbus.
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 favorizadas, 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 5.10.
Nos itens seguintes apresentaremos as principais caractersticas dos sistemas
Fieldbus atualmente propostos para padronizao internacional.
8.1. A Proposta FIP (Factory Instrumentation Protocol)
O projeto FIP foi elaborado por um conjunto de empresas europias
(Telemecanique,CEGELEC, CGEE Alsthom), rgos do governo francs e centros de
pesquisa conglomerados em torno do chamado "Club FIP". A proposta procurou levar em
considerao as restries de tempo real impostas por um grande nmero de aplicaes a
nvel de cho de fbrica. Definiu-se um modelo de transmisso "produtor-consumidor", que
difere das solues mais usualmente encontradas em redes locais. Para este fieldbus
existem "chips" integrados que implementam as funes das trs camadas (FIPART,
FULLFIP).
A camada Fsica
FIP oferece opcionalmente como meios de transmisso a fibra tica e o par tranado
(blindado ou no). Para o par tranado so previstas trs velocidades de transmisso de
dados:
S1: 31.25 Kbps, distncia at 2000 m;
S2: 1 Mbps, distncia at 500 m, par tranado blindado;
S3: 2.5 Mbps, distncia at 200 m, par tranado blindado.
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.21
A velocidade padro a S2. As velocidades S1 e S3 so utilizadas apenas para
aplicaes especiais. Para uso com fibra tica prevista uma velocidade adicional de 5
Mbps.
Os bits a serem enviados so codificados em Manchester, que permite o envio
simultneo do sinal de sincronizao e dos dados propriamente ditos.
A camada fsica do FIP suporta segmentos com comprimento de at 2000 m e at
256 estaes. O barramento principal pode ser decomposto em vrios segmentos, que so
ligados a este por meio de "taps". Os segmentos podem ser interligados por meio de
repetidores, que fortalecem e reconstituem o sinal.
A camada fsica oferece os seguintes servios de comunicao:
PHY_data_request: pedido de transmisso de dados;
PHY_data_indication: indicao de servio concludo;
Alm disso, a camada fsica oferece servios de gerenciamento, que so:
PHY_Reset: reinicializao do nvel fsico;
PHY_SetValue: ajuste de parmetros da camada fsica;
PHY_ReadValue: leitura de parmetros ajustados;
PHY_Event: comunicao de eventos do nvel fsico.
A camada de Enlace
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 5.11):
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);
todos os consumidores interessados passam a copia-la na fase final.
Cada estao completamente autnoma. O nico requisito imposto s estaes o
de difundir, por solicitao do rbitro de barramento, a varivel ou variveis por elas
produzidas.
Naturalmente, as estaes devem tambm aceitar as variveis que lhe so enviadas.
A varredura das variveis peridicas feita a partir de uma lista implementada no rbitro na
fase de inicializao e que, em geral, no alterada posteriormente.
A transmisso de mensagens feita conforme a norma IEEE 802.2, LLC tipos 1
(sem conexo) e 3 (com reconhecimento). At 24.000 objetos (variveis) so identificveis e
podem ser trocados de forma cclica utilizando uma tabela configurvel.
O formato do quadro do FIP mostrado na figura 5.12, onde:
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.22
PRE: prembulo, utilizado para sincronizao entre emissor e receptores. Compe-
se de um caractere de 16 bits com alteraes dos bits adjacentes de 1 para 0;
FSD/FED: delimitadores de inicio e fim de quadro, respectivamente. So codificados
de forma a no serem confundidos com dados;
EB: Bits de equalizao, que operam como bits de interface entre os delimitadores e
os dados codificados em Manchester II;
Controle: define tipo de quadro, podendo ser quadro de identificao de informao
ou de envio de informao (6 bits);
Dados: pode conter um identificador representando o endereo lgico de uma
varivel, o valor de uma varivel, uma mensagem, o reconhecimento de uma
mensagem ou uma lista de identificadores;
FCS: o controle de erros feito utilizando a tcnica polinomial, permitindo uma
distncia de Hamming de 4 e adotando o polinmio gerador proposto pela CCITT.
Os servios oferecidos pela camada de enlace so apresentados na tabela abaixo.
Foram especificadas quatro classes de servios:
atualizao cclica de dados;
atualizao no peridica de dados;
transferncia de mensagem com ACK;
transferncia de mensagem sem ACK.
Maior importncia foi atribuda aos servios cclicos, de forma que no houve
preocupao com uma otimizao das demais classes.
rbitro
C P C
ID_DAT
rbitro
C P C
RP_DAT
Figura 5.11 - Mtodo de acesso ao meio do FIP. a) rbitro difunde identificador.
b) Produtor difunde dados pedidos.
PRE FSD EB DFS EB FED EB
FSS 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
Figura 5.12 - Formato do quadro do FIP
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.23
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 L_PARAM.req/cnf requisita um dado
Transmisso de mensagem com ACK L_MESSAGE_ACK.req/ind/cnf com reconhecimento
Transmisso de mensagem sem ACK L_MESSAGE.req/ind sem reconhecimento
A Camada de Aplicao
O projeto FIP prope, a nvel da camada de aplicao, um sub-conjunto do MMS
apresentado no projeto MAP, definindo servios de mensagem industrial que no interferem
com o trfego de tempo real. Alm disso, foi definida uma segunda famlia de servios,
denominada MPS ("Message Periodic/Aperiodic Services"), apresentada na tabela a seguir.
Classe Primitiva de servio Comentrios
Leitura de variveis A_READ.req/cnf
A_READFAR.ind
l nomes de variveis,
estruturas, status, valores
Escrita de variveis A_WRITE.req/cnf
A_WRITEFAR.ind
escreve especificao,
valor, status
Leitura do tipo de varivel A_GETOBJECT_DESCRIPTION.req/cnf l especificao
Acesso listas de
variveis
A_READLIST.req/cnf
A_WRITELIST.req/cnf
l e escreve atributos,
valores
Servios de
sincronizao
A_SEND.ind
A_RECEIVE.ind
sincronizao local e
remota
Funes de gerenciamento da rede
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.
Durante a operao da rede, necessrio realizar sua manuteno, que inclui:
Atualizao das listas de objetos;
Atualizao das tabelas de varredura;
Gerenciamento das operaes de partida e parada;
Deteco e correo de falhas;
8.2. A proposta PROFIBUS (PROcess FIeld BUS)
O PROFIBUS (Process Field Bus) foi desenvolvido na Alemanha, inicialmente pela
Siemens em conjunto com a Bosch e Klockner-Moeller em 1987. Em 1988 tornou-se um
"Trial Use Standard" no contexto da norma DIN (DIN V 19245, parte 1), que define as
camadas Fsica e Enlace. Posteriormente, um grupo de 13 empresas e 5 centros de
pesquisa propuseram alteraes nas camadas Fsica e Enlace e definiram a camada de
Aplicao (norma DIN V 19245, parte 2). O PROFIBUS representa a proposta alem para a
padronizao internacional do fieldbus. Esta proposta atualmente apoiada por cerca de 110
empresas europias e internacionais (Siemens, ABB, AEG, Bosch, entre outras).
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.24
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.
A camada fsica
A camada fsica do PROFIBUS baseia-se no padro EIA RS-485 (EIA - Eletronic
Insdustries Association), topologia barramento, utilizando como meio um par tranado
blindado (130 Ohms). Permite a interligao de at 32 elementos (estaes ativas, passivas
ou repetidoras) por segmento. So permitidos at 4 segmentos, totalizando assim um
mximo de 122 estaes.
A codificao utilizada a NRZ, podendo ser implementada com uma USART
simples (assncrona). As taxas suportadas so 9.6, 19.2 e 93.75 kbps para distncias at
1200 m, 187.5 kbps para distncias at 600 m e 500 kbps at 200 m.
A camada fsica oferece duas primitivas de servio acessveis camada de enlace:
PHY_DATA.request (requisio de envio de dados) e PHY_DATA.indication (indicao da
presena de dados).
A camada de enlace
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 5.13). 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.
O PROFIBUS prev uma srie de quadros diferentes, agrupados em duas classes,
uma para transmisso entre estaes mais complexas (quadros longos) e outra para
dispositivos de campo simples (quadros curtos). Os quadros previstos incluem:
quadro longo sem campo de dados;
quadro longo com campo de dados fixo;
quadro longo com campo de dados varivel;
quadro curto sem campo de dados;
quadro curto com campo de dados;
quadro curto de passagem de token.
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 tem-se os seguintes campos em cada quadro:
SD: Start Delimiter (delimitador de inicio de quadro);
DA: Destination Address (Endereo de destino do quadro);
SA: Source Address (Endereo de origem do quadro);
FC: Frame Control (Controle de quadro);
DATA_UNIT: Dados propriamente ditos;
FCS: Frame Check Sequence (seqncia de checagem de erros);
ED: End Delimiter (Delimitador de fim de quadro).
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.25
O protocolo implementado a nvel da camada de enlace denominado FDL
("Fieldbus Data Link"), que oferece servios de administrao do token, de atualizao das
estaes e de transferncia de dados. Estes ltimos so apresentados na tabela abaixo. A
troca de dados feita em ciclos compostos por um "send-request" de parte da estao ativa
e seguida por um "ack-response" de parte de uma estao passiva ou de outra estao
ativa.
Escravo
1
Escravo
2
Escravo
3
Escravo
N
anel lgico
Mestre 1 Mestre 2
token
Figura 5.13 - Mtodo de acesso ao meio do PROFIBUS
Classe Primitiva de servio Comentrios
SDN (Send Data with No
Acknowledge)
FDL_DATA envio de dados sem
reconhecimento
SDA (Send Data with
Acknowledge)
FDL_DATA_ACK envio de dados com
reconhecimento
RDR (Request Data with
Reply)
FDL_REPLY
FDL_REPLY_UPDATE
requisio de dados com
reconhecimento
CRDR (Cyclic Request
Data with Reply)
FDL_CYC_REPLY
FDL_CYC_DEACT
FDL_REPLY
FDL_REPLY_UPDATE
estao local requisita
ciclicamente dados ao
usurio remoto.
CSRD (Cyclic Send and
Request Data)
FDL_SEND_UPDATE
FDL_CYC_DATA_REPLY
FDL_CYC_DEACT
FDL_DATA_REPLY
FDL_DATA_UPDATE
estao local envia
ciclicamente e requisita
simultaneamente dados de
resposta.
SRD (Send and Request
Data)
FDL_DATA_REPLY
FDL_REPLY_UPDATE
estao local envia e requisita
dados.
A camada de Aplicao
Na camada de aplicao foi definido um subset do MMS (ISO 9506), utilizando
primitivas de servios apropriadas para atender os aspectos especficos do barramento de
campo. A Camada de Aplicao est dividida em trs subcamadas:
Fieldbus Message Specification (FMS), que o protocolo propriamente dito, derivado
do MMS;
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.26
Lower Layer Interface (LLI), responsvel pela interface com a camada de Enlace,
mapeando os servios FMS e FMA (Fieldbus Management) em servios
correspondentes do FDL;
Application Layer Interface (ALI), responsvel pela interface com as aplicaes do
usurio. A ALI opera como solicitador de servios("Cliente") a um Dispositivo Virtual
de Campo (VFD, Virtual Field Device), que opera como fornecedor de servios
("Servidor").
O VFD equivalente ao VMD (Virtual Manufacturing Device) do MMS usado em MAP,
constituindo uma representao abstrata de vrias classes de dispositivos reais.
As classes de onjetos definidas so: Variveis, Domnios, Alarmes, Listas de
Variveis e Invocaes de Programa. Todos os objetos da rede so cadastrados em um
dicionrio de dados, denominado OV (Objekt Verzeichniss). Cada estao contem uma
cpia total ou parcial do OV.
So definidos servios com e sem conexo, cclicos e acclicos, entre estaes
ativas e entre estas e estaes passivas. Os servios sem conexo so usados para
"Broadcast" e "Multicast" (difuso de quadros entre todas as estaes ou entre certos
agrupamentos pr-definidos de estaes). Os servios com conexo so usados para
garantir uma troca de dados confivel.
A tabela a seguir apresenta uma viso geral dos servios oferecidos, que podem ser
decompostos em trs classes: servios de Aplicao, servios de Adminstrao e servios
de Gerenciamento de Rede.
Em relao ao MMS, tem-se como novidade os servios Phy_Read e Phy_Write, que
permitem acesso direto a strings de octetos para os quais no se tenha uma descrio no
OV.
8.3. A proposta ISA SP-50
Os projetos FIP e PROFIBUS contriburam grandemente para o projeto SP-50
(Standards & Practices 50), em elaborao na ISA (instrumentation Society of America), que
dever tornar-se a proposta definitiva para o fieldbus padronizado. Os trabalhos de
padronizao ainda esto em andamento.
A ISA adotou a terminologia da CCITT, na qual um elemento de comunicao
composto de duas partes:
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.
A camada Fsica
A camada fsica da ISA SP-50 se compe de trs subcamadas (figura 5.14):
Subcamada DIS (Data Independent Sublayer): atua como interface com a camada
de enlace, recebendo pedidos de servio desta e repassando os dados recebidos
(DTE);
Subcamada MDS (Medium Dependent Sublayer): codifica os dados a enviar para
um formato compatvel com o meio fsico a ser adotado. Por enquanto, somente
foi especificada a subcamada MDS para o par tranado, onde se adota a
codificao tipo Manchester bifsico (DCE);
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.27
Subcamada MAU (Medium Attachment Unit): descreve o transceptor propriamente
dito para o meio fsico (DCE). Para a camada fsica foram inicialmente propostos
dois tipos de meio:
Classe Primitivas de servio Comentrios
Servios de
Acesso a
variveis
READ
WRITE
INFORMATION_REPORT
PHY_WRITE
PHY_READ
DEFINE_VARIABLE_LIST
DELETE_VARIABLE_LIST
leitura e escrita de
variveis contidas
em dispositivos
servidores
Servios de
Acesso a
Domnios
INITIATE_DOWNLOAD_SEQUENCE
DOWNLOAD_SEGMENT
TERMINATE_DOWNLOAD_SEQUENCE
INITIATE_UPLOAD_SEQUENCE
UPLOAD_SEGMENT
TERMINATE_UPLOAD_SEQUENCE
REQUEST_DOMAIN_DOWNLOAD
REQUEST_DOMAIN_UPLOAD
transferncia de
dados ou programas
de dispositivo cliente
para dispositivo
servidor e vice-versa
Servios de
Invocao de
Programas
CREATE_PROGRAM
INVOCATION_DELETE_PROGRAM
INVOCATION_START
INVOCATION_STOP
INVOCATION_RESUME
INVOCATION_RESET
partida, parada,
retorno da execuo,
retorno ao estado
inicial e deleo de
programas
Servios de
Notificao de
Eventos
ALTER_EVENT_COND._MONITORING
EVENT_NOTIFICATION
ACK_EVENT_NOTIFICATION
servidor notifica
cliente a ocorrncia
de um evento
(alarme)
Servios de
Leitura de Status
STATUS
UNSOLICITED_STATUS
STATUS_IDENTIFY
informaes acerca
do estado dos
dispositivos
servidores
Servios de
Gerenciamento
de Dicionrio de
Objetos
GET_OV
PUT_OV
INITIATE_PUT_OV
TERMINATE_PUT_OV
descrio de todos
os objetos na rede
(nomes, endereos,
tipos de dados, etc)
Servios de
Gerenciamento
de Contexto
INITIATE
REJECT
ABORT
estabelecimento e
encerramento de
associao entre
dois dispositivos e a
rejeio de
mensagens
recebidas
meio H1, para aplicaes de baixo desempenho em controle de processos
tradicional, usando par tranado, com taxa de transmisso de 31,25 Kbps e
que tambm utilizado para a alimentao dos dispositivos de campo. As
topologias propostas so barramento e estrela;
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.28
meio H2, para processos de controle de alta velocidade, com taxa de
transmisso de 1 Mbps, topologia em barramento e distncia mxima de 750
m com 30 estaes.
Propostas alternativas utilizando fibra tica e sinais de rdio esto sendo estudadas.
A camada de Enlace
A camada de Enlace oferece quatro classes de funes, a serem implementados
nas estaes de acordo com as necessidades:
funes de "Responder": estao s transmite dados em resposta a uma solicitao
(estao "escrava");
funes de "Initiator": estao pode se apoderar do direito de acesso ao meio (token),
podendo enviar e requisitar dados a outras estaes por iniciativa prpria;
funes de "Linkmaster": inclui as funes de responder e initiator, mas a estao
pode exercer o papel de escalonador de enlace, administrando o token e gerenciando
o tempo interno do sistema (semelhante ao papel do rbitro de barramento do FIP);
funes de "Bridge": estao capaz de interligar entidades de enlace diferentes;
Se h mais de uma estao com as funcionalidades de um "Link-master" no sistema,
estas disputam entre si na inicializao o papel de escalonador de enlace (rbitro). A estao
vencedora chamada LAS (Link Active Scheduler). Existem, para isto, trs tipos de token
(figura 5.15):
Token de escalonamento: disputado na inicializao por todas as estaes
Linkmaster, define a estao LAS.
Token circulado: distribudo pela estao LAS s demais estaes com
funcionalidade de Linkmaster, que formam um anel lgico conforme a norma IEEE
802.4.
Token delegado: enviado pela estao LAS a uma estao qualquer por solicitao
desta ou para atender s necessidades de um servio de comunicao escalonado
pela LAS.
Funcionalmente, a camada de Enlace est subdividida em quatro subcamadas,
conforme mostrado na figura 5.16:
DIS
(Data Independent Sublayer)
MDS
(Medium Dependent Sublayer)
MAU
(Medium Attachment Unit)
Camada de Enlace
Figura 5.14 - A camada fsica do SP-50.
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.29
Token de Escalonamento
Token Delegado
Token Circulado
LM
LM
LM
LAS
Estao
qualquer
Figura 5.15 - Operao dos tokens no SP-50.
Subcamada de acesso a Enlace: estabelece a interface com a camada fsica,
gerencia o token e servios de resposta imediata;
Subcamada de escalonamento de Enlace: providencia as funes de escalonamento
de atividades na prpria entidade de enlace. Esta subcamada mais complexa em
estaes com as funcionalidades de Linkmaster e que podem assumir a funo de
LAS;
Subcamada de gerenciamento de conexes: executam todas as funes referentes
ao estabelecimento e rompimento de conexes;
Subcamada de gerenciamento de Ponte: s existe em estaes com funcionalidades
de Bridge.
A camada de enlace oferece quatro classes de servios s entidades da camada de
aplicao:
Servios de gerenciamento de Buffers e filas: atravs deles, usurios da camada de
enlace podem alocar permanentemente buffers ou filas com profundidade
especificada, a serem usados posteriormente para a transferncia de dados;
Servios de transferncia de dados com conexo: permitem o estabelecimento de
uma conexo e o envio de dados entre estaes, garantindo servios altamente
confiveis;
Servios de transferncia de dados sem conexo: permitem o envio de dados sem o
estabelecimento prvio de uma conexo e que, apesar da menor confiabilidade, so
teis no envio de telegramas de difuso (multicast e broadcast);
Servios de escalonamento de transaes: permitem programar o rbitro de
barramento (LAS), definindo a seqncia de passagem de token (escalonamento).
A camada de Aplicao
A camada de aplicao do SP-50 ainda se encontra em discusso e procura
conjugar as idias bsicas do MMS, para aplicaes sem restries temporais, com
servios tipo READ/WRITE inspirados no FIP e que atendem o trfego cclico e acclico com
requisitos de tempo real "duro".
A camada de aplicao prev, em sua fase atual, os seguintes conjuntos de servios:
Servios MCSE (Message Common Service Element): estabelece e interrompe
conexes entre processos de aplicao (Correspondem aos servios ACSE da ISO).
CAP. 5 REDES LOCAIS INDUSTRIAIS PROF. VITRIO BRUNO MAZZOLA
5.30
Subcamada de Gerenciamento de Ponte
Subcamada de Gerenciamento de
Conexes
Subcamada de Escalonamento
Camada de
Aplicao
Camada Fsica
Subcamada de Acesso a Enlace
Figura 5.16 - A camada de Enlace do SP-50.
Servios IMSE (Industrial Message Service Element): servios semelhantes aos
oferecidos pelo MMS do projeto MAP.
Servios DDM (Distributed Database Maintenance): Servios de acesso bases de
dados distribudas.
Camada do Usurio
Uma proposta inovadora no SP-50 a definio de uma camada do usurio, situada
acima da camada de aplicao, destinada a aliviar o programador de detalhes de acesso ao
sistema de comunicao e a oferecer servios adequados a diversos tipos diferentes de
aplicaes (a semelhana dos "companion standards" propostos no projeto MAP).
Os trabalhos atuais esto restritos a definio de funes para aplicaes em
controle de processos, agrupadas na chamada PCUL ("Process Control User Layer").
Outros trabalhos devero atender as reas de automao da manufatura, controle predial,
eletrnica embarcada (automveis), aplicaes domsticas, entre outras.
Servios de Gerenciamento de rede
Alm das funcionalidades das camadas j vistas, a proposta SP-50 inclui um
conjunto de funes de gerenciamento de rede, como:
Gerenciamento de configurao de rede: carregamento, inicializao de endereos,
configurao de comunicao e aplicao, partida, etc;
Controle de operao: ferramentas de sincronizao, escalonamento, etc;
Monitorao de desempenho: deteco, diagnose e recuperao de erros, avaliao
e otimizao de desempenho, etc.
Uma vez definido um padro internacionalmente aceito, o Fieldbus dever
revolucionar o setor de instrumentao. Esta tecnologia permite que a inteligncia seja
totalmente distribuda pelo campo e favorece o surgimento de dispositivos com capacidades
locais de processamento cada vez mais sofisticadas. A integrao total dos equipamentos
permitir alteraes nos procedimentos de operao das plantas industriais. O Fieldbus
dever tambm propiciar a intercambiabilidade a nvel de sensores, atuadores,
transmissores e controladores, trazendo ao usurio uma maior flexibilidade na compra de
produtos e abrindo espao para novos fabricantes.
6.1
Captulo 6 Captulo 6
I I NTERCONEXO DE NTERCONEXO DE R REDES EDES
1. INTRODUO
O problema da interconexo aparece no momento em que dois usurios que
necessitam dialogar no esto conectados necessariamente mesma subrede. Um
exemplo tpico deste problema encontrado nas propostas de comunicao em automao
industrial. Como sabido, tanto as empresas como as arquiteturas de comunicao de
dados obedecem, geralmente a uma organizao hierrquica. As fbricas podem ser
divididas em clulas, enquanto o setor administrativo pode ser dividido em departamentos,
sesses, divises, coordenadorias.
Estas divises so normalmente baseadas no estabelecimento de critrios
funcionais, tendo as funes de cada diviso significado especial na empresa.
As razes que podem conduzir a sistemas integrando diferentes subredes podem
ser de naturezas as mais diversas:
muito mais econmico interligar computadores geograficamente 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 derivado de trs questes importantes:
CAP. 6 INTERCONEXO DE REDES PROF. VITRIO BRUNO MAZZOLA
6.2
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 no implementem o mesmo protocolo, o que representa
um problema no trivial a ser resolvido;
a terceira est relacionada com a hiptese de que as duas subredes a serem
interconectadas no sejam baseadas na mesma arquitetura de protocolos; por
exemplo, uma das subredes no-OSI.
O objetivo desta seo discutir os principais aspectos associados interconexo de
subredes, abordando, desde a forma como a interconexo vista via modelo OSI, at a
resoluo das questes apresentadas acima.
2. ASPECTOS DA CONECTIVIDADE
Retornando s duas 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.1. Endereamento
A funo essencial de uma rede de computadores permitir a troca de informaes
entre os equipamentos a ela conectados. Dada a possibilidade de interligao de
equipamentos heterogneos, torna-se necessria a definio de uma poltica de
representao dos nomes e endereos dos processos, que sejam reconhecidos em
qualquer ponto da rede. Uma forma de faz-lo permitir que os usurios possam ser
identificados por nomes (ou cadeias de caracteres). 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.
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.
A poltica adotada para resolver esta questo aquela do endereamento hierrquico,
como por exemplo a definida pelo CCITT, 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.
2.2. Encaminhamento das mensagens
Este aspecto est diretamente ligado s funes de roteamento implementadas na
camada de Rede. A questo colocada aqui est relacionada com a forma de
encaminhamento de uma mensagem quando esta trocada entre dois equipamentos
situados em subredes distantes. Um aspecto a ser ressaltado aqui o problema de
roteamento, j abordado anteriormente (camada de Rede), sendo que alguns dos algoritmos
de roteamento foram l apresentados.
2.3. 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 sendo o menor tamanho mximo de todas as subredes... mas esta uma soluo
pouco eficiente.
CAP. 6 INTERCONEXO DE REDES PROF. VITRIO BRUNO MAZZOLA
6.3
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.
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, que assume a resoluo destes problemas, pode ser subdividida em trs
subcamadas, como mostra a figura 6.1: 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 6.1, 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 6.1, responsvel de todas as
adaptaes necessrias entre as subredes interconectadas.
Finalmente, a terceira subcamada, 3c em 6.1, a que implementa efetivamente a
interconexo das subredes responsabilizando-se pelo roteamento entre as subredes.
As diferenas entre as subredes interconectadas podem ser de diferentes naturezas.
No caso de subredes conformes ao modelo OSI, a interconexo feita apenas atravs da
transmisso, via subcamada de interconexo dos pacotes s subcamadas de acesso
subrede da subrede considerada. Neste caso, a funo da subcamada de adaptao
inexistente, esta camada sendo ento vazia.
Por outro lado, se uma rede no-OSI deve ser interconectada a uma baseada no
modelo OSI, as adaptaes devero ser implementadas, isto sendo funo daquela
subcamada. A tarefa de roteamento de subrede a subrede similar quela a nvel de uma
nica subrede, o que significa que as tcnicas apresentadas na seo 3 podem ser
utilizadas.
3c
3b
3a
4 a 7
1
2
3c'
3b'
3a'
1
2
3a
2
1
subrede 1 subrede 2
3b
sistema A sistema B
relay
3c'
3b'
3a'
4 a 7
1
2
Figura 6.1 - Estrutura interna da camada de rede do ponto de vista da interconexo, segundo o OSI.
CAP. 6 INTERCONEXO DE REDES PROF. VITRIO BRUNO MAZZOLA
6.4
4. AS DIFERENTES POSSIBILIDADES DE INTERCONEXO
A figura 6.2 ilustra diferentes possibilidades de interconexo de redes (locais ou de
longa distncia). Em cada caso, necessrio introduzir um elemento intermedirio ou relay,
responsvel das adaptaes de protocolo que sejam necessrias, podendo ser uma ponte
(ou bridge) ou passarela (gateway), dependendo do tipo de interconexo.
Saindo um pouco do contexto do modelo OSI, no caso mais geral, a tarefa efetuada
pelos relays pode ser implementada em qualquer camada, os quatro tipos de relays mais
comuns sendo:
os repetidores (repeaters), implementados no nvel fsico, que permitem
unicamente amplificar e retransmitir os sinais eltricos representando os bits de
dados entre dois segmentos de cabo;
as pontes (bridges), implementadas no nvel enlace, que efetuam o
armazenamento e retransmisso dos quadros entre redes locais; a retransmisso
do quadro pode ser caracterizada por algumas modificaes nos formatos dos
quadros, se necessrio;
os roteadores (routers), implementados no nvel rede, que retransmitem pacotes
entre duas redes;
os gateways (gateways), implementados ao nvel aplicao, cuja tarefa bem
mais complexa que as dos elementos anteriores, utilizados para a interconexo de
subredes incompatveis at mesmo do ponto de vista da arquitetura (redes OSI x
redes no-OSI).
Apresentaremos, a seguir, algumas caractersticas importantes das pontes,
roteadores e gateways, elementos dos mais utilizados na tarefa de interconexo de redes.
5. AS PONTES (BRIDGES)
Se duas subredes apresentam compatibilidade em relao camada de enlace de
dados, uma ponte pode ser utilizada para interconect-las.
Uma ponte um equipamento inteligente (baseado em microprocessador) conectado
a duas subredes ou entre uma subrede e a backbone. Dado que as duas redes esto
conectadas ponte utilizam a mesma poltica de endereamento na camada 2 do modelo
OSI, ela examina os endereos de ambas as redes para definir que mensagens devem ser
passadas de uma rede outra.
LAN LAN
LAN
WAN
WAN
LAN-LAN
LAN-WAN
WAN-WAN
LAN-WAN-LAN
BRIDGE
GATEWAY
G B
G
G
G
B
G
Figura 6.2 - Possibilidades de interconexo de redes.
CAP. 6 INTERCONEXO DE REDES PROF. VITRIO BRUNO MAZZOLA
6.5
As pontes so bidirecionais por natureza, o que significa que elas so responsveis
do encaminhamento de todos os pacotes emitidos ao nvel das duas redes. A figura 6.3
ilustra a forma de interconexo atravs de uma ponte.
A operao de uma ponte baseada na manuteno de uma tabela contendo os
endereos dos equipamentos compondo a rede qual ela est associada.
Quando um pacote recebido, esta examina o contedo do campo endereo do
destinatrio para verificar se ele est endereado a um equipamento desta rede ou no.
Em caso positivo, o pacote encaminhado ao equipamento considerado. Caso
contrrio, este ser despachado para uma ponte associada a uma outra subrede, sendo
que, esta, por sua vez, realizar o mesmo tipo de verificao, atravs de consulta sua
tabela. Normalmente, as pontes implementam um algoritmo de "aprendizagem", utilizado
para inicializar a tabela de endereamento existente em cada uma delas.
Do ponto de vista do desempenho, as pontes so elementos de interconexo que
apresentam um tempo de resposta relativamente mais curto, uma vez que, em grande parte
de sua operao, os pacotes no sofrem nenhum processo de reformatao para serem
despachados.
Um caso bastante comum encontrado nas empresas a necessidade de
interconexo de redes Ethernet com as redes do tipo Token Ring (Anel com Ficha). Um
primeiro problema a resolver, neste caso, a grande diferena estrutural dos pacotes
utilizados por cada um destes tipos de rede.
Uma rede Ethernet utiliza pacotes cujo tamanho no deve ultrapassar os 1.500 bytes;
uma rede Token Ring a 4 Mbit/s pode transmitir pacotes de at 4.000 bytes. Uma ponte
orientada interconexo destes dois tipos de rede deve, ento, oferecer a possibilidade de
segmentao dos pacotes de grandes dimenses das redes Token Ring em pacotes
menores da Ethernet.
Dado que, no modelo OSI, a independncia de redes uma das caractersticas
enfatizadas, bem possvel que as duas subredes utilizem suportes de transmisso
(camada fsica) distintos. Um exemplo disto a possibilidade do estabelecimento de
interconexes por pontes nas arquiteturas MAP/TOP. Por utilizar a mesma camada de
enlace (IEEE 802.2), as duas arquiteturas podem ser interconectadas, apesar de uma (MAP)
utilizar o suporte de transmisso em banda larga e a outra (TOP) utilizar banda bsica.
Camada 7
Camada 6
Camada 5
Camada 4
Camada 3
Camada 2
Camada 1
Camada 7
Camada 6
Camada 5
Camada 4
Camada 3
Camada 2
Camada 1
Camada 2
Camada 1
Camada 2
Camada 1
PONTE
SUBREDE A SUBREDE B
PONTE
SUBREDE A
SUBREDE B
Figura 6.3 - Ponte interconectando duas sub-redes (nvel Enlace).
CAP. 6 INTERCONEXO DE REDES PROF. VITRIO BRUNO MAZZOLA
6.6
Na filosofia do modelo OSI, uma ponte pode interconectar duas redes quaisquer,
desde que estas sejam totalmente compatveis em suas camadas de enlace de dados
(principalmente, no endereamento). Ainda deste ponto de vista, dois usurios finais no
precisam tomar conhecimento da existncia de uma ponte na rede; esta vista como um
equipamento "observador" nas redes s quais ela est conectada. Sua funo monitorar
todo pacote que circula em cada uma das redes qual ela est associada.
6. OS ROTEADORES (ROUTERS)
Como foi dito acima, as pontes so equipamentos que permitem interconectar as
subredes, duas a duas. Apesar de sua grande utilidade neste caso bastante comum, as
pontes apresentam limitaes que impedem outras maneiras tambm importantes de
interconexo.
Os roteadores so elementos operando ao nvel de Rede, que se utilizam do
endereamento definido a este nvel para transferir e rotear as mensagens de uma rede a
outra. Ao contrrio das pontes que interligam as subredes duas a duas, os roteadores
podem interligar duas ou mais subredes, sendo que a escolha de que linha utilizar feita
com base na execuo de um algoritmo de roteamento, como j discutido anteriormente
(camada de Rede).
A poltica de endereamento implementada a nvel da camada de Rede bastante
similar codificao de nmeros telefnicos numa rede de telefonia. Se algum, por
exemplo, quer fazer uma chamada telefnica de Florianpolis para Paris, ele deve discar
inicialmente (aps o cdigo de discagem direta internacional) o cdigo do pas (no caso, 33
para a Frana), em seguida, o cdigo da cidade (1, para Paris) e, finalmente, o nmero do
telefone da pessoa 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).
Camada 7
Camada 6
Camada 5
Camada 4
Camada 3
Camada 2
Camada 1
Camada 7
Camada 6
Camada 5
Camada 4
Camada 3
Camada 2
Camada 1
Camada 2
Camada 1
Camada 2
Camada 1
ROTEADOR
SUBREDE A SUBREDE B
Camada 3 Camada 3
ROTEADOR
SUBREDE A
SUBREDE B
SUBREDE C
SUBREDE D
Figura 6.4 - Roteador interligando duas subredes.
CAP. 6 INTERCONEXO DE REDES PROF. VITRIO BRUNO MAZZOLA
6.7
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 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 geograficamente 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 na figura 6.4.
7. 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.
Aplicao
Apresentao
Sesso
Transporte
Rede
Enlace
Fsica
Usurio
servios NAU
Fluxo Dados
Controle
Transmisso
Controle
Caminho
Controle
Enlace
Ligao
Fsica
GATEWAY REDE MAP (OSI) REDE SNA
Aplicao
Apresentao
Sesso
Transporte
Rede
Enlace
Fsica
Usurio
servios NAU
Fluxo Dados
Controle
Transmisso
Controle
Caminho
Controle
Enlace
Ligao
Fsica
TRADUTOR
Figura 6.5 - Interconexo baseada em gateway.
CAP. 6 INTERCONEXO DE REDES PROF. VITRIO BRUNO MAZZOLA
6.8
Os gateways so elementos que devem possuir duas pilhas de protocolos, um sendo
baseado na arquitetura a 7 camadas do modelo OSI e o outro, baseado na arquitetura
proprietria considerada.
Normalmente, os gateways so construdos com uma orientao a uma dada
aplicao, como, por exemplo, a interconexo entre uma rede proprietria e uma rede MAP.
Outro exemplo disto a interconexo de uma rede SNA (rede proprietria da IBM) na qual um
mainframe IBM est interconectado com uma rede MAP.
O gateway a ser construdo para realizar esta conexo deveria possuir as 7 camadas
(OSI-like) definida pela arquitetura MAP, um programa de aplicao para realizar a
transferncia de arquivos, e um conjunto de protocolos necessrios para a comunicao
dentro da rede SNA.
7.1
Captulo 7 Captulo 7
E ENGENHARI A DE NGENHARI A DE P PROTOCOLOS ROTOCOLOS
1. INTRODUO
A concepo de uma arquitetura de comunicao consiste basicamente do projeto e
implementao das entidades de protocolo associadas a cada uma de suas camadas, de
modo que estas ofeream completamente os servios para os quais elas foram definidas.
Esta tarefa deve levar em conta a adoo de uma metodologia que permita produzir o
software necessrio, uma metodologia podendo ser caracterizada pelos mais diversos
aspectos: as diferentes etapas a serem realizadas, os conceitos fundamentais, as tcnicas
existentes, as ferramentas suportando as diferentes etapas, etc_
concepo realizada sob tais condies, ou seja, com a utiizao de um
metodologia orientada ao problema dos protocolos, chamamos Engenharia de Protocolos,
que pode ser vista como uma aplicao dos conceitos e mtodos da Engenharia de
Software concepo de protocolos de comunicao.
Neste documento, sero apresentados os principais conceitos da Engenharia de
Protocolos, particularmente, as principais etapas da concepo de uma entidade de
protocolo, as diferentes tcnicas orientadas a cada etapa, as ferramentas existentes para a
concepo dos protocolos.
2. AS ETAPAS DE CONCEPO DOS PROTOCOLOS DE COMUNICAO
O objetivo da concepo de uma camada de protocolos gerar um programa
concretizando uma entidade de protocolos que oferea os servios requeridos para o nvel
considerado. A concepo deve ser realizada, seguindo um conjunto de procedimentos, ou
etapas, que permitam atingir este objetivo num menor tempo e com um maior grau de
confiabilidade e de conformidade, esta segunda caracterstica sendo definida mais
frente.
A concepo de uma camada de protocolo segue os mesmos procedimentos
definidos pelas tcnicas de Engenharia de Programao, onde as principais etapas so:
a etapa de anlise de requisitos, onde so levantados todos os pontos relativos ao
problema a ser resolvido, o resultado deste levantamento sendo a realizao de
uma especificao funcional;
a etapa de projeto, caracterizada pela realizao de uma especificao detalhada,
descrevendo, se possvel, de maneira no ambgua, o comportamento de cada
componente do software a ser realizado e as suas interaes para a resoluo dos
problemas levantados na primeira etapa;
a etapa de implementao, que consiste na gerao e implantao do cdigo
executvel, o software devendo ser o mais fiel possvel do que foi definido na
especificao detalhada;
CAP. 7 ENGENHARIA DE PROTOCOLOS PROF. VITRIO BRUNO MAZZOLA
7.2
a etapa de manuteno do software, onde atualizaes podem ser introduzidas de
modo a se obter novas verses, mais eficientes e mais completas do programa.
A figura 7.1 ilustra estas etapas e as possveis interaes durante o processo de
desenvolvimento do programa.
A concepo dos protocolos, no entanto, representa um caso particular da
concepo de um programa distribudo, apresentando especificidades que devem ser
levadas em conta em cada etapa do processo, tcnicas e ferramentas tendo sido definidas
para esta classe de problemas.
A Engenharia de Protocolos tornou-se um tema de pesquisa bastante amplo, os
principais trabalhos desenvolvidos estando orientados definio de tcnicas de
especificao de protocolos, definio de metodologias de validao (simulao e
verificao) de protocolos, implementao de camadas de protocolos a partir de
especificaes formais, gerao de sequncias e mtodos de teste de protocolos.
As sees que seguem apresentaro os principais elementos de cada uma das
atividades relacionadas concepo dos protocolos de comunicao, particularmente no
que diz respeito especificao, validao, implementao e testes de protocolos.
3. A ESPECIFICAO DE PROTOCOLOS DE COMUNICAO
Os protocolos de comunicao so definidos e apresentados pelas organizaes de
normalizao, na forma de documentos (normas) definindo os principais aspectos
relacionados ao funcionamento do protocolo, o formato das unidades de dados, os servios
oferecidos, etc_
especificao
informal dos
requisitos
especificao
funcional
especificao
detalhada
cdigo de
implementao
sequncias
de teste
realizao da
especificao
funcional
validao da
especificao
funcional
realizao da
especificao
detalhada
validao da
especificao
detalhada
gerao do
cdigo de
implementao
validao do
cdigo de
implementao
teste do
cdigo de
implementao
definio de
sequncias
de teste
ANLISE DE
REQUISITOS
PROJETO
IMPLEMENTAO
Figura 7.1 - As atividades de desenvolvimento do software.
CAP. 7 ENGENHARIA DE PROTOCOLOS PROF. VITRIO BRUNO MAZZOLA
7.3
Estes aspectos, na grande maioria dos documentos (com raras excees), so
apresentados em linguagem natural, podendo conduzir, muitas vezes a implementaes
diferentes e incoerentes de uma mesma norma.
A importncia da etapa de especificao est no fato de que, uma vez que ela vai
servir de referncia para a etapa de gerao do cdigo de implementao, ela deve eliminar,
por um lado, a totalidade ou grande parte das ambigidades que possam surgir no que diz
respeito aos pontos de funcionamento do protocolo, isto sendo possvel graas utilizao
de tcnicas apropriadas de especificao.
3.1. Aspectos da especificao dos protocolos de comunicao
Como foi visto nas partes precedentes do documento, os protocolos de comunicao
so organizados segundo uma estrutura hierrquica de diferentes camadas. A especificao
dos protocolos, deve levar em conta, num primeiro tempo, os seguintes aspectos:
o servio a ser oferecido por uma dada camada de protocolos, levando em conta
as propriedades locais do ponto de vista de um nico ponto de acesso a servio
(SAP), assim como as propriedades globais, levando em conta a existncia de
vrios SAPs;
o protocolo a ser implementado pelas entidades de protocolo de uma dada
camada, principalmente o comportamento interno das entidades;
a interface, atravs da qual o servio oferecido num ponto de acesso ao servio
particular.
A figura 7.2 ilustra os aspectos apresentados acima. Em 7.2(a), a camada de
protocolo vista como uma caixa preta, cujos servios sero acessados atravs dos SAPs;
em 7.2(b), o comportamento de uma entidade de protocolo, vista inicialmente como uma
caixa preta, ser o ponto abordado.
Do ponto de vista das interaes de usurios e fornecedores de servio, deve-se
levar em conta ainda as primitivas de servio, caracterizadas por parmetros que podem
incluir informaes de controle e dados de usurio e as unidades de dados de protocolo ou
PDUs , trocadas entre entidades de protocolos pares. importante lembrar aqui que, de
fato, as PDUs no so trocadas diretamente entre duas entidades de protocolo de um
mesmo nvel, mas conduzidas atravs das primitivas de servio das camadas inferiores. A
figura 7.3 ilustra este aspecto, a parte superior da entidade representando a PDU
propriamente dita, a parte inferior representando o seu mapeamento nas primitivas de
servio da camada inferior.
CAMADA DE PROTOCOLO
pontos de acesso
ao servio (SAPs)
entidade de
protocolo
(a) (b)
Figura 7.2 - (a) especificao do servio oferecido por uma camada; (b) especificao do
comportamento de uma entidade de protocolo.
CAP. 7 ENGENHARIA DE PROTOCOLOS PROF. VITRIO BRUNO MAZZOLA
7.4
entidade de
protocolo
camada
inferior
PDUs
Figura 7.3 - Relao entre PDUs e primitivas de servio.
Um exemplo da representao destes aspectos pode ser visto na figura 7.4, onde
uma especificao da camada de Transporte do modelo OSI proposta. Pode-se notar as
duas entidades de Transporte que oferecem o servio de Transporte atravs dos pontos de
acesso a servio, respectivamente TSAP1 e TSAP2. Estas entidades trocam suas PDUs
utilizando o servio de Rede, oferecido pela camada inferior nos pontos de acesso a servio
correspondentes, respectivamente, NSAP1 e NSAP2.
As possveis interaes entre usurios da camada de Transporte, entidades de
Transporte e a camada de rede podem ser expressas na forma de um diagrama de tempo
como mostra a figura 7.5.
Os pontos apresentados at aqui representam aspectos arquiteturais da
especificao, os aspectos de comportamento devendo tambm ser levados em conta.
Os aspectos de comportamento a serem levados em conta no momento de uma
especificao so:
o sequenciamento temporal das interaes, de modo a definir a ordem na qual as
operaes devem ser efetuadas, incluindo tambm os diferentes tipos de
interaes (primitivas de servio, PDUs) e as regras de ordenao associadas a
cada tipo; ainda, devem ser levadas em conta as questes de envio ou recepo
de uma interao;
TSAP2
NSAP2
ENTIDADE
DE
TRANSPORTE
2
TSAP1
ENTIDADE
DE
TRANSPORTE
1
SERVIO DE REDE
NSAP1
Figura 7.4 - Exemplo de uma arquitetura de comunicao oferecendo um servio de Transporte.
CAP. 7 ENGENHARIA DE PROTOCOLOS PROF. VITRIO BRUNO MAZZOLA
7.5
TSAP1
NSAP1 NSAP2 TSAP2
TCON.req
TCON.cnf
CR
CC
TCON.ind
TCON.rsp
DATA (SDU)
DT
DT
AK
DATA (SDU)
Figura 7.5 - Diagrama de tempo ilustrando as diferentes interaes para o exemplo da figura anterior.
os possveis valores dos parmetros de uma interao, que vai permitir tipos e
valores a serem associados a cada um dos parmetros de uma primitiva de
servio ou PDU;
as regras de interpretao e seleo de valores dos parmetros das interaes,
que permite definir o significado de cada parmetro de uma primitiva de servio ou
PDU; assim como o comportamento a ser assumido por uma entidade em funo
de valores de determinados parmetros;
a codificao das PDUs, definindo a estrutura de dados que vai permitir represent-
las;
as propriedades do protocolo, que permitiro definir que regras devem ser
satisfeitas pelas entidades para que o protocolo progrida; ou ainda, propriedades de
tempo real, que permitem associar medidas quantitativas sobre o protocolo
(desempenho).
Resumindo, a especificao de um protocolo de comunicao deve levar em conta
estas duas classes de caractersticas: as estruturais, que permitem definir a composio de
uma camada em termos de entidades de protocolo e as suas interaes; e as de
comportamento, que permitem conhecer o comportamento de uma entidade e como ela vai
provocar e reagir perante os diferentes eventos relacionados ao funcionamento do protocolo.
A representao destas caractersticas pode ser feita segundo diferentes tcnicas e
modelos, uma descrio de algumas delas sendo apresentada na seo que segue.
3.2. Tcnicas de especificao de protocolos
Muitas especificaes de protocolos de comunicao, particularmente aqueles
definidos nos rgos de normalizao, utilizam a linguagem natural para expressar os
aspectos apresentados na seo anterior. A razo deste aspecto o fato de que a
linguagem natural o meio mais prximo de conduzir a informao ao leitor de um tal
documento. No entanto, para fins de desenvolvimento de um protocolo, mais interessante
que a etapa de especificao seja suportada por um modelo que permita expressar, de
maneira mais formal, os mecanismos a serem implantados a nvel de uma entidade de
protocolo, isto pelas duas razes seguintes:
a linguagem natural pode conduzir gerao de implementaes contendo
ambigidades ou incoerncias e no permitem a realizao de validao e testes;
CAP. 7 ENGENHARIA DE PROTOCOLOS PROF. VITRIO BRUNO MAZZOLA
7.6
no permite automatizar o processo de desenvolvimento do protocolo, seja para a
validao, a implementao ou o teste pois elas no podem ser suportadas por
ferramentas automatizadas.
Os trabalhos de pesquisa no sentido de definir e aplicar modelos para a
especificao de protocolos de comunicao iniciaram h muitos anos atrs, mesmo antes
da definio do modelo OSI. Estes conduziram definio de diversos modelos e tcnicas,
mais ou menos poderosos na definio, mais ou menos adequados representao de um
subconjunto dos aspectos apresentados na seo 3.1.
Exemplos destas tcnicas so as mquinas de estado finito, as gramticas formais,
as redes de Petri, os clculos algbricos, os tipos abstratos de dados, a lgica temporal e as
tcnicas de descrio formal. Algumas destas tcnicas poderiam ser organizadas segundo
o modelo matemtico sobre o qual so fundadas. Algumas tcnicas de descrio formal, por
exemplo, combinam o modelo de mquinas de estado finito com o poder de expresso de
manipulao de dados das linguagens de programao de alto nvel (Estelle, por exemplo).
A seo que segue apresenta, atravs de um exemplo simples, a utilizao de
algumas das tcnicas citadas acima para a especificao dos protocolos de comunicao.
3.3. Um exemplo de especificao de protocolo de comunicao
A figura 7.6 apresenta a arquitetura de um protocolo de comunicao a ser
considerado na seo. O protocolo define uma relao mestre-escravo (ou cliente-servidor)
entre uma entidade fonte e uma entidade destino comunicando-se em half duplex.
O comportamento das duas entidades, fonte e destino apresentado, na forma de
fluxogramas na figura 7.7. Como se pode ver na figura, o par de mensagens pedido envio e
pronto p/ recepo relacionado fase de controle; o par envio dado e dado consumido
relacionado fase de dados.
Ainda, os eventos diretamente relacionados ao protocolo so as chegadas das
mensagens pronto p/ recepo e dado consumido. O evento dado a enviar considerado
como interno entidade fonte, portanto, fora do retngulo pontilhado da figura 7.6.
O par de fluxogramas da figura 7.7 no deixa de ser um modelo do protocolo
analizado. Nos pargrafos a seguir, vamos introduzir e aplicar duas das tcnicas conhecidas
para a especificao do protocolo exemplo: as mquinas de estado finito e as redes de Petri.
O modelo de mquina de estado finito baseado sobre uma 5-tupla
<X,I,O,N,M> , onde:
FONTE DESTINO
Figura 7.6 - Arquitetura do exemplo de protocolo de comunicao.
CAP. 7 ENGENHARIA DE PROTOCOLOS PROF. VITRIO BRUNO MAZZOLA
7.7
dado a
enviar ?
sim
no
obtm dado pronto
notifica destino
destino
pronto ?
sim
no
envio dado
notifica destino
dado
recebido ?
sim
no
pedido
envio ?
sim
no
prepara recepo
notifica fonte
chegada
dado ?
sim
leitura dado
notifica fonte
no
DADO CONSUMIDO
ENVIO DADO
PRONTO P/ RECEPO
PEDIDO ENVIO
FONTE DESTINO
Figura 7.7 - Representao das entidades de protocolo (fluxograma).
X um conjunto finito de estados;
I um conjunto finito de entradas;
O um conjunto finito de sadas;
N uma funo de transio de estado (N: I x X X)
M uma funo de sada (M: X x I O)
As funes N e M permitem expressar o comportamento da mquina de estados em
funo dos eventos de entrada. Se, de um dado estado, um ou mais eventos de entrada
ocorrem, estas funes vo permitir, respectivamente, gerar o novo estado da mquina e as
sadas (se for o caso) correspondentes ao evento.
No modelo, alm de eventos de entrada e sada, que pertenceriam, respectivamente,
aos conjuntos I e O, deve-se considerar, como elementos do conjunto I, a ocorrncia de
eventos internos para permitir especificar a ocorrncia de eventos no especificados a nvel
do sistema a representar (no caso, o protocolo), mas que podem ser importantes para o seu
comportamento.
Uma mquina de estados finitos pode ser representada segundo diversos mtodos,
dentre os quais o diagrama de transio de estado. A figura 7.8 apresenta os dois diagramas
de estado gerados para o protocolo sob anlise.
CAP. 7 ENGENHARIA DE PROTOCOLOS PROF. VITRIO BRUNO MAZZOLA
7.8
OCIOSO
PRONTO P/
ENVIO
ENVIO
ESPERA
ACK
Ei2
Ei1
OCIOSO
RECEPO
CONSUMO
DADO
Ei
!pedido envio
!pronto p/ recepo
!envio dado
!dado consumido
FONTE DESTINO
?pedido envio
?pronto p/ recepo
?envio dado
?dado consumido
Figura 7.8 - Mquinas de estado finito para as entidades fonte e destino do protocolo considerado.
Estes foram construdos com base nos fluxogramas da figura 7.7 e obedecendo aos
seguintes critrios:
para a entidade fonte, foram considerados dois eventos internos: Ei1 e Ei2,
respectivamente para representar a chegada de um dado a enviar e o fim da
transmisso do dado;
para a entidade destino, foi considerado um evento interno, Ei, que representa o
final da recepo de um dado.
A mquina de estados que representa a entidade fonte composta de 4 estados
(ocioso, pronto p/ envio, envio e espera ack). A entidade destino representada por uma
mquina de estados composta dos estados ocioso, recepo e consumo dado. Outros
estados poderiam ainda ser definidos no modelo, como por exemplo, na entidade fonte,
poderia-se introduzir um estado preparando dado entre os estados ocioso e pronto p/ envio.
Isto, porm, corresponderia no unicamente representao do protocolo mas tambm
detalhes da implementao da entidade.
A rede de Petri o modelo tambm bastante utilizado para a representao dos
aspectos ligados aos protocolos de comunicao. Este modelo baseado na definio de
lugares (representando condies) e transies (representando eventos) conectados
atravs de arcos direcionados (por flechas). Os lugares sendo conectados a por um arco
dirigido para uma transio so ditos lugares de entrada da transio. Os lugares
conectados s transies atravs de arcos direcionados para eles so denominados os
lugares de sada da transio.
O estado de uma rede de Petri definido como sendo a posio de elementos,
denominados ficha (em ingls, token), no interior dos lugares. Num dado instante, um lugar
pode conter zero, uma ou mais fichas. A figura 7.9(a) mostra a representao grfica das
definies relacionadas ao modelo.
De uma forma geral, a execuo de uma rede de Petri obedece a um conjunto de
regras denominadas regras de tiro das transies, que so as seguintes:
CAP. 7 ENGENHARIA DE PROTOCOLOS PROF. VITRIO BRUNO MAZZOLA
7.9
lugares de entrada
lugares de sada
ficha
transio
(a) (b)
Figura 7.9 - Princpio das redes de Petri: (a) antes do tiro; (b) depois do tiro.
uma transio dita habilitada (ou sensibilizada) se cada um dos seus lugares de
entrada possui pelo menos uma ficha;
o tiro de uma transio consiste da remoo de uma ficha de cada lugar de entrada
e a adio de uma ficha em cada lugar de sada da transio;
o tiro de uma transio toma um tempo nulo, mas pode no ocorrer imediatamente.
Matematicamente, uma rede de Petri pode ser representada por uma 4-tupla
C = (P,T,I,O), onde:
P o conjunto de lugares (condies) P = {p
1
, p
2
, _, p
N
}
T o conjunto das trasies (eventos) T = {t
1
, t
2
, _, t
N
}
I a funo entrada I(t
k
)= {p
i
, p
j
, _}
O a funo sada O(t
k
)= {p
m
, p
n
, _}
A figura 7.10 mostra as redes de Petri obtidas para o protocolo considerado. Da
mesma forma que para o modelo de mquinas de estados finitos, os eventos internos so
representados:
o evento interno Ei1 (entidade fonte) aqui representado pela chegada de uma
ficha no lugar B;
o evento interno Ei2 (entidade fonte) representado pelo tiro da transio t3;
o evento Ei (entidade destino) representado por pela transio representando
uma interao com o ambiente.
A distribuio das fichas ao longo dos lugares de uma rede de Petri (que, como foi
dito anteriormente, define o estado da rede) denominada marcao. A partir de uma
marcao inicial possvel construir (manualmente ou automaticamente) o conjunto das
marcaes acessveis desta. A este conjunto, que pode ser tambm ser representado
graficamente, d-se o nome de grafo de marcaes. A anlise do grafo de marcaes um
elemento importante na verificao de propriedades de uma rede de Petri, permitindo
analizar os principais aspectos do comportamento do sistema (no caso, o protocolo de
comunicao) modelizado. No caso do protocolo considerado, a marcao inicial da rede
corresponde a uma ficha no lugar A e outra no lugar A.
3.4. Especificao do servio de comunicao
O exemplo considerado na seo anterior levou em conta a existncia de um servio
de comunicao (ou um meio de transmisso) perfeito, sem perda de mensagens,
duplicao, erros, etc_
CAP. 7 ENGENHARIA DE PROTOCOLOS PROF. VITRIO BRUNO MAZZOLA
7.10
A B
1
2
C
D
B'
A'
E
3
C'
D'
E'
F'
4
F
G
t4
t3
t2
t1
ta
tb
tc
td
FONTE
DESTINO
Figura 7.10 - Representao em rede de Petri do protocolo considerado.
Dependendo do nvel do protocolo a especificar, no entanto, pode ser necessrio
levar em conta a possibilidade de tais eventos ocorrerem. Assim, a incorporao destes
aspectos relativos ao funcionamento do suporte de comunicao utilizado para a troca de
informao entre duas entidades de protocolo pode tornar-se um aspecto importante na
anlise do protocolo.
Considerando o exemplo da seo anterior, a introduo do comportamento do
servio de comunicao (meio de transmisso, neste caso), a estrutura da especificao
teria de ser revista, assumindo o aspecto apresentado na figura 7.11.
No que diz respeito especificao do comportamento, esta deve levar em conta as
diferentes aes sob as quais as mensagens consideradas seriam sujeitas, como por
exemplo, um atraso varivel de transmisso, uma perda de mensagem, a duplicao de
uma mensagem, etc_
Numa especificao em mquinas de estado finito, por exemplo, determinados
aspectos do comportamento do meio de transmisso podem ser expressos atravs de
eventos internos, como j introduzidos no exemplo da seo 3.3.
A figura 7.12 ilustra a especificao, em mquinas de estado de dois modelos de
meio de transmisso. Em 7.12(a) apresentada a modelizao de um meio de transmisso
perfeito, sem perdas e sem duplicao, onde cada mensagem m recebida entregue
corretamente ao seu destinatrio.
No modelo apresentado, os caracteres ? e ! acompanhando o identificador m da
mensagem indicam, respectivamente, a recepo e o envio de m.
J em 7.12(b) apresentado um meio de transmisso com possibilidade de perdas,
a perda do dado sendo representada por um evento interno (etiqueta ).
CAP. 7 ENGENHARIA DE PROTOCOLOS PROF. VITRIO BRUNO MAZZOLA
7.11
FONTE DESTINO
MEIO DE TRANSMISSO
Figura 7.11 - Introduo dos aspectos de comportamento relativos ao meio no protocolo considerado.
3.5. Outras tcnicas de especificao
Os modelos utilizados na seo 3.3 permitem especificar e, particularmente, analizar
o comportamento dos protocolos de comunicao de maneira eficiente, particularmente para
a representao dos eventos e estados relacionados ao comportamento.
No entanto, uma vez que a complexidade do protocolo a representar aumenta, a
especificao atravs destas duas tcnicas atinge uma dimenso tal, que torna-se difcil a
representao de todos os aspectos do comportamento do protocolo.
Devido a este ponto, novas tcnicas, baseadas nestes modelos, obtidas pela
introduo de extenses ou a combinao com outros modelos, foram definidas e aplicadas
especificao de protocolos, dentre as quais:
as redes de Petri coloridas, que constituem uma extenso das redes de Petri
ordinria, onde cores podem ser associadas s fichas; isto permite aumentar o
poder de expresso da rede, extendendo as regras de tiro, mas simplificando a
estrutura da rede construda;
as redes de Petri temporais, que permitem associar um intervalo de tempo (t1,t2)
s transies, de modo a tornar possvel a representao de mecanismos de
temporizao, como por exemplo, os mecanismos de timeout nos protocolos
baseados na retransmisso de dados;
as tcnicas de descrio formal baseadas nas mquinas de estados finitos, como
Estelle (ISO) e SDL (CCITT) que introduzem a possibilidade da representao e
manipulao de estruturas de dados complexas.
4. A VALIDAO DE PROTOCOLOS DE COMUNICAO
4.1. As diferentes facetas da validao de um protocolo de comunicao
Como foi mostrado na figura 7.1, o desenvolvimento de um programa caracterizado
por atividades orientadas em dois sentidos opostos (caracterizados, l, pelas flechas
dirigidas para baixo ou para cima): as atividades de sntese, caracterizadas pelas etapas de
elaborao dos diferentes nveis de especificao ou da gerao do cdigo executvel; as
atividades de anlise ou validao associadas s diferentes fases do desenvolvimento.
Sendo assim, importante levantar os diferentes aspectos da validao de um
programa, no caso particular, de um protocolo de comunicao, para bem posicionar as
tcnicas que sero comentadas nesta seo:
CAP. 7 ENGENHARIA DE PROTOCOLOS PROF. VITRIO BRUNO MAZZOLA
7.12
o aspecto da validao do protocolo de comunicao est relacionado
investigao se um servio especificado corresponde ou satisfaz s necessidades
do usurio ou da aplicao considerada. Esta validao pode ser concretizada
atravs da anlise de um modelo ou prottipo que permita ao usurio determinar se
era bem o comportamento esperado.
a investigao de que o protocolo definido permite, efetivamente oferecer o servio
especificado. Este ponto realmente importante, particularmente no processo de
padronizao de novos pares de servios e protocolos, ou na etapa de projeto de
um protocolo proprietrio.
o teste de uma implementao de uma camada de protocolo para determinar se,
efetivamente, ela corresponde quilo que foi estabelecido nas etapas anteriores de
anlise de requisitos e especificao.
Como podemos, ver, o termo validao atinge uma dimenso bastante abrangente no
que diz respeito s etapas de desenvolvimento de um protocolo de comunicao. Nesta
seo, vamos limitar o significado da palavra validao associando-o ao segundo ponto
levantado, ou seja, aquele relacionado determinao de que o comportamento das
entidades de protocolo especificadas permite oferecer o servio requerido pelo usurio.
Por outro lado, no vamos abandonar o terceiro aspecto, o teste de implementao,
tambm importante, dedicando a este uma seo, mais adiante, no documento.
4.2. Anlise esttica x anlise dinmica
A tarefa de validao de uma especificao de um protocolo de comunicao pode
representar um grau de dificuldade relativamente elevado, particularmente devido s
caractersticas de concorrncia e no determinismo, intrnsecas s entidades de protocolos.
O interesse da utilizao de modelos e mtodos formais para especificar protocolos de
comunicao reside, principalmente, na possibilidade de implementao de tcnicas de
validao eficientes.
Uma primeira classificao no que diz respeito s tcnicas de validao de uma
especificao de protocolo pode ser caracterizada na forma como os aspectos do
funcionamento das entidades de protocolo so analizados. Sob este ponto de vista,
podemos destacar as duas classes seguintes de validao:
anlise esttica, onde o funcionamento do protocolo validado atravs de uma
inspeo detalhada da sua especificao formal (texto da especificao,
representao grfica, modelo matemtico, _); esta classe de validao permite
detectar e corrigir uma srie de erros, como erros de sintaxe e semntica, regras
de escpo, conformidade de tipos, etc_, que pode ser automatizada em muitos
casos, similar ao trabalho efetuado pelos tradutores (compiladores) para as
linguagens de programao;
anlise dinmica, onde levado em conta o comportamento do sistema
especificado num determinado ambiente de execuo; evidentemente, esta classe
de validao pode tornar-se muito mais complexa do que as tcnicas de anlise
esttica, principalmente devido aos diferentes aspectos dinmicos relacionados ao
comportamento do protocolo; ela permite, porm, detectar tipos de erros que so
impossveis de serem detectados na anlise esttica.
CAP. 7 ENGENHARIA DE PROTOCOLOS PROF. VITRIO BRUNO MAZZOLA
7.13
?m !m
ESPERA DADO
DADO RECEBIDO
(a)
?m !m
ESPERA DADO
DADO RECEBIDO

(b)
Figura 7.12 - Representao em mquinas de estados finitos do meio de transmisso: (a) perfeito; (b)
com perda de mensagens.
4.3. Anlise dinmica: simulao x verificao
Dentro do universo das tcnicas de validao por anlise dinmica, podemos
destacar subclasses, isto sob o ponto de vista de como realizada a explorao do
comportamento do protocolo de comunicao. Desta forma, podemos destacar os mtodos
exaustivos (ou de verificao) e os no exaustivos (ou de simulao).
Os mtodos exaustivos so assim denominados pelo fato de explorarem
completamente o comportamento do sistema especificado, ou seja, todas as possibilidades
de execuo do protocolo de comunicao (eventos, possveis valores de parmetros, etc_).
Naturalmente, estes mtodos so bastante difceis de serem implementados principalmente
devido grande quantidade de pontos que devem ser examinados, pontos estes, relativos
execuo da especificao. Entretanto, os mtodos de anlise exaustiva permitem obter
bons resultados quando aplicados sobre especificaes simplificadas ou abstratas do
protocolo (neste caso, como garantir a exaustividade?). Exemplos desta classe de tcnicas
de anlise so:
a anlise de alcanabilidade, baseada na construo de um grafo de
alcanabilidade do sistema especificado atravs de modelos baseados em
mquinas de estados finitos, redes de Petri, etc_;
a verificao de programas e asseres, no caso da utilizao de gramticas
formais ou lgebras de processos.
Os mtodos no exaustivos ou de simulao realizam uma validao parcial, onde
apenas determinados aspectos do comportamento do protocolo podem ser analizados. So
mtodos que podem ser aplicados sem problemas a especificaes de porte real, uma vez
que uma seleo pode ser efetuada no que diz respeito aos aspectos a analizar.
Uma questo que se coloca a relacionada que mtodo o mais eficiente ou que
mtodo escolher para a realizao de uma validao eficiente. No uma questo fcil a ser
respondida. Pode-se, porm colocar o problema do seguinte ponto de vista: no caso de
especificaes de pequeno porte ou especificaes abstratas de um protocolo de
comunicao, as tcnicas exaustivas permitem explorar totalmente as possibilidades de
comportamento da especificao, apresentando resultados menos bons (quando algum
resultado pode ser obtido!) no caso de grandes especificaes (neste caso, o que uma
especificao de pequeno porte e uma especificao de grande porte_como possvel
med-las?), as tcnicas de simulao sendo, ento, mais adequadas a esta classe de
especificaes.
Mas, ainda, por que impor uma escolha com relao utilizao de um mtodo ou
outro? Por que no os dois? Por que no utiliz-los de maneira complementar? So
CAP. 7 ENGENHARIA DE PROTOCOLOS PROF. VITRIO BRUNO MAZZOLA
7.14
questes que podem ser colocadas e que poderiam ajudar a responder a uma necessidade
de validao crescente no domnio dos protocolos e sistemas distribudos.
Ou ento, por que no uma tcnica hbrida? Por que no juntar as vantagens de uma
simulao com as potencialidades (as caractersticas de exaustividade) de uma anlise de
alcanabilidade, por exemplo?
Muitos dos trabalhos realizados hoje, no campo da validao de protocolos de
comunicao orientam-se resposta a estas questes.
4.4. A validao de protocolos de comunicao (o que validar?)
Como foi determinado na seo 4.1, o sentido dado aqui ao termo validao
associado investigao de que a especificao de um protocolo de comunicao permite o
oferecimento do servio requerido. A figura 7.13 retrata este aspecto, de modo que o
resultado da validao deve basear-se numa comparao entre a especificao do servio
requerido e aquele oferecido pela especificao do protocolo de comunicao.
A essncia da especificao de um protocolo, como j levantado na seo 3, o
comportamento das entidades de protocolo e do meio de transmisso, na forma das
possveis sequncias de eventos associados execuo de cada elemento e s interaes
dos diferentes elementos. A especificao dos servios pode ser expressas na forma de
propriedades que, uma vez verificadas, permitem demonstrar que o servio oferecido pela
camada de protocolo vai corresponder, efetivamente, ao servio requerido.
Uma primeira classe de propriedades a serem verificadas deve permitir garantir que
eventos prejudiciais no devem ocorrer durante o funcionamento do protocolo um
exemplo destes eventos so aqueles que possam conduzir a um estado de bloqueio. A esta
classe de propriedades, d-se o nome de propriedades de segurana (safety properties).
A segunda classe de propriedades, as propriedades de progresso (liveness
properties), deve permitir garantir que uma vez que o protocolo evolui, ele realiza tarefas
teis, como, por exemplo, a transmisso de uma mensagem.
4.5. Anlise de alcanabilidade
Como vimos na seo 3, uma boa parte dos modelos utilizados para a especificao
dos protocolos de comunicao baseada sobre o formalismo dos sistemas de transio
(mquinas de estados finitos, redes de Petri, Estelle, _).
Uma tcnica das mais aplicadas validao de protocolos especificados segundo
este modelo a anlise de alcanabilidade, cujos primeiros trabalhos foram realizados sobre
as mquinas de estado finito.
especificao
do
servio N
primitivas
de servio
oferece
primitivas
de servio
especificao
do protocolo N
entidade N
servio N-1
entidade N
Figura 7.13 - Princpio da validao de um protocolo de comunicao.
CAP. 7 ENGENHARIA DE PROTOCOLOS PROF. VITRIO BRUNO MAZZOLA
7.15
A construo do grafo de alcanabilidade visa dar uma viso de todas as possveis
sequncias de eventos podendo ocorrer num protocolo especificado por um sistema de
transies. Um aspecto importante desta atividade, o fato que, uma tal especificao pode
ser caracterizada pela existncia de diversos componentes, cada um representando um
elemento importante da camada ou da arquitetura considerada.
Sendo assim, o paralelismo existente na especificao deve ser considerado, a
operao que vai permitir representar este aspecto sendo a composio paralela.
A figura 7.14 mostra o exemplo de uma especificao de um servio de Enlace,
utilizando o modelo de mquinas de estado finito.
Este servio representado sob a forma de duas filas de capacidade 1, para
construir uma fila de capacidade 2. Os processos envolvidos podem efetuar as seguintes
operaes:
1 aceitar uma mensagem 0 ou 1 na porta a;
2 sincronizar-se na porta c como resultado de um dos pares de eventos <c?0;c!0>
ou <c?1;c!1>;
3 emitir a primeira mensagem na porta b, e reinicializar ou aceitar a segunda
mensagem na porta a;
4 emitir a primeira mensagem na porta b e sincronizar na porta c para a emisso da
segunda mensagem;
5 emitir a segunda mensagem na porta b e reinicializar ou aceitar a terceira
mensagem na porta a.
Utilizando os operadores de composio paralela existentes para os sistemas de
transio, o espao de estados global pode ser construdo. O resultado mostrado na figura
7.15.
Como se pode ver, a porta c no representada nesta figura. Isto porque, como os
eventos ocorrendo na porta c, so unicamente relacionados com os dois processos
representando cada uma das filas, estes so considerados eventos internos, no
aparecendo nem mesmo na descrio do comportamento da composio paralela. Estes
so representados pela etiqueta .
O estado inicial do espao de estados representado, l, pela etiqueta ( , ). Os
possveis comportamentos descritos nos pargrafos de 1 a 5 podem ser relacionados s
seguintes transies de estado:
1 ( , ) ( 0, ) e ( , ) ( 1, )
2 os arcos etiquetados por ;
3 ( ,0 ) ( , ) e ( ,1 ) ( , ) ou ( ,0 ) ( 0,0 ), ( ,0 ) ( 1,0 ), ( ,1 ) ( 1,1 )
e ( ,1 ) ( 0,1 )
4 ( 1,0 ) ( 1, ) ( ,1 ) ou ( 0,1 ) ( 0, ) ( ,0 ) ou ( 0,0 ) ( 0, ) ( ,0 )
ou ( 1,1 ) ( 1, ) ( ,1 )
5 ( ,0 ) ( , ) ou ( ,0 ) ( 1,0 ) ou ( ,0 ) ( 0,0 ) e ( ,1 ) ( , ) ou ( ,1 ) (
1,1 ) ou ( ,1 ) ( 0,1 )
a
c!0
a?0 a?1
c!1
b!0
c?0 c?1
b!1
1 0
c c
0 1
b
Figura 7.14 - Especificao de um canal com fila de mensagem de capacidade 2.
CAP. 7 ENGENHARIA DE PROTOCOLOS PROF. VITRIO BRUNO MAZZOLA
7.16
a b
a?0 a?1
a?0
a?0 a?1
a?1
b!1 b!1 b!1
b!0 b!0 b!0


1,1
1,
1,0 ,0 0,0
0,1
0,
,1
,
Figura 7.15 - Grafo de alcanabilidade gerado para a especificao da figura 7.14.
O exemplo considerado apresenta um nvel de complexidade bastante baixo, o que
permite efetuar a composio paralela e a anlise do comportamento global sem a utilizao
ferramentas automatizadas.
No entanto, no caso de especificaes de protocolos de porte realista, esta anlise
vai requerer a aplicao de algoritmos de gerao do grafo de alcanabilidade dentro do
contexto de uma ferramenta de validao.
Ainda assim, o processo de verificao da especificao de um protocolo atravs de
uma ferramenta automatizada pode no apresentar um resultado bem adaptado anlise
devido ao grande nmero de estados e caminhos possveis entre os estados.
Existem vrias tcnicas que permitem resolver este problema, uma delas sendo a da
verificao por abstrao.
4.6. A verificao por abstrao
A verificao por abstrao baseada na construo do grafo de alcanabilidade e a
sua posterior reduo (obteno de um autmato quociente) atravs da aplicao de
princpios de equivalncia entre processos. O autmato quociente obtido a partir do grafo de
alcanabilidade vai oferecer uma viso abstrata do sistema, graas eliminao de grande
parte dos eventos, considerados irrelevantes anlise em curso. A anlise de
comportamento torna-se, ento mais simples (ou possvel) de ser realizada pela obteno
de um autmato comportando um nmero muito menor de estados que aquele do grafo de
alcanabilidade a partir do qual ele foi gerado.
A aplicao da verificao por abstrao baseada na definio de duas classes de
eventos associadas ao comportamento de um processo:
os eventos externos ou observveis, caracterizando normalmente as interaes do
processo com o seu ambiente (usurios da camada de protocolo, o suporte de
transmisso, etc_);
os eventos internos, caracterizando ou os eventos expontneos dos processos, ou
as interaes entre componentes do processo (com relao ao exemplo
apresentado anteriormente, as interaes realizadas na porta c so consideradas
eventos internos na composio paralela, eles foram etiquetados por ).
A diferena entre estas duas classes de evento se traduz a nvel do autmato
quociente. Os eventos observveis aparecendo no grafo de alcaabilidade so, normalmente
repassados ao autmato quociente, representados na forma de transies etiquetadas. J
CAP. 7 ENGENHARIA DE PROTOCOLOS PROF. VITRIO BRUNO MAZZOLA
7.17
os eventos internos podem, ou desaparecer, ou aparecer na forma de transies invisveis
(etiquetados por ) no autmato quociente.
Diferentes relaes de equivalncia podem ser consideradas, onde cada relao vai
permitir obter uma viso distinta do comportamento do sistema a verificar, entre elas: a
equivalncia de rastro (ou de linguagem), a equivalncia observacional e a equivalncia de
teste.
A equivalncia de rastro baseada na anlise de comportamento de um processo
em funo das possveis sequncias de eventos observveis que ele capaz de oferecer. A
aplicao desta relao sobre um grafo de alcanabilidade se traduz, de um lado pela
eliminao de todos os eventos internos ou invisveis e, por outro lado, da manuteno de
apenas uma instncia de um mesmo evento observvel associada a um mesmo estado.
Esta relao pode ser ilustrada com o auxlio dos pares de processos representados na
figura 7.16, todos equivalentes segundo esta relao.
4.7. Exemplo de verificao de um protocolo: o bit alternado
O protocolo do bit alternado representa um protocolo de enlace, utilizado
principalmente para ilustrar procedimentos de especificao e validao de protocolos.
As caractersticas do protocolo so as seguintes:
o receptor deve enviar reconhecimento das mensagens recebidas corretamente
(as mensagens incorretas podendo ser detectadas com o auxlio de cdigos de
deteco de erros CRC, por exemplo);
as mensagens so numeradas sequencialmente para o controle de perdas; o
emissor vai retransmitir uma mesma mensagem periodicamente (mecanismo de
timeout) at que ele receba o reconhecimento com o nmero de sequncia da
mensagem corespondente;
quando um reconhecimento da mensagem enviada recebido, o emissor
incrementa o seu estado e para o prximo nmero de sequncia a considerar;
uma vez que os reconhecimentos podem tambm ser perdidos, o receptor deve
retransmitir os reconhecimentos (pelo mesmo mecanismo de retransmisso) at
que uma mensagem contendo o prximo nmero de sequncia seja recebida;
o protocolo do tipo envia-espera, de modo que apenas dois nmeros de
sequncia (0 e 1) podem ser definidos para as mensagens e os reconhecimentos
(assim, um bit alternando entre 0 e 1 vem da o nome do protocolo permite
implementar o sequenciamento das mensagens).
A figura 7.17 representa a especificao, em mquinas de estado finito do
protocolo considerado. As portas c e d so utilizadas, para o envio das mensagens geradas
pelo emissor (a partir da recepo de uma mensagem m na porta a). As portas e e f so
utilizadas para o envio dos reconhecimentos ao emissor, quando da recepo de uma
mensagem de sequncia correta.
a
b
t
A
a
b
B
a
b
a
a
c
C
a a
a a
b c
D
a
b
c
E
a a
b c
F
3
4
1
2
1
2
3
1
3
5
4
6
2
1
2
4
6
3
5
7
1
3 4
2
1
2
4
3
5
c b
a
c b
a
c b
a
c b
a
b
a
b
a
Figura 7.16 : Ilustrao da equivalncia de trao.
CAP. 7 ENGENHARIA DE PROTOCOLOS PROF. VITRIO BRUNO MAZZOLA
7.18
Para efeito de simplificao, o comportamento dos canais representado por
eventos representando simultaneamente, a recepo de uma mensagem no canal numa
porta e a sua reemisso na porta correspondente. Os eventos c?0 e c?1, f?0 e f?1,
representam, respectiva-mente, as perdas das mensagens e dos reconhecimentos no meio.
Os estados r e s representam, respectivamente, a recepo de uma mensagem na
porta d e a recepo de uma mensagem na porta a.
O grafo de acessibilidade gerado para esta especificao apresentado na figura
7.18. As transies etiquetadas por representam as perdas e retransmisses de
mensagens e de reconhecimentos (para facilitar o entendimento do grafo, as portas
associadas aos eventos internos foram tambm especificadas).
Como se pode verificar o protocolo especificado no apresenta situaes de bloqueio
(deadlocks). Por outro lado, os diversos loops presentes no grafo de acessibilidade podem
indicar situaes de no progresso do protocolo. Os loops representam as retransmisses
provocadas pela expirao do mecanismo de timeout associado.
d
c
c?0
c?1
c?1/d!1
c?0/d!0
f
e
f?0
f?1
f?1/e!1
f?0/e!0
e?1
e?1
c!0
a?
e?1
e?0
e?0
c!1
e?0
a
c
e
d?1
d?0
f!0
d?0
b!
d?1
d?0
d?1
f!1
b!
b
d
f
f!0
f!1
s
s
r
r
Emissor Receptor Meio
a?
Figura 7.17 - Especificao do protocolo bit alternado em mquinas de estado finito.

a?m
fe(1) b!m
cd(0)
fe(1)
b!m
r
s
cd(1)
b!m
fe(0)
b!m fe(0)
r
s
a?m















a b
Figura 7.18 - Grafo de alcanabilidade gerado para a especificao da figura 7.17.
CAP. 7 ENGENHARIA DE PROTOCOLOS PROF. VITRIO BRUNO MAZZOLA
7.19
5. A IMPLEMENTAO DOS PROTOCOLOS DE COMUNICAO
Esta seo descreve as linhas gerais relativas obteno de um programa
executvel implementando o protocolo a partir de uma especificao formal baseada numa
das tcnicas de descrio existentes.
Como foi observado nas duas sees precedentes, a especificao de um protocolo
de comunicao para anlise do comportamento no deve levar em conta unicamente os
aspectos relativos ao comportamento das entidades de protocolo envolvidas, mas tambm,
os aspectos relativos ao comportamento do ambiente no qual elas vo executar. No caso
particular dos protocolos de comunicao, o ambiente de execuo consiste dos usurios
do servio oferecido (as entidades de protocolo da camada superior) e do servio oferecido
pela camada inferior (servio de rede, de enlace, meio de transmisso, etc_).
Sendo assim, podemos definir, numa especificao de uma camada de protocolo,
duas pores distintas:
a parte independente de mquina, relativa descrio do comportamento e das
interfaces associadas s entidades de protocolos em desenvolvimento;
a parte dependente de mquina, que s pode ser refinada no momento da
integrao do programa executvel no sistema alvo; a nvel de especificao, esta
parte deve ser descrita, da forma mais abstrata possvel, mas tentando traduzir, de
forma fiel os possveis comportamentos do ambiente no qual as entidades vo
executar.
O processo de implementao de uma camada de protocolo a partir de uma
especificao formal caracterizado, geralmente por um processo semiautomatizado, onde
aqueles aspectos dependentes de mquina devem ser substitudos, normalmente de
maneira artesanal pelos aspectos reais do sistema (suporte de comunicao disponvel,
estruturas de dados a considerar, _).
Isto corresponde, normalmente, transformao da especificao de validao em
uma especificao orientada implementao, que leva em conta as substituies
mencionadas. A partir desta nova especificao, ferramentas de traduo vo permitir gerar,
um programa em linguagem de programao de alto nvel (C, Pascal, _), que ser
compilado e integrado ao ambiente de execuo.
Atualmente, um extenso conjunto de ferramentas est disponvel para a gerao de
cdigo a partir de especificao formal de protocolos, particularmente a partir de
especificaes baseadas nas tcnicas de descrio formal como Estelle e LOTOS.
6. O TESTE DE PROTOCOLOS DE COMUNICAO
Na etapa de testes aplicados sobre uma especificao, dois principais aspectos
devem ser abordados:
o primeiro aspecto diz respeito verificao se uma dada implementao
corresponde efetivamente especificao do servio como foi estabelecido no
documento de normalizao;
o segundo aspecto, diz respeito verificao se uma implementao executa
corretamente no contexto de um sistema de comunicao heterogneo, objetivo
essencial da definio do modelo de referncia OSI.
A atividade de teste que permite assegurar o primeiro aspecto denominada o teste
de conformidade do protocolo, o segundo aspecto sendo coberto pelos testes de
interoperabilidade.
O teste de uma implementao caracterizado normalmente pela anlise do
comportamento da especificao em funo de todas as possveis interaes ocorrendo
nas suas interfaces (primitivas de servio, por exemplo). A determinao de todas as
CAP. 7 ENGENHARIA DE PROTOCOLOS PROF. VITRIO BRUNO MAZZOLA
7.20
possveis interaes podendo intervir nas interfaces de uma implementao de protocolo
denominada a gerao de sequncia de testes.
A tendncia dos trabalhos realizados no domnio da Engenharia de Protocolos vai no
sentido principalmente do desenvolvimento da primeira classe de testes. Dentro desta
perspectiva, os trabalhos visam, fundamentalmente:
definio de mtodos de testes de implementao, a tcnica podendo variar em
relao a como a implementao submetida;
definio de sequncias de testes a nvel dos organismos de normalizao;
definio de blocos de conformidade a serem utilizados como referncia no
momento da realizao de testes;
definio de tcnicas para a representao de sequncias de teste, um resultado
importante obtido a nvel da ISO, sendo o formalismo TTCN (Tree and Tabular
Combined Notation);
gerao de sequncias de teste na etapa de projeto (como mostrado em 7.1), isto
podendo ser automatizado por mtodos e ferramentas de software; trabalhos tm
sido realizados nesta rea para permitir a gerao das sequncias de teste a partir
de especificaes formais em mquinas de estados finitos, Estelle e Lotos, alguns
dos quais permitem obter a representao da sequncia de testes segundo a
notao TTCN.
7. CONCLUSO
Nesta parte do documento foram analizados os principais pontos relativos ao
desenvolvimento de protocolos de comunicao, fazendo uma distino entre as diferentes
etapas deste desenvolvimento, particularmente a especificao, a validao, a
implementao e os testes. Maior nfase foi dada s duas primeiras etapas, a bibliografia
especializada podendo servir como base para o aprofundamento dos conhecimentos em
qualquer das etapas citadas.
Um ponto fundamental porm, no aprofundado nesta parte do documento foi a
importncia das tcnicas de descrio formal normalizadas na ISO e no CCITT, Estelle e
Lotos de um lado e SDL do outro. Este aspecto ser aprofundado na parte seguinte, sendo
que vamos estudar detalhadamente os mecanismos oferecidos pela Tcnica de Descrio
Formal Estelle e a utilizao destes e das ferramentas associadas para a concepo dos
protocolos de comunicao.
8.1
Captulo 8 Captulo 8
R REDES DE EDES DE P PETRI ETRI
a
P1
c
P3
b
P2
1. INTRODUO
As Redes de Petri foram introduzidas em 1962, a partir de uma tese de doutorado
desenvolvida na Alemanha por Carl Adam Petri. Traduzido para o portugus, o ttulo de sua
tese corresponderia a Comunicao com Autmatos e o objetivo era o estabelecimento de
um modelo matemtico que permitisse expressar os aspectos de comunicao num
sistema computacional. A partir de 1968, o interesse deste modelo motivou o aparecimento
de trabalhos os mais diversos para a representao de problemas computacionais,
consolidando o modelo, que passou a ser conhecido como Redes de Petri na modelagem e
anlise de programas das mais diversas naturezas.
As primeiras aplicaes das Redes de Petri foram realizadas sobre sistemas de
produo, para a representao de tarefas de montagem e a gerao de planos, atravs de
um grande nmero de pesquisas realizadas na Frana, aproveitando as experincias
utilizando o Grafcet, uma linguagem de programao de controladores programveis.
Na continuidade dos estudos sobre as Redes de Petri, diversos trabalhos mostraram
sua utilidade para a modelagem e anlise dos problemas inerentes aos protocolos de
comunicao e extenses e modelos foram desenvolvidos a partir da.
O objetivo deste captulo apresentar os principais conceitos associados s Redes
de Petri e como estas podem ser utilizada para o desenvolvimento de modelos e anlise dos
problemas intrnsecos aos protocolos de comunicao.
2. REDES DE PETRI DEFINIO BSICA
2.1. Elementos de uma rede de Petri
Matematicamente, uma Rede de Petri definida com um qudruplo
R = <P,T,Pre,Post>
Onde:
P, um conjunto finito de lugares;
T, um conjunto finito de transies;
Pre, uma aplicao incidncia precedente;
Post, uma aplicao incidncia posterior.
Graficamente, os elementos de uma Rede de Petri podem ser ilustrados como
mostrado na figura 8.1.
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.2
a
b
P1
c
d
P3
P2
3
3
Figura 8.1 Ilustrao dos elementos de uma Rede de Petri.
Utiliza-se tambm a notaco:
C = Post - Pre
2.2. Marcao de uma Rede de Petri
Uma Rede de Petri marcada representada matematicamente por uma dupla
N = <R,M>
Onde:
R, uma Rede de Petri;
M, uma marcao inicial, sendo uma aplicao do tipo
M : P N
M(p) o nmero de marcas, ou fichas contidas no lugar p.
2.3. Grafo e notaes matriciais
Como se pode verificar na figura 8.1, as Redes de Petri podem ser expressas
graficamente por um grafo onde se observam dois tipos de n: os lugares e as transies.
Um arco conecta um lugar p a uma transio t se e somente se Pre(p,t) 0. Um arco
conecta uma transio t a um lugar p se e somente se Post(p,t) 0. Os valores no nulos de
Pre e Post so associados aos arcos como rtulos. Quando um arco no possui rtulo, o
valor default 1.
A marcao M pode ser representada por um vetor que tem por dimenso o nmero
de lugares; Pre, Post e C podem ser representados por matrizes cujo nmeroo de linhas
igual ao nmero de lugares e o nmero de colunas igual ao nmero de transies.
Para o exemplo da figura 8.1, pode-se obter as seguintes notaes:
P = {p1,p2,p3}
T = {a,b,c,d}

=
1 0 0 0
0 3 0 1
0 0 1 0
Pr e
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.3

=
0 1 0 0
3 0 1 0
0 0 0 1
Post

=
1 1 0 0
3 3 1 1
0 0 1 1
C

=
0
3
0
M
2.4. Definies e regras de disparo
2.4.1. Rede de Petri Pura
Uma Rede de Petri definida como pura, se para todas as transies, no existe
nenhum lugar que esteja, ao mesmo tempo, na entrada e na sada, ou seja, a rede no
possui nenhuma malha elementar. A Rede de Petri da figura 8.1 uma Rede de Petri Pura,
enquanto que a rede da figura 8.2 no apresenta esta propriedade.
2.4.2. Transio Habilitada
Uma transio t dita habilitada se e somente se:
p P M(p) Pre(p,t)
Ou seja, todos os lugares de entrada da transio considerada devem possuir, no
mnimo, o nmero de fichas correspondentes ao peso do arco que liga o lugar transio.
Por exemplo, para a rede da figura 8.1, considerando a marcao inicial igual a:

=
0
3
0
M
as transies habilitadas so a e c, porque

=
0
1
0
) (, Pr a e e

=
0
3
0
) (, Pr c e
e, portanto,
M(p) > Pre(,a) e M(p) > Pre(,c)
2.4.3. Disparo de uma Transio
Se t uma transio habilitada a partir da marcao M, o disparo de t origina uma
nova marcao M de forma que:
p P M(p) = M(p) Pre(p,t) + Post(p,t)
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.4
a
b
P1
c
d
P3
P2
3
3
e
Figura 8.2 Exemplo de uma Rede de Petri no pura.
Por exemplo, na rede da figura 8.1, aps o disparo da transio a, considerando a
marcao inicial M, obtm-se a seguinte marcao M:

=
0
2
1
0
0
1
0
1
0
0
3
0
' M
2.4.4. Conflito e Paralelismo
O conflito em Redes de Petri pode ser definido em dois nveis: o conflito estrutural e o
conflito efetivo. O conflito estrutural refere-se quele estabelecido em funo da estrutura
(layout) da prpria rede. Duas transies t1 e t2 encontram-se em conflito estrutural se
existe pelo menos um lugar de entrada comum entre as duas.
p Pre(p,t1).Pre(p,t2) 0
O conflito efetivo est relacionado a questes circunstancial de disparo das
transies. Duas transies t1 e t2 encontram-se em conflito efetivo se elas encontram-se
em conflito estrutural e se:
M Pre(,t1)
M Pre(,t2)
O paralelismo visto igualmente nos mesmo nveis que o conflito. Duas transies,
t1 e t2 encontram-se em paralelismo estrutural se:
(Pre(,t1))
T
x Pre(,t2) = 0
Ou seja, elas no possuem nenhum lugar de entrada em comum.
Duas transies, t1 e t2 esto em paralelismo efetivo se elas possuem paralelismo
estrutural e se:
M Pre(,t1)
M Pre(,t2)
Para o exemplo da figura 8.1, as transies a e c esto em conflito estrutural, pois
Pre(p2,a).Pre(p2,c) = 3 e as transies b e d esto em paralelismo estrutural.
Para a marcao inicial da rede considerada, a e c esto em conflito efetivo. Por
outro lado, se for considerada a marcao M descrita abaixo, pode-se dizer que as
transies b e d so efetivamente paralelas.
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.5

=
1
0
1
' M
2.4.4. Seqncia de Disparo numa Rede de Petri
Se
1 0
M M
ta
e
2 1
M M
tb
pode-se dizer que a seqncia t
a
t
b
disparvel a
partir de M
0
, o que pode ser notado como:
2
tb ta
0
M M
Seja s um vetor cujos componentes ) (t s so os nmeros de ocorrncias das
transies t numa seqncia de disparo s, este vetor denominado vetor caracterstico de s
e sua dimenso igual ao nmero de transies da Rede de Petri.
Tomando como exemplo a Rede de Petri da figura 8.1, tem-se, por exemplo, a
seqncia s = a a b:

0
2
1
0
1
2
0
2
1
0
3
0
b a a
e

=
0
0
1
2
b a a
As evolues da marcao de uma Rede de Petri podem ser dadas pela equao:
M = M Pre. s + Post. s
A mesma equao pode ser escrita como sendo:
M = M + C. s com M 0, s 0
Esta equao denominada equao fundamental de uma Rede de Petri.
importante notar que no basta encontrar um vetor que satisfaa a equao acima
para garantir que existe uma seqncia de disparo da marcao M marcao M. preciso
tambm que a marcao inicial seja tal que as transies sero efetivamente habilidatas
para cada marcao intermediria. Tomando como exemplo a Rede de Petri da figura 8.3,
se:

=
0
0
0
1
M


=
1 1 0 0
0 1 1 0
0 0 1 1
1 1 1 1
C

=
1
1
1
1
abcd
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.6
a
P1
b
P2
c
P3
d
P4
Figura 8.3 Exemplo de seqncia invlida.
No entanto, analisando-se a rede, observa-se que a seqncia abcd no vlida,
pois, aps o disparo de a, a transio b, fica desabilitada. Portanto, no se pode escrever:
M M
abcd
2.4.5. Conjunto das Marcaes Acessveis
O conjunto das marcaes acessveis A(R;M
0
) de uma Rede de Petri marcada o
conjunto de marcaes que se pode atingir a partir da marcao inicial M
0
por uma
seqncia de disparo. A notao utilizada para isto :
A(R;M
0
) = { M
i
, s
i
M M
s
0
}
Considerando que este conjunto finito, possvel represent-lo sob a forma de um
grafo G A(R;M
0
). Este grafo ter por vrtices o conjunto das marcaes acessveis A(R;M
0
),
um arco orientado conecta dois ns M
i
e M
j
se existe uma transio t disparvel que permita
passar da marcao M
i
a M
j
, ou seja:
j i
M M
t
Em geral os arcos do grafo so etiquetados pelas transies correspondentes, o que
caracteriza o grafo de marcaes como a mquina de estados equivalente da Rede de Petri.
A figura 8.4 ilustra o grafo de marcaes obtido para a Rede de Petri da figura 8.1.
3. PROPRIEDADES DAS REDES DE PETRI
Um modelo descrito na forma de uma Rede de Petri pode oferecer importantes
informaes relacionadas ao problema ou sistema para o qual o mesmo foi construdo. As
propriedades que podem ser observadas num modelo em Rede de Petri podem estar ou no
associadas marcao inicial da mesma.
No caso de propriedades associadas marcao inicial, no evidente que
concluses podero ser obtidas facilmente, uma vez que nem sempre o conjunto de
marcaes acessveis finito.
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.7
0
3
0
1
2
0
0
0
1
2
1
0
3
0
0
a
b
c
d
a b
a b
Figura 8.4 Grafo de marcao para a Rede de Petri da figura 8.1.
Por outro lado, no caso de propriedades que no dependem da marcao (as
propriedades estruturais), podem permitir a obteno de resultados importantes, a partir da
resoluo de sistemas de equaes lineares.
3.1. Rede de Petri K-limitada (Limitao)
Esta definio est associada definio de lugar k-limitado e binrio.
3.1.1. Lugar K-limitado e Binrio
Um lugar p de uma rede marcada dito k-limitado se e somente se:
M A(R;M
0
) M k
Se k = 1, diz-se que o lugar binrio (ou salvo). Considerando a Rede de Petri da
figura 8.1, pode-se verificar que para a marcao inicial considerada desde o incio, o lugar
P3 salvo, enquanto os lugares P1 e P2 so 3-limitados.
3.1.2. Rede de Petri marcada K-limitada e salva
Uma Rede de Petri marcada N dita k-limitada se e somente se todos os lugares
so k-limitados. Uma Rede de Petri marcada dita salva se e somente se todos os seus
lugares so salvos (binrios).
A Rede de Petri da figura 8.1 3-limitada para a marcao inicial que foi considerada
desde o incio deste captulo (3 fichas no lugar P2). Se a marcao inicial fosse de apenas
uma ficha em P2, a Rede de Petri seria salva, observando que, para esta marcao, as
transies c e d jamais seriam habilitadas.
Por outro lado, se considerarmos a Rede de Petri da figura 8.5, para a marcao
inicial indicada na figura, a cada vez que a seqncia de transies a b ocorre, uma ficha
gerada no lugar P3. Sendo assim, a Rede de Petri considerada no limitada porque o lugar
P3 no limitado. Se aprofundarmos a anlise desta rede, vamos concluir que os lugares P1
e P2 tambm no so limitados.
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.8
a
P1
c
P3
b
P2
Figura 8.5 Uma Rede de Petri no limitada.
Esta propriedade de limitao pode ter interpretaes diversas, dependendo, claro,
do sistema representado na rede. Por exemplo, no caso do modelo de um protocolo de
comunicao, a produo de fichas num lugar pode significar o aparecimento de mensagens
numa entidade que no tem capacidade de dar vazo a estas.
Portanto, em grande parte dos modelos construdos com base nas Redes de Petri, a
verificao desta propriedade um bom sinal para o sistema. Sendo assim, diz-se que esta
uma boa propriedade.
3.2. Rede de Petri Viva (Vivacidade)
A vivacidade de uma Rede de Petri uma propriedade relacionada marcao e s
transies da rede.
3.2.1. Transio Quase-Viva
Uma transio t de uma Rede de Petri Marcada N com:
N = <R,M
0
>
dita quase-viva se e somente se existe uma seqncia de disparo s tal que:
'
s
0
M M e
t
' M
Pode-se, ainda, escrever esta condio por:

t s
0
M
3.2.2. Transio Viva
Uma transio t de uma Rede de Petri Marcada N com:
N = <R,M
0
>
dita viva se e somente se:
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.9
M A(R;M
0
) s
t s
M
Traduzindo em texto, pode-se dizer que uma transio quase-viva se existe uma
seqncia de transies a partir da marcao inicial que vai conduzir a seu disparo. Uma
transio ser dita viva quando, para qualquer marcao da Rede de Petri existir uma
seqncia de transies que vai conduzir a seu tiro.
3.2.3. Rede de Petri Viva
Uma Rede de Petri Marcada N = <R,M
0
> dita viva se e somente se todas as suas
transies forem vivas.
Para a Rede de Petri Marcada da figura 8.6, por exemplo, o Grafo de Marcao para a
marcao inicial indicada na figura mostrado na figura 8.7. Analisando o grafo, pode-se
concluir que a transio d quase-viva, mas no-viva, pois ela s disparada uma vez, j
que, uma vez disparada, a evoluo da Rede de Petri fica presa no sub-grafo da direita. J,
as transies a, b, c, e e f so vivas, pois elas aparecem no subgrafo da direita e,
observando o grafo, veremos que ser possvel, a partir de qualquer marcao, encontrar
uma seqncia de disparo que conduza a estas.
Com relao a esta propriedade, pode-se dizer:
para a verificao desta propriedade, verificado sempre uma Rede de Petri
Marcada;
a verificao desta propriedade garante que, para a marcao inicial considerada,
sua estrutura no permite a existncia de loops no sistema;
uma Rede de Petri Viva garante ainda a ausncia de uma parte morta (inatingvel)
no sistema.
a
P1
c b
P2
e
P4 P3
f d
Figura 8.6 Transio quase-viva e no viva.
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.10
3 4
1 3 1 4
2 3
3 3
2 4
4 4
1 1
1 2
2 2
1
2
3 4
d
e f
a
c d
e
f
c b
e f
c b
f
e
a
a
b c
c
a
f
a
b
e
Figura 8.7 Grafo de Marcao contendo uma transio quase-viva.
Analisando exemplos de Redes de Petri anteriormente apresentadas, pode-se
observar que a Rede de Petri da figura 8.1 viva, enquanto a da figura 8.6 no .
3.3. Rede de Petri Reinicializvel
A vivacidade de uma Rede de Petri Marcada N = <R,M
0
> reinicializvel se e
somente se seu grafo de marcao for fortemente conexo, ou melhor,
M A(R;M
0
) s
0
st
' M M
A maior parte dos sistemas, incluindo-se nesta classe os protocolos de
comunicao, possuem comportamento repetitivo e, portanto, suas Redes de Petri sero
reinicializveis.
Tomando como exemplo a Rede de Petri da figura 8.8, cujo grafo de marcao est
apresentado na figura 8.9, pode-se verificar que ela no reinicializvel, pois no existe
nenhuma seqncia que permita retornar marcao inicial. Por outro lado, importante
verificar que ela viva, uma vez que sempre possvel disparar as transies a, b e c.
3.4. Invariantes de Lugar e Componentes Conservativas
Esta uma das propriedades relacionadas estrutura da Rede de Petri,
independente da marcao. Para ilustrar o significado desta propriedade, ser utilizado um
exemplo de Rede de Petri, cuja estrutura est apresentada na figura 8.10.
Considerando esta estrutura e observando os lugares P1 e P2 e as transies a e b,
pode-se verificar que a soma das marcaes considerando estes dois lugares e os disparos
das duas transies citadas se mantm constante, ou melhor, M(P1) + M(P2) = 1. Mesmo
considerando os disparos de outras transies da Rede, observaremos que no ocorrero
mudanas nesta soma. Pode-se afirmar, ento que, para todas as marcaes da rede,
M(P1) + M(P2) = M
0
(P1) + M
0
(P2) M A(R;M
0
)
Com base nisto, o par de lugares P1 e P2 chamado uma componente
conservativa e a forma linear M(P1) + M(P2) denominada um invariante de lugar. Pode-se
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.11
definir um invariante linear de lugar como uma funo linear das marcaes cujo valor uma
constante, dependendo apenas da marcao inicial da rede. Os invariantes de lugar
correspondem a uma restrio em termos de estados e eventos do sistema que sero
verificadas em qualquer circunstncia.
Uma componente conservativa corresponde soluo da equao f
T
.C = 0
e C = Post Pre e f a funo linear que define a componente. Do ponto de vista grfico,
uma componente conservativa define uma sub-rede de Petri composta pelos lugares cuja
componente de f diferente de zero e as transies de entrada e sada destes lugares.
Se f soluo da equao citada acima, ento,
f
T
.M = f
T
. M
0
M A(R;M
0
)
o invariante linear de lugar correspondente.
3.5. Invariantes de Transio e Componentes Repetitivas
Tomando novamente a Rede de Petri da figura 8.10, pode-se verificar que o disparo
da seqncia c d gera a mesma marcao. A sub-rede que ser observada agora a
formada pelos lugares P3, P4 e P5, com as transies c e d. Esta sub-rede dita ser uma
componente repetitiva estacionria.
Um invariante de transio uma seqncia de disparos de transies que no
provoca modificaes na marcao da rede. A presena de um invariante de transies no
modelo de um sistema pode indicar a existncia de uma seqncia cclica de eventos que
pode ser repetida indefinidamente.
Toda soluo da equao C. s = 0 constitui uma componente repetitiva estacionria.
Uma componente repetitiva estacionria define uma subrede onde s so consideradas as
transies para as quais as componentes do vetor s so diferentes de 0, com seus lugares
de entrada e de sada. A componente repetitiva estacionria no depende da marcao
inicial, mas a existncia de um invariante linear de transio depende.
a
P1
b
P2 c
P4
P3
Figura 8.8 Rede de Petri no reinicializvel.
1 4 1 3 2 4 2 3
a
c
b a
Figura 8.9 Grafo de Marcao da Rede de Petri da figura 8.8.
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.12
a
b
P2
P1
P3
c
d
P4 P5
3
3
Figura 8.10 Rede de Petri com invariante de lugar.
4. REPRESENTAO DE DADOS E DE ASPECTOS TEMPORAIS
As Redes de Petri so teis para efetuar a modelagem de qualquer tipo de aplicao
que apresente riqueza em termos de paralelismo, comunicao, competio por recursos e
outras caractersticas tpicas dos sistemas distribudos. Nesta famlia de aplicaes,
encontram-se os protocolos de comunicao, tema central desta disciplina.
Assim como as demais aplicaes distribudas, os protocolos de comunicao
requerem um modelo que possibilite expressar os aspectos de processamento e as
restries temporais.
Apesar de poderoso, o modelo original das Redes de Petri no foi concebido para
expressar, de forma explcita estes aspectos e, por esta razo, outros modelos (ou
extenses ao modelo original) foram desenvolvidos.
4.1. Interpretao das Redes de Petri
4.1.1. Lugares, transies e fichas
Na construo de modelos utilizando tcnicas formais, importante que se tenha
condies de dar um significado fsico aos diversos elementos sintticos da notao
utilizada. Sendo assim, interpretar um modelo descrito em Redes de Petri ou um resultado
de anlise, fundamental dar um sentido aos conceitos de lugares, transies e fichas.
evidente que o significado especfico de cada uma destas entidades ser
fortemente dependente do sistema sob estudo. No entanto, pode-se dar significados mais
genricos a estes elementos.
Sob esta tica, os lugares podem ser interpretados como atividades de um sistema a
eventos discretos. reas de estoque num sistema de produo, condies lgicas num
sistema seqencial, procedimentos a serem executados num sistema operacional, so
alguns exemplos de elementos que podem ser representados por lugares num modelo a
base de Redes de Petri.
s transies, geralmente, so associados eventos considerados instantneos num
sistema, que possuem durao nula ou desprezvel na escala de tempo fundamental do
sistema. O clique de um mouse, a usinagem de uma pea, o envio de uma mensagem, a
ativao de um processo so alguns exemplos disto. possvel tambm associar atividades
ou procedimentos s transies, principalmente quando, do ponto de vista do sistema estas
sejam consideradas atmicas ou indivisveis. Neste caso, as transies podem ser
consideradas simplificaes de um trecho de Rede de Petri caracterizado por uma transio
de incio, um lugar representando a atividade ou procedimento e uma transio de fim, como
ilustrado na figura 8.11.
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.13
Finalmente, as fichas podem ser interpretadas como objetos fsicos (por exemplo,
peas ou ferramentas num sistema de fabricao), informaes, estruturas de dados ou
recursos do sistema. Estas entidades so submetidas a eventos (disparos de transio) que
as fazem mudar de estado (passar de um lugar para o outro na Rede de Petri).
4.1.2. Interao com Dados e Ambiente
Quando se considera um sistema capaz de realizar o tratamento de informao ou
de objetos fsicos, este tratamento deve ser especificado. Por esta razo, alm do ttulo do
tratamento, , muitas vezes, necessrio, explicitar como este tratamento realizado, seja a
nvel das transies, seja a nvel dos lugares.
Na primeira situao, considera-se que o tratamento ser realizado de forma
instantnea e ininterrupta, no momento do disparo da transio. Na segunda situao,
considera-se que seja uma atividade de tratamento que toma certo tempo para ser realizada,
tempo este que envolve a durao da permanncia da ficha no lugar considerado.
No seu modelo original, uma Rede de Petri permite descrever o fluxo dos tratamentos
a serem realizados, ou melhor, a estrutura de controle do sistema sob estudo. Entretando,
nem sempre determinados tratamento so imediatamente realizados a partir do momento
em que o tratamento precedente foi finalizado. Ainda, a sua realizao ou no pode estar
associada a condies verificadas sobre as estruturas de dados do sistema (condies do
tipo if, por exemplo). Estas situaes podem ser representadas por um trecho de Rede de
Petri, caracterizado por diversos lugares e transies que iro expressar as restries
associadas ao tratamento.
Do ponto de vista da teoria das Redes de Petri, tais condies representam
situaes de conflito, onde o disparo das prximas transies depende da verificao de
propriedades associadas s estruturas de dados do sistema. Por exemplo, num protocolo de
comunicao, a ao a ser tomada por uma entidade de protocolo depende fortemente dos
campos da PDU recebida.
No caso de sistemas que interagem com o ambiente, podem existir condies
suplementares de disparo associadas s transies (ou aos lugares). Estas aes
(tratamentos particulares) e estas condies estaro relacionadas a dados ou eventos
externos, como sensores, atuadores, recebimentos ou envios de mensagem. Os relgios de
tempo real podem tambm representar um aspecto importante no comportamento dos
sistemas e o tempo intervem de forma explcita.
P1 P2
P3 P4
Atividade
t1
t2
P1 P2
P3 P4
t
Atividade
Figura 8.11 Associao de uma atividade a uma transio.
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.14
4.1.3. Controle, Dados e Ambiente
Para que se possa realizar o modelo de um sistema aberto (um sistema que se
comunique freqentemente com o ambiente), importante que e Rede de Petri possa ser
estruturada em duas partes, que permitam explicitar os elementos que compem o sistema
sob estudos e aqueles que caracterizam o ambiente.
Alm disso, importante explicitar as partes da rede que esto associadas ao
controle e aquela que representa os aspectos relacionados aos dados do sistema. Alm dos
dados internos, pode ser importante representar o tempo e os dados trocados com o
ambiente.
4.1.4. Representao Explcita do Tempo
A representao explcita do tempo pode ser feita a partir de variveis booleanas que
sero associadas a condies e aes associadas s transies. Os valores destas
variveis so, obviamente, dependentes do tempo.
Consideremos mon() uma varivel booleana dependente do tempo. Se atribudo a
ela o valor 0, ela pode reassumir o valor 1 aps um determinado perodo de tempo (um
monoestvel). Vamos supor que no momento do disparo de uma transio t1, esta varivel
seja colocada a 0. Se uma dada transio t2 que fica sensibilizada imediatamente aps o
disparo de t1 tem, associada a ela a condio mon() = 1, ento, o intervalo de tempo entre
o disparo de t1 e o disparo de t2 ser igual a .
4.2. Anlise de Redes de Petri Interpretadas
4.2.1. Resultados
importante notar que uma Rede de Petri ordinria descreve apenas a parte controle
de um sistema. Neste caso, a marcao da Rede de Petri vai fornecer apenas informaes
sobre o estado de controle do sistema. Numa Rede de Petri interpretada, o estado do
sistema ser descrito pela marcao associada ao estado dos dados. Sendo assim, numa
Rede de Petri interpretada:
Estado do Sistema = Marcao + Estado dos Dados
Estado dos Dados = Estado das Variveis Internas + Tempo
Por outro lado, preciso observar que a evoluo da marcao numa Rede de Petri
interpretada vai estar relacionada a restries da evoluo da marcao de uma Rede de
Petri ordinria. Por esta razo, pode-se dizer que o conjunto das marcaes acessveis de
uma Rede de Petri interpretada um subconjunto daquele das marcaes acessveis de
uma Rede de Petri ordinria. Entretanto, para que uma transio possa ser disparada numa
Rede de Petri interpretada, preciso que ela possa ser disparada na Rede de Petri ordinria.
Mas, a interpretao pode levar ao fato de que uma transio que disparvel numa Rede
de Petri ordinria pode, num dado instante no ser disparvel numa Rede de Petri
interpretada, em funo das restries impostas no modelo (por exemplo, a progresso do
tempo, o valor de uma varivel, etc...).
Sendo assim, do ponto de vista de anlise de uma Rede de Petri, importante
observar as seguintes relaes.
Rede de Petri Autnoma Rede de Petri Interpretada
k-limitada para M k-limitada para estado
f invariante de lugar f invariante de lugar
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.15
Por outro lado:
Rede de Petri Autnoma Rede de Petri Interpretada
Viva () Viva
Reinicializvel () Reinicializvel
4.3. Outros Modelos de Redes de Petri
As Redes de Petri Interpretadas permitem expressar, de forma bastante precisa, a
parte controle de um sistema ou protocolo de comunicao. Por outro lado, a representao
da parte dados no o forte deste modelo.
Em razo disto, muitos trabalhos foram desenvolvidos em torno das Redes de Petri
com o objetivo de oferecer um mecanismo de estruturao que permita isolar dados locais e
dados globais. Nas sees seguintes, sero apresentados os modelos de Redes de Petri
Coloridas, as Redes de Petri Predicados-Transies, as Redes de Petri Temporais e as
Redes de Petri Temporizadas.
5. REDES DE PETRI COLORIDAS
5.1. Caractersticas do Modelo
A separao entre o que a parte dados e a parte controle num sistema no
necessariamente evidente, sendo, na maior parte das vezes tomada pelo desenvolvedor no
momento da Anlise de Requisitos e do Projeto do Sistema. No limite, toda a parte controle
do sistema pode ser integrada s condies de execuo dos tratamentos e ser
representada estruturalmente por uma Rede de Petri. Por outro lado, se o desenvolvedor
atribui muito do comportamento parte controle, o modelo em Rede de Petri pode tornar-se
extremamente complexo e de difcil representao e anlise.
Uma tcnica que permite expressar sistemas complexos por modelos relativamente
simples , quando possvel, replicar conjuntos de processos similares (com a mesma
estrutura de controle) numa nica componente conservativa. O inconveniente desta tcnica
a perda do aspecto individualidade comportamental que cada processo pode apresentar,
levando em conta, principalmente, a parte dados a que cada processo pode estar sujeito.
A idia de individualizar as fichas numa Rede de Petri permite replicar os
comportamentos de vrios processos por uma nica estrutura de Rede sem correr o risco
de perder informao sobre sua individualidade.
Vamos tomar como exemplo a Rede de Petri da figura 8.12, que descreve um
problema clssico de algoritmo distribudo, no caso o problema dos leitores e escritores. No
exemplo, so representados 3 leitores e 1 escritor. No difcil observar que os trs leitores
apresentam estrutura comportamental idntica e, utilizando esta identidade, possvel
replicar seus lugares e suas transies numa nica estrutura. O resultado desta replicao
mostrado na figura 8.13. A grande vantagem desta estratgia a obteno de um modelo
mais simples para construo e para anlise. Por outro lado, perde-se informao, pois
quando um leitor evolui, impossvel conhecer sua identidade.
5.2. Associando Cores s Fichas
Uma forma de diferenciar as fichas numa Rede de Petri associar a elas cores,
que so expressas na forma de nmeros inteiros ou de conjunto de etiquetas.
Conseqentemente, associa-se cada lugar um conjunto de cores de fichas que podem
posicionar-se nele. Ainda, associa-se a cada transio um conjunto de cores que
corresponde s possibilidades de disparos da transio.
No caso mais simples, quando todos os processos possuem rigorosamente a
mesma estrutura de controle, o conjunto de cores para os lugares e para as transies so
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.16
os mesmos, sendo que as cores sero, usualmente, associadas s diferentes instncias de
processos.
11
d1
21
31
a1
f1
12
d2
22
32
a2
f2
13
d3
23
33
a3
f3
1E
dE
2E
3E
aE
fE
3
3
Figura 8.12 Rede de Petri representando o problema dos leitores x escritores.
1L
dL
2L
3L
aL
fL
1E
dE
2E
3E
aE
fE
3
3
Figura 8.13 Problema dos leitores x escritores com replicao dos leitores.
US
ini
fim
MA PI
id
pea
pea
mquina
mquina
Figura 8.14 Exemplo de Rede de Petri Colorida.
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.17
No caso do problema dos leitores e escritores, por exemplo, os processos
correspondem identidade dos leitores, o que implica que os lugares 1L, 2L e 3L e as
transies dL, aL e fL podem ter associado o conjunto (L1,L2,L3).
Por outro lado, quando os lugares so comuns a diversos processos, necessrio
introduzir o conceito de cores compostas. A Rede de Petri da figura 8.14 ilustra o modelo
de uma linha de montagem composta por duas mquinas e dois tipos de peas a serem
usinadas.
O lugar PI possue as cores pi1 e pi2 que correspondem aos nomes das peas, o
lugar MA as cores ma1 e ma2 que so os nomes das mquinas e o lugar US vai conter as
cores pi1.ma1, pi1.ma2, pi2.ma1 e pi2.ma2 que correspondem s diversas operaes
possveis, e que sero denotadas u11, u12, u21 e u22.
5.2. Associando Funes aos Arcos
Numa Rede de Petri Colorida, os arcos no so mais representados por nmeros
inteiros, mas devem ser especificadas as aes que devero ser realizadas considerando
cada cor possvel num lugar. Cada arco dever ter, ento, associado a ele, uma matriz cujas
linhas sero as possibilidades de disparo da transio e as colunas as possveis cores das
fichas nos lugares. Retomando o exemplo da figura 8.14, pode-se verificar que, no caso do
arco que conecta o lugar PI transio ini e o arco que conecta MA a ini, sero descritos
por:
1
1
0
0
0
0
1
1
pi1 pi2
u11
u22
u21
u22
1
0
1
0
0
1
0
1
ma1 ma2
u11
u22
u21
u22
5.3. Definio Formal de uma Rede de Petri Colorida
Uma Rede de Petri Colorida associada a uma marcao inicial um hexupla dada
por:
N
C
= <P,t,C
or
,C
sc
,W,M
0
>
Onde:
P, um conjunto finito de lugares;
T, um conjunto finito de transies;
C
or
, um conjunto finito de cores;
C
sc
, uma funo subconjunto de cores associada a cada lugar e a cada
transio;
W, a funo de incidncia (equivalente a C = Pre Post); cada elemento
de W corresponde a uma funo do tipo:
W(p,t) : C
sc
(t) x C
sc
(p)
1
M
0
, a marcao inicial para cada lugar e para cada cor possvel neste
lugar:
M
0
(p) : C
sc
(p)

1
o conjunto dos naturais.
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.18
5.4. Exemplo
Retomando o exemplo da figura 8.14, teremos:
C
or
= {pi1,pi2,ma1,ma2,u11,u12,u21,u22}
C
sc
(PI) = {pi1,pi2}
C
sc
(MA) = {ma1,ma2}
C
sc
(US) = C
sc
(ini) = C
sc
(fim) = {u11,u12,u21,u22}
as funes definidas para W so:
id(u
i j
) = u
i j
mquina(u
i j
) = ma
j
pea(u
i j
) = pi
i
a matriz W fica:

=
mquina mquina
id id
pea pea
W
a marcao inicial M
0
:

=
0 0 0 0 1 1 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 1 1
0
M
6. REDES DE PETRI PREDICADOS-TRANSIES
6.1. Variveis
Nas Redes de Petri Coloridas, o poder de expresso reforado pela substituio
dos nmeros inteiros da matriz de incidncia de uma Rede de Petri Ordinria por funes.
Nas Redes de Petri Predicados-Transies, as transies de uma Rede de Petri Ordinria
so consideradas como regras num sistema de lgica proposicional e o poder de expresso
reforado pela substituio das transies por regras de uma lgica de primeira ordem,
onde variveis so consideradas. Uma regra (ou transio) descreve um conjunto de
eventos e no mais um nico evento. O conjunto de eventos descrito pelo conjunto das
possveis substituies das variveis por valores.
Desta forma, em lugar de regras do tipo...
SE pelo menos uma pea e pelo menos uma mquina, FAZER usinagem
teremos regras do tipo...
SE uma pea <x> e uma mquina <y>, FAZER usinagem <u>
As variveis <x>, <y> e <u> assumiro valores num conjunto de constantes
descrevendo as peas em espera na usinagem e as mquinas livres. Estas constantes
assumem um papel anlogo ao das cores numa Rede de Petri Colorida. As variveis so
associadas aos arcos da Rede de Petri, em lugar das funes definidas nas Redes de Petri
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.19
Coloridas. Para o exemplo considerado anteriormente, a Rede de Petri Predicados-
Transies que o representa est ilustrado na figura 8.15.
Numa Rede de Petri Predicados-Transies no se tem a necessidade de definir a
priori que fichas devero estar presentes nos lugares como se faz no caso das Redes de
Petri Coloridas (ver o exemplo descrito pela figura 4.6). Isto definido pelas prprias regras
associadas aos arcos, ou seja, uma vez que se conhece os possveis valores a serem
assumidos pelas variveis, a cada vez que a transio for disparada, basta avaliar os valores
de cada varivel para se conhecer em que condies ela foi disparada.
O mecanismo de substituio das variveis por constantes no momento do disparo
de uma transio denominado unificao. Quando o mecanismo de unificao produz
mais de uma soluo, considera-se a ocorrncia de um conflito. O espao de conflito
compreende todas as transies habilitadas para uma dada marcao e, para cada
transio, o conjunto de substituies possveis.
Para permitir a escolha das fichas e transies a serem disparadas, associa-se
condies suplementares de disparo (por exemplo, especificar que determinadas mquinas
s podem manipular algumas peas), como no caso das Redes de Petri Interpretadas.
Entretando, estas condies influem apenas nas constantes a serem associadas s
fichas, ou melhor, sobre as constantes que substituem as variveis no momento do disparo
das transies. As condies so escritas como funes das variveis associadas aos
arcos de entrada e de sada da transio.
6.2. Noo de n-upla de Constantes e Variveis
No momento do disparo da transio ini, toma-se uma constante representando uma
pea no lugar PI, uma outra representando uma mquina no lugar MA e coloca-se no lugar
US uma constante que representa a relao temporria entre a pea e a mquina. No
momento do disparo da transio fim, o contrrio efetivado.
Em lugar de codificar este relacionamento temporrio de duas informaes, pode-se
justapor numa lista (como se fosse um record de Pascal), exceto que existir uma relao
temporria no momento do disparo da transio. Desta forma, estabelece-se uma relao
dinmica entre as constantes.
Estas listas de constantes sero denominadas n-uplas. Desta forma, no lugar US, a
constante u12 ser substituda pela n-upla <pi1,ma1>. A marcao no ser mais uma
distribuio de constantes nos lugares mas uma distribuio de n-uplas de constantes. A
figura 8.16 apresenta a Rede de Petri Predicados-Transies para o exemplo do sistema de
produo utilizado para ilustrar os diversos modelos aqui apresentados.
6.3. Definio Formal das Redes de Petri Predicados-Transies
Uma Rede de Petri Predicados-Transies inicialmente marcada uma tripla:
N
PT
= <R,A,M
0
>
Onde:
R, uma Rede de Petri Ordinria <P,T,C>, C = Post - Pre;
A, a anotao de N, A = <C
onst
,V,A
tc
,At
a
,A
c
>:
C
onst
, um conjunto de constantes (o conjunto dos N, por exemplo);
V, um conjunto de variveis formais que sero substitudas por
constantes de C
onst
no momento do disparo das instrues;
A
tc
, uma aplicao: A
tc
:T L
c
(C
onst
,V) associando a cada transio
uma condio sob a forma de predicado, utilizando constantes e
variveis formais;
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.20
US
ini
fim
MA PI
<u>
<x>
<x>
<y>
<y>
<u>
Figura 8.15 Exemplo de Rede de Petri Predicados-Transies.
US
ini
fim
MA PI
<x,y>
<x>
<x>
<y>
<y>
<x,y>
Figura 8.16 Rede de Petri Predicados-Transies fazendo uso n-uplas.
A
ta
, uma aplicao: A
ta
:T L
a
(C
onst
,V) associando a cada transio
uma ao sob a forma de predicado, utilizando constantes e variveis
formais;
A
c
, uma aplicao associando a cada arco (elemtno de C) uma
soma formal de n-uplas de elementos de V de tal forma que o mdulo
(soma de todos os elementos) seja igual ao peso do arco
correspondente;
M
0
, a marcao inicial para cada lugar associando uma soma formal de
n-uplas de constantes de C
onst
.
6.4. Exemplo
Na definio das Redes de Petri Predicados-Transies aparece a noo de rede
subjascente, obtida a partir da substituio das variveis por um peso unitrio que permite
explodir as n-uplas. A figura 8.17 representa a rede subjascente da figura 8.16. Este modelo
define, de fato, a estrutura de controle do sistema representado, uma vez que a Rede de
Petri Predicados-Transies uma forma estruturada de expressar o conjunto
controle/dados de um sistema.
Com este exemplo, tem-se:
C
onst
= {pi1,pi2,ma1,ma2}
V = {x,y}
neste exemplo, no foram definidas nem condies, nem aes
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.21
US
ini
fim
MA PI
2
2
Figura 8.17 Rede subjascente para a rede da figura 8.16.
PI
US
MA
A
c
=
-<x>
<x,y>
-<y>
<x>
-<x,y>
<y>
ini fim
PI
US
MA
M
0
=
<pi1>+<pi2>
0
<ma1+ma2>
7. REDES DE PETRI TEMPORIZADAS
Uma Rede de Petri Ordinria descreve uma relao de causalidade entre eventos.
Um evento a a causa de b, a sempre precede b, a e b so ordenados no tempo. O tempo
levado em conta apenas de maneira qualitativa. Entretanto, a considerao do tempo de
forma quantitativa um requisito importante na descrio de muitos sistemas de software,
principalmente no caso de aplicaes distribudas e protocolos de comunicao.
Numa Rede de Petri Temporizada, o tempo diretamente associado Rede de Petri,
integrando-se parte controle do sistema.
7.1. Associando o Tempo aos Lugares
Como foi visto no incio deste captulo, os lugares representam as atividades. Sendo
assim, a associao de tempo aos lugares objetiva descrever a durao da atividade. Pode-
se considerar que um lugar com uma durao associada pode ser descrito por uma
seqncia lugar-transio-lugar, onde o primeiro lugar corresponde atividade em curso, a
transio representa o evento passagem do tempo e outro lugar corresponde a uma espera
pelo final da atividade (sincronizao com outras atividades). Esta correspondncia
ilustrada na figura 8.18.
7.2. Associando o Tempo s Transies
Esta associao tem sentido quando se considera a transio como uma atividade e
no como um evento instantneo. Uma atividade deve ser vista como uma ocorrncia
ininterruptvel sob a tica do comportamento global do sistema sob anlise.
Pode-se considerar que esta transio pode ser expressa por uma seqncia
transio-lugar-transio, na qual a primeira transio corresponde a um evento instantneo
de incio de atividade, o lugar corresponde atividade em curso e a ltima transio
corresponde a outro evento instantneo de fim de atividade. Esta equivalncia ilustrada na
figura 8.19.
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.22
t1
t2
p disponvel
durao t1
durao p
t2
p indisponvel
Figura 8.18 Tempo associado a um lugar.
O disparo da primeira transio seguindo o lugar p1 corresponde reserva de fichas
(as fichas reservadas no podem mais ser utilizadas para o disparo de outra transio
seno a transio t). Aps o disparo da segunda transio, as fichas so, finalmente,
liberadas.
Neste caso, da mesma forma que no caso anterior, existem fichas que desaparecem
ou que tornam-se indisponveis durante um certo intervalo de tempo e, em seguida,
reaparecem na marcao. Comparando-se as duas figuras, observa-se que as duas
abordagens so equivalentes.
7.3. Definio Formal
Uma Rede de Petri Temporizada um par N
t
= <N,
f
> com:.
N uma Rede de Petri <P,T,Pre,Post> com uma marcao inicial M
0
;

f
a funo durao de disparo:
f
: T
+
, que a cada transio estabelece a
correspondncia entre um nmero racional positivo descrevendo a durao do
disparo.
8. REDES DE PETRI TEMPORAIS
8.1. Representando Timeouts
Alguns mecanismos implicam na colocao em disponibilidade das fichas num
determinado instante. A figura 8.20 apresenta um caso tpico onde este tipo de mecanismo
implementado. O lugar rotulado espera permita a recepo (disparo da transio fim1) na
ocorrncia de um evento (condio verdadeira) sob a forma de uma ficha no lugar condio.
Mas, se a ficha no estiver posicionada ao final de um tempo , ento um alarme ativado
(disparo da transio fim2). Um tempo de atividade associado transio espera atrasaria o
disparo da transio fim1 mesmo com a existncia de uma ficha no lugar condio. Um
tempo de atividade associado transio fim2 faria com que a ficha no lugar espera fosse
imediatamente absorvido de forma irreversvel e que o alarme fosse ento disparado aps o
intervalo de tempo mesmo se uma nova ficha chega no lugar condio.
A soluo a introduo de uma durao de habilitao
s
(t) a cada transio. Uma
transio t s pode disparar se ela fica habilitada durante o intervalo
s
(t). A diferena com
relao as duraes de disparo que durante este intervalo as fichas esto disponveis nos
lugares de entrada de t e podem eventualmente ser utilizadas por uma transio em conflito
com t.
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.23
Se reconsideramos o exemplo apresentado acima, basta associar uma durao
s

transio fim2 igual ao valor do tempo de espera e a fim1 uma durao de sensibilizao
imediata.
t
reserva p/ t
durao
p1
t
p1
p2
p2
Figura 8.19 Tempo associado a uma transio.
espera
alarme
fim1 [0,0]
condio
fim2 [,]
seqncia
normal
Figura 8.20 Exemplo de Redes de Petri Temporais.
O domnio principal de utilizao deste modelo (a validao de protocolos de
comunicao) fez com que, desde o incio, foi definida uma durao imprecisa de
sensibilizao de t sob a forma de um intervalo i(t) = [
s,min
(t),
s,max
(t)]. A transio t s pode
ser disparada aps o tempo
s,min
(t) e no poder mais ser disparada aps a passagem do
tempo
s,max
(t). Todos os valores dentro do intervalo definido sero valores possveis para
disparo de t.
8.2. Definio Formal
Uma Rede de Petri Temporal um par N
tl
= <N,I> onde:
N uma Rede de Petri <P,T,Pre,Post> com uma marcao inicial M
0
;
I uma funo que a cada transio t associa um intervalo fechado racional i(t)
= [
s,min
(t),
s,max
(t)], que descreve uma durao de sensibilizao.
CAP. 8 REDES DE PETRI PROF. VITRIO BRUNO MAZZOLA
8.24
8.3. Comparao com outros modelos
As Redes de Petri Temporais so mais genricas que as Redes de Petri
Temporizadas, porque elas permitem a descrio de timeouts que aqueles modelos no
permitem. Por outro lado, para passar de uma Rede Temporizada a uma Rede Temporal,
basta substituir cada transio t do primeiro par por uma seqncia [t1,t2] com:

s,min
(t
1
) =
s,max
(t
1
) = 0 e
s,min
(t
2
) =
s,max
(t
2
) = (t)
Por outro lado, pode-se dizer que uma Rede de Petri Ordinria uma Rede de Petri
Temporal onde todas as transies possuem intervalos de sensibilizao igual a [0,].
9. CONCLUSO
Neste captulo foram apresentados os principais conceitos associados s Redes de
Petri e a suas extenses. Como pde ser observado, os mecanismos presentes neste
formalismo permitem expressar de forma bastante precisa os relativos a um vasto leque de
aplicaes, incluindo os sistemas de produo, software distribudo, sistemas operacionais,
interfaces homem mquina e protocolos de comunicao, entre outras.
O poder de expresso dos diversos modelos de Redes de Petri permitem
representar e obter informaes interessantes nas etapas iniciais da concepo de sistemas
e, por isso, sua aplicao rea dos protocolos de comunicao foi uma conseqncia
inevitvel.
No captulo que segue, sero descritos alguns resultados da aplicao deste
formalismo rea dos protocolos de comunicao.
8.1
Captulo 9 Captulo 9
A T A TCNI CA CNI CA E ESTELLE STELLE
1. INTRODUO
No captulo 7, foram apresentados os principais aspectos relativos concepo dos
protocolos de comunicao, do ponto de vista das etapas do desenvolvimento e das
tcnicas associadas a cada uma das etapas.
As tcnicas de descrio formal, que sero apresentadas nesta seo,
desempenham um papel importante na Engenharia de Protocolos. Estas tcnicas so
baseadas principalmente em modelos j citados na parte anterior do documento (mquinas
de estados finitos, lgebra de processos), apresentando fatores importantes para a
representao dos aspectos relativos estruturao de uma camada de protocolo e ao
comportamento das entidades de protocolo compondo a camada.
Esta parte do documento pretende dar uma breve introduo s tcnicas de
descrio formal, dando nfase tcnica Estelle, padronizada na ISO e aos trabalhos
realizados em torno desta tcnica.
2. AS TCNICAS DE DESCRIO FORMAL PADRONIZADAS
Como j foi citado, a complexidade dos mecanismos a implementar no contexto de
um sistema distribudo, e, particularmente, no projeto das entidades de protocolo, requer a
utilizao de modelos que permitam representar, de maneira precisa e no ambgua, o
paralelismo e a comunicao. Esta foi a principal motivao da definio das Tcnicas de
Descrio Formal (ou FDT, Formal Description Techniques) para a especificao dos
protocolos e servios do modelo OSI.
Os principais resultados deste esforo foram Estelle e LOTOS, padronizadas pela
ISO (International Standardization Organization) e a tcnica SDL, definida no CCITT (Comit
Consultatif International Tlgraphique et Tlphonique).
LOTOS (Language Of Temporal Ordering Specification) uma tcnica baseada na
lgebra de processos para a representao dos comportamentos paralelos. Uma
especificao LOTOS composta de unidades executveis denominadas processos, que
sincronizam-se atravs de portas de comunicao. A verso completa de LOTOS inclui uma
linguagem de descrio de tipos abstratos de dados, denominada ACT ONE, de forma que
dois ou mais processos sincronizando-se em portas de comunicao podem tambm trocar
valores representados neste formalismo. Um grande nmero de trabalhos foi desenvolvido
sobre LOTOS desde a sua definio, particularmente para a definio de metodologias e
ferramentas de concepo e a aplicao de LOTOS especificao de protocolos de
comunicao.
SDL (Specification and Description Language) uma linguagem de especificao
baseada no formalismo das mquinas de estados finitos comunicantes. Uma especificao
SDL definida como sendo um sistema, este podendo ser decomposto em diversos blocos
que se executam concorrentemente e comunicam atravs de troca de mensagens,
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.2
denominadas sinais. O mecanismo de comunicao adotado a assncrono (filas FIFO).
Do ponto de vista da estruturao de uma especificao SDL, um bloco pode, por sua vez,
ser decomposto em diversos blocos e assim por diante_ a decomposio feita no nvel mais
baixo sendo em termos de processos. Similarmente a LOTOS, SDL representa os dados
atravs do formalismo de dados abstratos. Uma caracterstica original de SDL o fato de
que ela definida segundo duas sintaxes de linguagem, uma verso textual (denominada
SDL/PR, SDL Phrase Representation) e uma verso grfica (SDL/GR, SDL Graphical
Representation). No que diz respeito a esta tcnica, diversas ferramentas foram realizadas
para a concepo de protocolos de comunicao e programas distribudos, particularmente,
editores grficos, simuladores, verificadores e geradores de cdigo (SDL C, SDL ADA,
etc_).
No que diz respeito tcnica de descrio formal Estelle, a seo seguinte ser
dedicada apresentao, mais detalhada dos seus aspectos sintticos e semnticos.
3. A TCNICA DE DESCRIO FORMAL ESTELLE
Estelle, Extended State Transition Language, uma tcnica de descrio formal
definida e padronizada pela ISO para a especificao formal de protocolos de comunicao
e sistemas distribudos. O formalismo no qual se baseia esta tcnica aquele das mquinas
de estados extendidas, sendo que a representao e a manipulao de dados possvel
pela introduo de um subconjunto da linguagem Pascal Estelle. Nas sees que seguem
apresentaremos, sucessivamente, os principais mecanismos de Estelle, as experincias
realizadas em torno desta tcnica e um exemplo de aplicao ao domnio dos protocolos.
3.1 Arquitetura de uma Especificao Estelle
Uma especificao Estelle composta de elementos sequenciais no
determinsticos chamados instncias de mdulo (module instances). Estes comunicam-se
por um mecanismo de troca de mensagens, ou interaes (interactions), que so enviadas e
recebidas atravs de interfaces (ou portas) chamadas pontos de interao (interaction
points). A figura 9.1 ilustra estes conceitos.
Da mesma forma que uma especificao pode ser decomposta em mdulos, como
mostrado na figura 9.2, um mdulo pode, por sua vez, ser decomposto em outros
mdulos, estes em outros mdulos, e assim por diante, o que d um caractre hierrquico a
uma especificao. Se um determinado mdulo decomposto em outros mdulos, diz-se
que estes so mdulos filhos do mdulo considerado; este, por sua vez, considerado o
mdulo pai daqueles mdulos. A figura 9.2 mostra a decomposio do mdulo A2 da figura
9.1 em dois mdulos, A21 e A22. Seguindo a terminologia, A21 e A22 so mdulos filhos de
A2, que considerado o mdulo pai destes dois mdulos. Esta definio ser posta em
evidncia quando formos comentar os princpios de escalonamento envolvidos na execuo
de uma especificao Estelle.
A arquitetura de uma especificao Estelle pode ser modificada em tempo de
execuo, tanto do ponto de vista da sua composio em termos de mdulos, como das
ligaes entre os mdulos existentes. Veremos mais tarde como isto implementado.
Do ponto de vista sinttico, uma especificao Estelle assim definida:
specification <id_especificao> [<atributo>]
[default <disciplina_fila>]
[timescale <unidade_tempo>]
_
end.
Nas definies sintticas da tcnica Estelle realizadas neste documento, a seguinte
notao ser adotada:
expresses em negrito correspondem a palavras reservadas da linguagem;
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.3
expresses colocadas entre < e > correspondem a partes da especificao
(identificadores, parmetros, _) a serem definidos pelo usurio;
expresses colocadas entre [ e ] correspondem a comandos opcionais da
especificao;
os _ correspondem a partes (instrues, blocos de instruo, declaraes, etc_)
existentes, mas irrelevantes para a definio considerada.
Na declarao Estelle mostrada acima, o comando opcional default permite definir a
disciplina de filas a ser adotada por default na especificao. As disciplinas de fila sero
definidas posteriormente neste documento. O comando (tambm opcional) timescale
permite definir a unidade de tempo adotada para propsitos de temporizao (ver definio
da clusula delay).
3.2. Os Mdulos Estelle
Um mdulo um objeto a partir do qual so derivados os componentes executveis
de uma especificao Estelle as instncias de mdulo. As caractersticas de um mdulo
Estelle so obtidas graas a duas definies que so o tipo de mdulo (module header) e o
corpo de mdulo (module body), estes conceitos sendo ilustrados pela figura 9.3.
A0
A1 A2
A3
especificao
instncia de mdulo
ponto de interao
Figura 9.1 - Conceitos associados a uma especificao Estelle.
A2
A21
A22
A21 e A22 so mdulos
filhos do mdulo A2
Figura 9.2 - Ilustrao da decomposio de um mdulo Estelle.
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.4
O tipo de mdulo permite definir as interfaces de acesso ao mdulo, seja do ponto de
vista das mensagens interaes que podem ser trocadas com os demais mdulos,
como do ponto de vista das variveis acessveis externamente as variveis exportadas.
As variveis exportadas de um mdulo A so aquelas variveis visveis ao mdulo
imediatamente superior na hierarquia (o mdulo pai). Assim, este mdulo ter direito de
acesso leitura e escrita sobre todas as variveis de A que tenham sido declaradas como
variveis exportadas. Na sua forma mais geral, um tipo de mdulo declarado da seguinte
forma em Estelle:
module <id_tipo_mdulo> <atributo>;
ip <lista_de_pontos_de_interao>
export <lista_de_variveis_exportadas>
end;
O corpo de mdulo o objeto que permite declarar o comportamento interno de um
mdulo, atravs da definio de uma mquina de estados extendida. Vrios corpos de
mdulo podem ser associados a um mesmo tipo de mdulo, o que significa que possvel
definir mdulos apresentando a mesma interface mas com comportamentos internos
distintos. A declarao de um corpo de mdulo feita da seguinte maneira:
body <id_corpo> for <id_tipo_mdulo>;
...
end;
, onde id_tipo_mdulo designa o tipo do mdulo ao qual o corpo estar associado.
3.3. A Comunicao entre Instncias de Mdulo
As instncias de mdulo em Estelle comunicam-se graas definio de canais
bidirecionais que efetuam a ligao entre seus pontos de interaes. Uma fila de poltica
FIFO (First-In-First-Out) associada a cada uma das extremidades de um canal, de modo
que uma mensagem enviada por um mdulo armazenada na fila associada extremidade
oposta quela do canal por onde esta foi enviada, caracterizando, assim, um mecanismo de
comunicao assncrona.
tipo de mdulo
corpo de mdulo
mdulo
A
B
Z

instncias
de mdulo

Figura 9.3 - Definio de mdulos e instncias de mdulos.
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.5
Isto significa que no existe um compromisso estabelecido entre a emisso e a
recepo de uma mensagem; no existindo tambm bloqueio ao envio de uma mensagem
se o mdulo receptor no se encontra pronto para consum-la.
Em Estelle, um canal declarado da forma:
channel <id_canal> (r1,r2);
by r1 : <lista_interaes_r1>
by r2 : <lista_interaes_r2>
Nesta declarao, alm do identificador do canal (id_canal), devem ser declaradas as
diferentes interaes que sero enviadas pelas duas extremidades do mesmo. Isto feito
considerando os dois sentidos, formalizados aqui atravs dos papis (role), simbolizados
nesta declarao por r1 e r2. Estes no so identificadores reservados, mas podem ser
definidos pelo usurio conforme o significado do canal dentro da especificao por
exemplo, usurio e fornecedor, mestre e escravo, produtor e consumidor, etc_
As interaes definidas na declarao dos canais permitem definir diferentes tipos ou
classes de mensagens sendo trocadas entre duas ou mais instncias de mdulos. A
declarao das interaes no implica, porm, na declarao de valores associados. Para a
definio de valores, devem ser associados parmetros (variveis Pascal) s interaes,
como mostrado no exemplo abaixo:
channel C1 (cliente,servidor);
by cliente : pedido; servico(tipo:integer);
by servidor : resposta(resultado:boolean);
A declarao de canal serve de base para a declarao dos pontos de interao que
vo definir as interfaces de cada tipo de mdulo, e que so feitas da maneira seguinte:
ip <id_ip> : <id_canal>(r);
Assim, alm do identificador do canal (id_canal), deve-se tambm definir o sentido r
ao qual ser associado o ponto de interao identificado por id_ip. Isto vai permitir a definio
das interaes que podero ser emitidas pelo mdulo que possui o ponto de interao
declarado.
Cabe aqui a ilustrao destes conceitos atraves de um exemplo simples. Vamos
supor um trecho de uma especificao formal em Estelle, onde as seguintes declaraes
so definidas:
specification exemplo1;
_
_
channel C1 (mestre,escravo);
by mestre : ordem_inicio; pedido_status;
by escravo : resposta_servio; info_status;
module tipo_cliente;
ip A : C1(mestre);
end;
module tipo_servidor;
ip B : C1(escravo);
end;
_
_
end.
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.6
Como podemos ver, os dois sentidos definidos na declarao do canal C1 so
mestre e escravo, aos quais esto associadas as interaes ordem_inicio, pedido_status e
resposta_servio, info_status, respectivamente. Assim, se considerarmos as declaraes
dos mdulos tipo_cliente e tipo_servidor, notamos que os pontos de interao A e B fazem
referncia declarao do canal C1, definindo, respectivamente, os papis mestre e
escravo. Isto significa que as instncias de mdulo derivadas do tipo de mdulo tipo_cliente
poderiam enviar, atravs do ponto de interaes A, as interaes ordem_inicio e
pedido_status e poderiam receber, por este ponto, as interaes resposta_servio e
info_status. Analogamente, as instncias de mdulo derivadas do tipo de mdulo
tipo_servidor poderiam enviar, atravs do ponto de interaes B, as interaes
resposta_servio e info_status e poderiam receber, por este ponto, as interaes
ordem_inicio e pedido_status.
No caso de mdulos que possuam n pontos de interaes similares, a declarao
pode ser feita segundo um vetor ou um vetor de pontos de interao:
ip <id_ip> : ARRAY[1..n] OF <id_canal>(r);
Neste caso, da mesma forma que um elemento de uma matriz definida na linguagem
Pascal, o ponto de interao dever ser designado pelo seu identificador, acompanhado do
ndice correspondente no vetor. A figura 9.4 ilustra o caso de um mdulo possuindo 6 pontos
de interao similares.
A associao de filas FIFO aos pontos de interao obedece a duas polticas
distintas:
na primeira, a fila individual (individual queue), uma fila associada a cada ponto de
interao;
na segunda, a fila comum ou global (common queue) a fila compartilhada por
diversos pontos de interao.
Embora as duas polticas possam coexistir no contexto de uma mesma
especificao Estelle, a sua definio obrigatria no contexto da declarao dos pontos de
interao, isto podendo ser feito de duas maneiras:
explcita, na declarao do ponto de interao
(Ex.: ip A : F_D (fonte) individual queue; );
implcita, atravs da clusula default
(Ex.: default individual queue;).
a[1] a[2] a[3] a[4] a[5] a[6]
A
module tipo_A;
ip a : ARRAY[1..6] OF Ca(r1);
end;
Figura 9.4 - Mdulo definindo 6 pontos de interao similares.
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.7
3.4. Exemplo 1 - O protocolo mestre-escravo
A figura 9.5 representa o exemplo mostrado na seo 3 da parte anterior do
documento (figura 10.11). Como, em Estelle, os canais so bidirecionais, representamos por
um nico canal a comunicao nas duas direes consideradas.
Os pontos de interao F e D representam, respectivamente, as portas de
comunicao das entidades fonte e destino com o meio de comunicao. Estes pontos de
interao so conectados, respectivamente, aos pontos A e B do mdulo representando o
meio.
Desta forma, a declarao dos objetos Estelle representando a arquitetura mostrada
na figura 9.5 fica como mostrado a seguir.
Esta especificao apresenta unicamente a declarao dos objetos representando
cada elemento da especificao, particularmente, os canais, as interaes, e os tipos de
mdulos (e seus respectivos pontos de interao) que definiro a estrutura da especificao.
specification mestre_escravo systemactivity;
_
_
channel F_D (fonte,destino)
by fonte : pedido_envio; dado;
by destino : pronto_recepo; dado_consumido;
module tipo_fonte activity;
ip F : F_D(fonte);
end; { tipo_fonte }
module tipo_destino activity;
ip D : F_D(destino);
end; { tipo_destino }
module tipo_meio activity;
ip A : F_D(destino);
B : F_D(fonte);
end; { tipo_meio }
_
_
end. { mestre_escravo }
FONTE DESTINO
MEIO
MESTRE_ESCRAVO
F
A
D
B
Figura 9.5 - Estrutura da especificao do protocolo mestre-escravo.
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.8
A estrutura da especificao s ser concretizada atravs da execuo de instrues
de estruturao, presentes numa parte de inicializao da especificao.
3.5. Instrues de estruturao de uma especificao
O nvel de superior de uma especificao Estelle caracterizado, geralmente por
duas partes distintas a parte declarao e a parte inicializao.
A parte declarao caracteriza as declaraes dos objetos Pascal (tipos, variveis,
funes e procedimentos) e dos objetos Estelle (canais, tipos de mdulo, corpos de mdulo,
pontos de interao, etc_) como apresentados nas sees anteriores. Os objetos Pascal
so declarados em Estelle de maneira anloga a um programa naquela linguagem de
programao (type, var, function e procedure). Esta parte contm, ainda, a declarao
das variveis mdulo que permitem referenciar as instncias de mdulo que vo compor a
especificao. As variveis mdulo so declaradas de maneira anloga s variveis Pascal,
utilizando a clusula modvar, sendo que os tipos associados s variveis mdulo devem ser
os identificadores designados nas declaraes dos tipos de mdulo da especificao.
Podemos representar, sintaticamente, a declarao de variveis mdulo da seguinte
forma:
modvar
<id_varmod1> : <id_tipo1>;
<id_varmod2> : <id_tipo2>;
_
<id_varmod3> : <id_tipoN>;
Podemos utilizar, como exemplo, duas variveis especificando os mdulos entidades
fonte e destino e do mdulo representando o meio de comunicao da especificao
baseada na figura 9.5. Deste modo, a declarao destas variveis mdulo ficaria.
modvar
fonte : tipo_fonte;
destino : tipo_destino;
meio : tipo_destino;
No caso de vrias instncias de mdulo baseadas num mesmo tipo de mdulo, as
variveis podem ser declaradas na forma de um vetor Pascal, sendo que a referncia a cada
instncia ser feita de forma indexada. O exemplo abaixo ilustra esta forma de declarao:
modvar
A : ARRAY[1..MAX] OF tipo_fonte;
A referncia s instncias de mdulo geradas a partir desta declarao ser, ento,
feita da seguinte forma A[1], A[2], _, A[MAX].
A parte de inicializao a parte que vai dar vida a uma especificao Estelle. Ela
caracterizada pela expresso Estelle initialize seguida de um bloco begin_end (como na
linguagem Pascal) cujas instrues vo permitir inicializar os objetos Pascal
(particularmente as variveis) e os objetos Estelle. No que diz respeito aos objetos Estelle,
esta parte permite:
inicializar (criar) as instncias de mdulo;
inicializar a arquitetura da especificao efetuando as ligaes dos pontos de
interao de cada instncia de mdulo criada para compor a especificao.
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.9
A criao das instncias de mdulo feita atravs do comando init que vai permitir
inicializar uma varivel mdulo com um corpo de mdulo declarado na especificao. O
formato geral deste comando :
init <id_varmod> with <id_corpo>;
A necessidade da especificao do corpo no momento da criao da instncia de
mdulo se justifica pela possibilidade de atribuio de diferentes comportamentos a um
mesmo tipo de mdulo. Naturalmente, apenas um corpo de mdulo que tenha sido declarado
para o tipo de mdulo que gerou a varivel mdulo pode ser especificado na sua criao.
No que diz respeito ao estabelecimento das ligaes entre pontos de interao das
instncias de mdulo, dois comandos so disponveis:
o primeiro, connect, permite ligar dois pontos de interao de instncias de mdulo
localizadas no mesmo nvel hierrquico;
o segundo, attach, permite ligar um ponto de interao de uma dada instncia de
mdulo a um ponto de interao de uma instncia de mdulo filha da primeira
instncia considerada.
Do ponto de vista sinttico, estes comandos apresentam-se da seguinte forma:
connect <id_varmod1>.<id_ip> to <id_varmod2>.<id_ip>;
e
attach <id_ip> to <id_varmod2>.<id_ip>;
Como podemos ver, no caso do comando attach, no necessrio especificar uma
das instncias, pois ela conhecida implicitamente ( a instncia na qual o comando est
sendo realizado). Os seguintes comentrios podem ainda ser feitos com relao aos
comandos de estruturao de Estelle:
1 Os comandos connect e attach s podem ser executados sobre um par de
instncias de mdulo que tenha sido previamente inicalizado por comandos init;
2 Os comandos connect e attach s podem ser efetuados sobre dois pontos de
interao declarados a partir de um mesmo tipo de canal; ainda, no caso do
connect os pontos de interao devem ter papis complementares (opostos); no
caso do attach os dois pontos de interao devem ter o mesmo papel;
3 Os comandos podem ser utilizados tambm durante a execuo das transies
Estelle (como ser definido mais adiante) caracterizando o aspecto dinmico de
uma especificao Estelle (instncias de mdulo podem ser criadas e ligadas em
execuo);
4 Finalmente, so definidas em Estelle instrues complementares (inversas) a
estas trs, respectivamente release, disconnect e dettach.
Para ilustrar a utilizao destes comandos, vamos retomar o exemplo ilustrado pela
figura 9.5, completando a especificao do ponto de vista das declaraes e inicializaes
dos objetos. Esta mostrada a seguir.
3.6. A descrio do comportamento dos mdulos (declarao do corpo)
Como j foi mencionado, o objeto que permite declarar a mquina de estados
representando o comportamento de um mdulo o corpo de mdulo (module body).
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.10
specification mestre_escravo systemactivity;
default individual queue;
{ #### PARTE DECLARACAO ####}
channel F_D (fonte,destino)
by fonte : pedido_envio; dado;
by destino : pronto_recepo; dado_consumido;
module tipo_fonte activity;
ip F : F_D(fonte);
end; { tipo_fonte }
module tipo_destino activity;
ip D : F_D(destino);
end; { tipo_destino }
module tipo_meio activity;
ip A : F_D(destino);
B : F_D(fonte);
end; { tipo_meio }
body corpo_fonte for tipo_fonte;
_
end; { corpo_fonte }
body corpo_destino for tipo_destino;
_
end; { corpo_destino }
body corpo_meio for tipo_meio;
_
end; { corpo_meio }
modvar
fonte : tipo_fonte;
destino : tipo_destino;
meio : tipo_meio;
{ #### PARTE INICIALIZACAO #### }
initialize
begin
init fonte with corpo_fonte;
init destino with corpo_destino;
init meio with corpo_meio;
connect fonte.F to meio.A;
connect destino.D to meio.B;
end;
end. { mestre_escravo }
O objeto corpo de mdulo composto de trs partes de base: a parte declarao,
anloga da especificao, apresentada anteriormente, a parte inicializao, tambm similar
da especificao e a parte transio que permite efetivamente descrever o comportamento
do mdulo atravs de um conjunto de transies de uma mquina de estados.
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.11
Na parte declarao de um corpo de mdulo, alm da declarao dos objetos j
mencionados anteriormente (tipos, variveis, funes e procedimentos Pascal, canais, tipos
de mdulo e corpos de mdulo das instncias de mdulo filhas, _), declara-se ainda, quando
for o caso (esta declarao opcional), os estados globais (major states) da mquina de
estados considerada. Isto feito atravs do comando Estelle, state cuja sintaxe geral :
state id_estado1, id_estado2, _, id_estadoN;
Para o exemplo considerado na figura 9.5, a declarao dos estados globais para a
instncia de mdulo fonte ficaria, ento:
state ocioso,pronto_envio,envio, espera_ack;
A parte inicializao, alm da inicializao das variveis Pascal e objetos Estelle
(instncias de mdulo e ligaes), deve permitir definir o estado global inicial da mquina de
estados que representa o comportamento do mdulo. Isto feito associando-se a clusula
to expresso initialize que marca o incio da parte inicializao da seguinte forma:
initialize to <id_estado_inicial>;
begin
_
end;
, sendo que id_estado_inicial deve ser um dos identificadores de estado global
declarados previamente atravs do comando state.
A parte transio permite definir o conjunto das transies que vai descrever o
comportamento dos mdulos. Uma transio caracterizada de trs partes principais: a
parte pr-condies, a parte de ps-condies e a parte ao. A definio de uma ou mais
transies deve ser caracterizada pela definio de uma clusula trans.
A parte pr-condies permite definir quais so as condies a serem satisfeitas
para que a transio seja considerada em condies de executar. As pr-condies so
definidas atravs de clusulas Estelle, que so:
from
permite definir em que estado global deve encontrar-se o mdulo para que a
transio esteja em condies de executar.
SINTAXE EXEMPLO
from <id_estado> from ocioso
when
permite definir a recepo de uma dada interao sobre um ponto de interao para
que a esteja em condies de executar.
SINTAXE EXEMPLO
when <id_ip>.interao when D.dado
no caso desta clusula, a condio satisfeita se a interao especificada encontra-
se no topo da fila FIFO associada ao ponto de interao considerado. Em caso, positivo, se
a transio executada, a interao retirada do topo da fila, caracterizando a recepo de
uma mensagem. Uma transio que no contenha uma clusula when na sua parte de pr-
condies dita uma transio expontnea, uma vez que esta no depende da recepo de
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.12
uma interao para executar (depende apenas de aspectos internos do mdulo
considerado).
provided
permite testar uma condio na forma de uma expresso booleana, envolvendo
variveis Pascal do mdulo ou mesmo, no caso de uma transio contendo uma clusula
when, parmetros da interao especificada naquela clusula.
SINTAXE EXEMPLO
provided <exp_booleana> provided dado_lido*
ou provided otherwise
*dado lido uma varivel booleana!
priority
permite associar um nvel de prioridade de modo a modificar a poltica de
escalonamento entre as transies de um mesmo mdulo.
SINTAXE EXEMPLO
priority <inteiro> priority 1
delay
permite associar um intervalo de tempo para fins de representao de mecanismos
de temporizao (timeout, por exemplo). A semntica de tempo associada a esta clusula
ser explicada mais adiante. A clusula delay no pode ser utilizada numa transio onde a
clusula when esteja presente. Em outras palavras, esta s pode ser utilizada em
transies expontneas, como definido anteriormente.
SINTAXE EXEMPLO
delay (T1,T2) delay (1,5)
A parte ps-condies permite definir o estado global que ser assumido pelo mdulo
aps a execuo da transio considerada. A clusula de ps-condio definida em Estelle
a clusula to cuja sintaxe e exemplo de utilizao so dados abaixo:
SINTAXE EXEMPLOS
to <id_estado> to espera_ack
ou to same to same
A parte ao de uma transio Estelle caracterizada por um bloco begin_end em
cujo interior podem ser declaradas instrues Pascal (com restries) e instrues Estelle.
A parte ao de uma transio Estelle considerada um bloco atmico e indivisvel, ou seja,
uma vez iniciada, ela no pode ter a sua execuo interrompida.
Dentre as instrues Estelle podendo constituir a parte ao de uma transio, alm
dos comandos init, connect, attach, release, disconnect e dettach, podemos citar o
comando output, que permite expressar o envio (no bloqueante) de uma interao atravs
de um ponto de interao, a sintaxe e um exemplo de utilizao sendo dados a seguir.
SINTAXE EXEMPLOS
output <id_ip>.interao output F.dado
Convm, aqui, invocar os conceitos de instncias de mdulo ativas e inativas. Uma
instncia de mdulo dita inativa se a sua parte transio vazia. Caso contrrio, ela dita
ser uma instncia de mdulo ativa.
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.13
Alm das instrues acima, Estelle oferece, ainda, algumas facilidades de
especificao, como, por exemplo:
os comandos all e any;
a fatorizao (nesting) de transies;
a nomeao de transies.
Os comandos all e any permitem simplicar uma sequncia de comandos Pascal e
Estelle que deva ser feita de maneira repetitiva. Ambos so declarado de forma similar a
uma malha for do Pascal, com uma diferena fundamental. O acesso aos valores
estabelecidos no intervalo considerado feito de maneira aleatria e no de maneira
ordenada. Exemplos da utilizao destes dois comandos so mostrados a seguir:
Comando all
all i : 1..n
do
begin
_ sequncia de instrues _
end;
Comando any (manipulao de vetores de pontos de interao)
any i : 1..n
do when ip_id[i].interao
A fatorizao de transies permite simplificar a apresentao da especificao,
regrupando, a diferentes nveis, clusulas comuns a diferentes transies. Por exemplo,
considerar o trecho de especificao abaixo:
trans
from ocioso
when D.pedido_envio
to pronto_recepcao
begin
output D.pronto_rec
end;
from ocioso
when D.dado
to same
begin
end;
Como podemos ver, a clusula from ocioso comum s duas transies. Assim,
elas podem ser fatoradas da seguinte forma:
trans
from ocioso
when D.pedido_envio
to pronto_recepcao
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.14
begin
output D.pronto_rec
end;
when D.dado
to same
begin
end;
Finalmente, a nomeao das transies permite enriquecer o poder de
documentao de uma especificao Estelle, atravs da clusula name. O exemplo a seguir
ilustra a utilizao desta clusula.
trans
from ocioso
when D.pedido_envio
to pronto_recepcao
name aviso_dado:
begin
output D.pronto_rec
end;
Para ilustrar a descrio do comportamento em Estelle, vamos especificar o
comportamento da instncia de mdulo fonte do protocolo mestre-escravo definido na parte
anterior do documento. Para isto, podemos tomar como ponto de partida, a especificao
em mquinas de estados finitos daquela entidade, apresentada, aqui, na figura 9.6.
A especificao Estelle fica, ento, da seguinte forma:
body corpo_fonte for tipo_fonte;
state ocioso,pronto_envio,envio,espera_ack;
initialize to ocioso
begin
end;
trans
from ocioso
when U.mensagem
to pronto_envio
begin
output F.pedido_envio;
end;
from pronto_envio
when F.pronto_rec
to envio
begin
{ preparacao do dado a enviar }
end;
trans
from envio
to espera_ack
begin
output F.envio_dado;
end;
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.15
trans
from espera_ack
when F.ack
to ocioso
begin
end;
end; { corpo_fonte }
Como podemos notar na especificao, foi considerado a, um ponto de interao U,
atravs do qual recebido o dado a ser enviado. Isto significa que a instncia de mdulo que
representa esta entidade conectada, atravs deste ponto de interao, a uma instncia de
mdulo que representa o usurio do servio oferecido.
3.7. Aspectos da execuo de uma especificao Estelle
A execuo de uma especificao Estelle leva em considerao um conjunto de
regras semnticas que cobrem diferentes aspectos da definio desta tcnica, da
estruturao da especificao aos atributos que permitem definir a semntica de paralelismo
a ser considerada.
Um primeiro aspecto importante a ser levado em conta o no determinismo
implcito na seleo das transies a serem executadas num dado instante. Uma transio
pode ser executada se ela est sensibilizada, ou seja, todas as suas clusulas de pr-
condio so satisfeitas. A nvel de uma mesma instncia de mdulo, diversas transies
podem estar sensibilizadas num dado instante, sendo que apenas uma delas pode ser
executada por vez, podendo inclusive modificar o conjunto das transies sensibilizadas
para aquela instncia de mdulo. Neste caso, a escolha da seleo a executar feita de
forma no determinista ( impossvel prever qual delas ser executada em circunstncias
semelhantes).
Outro ponto importante das regras de execuo de uma especificao Estelle a
chamada prioridade pai-filho. A prioridade pai-filho determina que, no caso em que uma
instncia de mdulo ativa contenha pelo menos uma transio sensibilizada, independente
do estado de sensibilizao das transies das instncias de mdulo filhas, ser sempre
uma transio da instncia de mdulo considerada que vai ser executada.
OCIOSO
PRONTO P/
ENVIO
ENVIO
ESPERA
ACK
Ei2
Ei1
!pedido envio
!envio dado
?pronto p/ recepo
?dado consumido
Figura 9.6 - Mquina de estados finitos representando a entidade fonte do exemplo considerado.
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.16
Isto significa que a forma como a especificao estruturada tem grande influncia
na maneira como as transies das diferentes instncias de mdulo vo se relacionar no
que diz respeito sua seleo para execuo.
Um terceiro ponto diz respeito s diferentes semnticas de paralelismo podendo ser
representadas em Estelle, isto sendo funo dos atributos associados, de um lado,
especificao e, do outro lado, s instncias de mdulo que a compem.
Estelle permite definir quatro classes de atributos que vo desempenhar um papel
importante na representao do paralelismo entre as instncias de mdulo de uma
especificao. Os atributos so systemactivity, systemprocess, activity e process. Os
atributos prefixados por system permitem definir subsistemas no contexto de uma
especificao, dentro dos quais a semntica de paralelismo considerada pode ser diferente.
As regras de utilizao destes atributos so descritas nos pargrafos que seguem:
todo mdulo ativo deve ter um atributo associado;
os atributos systemactivity e systemprocess podem ser associados a um mdulo
para definir um subsistema dentro de uma especificao Estelle;
os atributos systemactivity e systemprocess no podem ser associados a
mdulos filhos de mdulos atribudos;
a especificao pode definir um subsistema nico, atravs da associao de um
dos dois atributos system (systemactivity ou systemprocess);
mdulos com atributo process ou systemprocess podem ser estruturados
unicamente em mdulos atribudos por process e activity;
mdulos atribudos por systemactivity ou activity podem ser estruturados
unicamente em mdulos atribudos por activity.
A figura 9.7 permite ilustrar o papel dos atributos na definio do paralelismo entre as
instncias de mdulo de uma especificao Estelle, onde um mdulo atribudo
systemactivity estruturado em dois mdulos activity.
Os identificadores entre colchetes representam as transies sensibilizadas em
cada instncia de mdulo. Em 9.7(a), observa-se as transies T1 (systemactivity), T2 e T3
(systemactivity da esquerda) e T4 (activity da direita). Neste caso, a prioridade pai-filho
levada em conta e a transio selecionada para execuo ser, invariavelmente, T1. J em
9.7(b), T1 no est sensibilizada, de modo que a seleo dever ser feita a nvel das
instncias de mdulo activity.
Neste caso, a seleo no detertminista, apenas uma transio sendo selecionada
para execuo, ou seja, T2 ou T3 ou T4.
A figura 9.8 ilustra, de maneira anloga, a poltica para as instncias atribudas
systemprocess e process. Em 9.8(a), temos sensibilizadas as transies T5
(systemprocess), T6 e T7 (process da esquerda) e T8 (process da direita). Neste caso, vale,
ainda a prioridade pai-filho e a transio T5 ser selecionada para execuo.
Systemactivity
[T2,T3]
[T4]
Execuo de T1
[T1]
activity activity
[T2,T3] [T4]
Execuo de T2 ou T3 ou T4
[--]
Systemactivity
activity activity
(a) (b)
Figura 9.7 - Comportamento paralelo no caso de um mdulo atribudo systemactivity.
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.17
J, em 9.8(b), como T5 no est sensibilizada, a seleo feita no nvel das
instncias process. Estes atributos impem uma sincronizao implcita entre aes de
processos num mesmo sistema. Desta forma, ser escolhida, em cada instncia, uma
transio, que ser sincronizada com as demais, selecionadas a nvel das demais
instncias. Para o exemplo, isto significa que sero executadas T6 e T8 ou T7 e T8.
3.8. A semntica do tempo em Estelle
A tcnica Estelle no prev um mecanismo de representao do tempo que permita
associar uma durao execuo de uma especificao. O tempo relativo execuo da
parte ao de uma transio considerado nulo para efeito de anlise. Por outro lado, a
definio da clusula delay, associada a uma transio permite representar mecanismos de
temporizao interessantes, como os mecanismos de timeout.
Como j foi apresentado, a clusula delay definida como uma das clusulas de
pr-condio de uma transio Estelle, podendo ser associada unicamente a transies
expontneas (que no tm associadas a elas uma clusula when).
Esta clusula, quando associada a uma transio Estelle, permite associar um
intervalo de tempo, cujos limites so Tmn e Tmx, definidos como segue:
Tmn o tempo mnimo que deve ser decorrido entre a sensibilizao de uma
transio e a sua execuo;
Tmx o tempo mximo que pode decorrer a partir do instante que a transio foi
sensibilizada para que a transio (se continuar sensibilizada) executar.
A clusula delay pode ser especificada na forma
delay(Tmn,Tmx)
, onde Tmx _ Tmn, ou ainda
delay(T)
, onde Tmn = Tmx = T.
Systemprocess
[T6,T7]
[T8]
Execuo de T5
[T5]
process process
[T6,T7] [T8]
Execuo de (T6 et T8) v (T7 e T8)
[--]
process process
Systemprocess
(a) (b)
Figura 9.8 - Comportamento paralelo no caso de um mdulo atribudo systemprocess.
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.18
4. OS TRABALHOS REALIZADOS EM TORNO DE ESTELLE
O interesse da tcnica Estelle motivou a realizao de um conjunto de projetos em
torno de vrios temas visando o seu desenvolvimento para uma futura utilizao em escala
industrial.
Os aspectos abordados nestes projetos envolviam trs principais pontos de vista:
a definio de uma semntica formal para Estelle;
a realizao de ferramentas de suporte concepo para Estelle;
a definio de metodologias e a realizao de especificaes formais no domnio
dos protocolos de comunicao e outros mais.
Esta seo visa a apresentar alguns dos importantes resultados em torno destes
aspectos, particularmente no que diz respeito definio de uma semntica formal para
Estelle, que culminou na definio de uma verso mais poderosa, denominada Estelle* e no
que diz respeito ao desenvolvimento de ferramentas de concepo para Estelle (e Estelle*).
4.1. A tcnica Estelle*
Os trabalhos realizados no sentido de definir uma semntica formal para a tcnica
Estelle, permitiram, por outro lado, encontrar algumas limitaes no que diz respeito
representao de alguns mecanismos a serem implantados a nvel dos protocolos de
comunicao da ISO. Dois importantes aspectos foram os seguintes:
a existncia de um mecanismo nico de comunicao, assncrono, o que, de certo
modo podia gerar alguns problemas de representao no que diz respeito
comunicao entre entidades de protocolo situados en diferentes camadas;
a forma de representao do paralelismo utilizando os atributos systemprocess e
process (apresentados na seo 3.7) e a imposio da prioridade pai-filho para a
seleo da transio a executar, o que, na maior parte dos casos, situa-se longe da
realidade quando se considera entidades executando em diferentes sistemas.
Estes dois principais pontos foram privilegiados na definio da tcnica Estelle*, que
introduz, de um lado, extenses no que diz respeito aos mecanismos de comunicao e, do
outro lado, simplificaes no que diz respeito representao do paralelismo. O resultado
disto um ganho em termos de poder de expresso que simplifica o trabalho do usurio da
tcnica, permitindo representar aspectos de comportamento dos protocolos de
comunicao.
Estelle* introduz um mecanismo sncrono de comunicao, denominado rendez-
vous, onde duas instncias de mdulo devem sincronizar para que a troca de mensagem
ocorra e que as transies associadas executem.
Este mecanismo caracterizado, em Estelle*, pela definio de duas novas
clusulas a serem associadas parte de prcondies das transies, denominadas
clusulas de sincronizao. Sintaticamente, estas clusulas so especificadas da maneira
seguinte:
<id_ip>?<interao> { sincronizao em recepo }
e
<id_ip>!<interao> { sincronizao em emisso }
As condies para que duas instncias de mdulo, A e B sejam sincronizadas via
rendez-vous so:
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.19
A contm uma transio tendo uma clusula de sincronizao em emisso e B
uma clusula de sincronizao em recepo ou vice-versa;
os pontos de interao referenciados pelas duas clusulas devem estar ligados por
um canal;
as duas clusulas devem fazer referncia mesma interao;
as duas transies, em A e B, respectivamente, devem estar sensibilizadas e
serem selecionadas no processo de execuo.
Quando a sincronizao ocorre, as partes ao das duas transies so executadas
simultaneamente, podendo ocorrer passagem de valores se a interao referenciada tem
parmetros associados a ela.
Os pontos de interao sobre os quais uma sincronizao dever ocorrer devem ser
declarados com uma nova poltica de fila, no queue, introduzida em funo do referido
mecanismo de comunicao.
Isto significa a impossibilidade de coexistncia, num mesmo ponto de interao, dos
dois mecanismos de comunicao. Por outro lado, estes podem (e devem!) coexistir numa
especificao Estelle*.
As duas transies Estelle* abaixo, consideradas em duas diferentes instncias de
mdulo ilustram a utilizao deste mecanismo. Os pontos de interao F e D so
declarados com poltica no queue e so supostos estar conectados.
_
trans
from espera_ack
F?ack
to ocioso
begin
end;
_
_
trans
from dado_consumido
D!ack
to ocioso
begin
end;
_
Com relao associao dos atributos especificao e aos mdulos e poltica de
seleo da transio a ser executada, duas simplificaes foram propostas em Estelle*:
a primeira, diz respeito supresso dos atributos systemprocess e process e
adoo, de forma rgida, do atributo systemactivity associado especificao e o
atributo activity associados aos mdulos componentes, o que, sob determinadas
condies, aproxima-se bastante da representao mais geral do paralelismo entre
sistemas;
a segunda, a supresso da prioridade pai-filho como poltica de seleo da
transio a ser executada, o que uma das condies mencionadas acima.
4.2. Algumas ferramentas Estelle
Os mecanismos de representao oferecidos por tcnicas como Estelle, LOTOS e
SDL tornam evidente a sua adoo no contexto da concepo dos protocolos de
comunicao e das aplicaes distribudas. Entretanto, a existncia de ferramentas
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.20
coerentes para a automatizao das diferentes etapas da concepo de um tal sistema so
essenciais para a escolha de uma destas tcnicas dentre as disponveis.
O interesse da adoo de uma tcnica de concepo como Estelle traduzida pelo
grande nmero de trabalhos consagrados ao desenvolvimento de ferramentas de suporte
concepo.
Vamos apresentar, nesta seo, duas das diversas ferramentas desenvolvidas neste
contexto, as quais, utilizadas de maneira complementar, permitem cobrir a quase totalidade
das etapas de concepo de um protocolo de comunicao, como apresentado na parte
anterior deste documento.
As duas ferramentas, ESTIM e EWS, foram desenvolvidas dentro do contexto de
projetos do programa europeu ESPRIT, respectivamente os projetos SEDOS (Software
Environment for the Design of Open Distributed System) e Sedos/Estelle/Demonstrator.
ESTIM (Estelle SimulaTor based on an Interpretative Machine) foi desenvolvida no
LAAS/CNRS (Toulouse - Frana), no contexto do projeto SEDOS. Ela apresenta facilidades
para a validao de especificaes formais em Estelle. A ferramenta foi escrita em ML e
suporta principalmente os mecanismos definidos para Estelle*, descrita anteriormente. No
que diz respeito simulao, ESTIM suporta dois modos de pilotagem de uma sesso de
simulao:
uma simulao passo-a-passo, na qual o usurio escolhe, no conjunto das
transies sensibilizadas, qual transio dever executar; este modo permite a
definio e a conduo de cenrios de simulao, permitindo validar muitos
aspectos do sistema especificado; por outro lado, ele exige a presena do usurio
da ferramenta durante toda a sesso de simulao;
uma simulao automtica, na qual o usurio define um nmero N de transies a
serem executadas, a escolha, neste, caso, sendo aleatria, a ferramenta sendo
encarregada desta tarefa; neste caso, a sesso encerrada quando, ou o nmero
de transies requisitadas foi executado, ou uma situao de bloqueio (deadlock)
foi encontrada.
Durante uma sesso de simulao, ESTIM permite o acesso a todos os objetos,
Pascal e Estelle, compondo a especificao variveis, contedos de filas FIFO, estados
globais, etc_ possibilitando a fcil identificao de erros de especificao. Ainda, ele
permite o acesso a informaes estatsticas sobre a sesso de simulao, como, por
exemplo, a lista das transies j executadas, a lista das transies que no foram
executadas, instncias de mdulo criadas, e outras informaes mais.
ESTIM implementa igualmente uma tcnica de verificao, atravs da construo de
um grafo de alcanabilidade a partir da especificao Estelle* considerada. Este grafo
reduzido atravs da interface de ESTIM com ferramentas dedicadas (PIPN, ALDEBARAN,
etc_) que implementam tcnicas de reduo por equivalncia de processos.
Deste modo, o grafo obtido (autmato equivalente) pode ser analizado para a
verificao das propriedades do protocolo. O modo de utilizao de ESTIM em verificao
ser apresentado mais adiante neste documento. A figura 9.9 apresenta um esquema das
funcionalidades desta ferramenta.
EWS (Estelle Work Station) foi desenvolvida no contexto do projeto Sedos Estelle
Demonstrator, oferecendo facilidades para a edio (editor orientado sintaxe), simulao
(motor de simulao) e implementao (gerador de cdigo e motor de implementao). A
estrutura da ferramenta mostrada figura 9.10.
O editor da ferramenta EWS permite a entrada de texto Estelle, sem erros de sintaxe,
os erros sendo notificados e corrigidos durante a digitao do texto. Ele permite ainda
realizar a formatao de texto digitado em outro editor (emacs, por exemplo). Um outro ponto
interessante deste editor a seleo de diversas vistas da especificao Estelle (apenas
transies, apenas cabealhos Estelle, apenas corpos de mdulo, etc_).
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.21
O tradutor EWS traduz uma especificao Estelle na forma de uma estrutura mais
apropriada representao dos diferentes objetos Estelle. A esta estrutura de dados dado
o nome de forma intermediria que foi definida num esprito de expanso da ferramenta ou
da sua interligao com outras ferramentas em desenvolvimento. O tradutor produz um
diagnstico completo dos erros de sintaxe, e uma referncia cruzada da especificao.
O gerador de cdigo de EWS permite gerar, a partir de uma especificao Estelle,
um programa fonte em linguagem C que poder, em seguida, ser compilado e linkado a
bibliotecas especiais de Estelle. O cdigo C pode ser gerado dentro de dois objetivos para
simulao ou para execuo num ambiente de implementao.
O motor de simulao permite uma execuo interativa da especificao Estelle,
dando acesso s diversas opes e objetos da tcnica. De modo similar ferramenta ESTIM,
o simulador EWS permite conduzir a simulao em dois modos: passo--passo e
automtico.
Um aspecto interessante do simulador o seu acoplamento a uma interface grfica,
que permite, inclusive, acompanhar o ponto sendo simulado atravs da visualizao da
listagem da especificao Estelle.
O motor de implementao, finalmente, oferece uma biblioteca de rotinas
necessrias gesto da execuo do cdigo executvel gerado a partir da especificao
Estelle. Embora o cdigo executvel possa ser gerado sobre qualquer tipo de mquina, EWS
j vem dotada de um conjunto de rotinas orientadas ao sistema UNIX.
As duas ferramentas so operacionais e executam sobre estaes de trabalho do
tipo SUN.
rvore abstrata ML
Fonte Estelle*
Erros Estelle*
Construes
no suportadas
GENESTIM
ESTIM
Traos e Cenrios
Grafo de
Alcanabilidade
Autmato
quociente
(projeo)
SIMULAO VERIFICAO
PIPN
ou
ALDEBARAN
Figura 9.9 - Funcionalidades da ferramenta ESTIM.
CAP. 9 A TCNICA ESTELLE PROF. VITRIO BRUNO MAZZOLA
9.22
Forma intermediria
Cdigo executvel Cdigo instrumentado
Tradutor
Fonte Estelle
Fonte Estelle sem
Erros de Sintaxe
Mensagens
de erro
Traos e Cenrios
Editor orientado
sintaxe
Gerador de
Cdigo
Motor de
Implementao
Simulador
Figura 9.10 - Estrutura da ferramenta EWS.
10.1
Captulo 10 Captulo 10
E ESTADO DA STADO DA A ARTE EM RTE EM R REDES EDES
1. INTRODUO
Apesar de que em muitas instituies a palavra rede de comunicao assuma o
tradicional significado da rede telefnica, em boa parte delas as comunicaes entre
computadores vem se tornando uma realidade (que o digam os felizes distribuidores de
redes locais para microcomputadores).
No entanto, apesar dos grandes resultados obtidos e concretizados na forma de
produtos para a interconexo de sistemas, como as redes locais de microcomputadores, os
sistemas operacionais de rede, etc..., a tecnologia resta em evoluo, motivando a
continuidade de trabalhos de pesquisa e desenvolvimento em redes de comunicao, no
sentido de superar as limitaes dos produtos atuais, mas tambm com o objetivo de
oferecer novas possibilidades de interconexo e transmisso, visando o aparecimento de
novas aplicaes, algumas das quais eram consideradas fantasias de fico cientfica h
poucos anos atrs.
O objetivo deste captulo , sem a pretenso de esgotar o assunto, apresentar alguns
temas e resultados dos desenvolvimentos em redes de comunicao.
Nas sees 2 e 3 apresentaremos duas concepes em termos de redes de
comunicao, as redes ISDN redes digitais de servios integrados, e a rede FDDI,
baseada em fibra tica.
Finalmente, na seo 4 sero mencionados e discutidos alguns dos temas de
pesquisa em desenvolvimento nas instituies nacionais e internacionais.
2. A REDE DIGITAL DE SERVIOS INTEGRADOS - ISDN
A rede telefnica vem, aps muito tempo, servindo de suporte s comunicaes no
mundo inteiro. A rede; que foi concebida inicialmente para transmitir o sinal analgico de voz
inadequada para o transporte de outras naturezas de informao, tais como dados,
imagens, etc...
Por outro lado, as diversas necessidades em termos de servios de comunicao
expressas pelos usurios terminaram por conduzir a estudos de um novo conceito em
termos de comunicao, que dever substituir a tradicional rede telefnica por um sistema
baseado na transmisso digital.
A este novo sistema, dado o nome de Rede Digital de Servios Integrados,
conhecido tambm pela sigla ISDN (Integrated Services Digital Network). O ISDN tem por
objetivo oferecer servios de comunicao capazes de suportar as atuais necessidades das
aplicaes que requerem o transporte de sinais de voz (como o servio telefnico) mas
tambm integrando novos servios que viabilizem a transmisso de outras naturezas de
informao.
CAP. 10 ESTADO DA ARTE EM REDES PROF. VITRIO BRUNO MAZZOLA
10.2
Os trabalhos sendo conduzidos em torno do ISDN so coordenados, a nvel
internacional, pelo CCITT, sendo que as primeiras normas foram editadas em 1984, tendo
sido revisadas em 1988.
2.1. Conceitos de base do ISDN
A principal caracterstica do ISDN, como definida pelo CCITT, a capacidade de assegurar,
a nvel de uma mesma rede, uma larga gama de possibilidades de aplicaes telefnicas ou
no. Um elemento chave da integrao de servios nas ISDN o fornecimento de um
conjunto de servios com o auxlio de um nmero limitado de tipos de conexes e interfaces
usurio-rede polivalentes.
Esta definio, do CCITT, evidencia os pontos mais importantes sendo tratados pelos
trabalhos conduzidos em ISDN:
a conectividade digital, que permite assegurar que, independente da natureza da
informao (dados, voz, imagem, etc...), a rede suporte o transporte de um ponto
a outro, de usurio a usurio, na forma digital, utilizando recursos homogneos de
tratamento para a transmisso e comutao;
a modelizao dos servios ISDN, que baseada no modelo de referncia OSI,
definindo uma organizao das funes relativas aos servios de comunicao
num nmero limitado de elementos homogneos e hierarquizados, sendo que as
interaes entre os nveis adjacentes realizada atravs de primitivas de servio;
a polivalncia da interface usurio-rede, que prev a possibilidade de dispor, numa
interface comum, de uma grande variedade de servios, tais como a telefonia, a
troca de dados informatizados, o intercmbio de imagens, etc...
um modo de endereamento integrado, com base no modo de endereamento
utilizado em telefonia onde um endereo composto de um indicativo do pas, um
indicativo nacional e um nmero de assinante; em adio, um esquema de sub-
endereamento permite a distino de diferentes equipamentos conectados
instalao de um assinante.
2.2. Servios oferecidos pelas ISDN
Apesar de que o grande atrativo das ISDN o oferecimento de um conjunto de novos
servios de comunicao, o oferecimento do servio de transporte de voz continua a ser um
aspecto de grande importncia.
A organizao dos servios em camadas como sugere o modelo OSI permite a
definio de duas diferentes categorias de servios: os servios de suporte e os
teleservios. Os servios de suporte so aqueles providos pelas camadas baixas (camadas
de 1 a 3) e que permitem garantir o envio da informao de um ponto a outro, superando as
imperfeies e problemas que advindos du suporte de comunicao e do ambiente. Os
teleservios so aqueles providos pelas camadas mais altas (de 4 a 7), cujo conjunto de
protocolos permite colocar, disposio do usurio, as diferentes facilidades sugeridas pelo
ISDN.
Ainda, para garantir a compatibilidade com os servios atualmente existentes, ser,
muito provavelmente necessria a existncia de funes de converso de protocolos, estas
podendo residir nos terminais, nos prprios equipamentos ou na rede.
O CCITT define, assim trs tipos de servio: os servios de suporte, os teleservios
e os complementos de servios.
Os servios de suporte so aqueles diretamente relacionados transmisso entre
assinantes e s caractersticas de acesso e utilizao da rede. So caracterizados por um
certo nmero de atributos associados taxa de transmisso, o modo de transmisso, as
possibilidades de transferncia (voz, dados, imagens, etc...), o estabelecimento da
CAP. 10 ESTADO DA ARTE EM REDES PROF. VITRIO BRUNO MAZZOLA
10.3
comunicao (sob demanda, reservado, etc...), a configurao da rede (ponto a ponto,
multiponto), a qualidade de servio, etc...
Os teleservios correspondem, em termos de aplicao, associao de um
terminal particular com um ou vrios servios de suporte. Estes so, de forma similar aos
servios de suporte, especificados por atributos, sendo que, desta vez, os atributos referem-
se a outros aspectos mais ligados aos usurios, tais como, o tipo de informao manuseada
pelo usurio (som, imagem, vdeo, dados, etc...), os protocolos adotados nas camadas 4 a
7, etc...
Os complementos de servios expressam os acessrios que permitem modificar ou
adaptar as funes providas nas redes atuais.
Um exemplo tpico de servio a ser fornecido pelas ISDN aquele de um aparelho de
telefone moderno, dotado de mltiplas teclas de funo que permitam, por simples presso
do usurio, estabelecer contato com um outro assinante presente numa lista previamente
construda. tambm possvel, visualizar, na tela do aparelho telefnico, enquanto a
chamada est sendo realizada, o nmero, o nome e endereo do assinante que est sendo
contactado.
Um outro exemplo interessante transferncia de chamadas para qualquer lugar do
mundo, contatos mltiplos, conferncias, etc... Ainda, possvel que o usurio, dado que a
voz digitalizada, tenha condies de deixar registrado qualquer recado para posterior
consulta ( evidente que este servio possvel hoje com as secretrias eletrnicas, mas,
se este servio for uma facilidade existente a nvel de rede, para que comprar secretria
eletrnica???).
Um outro aspecto interessante das redes ISDN a facilidade com a qual aparelhos
telefnicos e informticos podero interagir, uma vez que estes vo possuir caractersticas
similares.
Podemos ainda enumerar outros aspectos de importncia previstas no RNIS e que
constituem-se hoje em reas importantes de trabalhos de pesquisa em todo o mundo:
o conceito de de grupo fechado de usurios, onde todo usurio pertencente ao
grupo tem a possibilidade de entrar em comunicao com qualquer outro membro
deste; por outro lado, usurios que no pertenam ao grupo esto proibidos de ter
acesso a informaes trocadas entre os membros;
o videotexto, que permite o oferecimento de um servio de acesso interativo a
bases de dados a partir de um terminal (catlogo telefnico, pginas amarelas,
servio metereolgico, informaes sobre a situao de trfego de estradas,
compras via rede, acesso a extrato e saldo de contas bancrias, e muitas outras
aplicaes incluindo aplicaes de lazer como jogos eletrnicos e at correio
sentimental);
a telemedida, que pode permitir concessionria de energia eltrica o acesso via
rede aos medidores de energia, eliminando a necessidade da utilizao de
pessoas para esta finalidade;
o telealarme, que permite a chamada automtica dos bombeiros ou ambulncias
na ocorrncia de uma situao de emergncia (incndio, ataque cardaco, etc...);
o envio de documentos via rede, j existente atravs dos servios de fax.
2.3. A implementao das ISDN
claro que a implementao de redes deste tipo dever tomar um tempo
considervel, considerando principalmente os grandes investimentos que devero ser feitos
para transformar a rede telefnica atual numa rede totalmente digital. As duas tecnologias,
analgica e digital, devero coexistir durante diversos anos, num contexto de cooperao, o
que permitiu definir diversos aspectos da forma final das ISDN.
Abaixo so apresentados alguns pontos que permitiro mostrar as dificuldades que
devero ser contornadas (em relao ao sistema atual) para viabilizar a instalao das ISDN.
CAP. 10 ESTADO DA ARTE EM REDES PROF. VITRIO BRUNO MAZZOLA
10.4
Um primeiro ponto diz respeito transmisso dos sinais de controle na rede
telefnica. Nestas, estes sinais so transmitidos dentro de uma faixa de freqncia de 4 kHz,
sendo que as combinaes destes sinais so denominadas sinalizao na faixa. Esta forma
de implementao apresenta alguns inconvenientes, principalmente a possibilidade de
surgimento de interferncias entre os sinais de telefone e os de sinalizao.
Uma soluo interessante a este ponto a chamada sinalizao fora de faixa, onde
uma rede independente utilizada para conduzir os sinais de controle da comunicao. Esta
tcnica, alm de contornar os problemas de interferncia entre sinais de telefone e de
sinalizao, permitiu ainda aumentar a possibilidade de aplicaes nas redes telefnicas,
como por exemplo, a coleta de dados relativos ao consumo dos assinantes, a fatura
detalhada, o acesso a bases de dados, o acompanhamento de operaes de superviso e
manuteno, etc...
A primeira tarefa na definio das ISDN foi a padronizao da interface usurio-rede.
A segunda etapa, mais lenta ser a substituio dos centros de distribuio atuais pelos
centros digitais, capazes de oferecer aos usurios a interface de acesso a ISDN. Neste
estgio, os usurios podero utilizar os servios ISDN, independentemente da sua natureza.
Uma terceira etapa, ser a total substituio das redes de transmisso e dos centros de
comutao pelas redes de transmisso e comutao integradas. A figura 10.1, a seguir,
ilustra estas duas ltimas etapas.
2.4. Aspectos arquiteturais de ISDN
A idia principal da ISDN o oferecimento direto ao usurio de uma interface digital
que assegure a transmisso de fluxos de informao binria de qualquer natureza: voz,
dados informticos, som, imagens, etc... Esta ligao digital deve suportar diversos canais
de comunicao independentes e multiplexados.
Duas formas de ligaes foram definidas: a primeira, com pequena faixa passante,
destinada principalmente ao grande pblico e que vai oferecer um pequeno nmero de
canais, e a segunda, destinada a empresas e grandes consumidores que dever ser capaz
de oferecer um grande nmero de canais.
A figura 10.2 ilustra uma configurao mnima para um assinante particular, onde
pode-se verificar os diferentes elementos da instalao: a interface de rede, ou NT1 (para
Network Termination 1, como definido pelo CCITT), que conectada ao centro ISDN de
distribuio mais prximo, sendo que o cabo utilizado o mesmo que aquele da rede
telefnica tradicional.
A NT1 possui uma interface de acesso, qual pode ser ser conectado um
barramento passivo (multiponto), onde o assinante poder ligar at oito equipamentos
independentes, tais como: aparelhos telefnicos, aparelhos de fax, computadores, terminais
ISDN, etc... Para o assinante, a fronteira entre a sua instalao e a rede ISDN o conector
NT1.
Na sua forma atual, a NT1 mais que uma simples caixa de conexo, uma vez que
ela contm um conjunto de circuitos eletrnicos destinados a cooperar com o sistema de
gerenciamento da rede ISDN, ao estabelecimento e liberao de conexes, s operaes
de verificao e manuteno dos meios de transmisso e coleta de informaes relativas
ao desempenho efetivo da rede.
Cada terminal conectado ao barramento dotado de um endereo nico a fim de
permitir a sua seleo, sendo que a forma mais bsica de realizar a afetao dos endereos
a utilizao de um contactor mecnico e o acionamento de manual para a conexo de um
equipamento particular.
Uma outra soluo, mais interessante, a atribuio de endereos pela prpria NT1
a cada vez que um novo equipamento ativado no barramento do assinante.
CAP. 10 ESTADO DA ARTE EM REDES PROF. VITRIO BRUNO MAZZOLA
10.5
acesso
ISDN
acesso
ISDN
REDE COMUTAO DE CIRCUITOS
REDE DE SINALIZAO
REDE A COMUTAO DE PACOTES
Terminal
ISDN
Terminal
ISDN
interface
ISDN interface
ISDN
acesso
ISDN
acesso
ISDN
REDE ISDN
Terminal
ISDN
Terminal
ISDN
interface
ISDN
interface
ISDN
Figura 10.1 - As duas ltimas etapas da implantao da ISDN: a instalao dos centros digitais; a
instalao da rede ISDN integrada.
equipamentos
ISDN
NT1
CENTRO DE
DISTRIBUIO
Figura 10.2 - Instalao bsica para um assinante particular.
A interface digital dotada ainda de uma funo de resoluo de conflitos sobre o
barramento do assinante, provocados pela tentativa de envio simultneo por parte dos
diversos equipamentos conectados. Para isto, a NT1 opera como um rbitro do barramento,
definindo, em caso de conflito, que equipamento ter o direito de acesso ao barramento.
Considerando o modelo OSI, a interface digital oferece servios relacionados
camada fsica, definindo as especificaes mecnicas e eltricas da interface, mas no
existe nenhuma preocupao com o significado dos quadros transmitidos.
Para os usurios considerados grandes consumidores, porm, a configurao
apresentada na figura 10.2 no adequada, uma vez que estes apresentam uma maior
demanda em termos de possveis conversaes a serem tratadas de forma simultnea.
Para isto, a utilizao de uma simples NT1 no a soluo ideal, pois esta no
concebida para suportar grandes volumes de conversaes. Sendo assim, foi definida uma
outra categoria de interface, a interface digital de assinante, ou NT2 (Network Termination 2),
que conectada como mostra a figura 10.3. Uma NT2 fornece servios relacionados s
camadas de 1 a 3 do modelo OSI, podendo ser mais ou menos complexas, segundo a
instalao considerada, e permite a conexo de equipamentos mais diversos, tais como os
aparelhos telefnicos RNIS, os terminais RNIS, etc..., podendo ainda suportar a conexo de
equipamentos no compatveis RNIS ou mesmo redes locais previamente instaladas na
empresa. Evidentemente, para a conexo desta ltima classe de equipamentos, ser
necessria a existencia de uma passarela de interconexo, dedicada a realizar as
converses de protocolos necessrias conexo, so os adaptadores de terminais, ou TA.
2.5. Interfaces de acesso ISDN
O termo interface interpretado no mundo ISDN difere um pouco daquele empregado
quando nos referimos ao modelo OSI. No mundo OSI, uma interface vista como o meio de
interao entre duas camadas adjacentes compondo a arquitetura de comunicao. J no
mundo ISDN, a interface vista como as relaes entre a rede e os equipamentos do
assinante. As figuras 10.4 (a) e (b) ilustram esta diferena.
CAP. 10 ESTADO DA ARTE EM REDES PROF. VITRIO BRUNO MAZZOLA
10.6
NT1
CENTRO DE
DISTRIBUIO
Rede Local
Terminal
No-ISDN
Telefone
ISDN
Terminal
ISDN
TA
TA
NT2
Figura 10.3 - Configurao da instalao para um grande consumidor (empresa).
A ISDN estruturada de forma compatvel com o modelo OSI, ou seja, em camadas
funcionais, sendo que a camada fsica da rede define os aspectos mecnicos, eltricos,
funcionais e procedurais da interface. A ISDN utiliza um conector mecnico a contatos
deslizantes, conformes norma ISO IS 8877, composto de 8 pinos.
Dois pinos dedicados transmisso dos sinais, dois outros recepo e os quatro
pinos restantes so destinadas alimentao eltrica dos terminais NT1 e NT2.
A rede oferece diversos canais de comunicao multiplexados, sendo que estes
foram organizados em canais tpicos, definidos, cada tipo, por uma letra. So os seguintes:
A: uma linha telefnica analgica oferecendo 4 kHz de banda passante;
B: um canal digital a 64 kbit/s para voz digitalizada ou dados;
C: um canal a 8 ou 16 kbit/s;
D: um canal a 16 ou 64 kbit/s para a sinalizao fora de faixa;
E: um canal a 64 kbit/s para a sinalizao interna;
H: canais digitais com taxas de transmisso de 384, 1536 ou 1920 kbit/s.
Do ponto de vista do fornecimento ao usurio, o CCITT definiu algumas possveis
combinaes destes canais, no estando previstas outras combinaes:
acesso de base: 2B + D
acessos primrios: 30B + D (Europa) e 23B + D (USA e Japo)
acesso hbrido: A + C

interface
instalao do assinante
interfaces
equipamentos
da rede ISDN
(a) (b)
Figura 10.4 - Ilustrao do conceito de interface: (a) segundo o modelo OSI; (b) segundo ISDN.
CAP. 10 ESTADO DA ARTE EM REDES PROF. VITRIO BRUNO MAZZOLA
10.7
A primeira combinao destinada aos assinantes particulares e s pequenas
empresas, sendo que os canais B podem ser utilizados como canal para a transmisso de
dados digitais por pacotes ou como linhas telefnicas digitais, sendo que a sinalizao
relativa a estes canais transmitida sobre o canal D, de modo que a totalidade da
capacidade de transmisso dos canais B disponvel aos assinantes. No acesso de base, a
taxa de transmisso do canal D de 16 kbit/s. Os pedidos de conexo transmitidos sobre o
canal D so representados na forma de mensagens codificadas em caracteres.
Uma mensagem tpica especifica o canal B a ser utilizado (B1 ou B2), o endereo
ISDN do assinante a ser contactado e outras indicaes relacionadas s opes sobre a
natureza da chamada.
A segunda combinao destinada principalmente s empresas, oferecendo 30 ou
23 canais B (dependendo se a rede na Europa ou USA e Japo) e um canal D. J a
terceira combinao destinada utilizao de aparelhos telefnicos analgicos (graas ao
fornecimento de um canal A) e para o envio de dados ou voz digital, graas ao fornecimento
de um canal C digital.
2.6. Outros pontos relativos a ISDN
O grande objetivo das ISDN a substituio global das redes telefnicas analgicas
atualmente instaladas por um sistema digital capaz de suportar o trfico telefnico clssico,
mas tambm o transporte de outras formas de informao, como as imagens, os dados,
etc...
Desta forma, qualquer assinante em qualquer lugar do mundo ter, sua disposio,
uma possibilidade de comunicao unificada por intermdio de interfaces padronizadas.
O acesso de base ISDN padronizado internacionalmente, existindo pequenas
variaes de implementao no que concerne o acesso primrio.
Uma grande vantagem da padronizao das interfaces ser a necessidade do
fornecimento, por parte dos fabricantes de uma grande quantidade de equipamentos
(terminais, aparelhos telefnicos, etc...) compatveis ISDN, o que permitir sua obteno a
baixos custos.
Por outro lado, os trabalhos de padronizao dos aspectos relativos a ISDN dever
tomar ainda algum tempo, enquanto a tecnologia evolui de forma assombrosa, o que
significa que as solues adotadas para a rede ISDN podero, no momento estar em atraso
com as solues existentes no mercado.
Em todo caso, as redes ISDN devero vir a ser a segunda rede de comunicao de
mbito mundial, aps a rede telefnica, sendo que, atualmente, um grande nmero de
pases esto trabalhando no seu desenvolvimento.
A interconexo das redes ISDN a nvel de pases j est se iniciando, sendo que
algumas das conexes internacionais (particularmente entre Europa e Estados Unidos)
foram iniciadas no incio dos anos 90. Resta saber quando se poder contar com esta
tecnologia a nvel de Brasil.
3. A REDE FDDI
A rede FDDI (Fiber Distributed Data Interface) uma rede estruturada em malha ou
anel que utiliza a fibra tica como suporte de transmisso. um padro ANSI, com controle
de acesso ao meio controlado por ficha, apresentando alto desempenho no que concerne a
transmisso de dados.
A taxa de transmisso nominal atinge os 100 Mbit/s, podendo abranger distancias de
200 km, permitindo a conexo de at 1000 estaes, o que faz com que a rede FDDI possa
ser utilizada em conjunto ou em substituio a redes locais baseadas nas normas IEEE. No
entanto, a alta taxa de transmisso atingida permite que esta seja utilizada como uma rede
localizada num nvel hierrquico acima das redes locais tradicionais, servindo de meio de
transporte entre as diversas redes locais, como sugere a configurao ilustrada na figura
10.5.
CAP. 10 ESTADO DA ARTE EM REDES PROF. VITRIO BRUNO MAZZOLA
10.8
gateway
computador
REDE FDDI
BARRAMENTO COM FICHA
(TOKEN BUS)
ETHERNET
ETHERNET
ANEL COM FICHA
(TOKEN RING)
Figura 10.5 - Rede FDDI sendo utilizada em conjunto com redes locais tradicionais.
A rede FDDI-II, verso mais recente da rede FDDI, foi concebida para levar em conta
o trfego de dados variveis, particularmente os dados informticos, os dados com
restries temporais rigorosas (por exemplo, a voz digitalizada) e os dados vindos de redes
tipo ISDN.
A rede FDDI baseada na existncia de duas malhas de fibra tica, sendo que a
transmisso numa malha feita num sentido e na outra malha em sentido inverso, como
ilustra a figura 10.6(a). Esta estrutura permite obter um maior grau de confiabilidade da rede,
uma vez que, se uma das malhas interrompida acidentalmente, a segunda pode ser
utilizada como suporte de transmisso. Ainda, se as duas malhas vm a ser interrompidas
num mesmo ponto, estas podem ser reconfiguradas de modo a compor uma nova e nica
malha, como est ilustrado na figura 10.6(b).
A norma ANSI que especifica a rede FDDI define duas categorias de estaes a
serem conectadas s redes FDDI:
as estaes de classe A, que so conectadas s duas malhas;
as estaes de classe B, de menor custo, que so conectadas unicamente a uma
malha.
A escolha sobre qual estao conectar, de classe A ou B, feita em funo do grau
de confiabilidade desejado e, evidentemente, dos investimentos que se pode fazer. De todo
modo, uma mesma rede FDDI pode suportar as duas classes de estaes
simultaneamente.
A transmisso de bits na camada fsica segue a tcnica de cdigos de grupo,
denominado 4B/5B. Esta tcnica baseada na associao, a cada 4 bits, de uma palavra de
5 bits chamada smbolo. Esta codificao caracterizada pelo fato de que existiro no
mximo dois zeros consecutivos em cada smbolo, sendo que a tcnica de codificao
utilizada o NRZI. A vantagem desta tcnica de transmisso a reduo do dbito binrio
real sobre a fibra.
No que diz respeito ao controle de acesso ao meio, a rede FDDI fundada na norma
IEEE 802.5, na qual uma estao interessada em realizar um envio deve, antes, tomar
posse de uma ficha que representa o direito de emisso sobre o suporte. Uma vez de posse
da ficha, a estao tem o direito de enviar um quadro, sendo porm forada a retir-lo
quando ele lhe retorna. A diferena bsica entre o protocolo FDDI e o 802.5 diz respeito
emisso da ficha.
CAP. 10 ESTADO DA ARTE EM REDES PROF. VITRIO BRUNO MAZZOLA
10.9
(a) (b)
Figura 10.6 - (a) Rede FDDI; (b) Reconfigurao da rede em caso de interrupo.
Na verso IEEE, uma estao no pode recolocar a ficha em circulao at que o
quadro emitido chegue em sua totalidade. No protocolo FDDI, devido ao grande nmero de
estaes podendo estar conectadas (1000) e grande distancia sendo atingida por esta rede
(200 quilmetros), a espera pelo retorno do quadro introduziria um atraso considervel
prejudicando o desempenho da rede. Por esta razo, neste protocolo, a ficha enviada
imediatamente aps o envio do quadro. Isto significa que, num anel de dimenses
relativamente grandes, diversos quadros podem estar circulando simultaneamente.
A estrutura dos quadros similar quela do protocolo IEEE, sendo que o protocolo
FDDI permite, alm dos quadros normais, o envio de quadros especiais, denominadas
tramas sncronas. So quadros comportando mensagens que apresentam restries
temporais crticas.
4. A PESQUISA EM REDES DE COMUNICAO ESTADO DA ARTE
As redes de comunicao esto assumindo um papel de importncia cada vez maior
em nossas vidas, seja do ponto de vista profissional (muito mais evidente), seja do ponto de
vista domstico (no demoraremos a sentir tambm esta evidencia).
A rea tecnolgica esta em constante evoluo, comportando-se como um sistema a
realimentao positiva: para cada soluo obtida vo surgindo novas necessidades
particularmente em funo da abertura de possibilidade de novas aplicaes. Isto uma
realidade principalmente na rea da informtica.
Quem est habituado a utilizar computadores por pelo menos dez anos pode ser
testemunha da crescente evoluo ocorrida neste perodo no que diz respeito s arquiteturas
de computadores. E, apesar disto...quem se d por satisfeito???
Na rea das redes de comunicao, o perfil semelhante; embora grandes
resultados tenham sido obtidos nos ltimos anos, novas necessidades vo aparecendo e
motivando a continuidade dos trabalhos de pesquisa na rea.
Vamos tentar, sem, evidentemente conseguir esgotar o assunto, discutir brevemente
alguns temas de pesquisa em realizao na rea das redes de comunicao.
4.1. A Engenharia de Protocolos de Comunicao
Como foi mostrado nos captulos 2 e 3, o desenvolvimento de uma arquitetura de
comunicao baseada na implementao de um conjunto considervel de protocolos de
comunicao que, respeitando o que definido nas normas, operam no sentido de oferecer
os servios definidos para cada camada compondo a arquitetura.
Apesar da proposta de arquitetura de comunicao em vrias camadas, adotada pela
totalidade das propostas de redes de comunicao, os protocolos de comunicao a nvel
CAP. 10 ESTADO DA ARTE EM REDES PROF. VITRIO BRUNO MAZZOLA
10.10
de cada camada constituem-se num grau de dificuldade considervel pela grande
quantidade de problemas que estes devem tratar.
Isto significa que a concepo de protocolos de comunicao uma tarefa longe do
trivial, necessitando ser desenvolvida com base numa poltica de disciplina que evoque as
normas definidas pela engenharia de programao. O nome de Engenharia de Protocolos
surge ento, como uma forma de particularizao pela aplicao das normas da Engenharia
de Programao concepo dos protocolos de comunicao.
Um grande nmero de trabalhos tem sido realizados nesta rea, particularmente nos
seguintes temas:
estudo e definio de modelos e metodologias de desenvolvimento de protocolos;
desenvolvimento de ferramentas automatizadas para a construo de protocolos
de comunicao;
desenvolvimento de tcnicas de validao de software para protocolos de
comunicao;
desenvolvimento de metodologias e tcnicas para o teste de implementaes de
protocolos;
etc...
4.2. Sistemas multimdia
Um outro aspecto importante no domnio das redes de comunicao e que vem
surgindo como uma palavra que traduz o futuro das comunicaes via rede o suporte a
aplicaes multimdia. Por aplicao multimdia entende-se as aplicaes informticas que
envolvem o tratamento de diversos tipos de informao, alm dos tradicionais dados
informticos: imagem, sinais de udio e vdeo, etc...
A possibilidade de suporte transmisso destes tipos de informao abre as portas
para um conjunto bastante importante de aplicaes, como, por exemplo:
as teleconferncias;
a manuteno remota;
a troca de diagnsticos mdicos ou mesmo cirurgias a distancia;
a realidade virtual;
o videofone;
etc...
evidente que a existncia, num mesmo sistema de dados de naturezas to
distintas impem dificuldades a serem contornadas, para algumas das quais as solues j
existem sendo que outras ainda representam uma incgnita. Um dos problemas a ser
enfrentado, evidentemente, a questo das taxas de transmisso disponveis nas redes de
comunicao. As redes atuais esto em condies de suportar a demanda das aplicaes
multimdia, dado o grande volume de informao que dever trafegar na rede?
Outra questo so os protocolos de comunicao. Aqueles protocolos desenvolvidos
para o suporte ao transporte de dados informticos estariam adaptados para a transmisso
de outros tipos de informao? E as interaes entre diversas mdias, como sero tratadas?
Por exemplo, quando imagem e som so transmitidos via rede, quem vai assumir a tarefa de
tratar a sincronizao entre os dois tipos de informao? So questes que alguns trabalhos
sendo realizados no devero tardar a responder.
4.3. As redes de comunicao industriais
As redes de comunicao tm servido, j h vrios anos, como meio de integrao
das diferentes atividades de uma empresa. Alguns resultados importantes foram obtidos,
motivados pelas prprias necessidades das empresas na interconexo de seus
CAP. 10 ESTADO DA ARTE EM REDES PROF. VITRIO BRUNO MAZZOLA
10.11
equipamentos. Podemos ressaltar a os trabalhos iniciados pela General Motors e que
resultaram na definio da arquitetura MAP como proposta de padro de comunicao para
a interconexo de equipamentos de produo programveis.
No entanto, a continuidade dos trabalhos neste domnio permitiu verificar que a
arquitetura MAP no era adequada para todos os nveis de atividades dentro da empresa,
particularmente os nveis hierrquicos mais baixos, onde as trocas de mensagens so
realizadas com freqncia relativamente elevada, com restries temporais crticas, sendo
que o atraso ou a no chegada de uma mensagem em tempo hbil pode comprometer o
bom funcionamento de um processo de fabricao. Isto motivou o aparecimento de novas
propostas de arquiteturas de comunicao, mais adaptadas para estes nveis: os chamados
Barramentos de Campo (Fieldbus). Diversas propostas resultaram dos trabalhos realizados,
algumas das quais j existentes na forma de produtos.
4.4. As redes de comunicao domsticas
Mais recentemente, principalmente nos pases mais desenvolvidos, o uso dos
computadores transcendeu a fronteira das instituies para atingir tambm os lares. Cada
vez mais pessoas tornam-se possuidoras de computadores pessoais, principalmente devido
s constantes quedas de preo destes equipamentos.
Em muitos pases, os computadores so vendidos at mesmo em supermercados,
ao lado dos equipamentos eletrodomsticos. Teriam os computadores sido transformados
em eletrodomsticos ou os eletrodomsticos em computadores? A verdade que muitos
eletrodomsticos de hoje (e sem dvida a totalidade dos de amanh), so dotados de um ou
vrios processadores, constituindo-se numa mquina programvel.
Se possvel hoje conectar computadores a nvel de uma escola, uma empresa ou
repartio pblica por meio de uma rede de comunicao, por que no fazer o mesmo numa
residncia? Esta idia motivou o aparecimento de um novo conceito, o dos sistemas de
comunicao domsticos (ou home systems), que sugere a interconexo dos diversos
equipamentos presentes numa casa atravs de uma rede que vai permitir a comunicao
entre um dado equipamento com os demais instalados na casa ou com o exterior.
Diversos projetos de pesquisa esto em realizao, principalmente nos Estados
Unidos, Japo e Europa, com objetivo de definir padres de protocolos para atenderem a
esta classe de sistemas, assim como de especificar e desenvolver equipamentos
compatveis com estes padres.
B.1
B BI BLI OGRAFI A I BLI OGRAFI A
COMER, D.; STEVENS, D. L.
Internetworking with TCP/IP, Ed. Prentice-Hall, New York, 1993.
GIOZZA, W. F. et alli.
Redes Locais de Computadores - Tecnologia e Aplicaes, McGraw-Hill, So Paulo, 1986.
RUDNIANSKI, M.
Architecture de Rseaux: le modle ISO - Rle et Fonctionnalits, Editests, Paris, 1986.
SOARES, L. F. G.; LEMOS, G.; COLCHER, S.
Redes de Computadores: Das LANs, MANs e VANs s Redes ATM, 2 Edio. Ed.
Campus, Rio de Janeiro, 1997.
TANENBAUM, A. S.
Redes de Computadores, 3 edio, Ed. Prentice Hall, New York, 1996.