GERêNCIA CORPORATIVA by xiaohuicaicai

VIEWS: 5 PAGES: 102

									   Pontifícia Universidade Católica do Paraná
   Centro de Ciências Exatas e Tecnológicas
    Especialização em Sistemas Distribuídos




A UTILIZAÇÃO DE TECNOLOGIAS WEB EM
SISTEMAS DE GERÊNCIA CORPORATIVA




            Curitiba, março de 2000
                                                                       2


              José Luís Vieira Carvilhe




A Utilização de Tecnologias WEB em Sistemas de
             Gerência Corporativa




                        Monografia apresentada à Coordenação do
                        Curso   de      Especialização     em   Sistemas
                        Distribuídos,    da   Pontifícia    Universidade
                        Católica do Paraná, sob a orientação do
                        Professor Doutor Carlos Alberto Maziero.




              Curitiba, março de 2000
                                                                                3


                             Agradecimentos


       À minha esposa Marcia pelo apoio e incentivo durante o período em que me
dediquei a este projeto pessoal.


      Ao Professor Doutor Carlos Alberto Maziero pelo apoio durante o curso de
especialização e pela orientação desta monografia.


      Aos amigos de trabalho da Companhia de Informática do Paraná - CELEPAR,
que direta ou indiretamente contribuíram através de críticas e sugestões, para a
melhoria da qualidade deste trabalho.


      À Companhia de Informática do Paraná - CELEPAR pelo programa de
incentivo à educação na busca da qualidade dos serviços do estado para o cidadão.
                                                          4


                                   Sumário



1 INTRODUÇÃO                                             11



2 GERÊNCIA CORPORATIVA                                   13

2.1     CONCEITO DE GERÊNCIA CORPORATIVA                 13
2.2     BENEFÍCIOS DA GERÊNCIA CORPORATIVA               14
2.3     SISTEMAS CONVENCIONAIS DE GERÊNCIA CORPORATIVA   15

3 AS ÁREAS DE GERÊNCIA E SEUS PADRÕES                    18

3.1     GERÊNCIA DE REDES                                18
3.1.1      SNMP                                          20
3.1.2      CMIP                                          30
3.1.3      TMN                                           33
3.2     GERÊNCIA DE SISTEMAS                             34
3.2.1      DMI                                           34
3.3     GERÊNCIA DE APLICAÇÕES                           37
3.3.1      ARM                                           37
3.4     GERÊNCIA DE SERVIÇOS                             37

4 GERÊNCIA VIA WEB                                       39

4.1    CONCEITO DE GERÊNCIA VIA WEB                      39
4.1.1     FRAMEWORKS DE GERÊNCIA VIA WEB                 40
4.1.2     BENEFÍCIOS DA GERÊNCIA VIA WEB                 44
4.2    A EVOLUÇÃO DA INTERNET E SERVIÇOS WEB             46
4.3    TECNOLOGIAS WEB                                   48
4.3.1     PROTOCOLOS DE COMUNICAÇÃO                      48
4.3.1     BROWSER WEB                                    51
4.3.2     SERVIDOR WEB                                   53
4.3.3     MARKUP LANGUAGES                               55
4.3.4     LINGUAGENS DE PROGRAMAÇÃO WEB                  62
4.3.5     LINGUAGENS SCRIPT WEB                          64
4.3.6     FORMATOS GRÁFICOS                              68
4.3.7     MIME                                           69
4.3.8     CGI                                            69
4.3.9     ACTIVEX                                        70
4.3.10     SEARCH ENGINES                                70
4.3.11     BANCOS DE DADOS                               70
4.3.12     VRML                                          71
4.3.13     COOKIES                                       71
4.4    CONCLUSÃO                                         71
                                                               5

5 JAVA MANAGEMENT EXTENSION - JMX                             73

5.1     JMX                                                   73
5.2     ARQUITETURA JMX                                       73
5.3     COMPONENTES JMX                                       74
5.3.1      RECURSO GERENCIÁVEL                                74
5.3.3      AGENTE JMX                                         76
5.3.2      GERENTE JMX                                        77
5.3.3      SERVIÇOS DE GERÊNCIA                               77
5.3.4      APIS PARA OUTROS PROTOCOLOS DE GERÊNCIA            78
5.4     CONCLUSÃO                                             78

6 WEB MANAGEMENT ENTERPRISE - WEBEM                           79

6.1     INICIATIVA WEBEM                                      79
6.2     ARQUITETURA WEBEM                                     80
6.2     COMPONENTES DA ARQUITETURA WEBEM                      83
6.2.1       CIM                                               83
6.2.2       CIMOM                                             87
6.2.3       HMMP                                              87
6.2.3       XML                                               87
6.3     CONCLUSÃO                                             88

7 ESTUDO UNICENTER TNG                                        89

7.1   INTRODUÇÃO                                              89
7.2   ARQUITETURA UNICENTER TNG                               89
7.2.1     INTERFACE COM O MUNDO REAL                          92
7.2.2     REPOSITÓRIO DE OBJETOS                              92
7.2.3     VISÃO DE NEGÓCIOS                                   93
7.2.4     AUTO DISCOVERY                                      94
7.2.5     GERENTES E AGENTES                                  94
7.2.6     DISCIPLINAS DE GERÊNCIA CORPORATIVA                 95
7.2.7     TECNOLOGIA DE REDES NEURAIS                         95
7.2.8     UNICENTER TNG SDK                                   95
7.3   ANÁLISE DA SOLUÇÃO UNICENTER TNG                        96
7.3.1     A SOLUÇÃO UNICENTER TNG E A GERÊNCIA CORPORATIVA    96
7.3.2     A SOLUÇÃO UNICENTER TNG E OS PADRÕES DE MERCADO     96
7.3.3     A SOLUÇÃO UNICENTER TNG E A GERÊNCIA VIA WEB        97

8 CONCLUSÕES                                                  98



BIBLIOGRAFIA                                                 101
                                                                              6


                           Lista de Figuras

Figura 2.1 – Áreas de Gerência Corporativa ______________________________ 13
Figura 2.2 – Políticas de Gerência Corporativa ____________________________ 15
Figura 2.3 – Domínios de Gerência Corporativa ___________________________ 16
Figura 2.4 - Relação entre as áreas de gerência ___________________________ 17
Figura 3.1 – Modelo de Gerência de Redes ______________________________ 19
Figura 3.2 – Evolução da Versões do protocolo SNMP ______________________ 21
Figura 3.3 – Modelo de Referência SNMP ________________________________ 23
Figura 3.4 – Objetos da MIB __________________________________________ 25
Figura 3.5 – Versões do Protocolo RMON ________________________________ 30
Figura 3.6 – Estrutura do protocolo CMIP ________________________________ 31
Figura 3.7 – Serviços CMIP ___________________________________________ 32
Figura 3.8 – Arquitetura da Interface DMTF _______________________________ 36
Figura 3.9 – Arquitetura ARM __________________________________________ 38
Figura 4.1- Modelo Genérico de Gerência via WEB ________________________ 41
Figura 4.2 – Modelo de Framework Nativo _______________________________ 42
Figura 4.3 – Modelo de Framework Proxy ________________________________ 43
Figura 4.4 – Modelo de Framework Gateway _____________________________ 44
Figura 4.5 – Modelo TCP/IP ___________________________________________ 49
Figura 4.6 – Browser WEB ____________________________________________ 52
Figura 4.7 – Servidor WEB ___________________________________________ 54
Figura 4.8 – Transação HTTP _________________________________________ 55
Figura 4.9 – TAGs HTML versão 2.0 ____________________________________ 58
Figura 4.10 – TAGs HTML versão 3.2 ___________________________________ 60
Figura 4.11 – Exemplo de codificação da linguagem Java ___________________ 63
Figura 4.12 – Exemplo de codificação da linguagem C++ ____________________ 63
Figura 4.13 – Exemplo de codificação da linguagem C ______________________ 64
Figura 4.14 – Exemplo de codificação da linguagem JavaScript _______________ 65
Figura 4.15 – Exemplo de codificação da linguagem ECMAScript _____________ 66
Figura 4.16 – Exemplo de codificação da linguagem PERL __________________ 66
Figura 4.17 – Exemplo de codificação da linguagem TCL ____________________ 67
Figura 4.18 – Exemplo de codificação da linguagem Python__________________ 67
                                                                          7


Figura 5.1 – Arquitetura JMX __________________________________________ 75
Figura 6.1 – Modelo de fluxo de dados WEBEM ___________________________ 80
Figura 6.2 – Modelo de Referência WEBEM ______________________________ 81
Figura 7.1 Arquitetura Unicenter TNG ___________________________________ 91
                                                                 8


               Lista de Abreviaturas

ACSE      Association Controll Service Element
API       Application Program Interface
ARM       Application Response Measure
ARP       Addres Resolution Protocol
ARPANET   Advanced Projects Agency Network
ASN.1     Abstract Syntax Notation One
ATM       Asynchronos Transfer Mode
BER       Basic Encolding Rules
CERN      European High-Energy Particle Physics Lab
CCI       Common Communication Interface
CCITT     International Consultive Committee on Telegraphy and
          Telephony
CGI       Common Gateway Interface
CIM       Common Information Model
CIMOM     CIM Object Manager
CMIP      Common Management Information Protocol
CMIS      Common Management Information Service
CMISE     Common Management Information Service Element
CORBA     Common Object Request Broker Architecture
DMTF      Distributed Management Task Force
DMI       Desktop Management Interface
DOM       Document Object Model
DNS       Domain Naming Service
ENF       Event Notification Faciliy
FDDI      Fiber Distributed Data Interface
FTP       File Transfer Protocol
GDMO      Defining Managed Objects
GIF       Graphic Interchange Format
GUI       Graphical User Interface
HMMP      HyperMedia Management Protocol
HMMS      HyperMedia Management Object
                                                                   9


HTML     Hypertext Markup Language
HTTP     Hypertest Transfer Protocol
IAB      International Architecture Board
IANA     Internet Assigned Number Authority
ICMP     Internet Control Message Protocol
IETF     Internet Engineering Task Force
IIOP     Internet Inter-ORB Protocol
IP       Internet Protocol
IPX      Internetwork Packet Exchange
ISO      International Standard Organization
ITU-T    International Telecomunications Union-Telecomunications
         Sector
JDBC     Java Database Connectivity
JMX      Java Management Extension
JPEG     Joint Photographic Experts Group
MAC      Medium Access control
MIB      Management Information Base
MIF      Management Information Format
MIME     Multipurpose Internet Mail Extension
NMF      Network Management Forum
NCSA     National Center Supercomputing Applications
NSF      National Science Foundation
NSFNET   National Science Foundation Network
ODBC     Open Database Conectivity
ORB      Object Request Brocker
OSI      Open System Interconnection
PERL     Pratical Extraction and Report Language
PDU      Protocol Data Unit
PNG      Portable Network Graphics
RARP     Reverse Addres Resolution Protocol
RFC      Request for Comments
RMON     Remote Network Monitoring
ROSE     Remote Operations Service Element
SDK      System Developer Kit
                                                  10


SGML    Standard Generalized Markup Language
SMI     Structureof Management Information
SNMP    Simple Network Management Protocol
SPX     Sequence Packet Exchange
SSI     Server Side Includes
TCL     Tool Control Language
TCP     Transmission Control Protocol
TMN     Telecommunications Management Protocol
UDP     User Datagram Protocol
UML     Uniform Modeling Language
URL     Uniform Resource Location
VBNS    Very High Speed Backbone Network System
VRML    Virtual Reality Modeling Language
WEBEM   Web-based Enterprise Management
WWW     World Wide Web
XML     Extensible Markup Language
                                                                                   11


1     INTRODUÇÃO

      As tecnologias baseadas na arquitetura WEB estão contribuindo para o
surgimento de um número crescente de aplicações. As principais características
destas aplicações são o fácil acesso de qualquer lugar da Internet e das rede
corporativas e a tendência de redução de custos com a utilização de interfaces
baseadas em browsers WEB.


      A Internet e as tecnologias WEB estão influenciando o cotidiano das
pessoas de uma forma nunca antes vista. Mesmo quando uma pessoa tem em
mãos uma revista, um livro ou um jornal, acabará identificando uma referência a um
site na Internet ou um endereço de E-mail. No site do seu banco por exemplo, esta
pessoa pode realizar a maioria das suas transações bancárias, pagar as suas
contas e impostos, sem necessidade de sair de casa. Sem contar ainda com a
possibilidade de declarar o imposto de renda; acompanhar noticiários; participar de
um leilão online; comprar um livro entre outras inúmeras atividades, que cada vez
mais fazem parte da rotina dessas pessoas e das empresas.


      No   universo   corporativo   diversas   aplicações   para   administração   e
gerenciamento de redes e sistemas baseados na arquitetura WEB estão surgindo,
caracterizando a tendência de utilização destas aplicações somada a necessidade
de redução dos custos envolvidos na implementação de sistemas de gerência
corporativa.


      A gerência corporativa baseada em tecnologias WEB é representada por
um misto de tecnologias, protocolos e linguagens que podem ser implementadas de
forma pontual nas soluções de administração e gerência, ou podem servir de base
para novas plataformas de gerência que estão surgindo. Algumas iniciativas
apontam para o surgimento de novos modelos de frameworks de gerência
corporativa baseados nesta arquitetura.


      Este trabalho tem como objetivo analisar a utilização das tecnologias WEB
em sistemas de gerência corporativa.
                                                                                    12




       No capítulo 2 deste trabalho é apresentado o conceito de gerência
corporativa [HER99][MUR98][STA96], seus benefícios e uma visão geral sobre os
frameworks de gerência convencionais e áreas da gerência corporativa.


       No   capítulo   3   são   detalhadas   as   áreas   de   gerência   e   padrões
[DMT99][HER99][LEI96][MUR98][STA96][THE99]             utilizados      para      cada
implementação.


       No capítulo 4 é apresentado o conceito de gerência via WEB [HER99] e os
modelos de implementação de gerência via WEB [HER99]. Nesta capítulo são
ainda analisadas a evolução da Internet e Serviços WEB e as tecnologias [HER99]
utilizadas na implementação da gerência corporativa via WEB.


       No capítulo 5 é apresentada a iniciativa JMX da Sun Microsystems para a
gerência corporativa via WEB. No capítulo 6 é apresentada a iniciativa WEBEM do
Distributed Management Task Force (DMTF) como solução para a integração dos
sistemas convencionais de gerência corporativa aos sistemas de gerência via
WEB.


       E finalmente, no capítulo 7 é estudada a solução de gerência corporativa
Unicenter TNG da empresa Computer Associates. Neste capítulo esta solução é
estudada sobre a ótica da implementação de funcionalidades de gerência via WEB
e validação dos conceitos apresentados nos capítulos anteriores deste trabalho.
                                                                              13


2     GERÊNCIA CORPORATIVA
2.1   Conceito de Gerência Corporativa


      A gerência corporativa é conceituada em [HER99] como um conjunto de
aplicações associadas a softwares e hardwares que tem como objetivo monitorar e
controlar os recursos de informática de uma empresa. A principal função dos
sistemas de gerência corporativos é garantir a comunicação das informações da
empresa de forma eficiente e segura. Integrando aplicações de forma a se obter o
gerenciamento distribuído dos recursos de informática.


      O maior desafio da gerência corporativa é o monitoramento e controle das
diversas plataformas de hardware e software existentes e emergentes. Somado a
complexidade de gerenciamento dos mais diversos sistemas, aplicações e serviços
existentes em uma rede heterogênea.


      A gerência corporativa [HER99] abrange diversas áreas de gerência
definidas em camadas a partir da gerência de redes, conforme descrito na figura
2.1, seguida da gerência de sistemas, aplicações, serviços e outras disciplinas
de gerência que em conjunto definem todos os recursos corporativos que
necessitam ser gerenciados.



                                      Redes



                                     Sistemas


                                    Aplicações


                                     Serviços


                                      Outras


                         Figura 2.1 – Áreas de Gerência Corporativa
                                                                                    14


2.2   Benefícios da Gerência Corporativa


      Entre os vários benefícios decorrentes da correta implementação da Gerência
corporativa destacam-se [HER99]:


         Alta disponibilidade dos recursos de informática, através da redução dos
          gargalos de redes, sistemas, aplicações e serviços determinando de forma
          pró-ativa os diversos tipos de gargalos antes de sua ocorrência;
         Melhoria do fluxo de informações na empresa, através do aumento da
          produtividade na criação, distribuição, utilização, impressão,      guarda e
          backup;
         Aumento da Segurança, através da adição de níveis de segurança para a
          manutenção de dados de natureza crítica e confidencial. Incluindo a
          implementação de políticas de segurança de acesso.
         Redução do custo total de propriedade de todos os recursos de
          informática, através da melhoria da manutenção, diminuição dos custos de
          gerenciamento que seria feito de forma personalizada;
         Aumento da flexibilidade dos procedimentos operacionais, através da
          simplificação da execução de procedimentos operacionais e tarefas de
          manutenção usuais como a migração para uma nova plataforma de
          hardware ou software, realização de inventários, distribuição de softwares
          entre outras.


      Para que todos os benefícios da gerência corporativa possam ser
efetivamente implementados, é necessário definir quais são as políticas da
empresa. Isto irá facilitar a apresentação e definição dos objetivos da empresa. A
figura 2.2 descreve a política de gerência corporativa como parte de um grupo de
políticas que pode definir como toda a empresa funciona, Incluindo como a
tecnologia de rede é utilizada.


      A política de gerência corporativa é constituída de dois importantes
aspectos: a funcionalidade de gerenciamento e o uso de frameworks baseados em
padrões   abertos.   A    funcionalidade   de   gerenciamento   trata   dos   detalhes
                                                                                         15


administrativos e operacionais de cada dispositivo ou recurso gerenciado, como
cada recurso é gerenciado e a que nível é gerenciado. O framework é definido pelo
tipo específico de padrão empregado. Os padrões predominantes em uso
atualmente incluem SNMP, CMIP, TMN, DMI entre diversos outros, utilizados pelos
fornecedores de soluções de gerência corporativa para a construção de seus
produtos em uso comercial.



                                         Politicas da Empresa




                           Politicas
                         de Gerência
                         Corporativa



                                                                          Outras
                                                                       Políticas da
                                Frameworks                               empresa
             Funcionalidades    Baseados em                          (Segurança, etc.)
                                padrões abertos




                          Figura 2.2 – Políticas de Gerência Corporativa



2.3   Sistemas Convencionais de Gerência Corporativa

      Existem hoje no mercado diversos sistemas convencionais de gerência
corporativa, estes sistemas são conhecidos como frameworks. Estes frameworks
são baseados em padrões abertos, com suporte a diversas plataformas de
hardware e software, em ambientes de rede heterogênea. Nos últimos 10 anos
houve um grande crescimento e amadurecimento dos sistemas de gerência
corporativa. Neste período foram adicionados diversos tipos de gerenciamento e
novas funcionalidades.
                                                                                  16


      O Internet Engineering Task Force (IETF) tem recomendado o Padrão SNMP
para a implementação da gerência de redes com TCP/IP por quase toda a última
década. Da mesma forma os frameworks de gerência de redes e sistema da ISO
com os protocolos CMIS/CMIP, tem sido utilizado nas redes OSI e nas grandes
companhias de telecomunicações por toda a última década. O crescimento da WEB
reativou a iniciativa e o interesse nos frameworks DMTF para gerência de sistemas
utilizando o padrão DMI. Todos estes frameworks de gerência têm estendido sua
atuação sobre a gerência de redes de dados e telecomunicações. E adicionalmente
aos padrões utilizados vários outros consórcios e fóruns estão desenvolvendo novos
frameworks e APIs,     promovendo desta forma o aumento da abrangência da
gerência corporativa de redes e sistemas.


      O Network Management Forum (NMF) desenvolveu [HER99] um modelo de
referência para o TMN framework que representa muito bem a gerência
corporativa. O padrão TMN utiliza uma pirâmide para representar os vários níveis
dos domínios de gerência e sua inter-relação. Na figura 2.3, no nível mais baixo são
representados os dispositivos gerenciados de redes.




                                     Gerência de
                                      Negócio


                                    Gerência de
                                     Serviços


                      Gerência de                 Gerência de
                        Redes                      Sistemas


                                    Gerência de
                                Dispositivos de rede



                        Figura 2.3 – Domínios de Gerência Corporativa
                                                                                                    17


      Na segunda camada são representadas as gerências de sistemas e redes.
Na terceira e quarta camadas, são representadas a gerência de serviços e
negócios da empresa.


      Este modelo foi usado primeiramente para a gerencia de redes de
telecomunicações,       contudo     com      a     convergência         dos      dados     com      as
telecomunicações, este modelo pode ser utilizado para cobrir todos os dispositivos
de rede, sistemas, serviços e o negócio das empresas.


      A gerência de redes é responsável pela gerência dos dispositivos da rede
estendendo a gerência a si mesma.              A gerência de sistema trata dos recursos
disponíveis numa determinada rede. Incluindo a gerência de aplicações que estão
sendo executadas num determinado sistema da rede. O grau de complexidade
aumenta com centralização da gerência de serviços específicos, como níveis de
serviço, políticas e conhecimento, de forma a se ter uma visão de gerência global do
negócio da empresa. A figura 2.4 representa a relação entre os tipos de Gerência
para cada dispositivo gerenciado da rede.




                                                                                 Outras áreas
    Outras áreas                                                                 de Gerência
    de Gerência


    Gerência                                                                          Gerência
   de Serviços                                                                       de Serviços
    Gerência                                                                          Gerência
  de Aplicações                                                                     de Aplicações

 Gerência de Sistemas                                                       Gerência de Sistemas




                                    Gerência de Redes



                          Figura 2.4 - Relação entre as áreas de gerência
                                                                                    18


3      AS ÁREAS DE GERÊNCIA E SEUS PADRÕES

3.1    Gerência de Redes


       Conforme detalhado em [MUR98][STA96], a gerência de redes é
responsável pela monitoração, controle e configuração de dispositivos de redes. A
ISO definiu cinco principais áreas funcionais de gerência que são utilizadas pelos
frameworks padrões IETF e OSI para as aplicações de gerência de redes. Estas
áreas funcionais estão definidas da seguinte forma [MUR98] [STA96]:


          Gerência de Configuração, responsável pelo reconhecimento dos
           dispositivos da rede, o seu mapeamento e como cada dispositivo é
           configurado para operar;
          Gerência de Falhas, responsável pela detecção, localização e correção
           dos problemas de hardware e software da rede;
          Gerência de Performance, responsável pela monitoração da performance
           e sintonia da rede quando necessário. Trata da eficiência do uso da rede
           e seus recursos;
          Gerência de contabilização, responsável pela contabilização do uso dos
           recursos de rede por usuário e aplicação;
          Gerência de Segurança, responsável pela manutenção da privacidade,
           definição de políticas e administração da segurança de acesso aos
           recursos de rede e informações confidenciais da empresa.


       Os frameworks IETF e OSI são representados respectivamente pelos
sistemas baseados em protocolos SNMP e CMIP. Estes protocolos apesar de terem
sido   criados   com   propósitos     e   padrões   diferentes,   apresentam   algumas
características comuns destacadas abaixo:


          Possuem uma definição de como as informações de gerência são
           estruturadas;
          Possuem um conjunto de objetos gerenciados;
          Possuem um protocolo de gerência;
                                                                                               19


      Cada framework de gerência de redes possui uma notação padrão para a
definição da estrutura de informação de gerência. Esta notação é utilizada para a
definição do escopo dos objetos de gerência relevantes para cada dispositivo
gerenciado. O protocolo de gerência por sua vez define um conjunto de regras que
permitem dispositivos de gerência, conhecidos como gerentes, se comunicarem
com os dispositivos gerenciados ou agentes, com o propósito de realizar o
intercâmbio das informações de gerência.


      O modelo genérico de arquitetura de gerência de redes descrito em
[MUR98], utilizado pela maioria dos frameworks convencionais e proprietários de
gerência de redes é apresentado na figura 3.1. Este modelo representa a estrutura
de um sistemas de gerência de redes, com os componentes individuais de cada
sistema e a inter-relação entre estes componentes.




     Dispositivo de rede                                               Dispositivo de rede


                                         Protocolo de
    Estação de gerência                gerência de redes               Agente de gerência
          de rede


    Pilha de protocolos e                                              Pilha de protocolos e
           drivers                                                            drivers




                                            Rede



                            Figura 3.1 – Modelo de Gerência de Redes


      Neste modelo os dispositivos de rede são divididos em dispositivos de
gerência e dispositivos gerenciados.         Os protocolos de rede são representados
pelos protocolos de gerência de redes, SNMP para os frameworks padrão IETF e
CMIP para os framewoks padrão OSI. Os dispositivos de rede possuem softwares
de gerência de redes, incluindo os softwares para os agentes e gerentes com suas
                                                                                20


implementações necessárias para o controle dos objetos gerenciados. Neste
modelo ainda são definidas as pilhas de protocolos e dispositivos específicos para
cada implementação. Os dispositivos de redes SNMP utilizam normalmente, o
conjunto de protocolos TCP/IP, mais especificamente o protocolo UDP, como
protocolo de redes e comunicação das aplicações de gerência. Os dispositivos
CMIP utilizam a pilha de protocolos OSI para o mesmo fim.



3.1.1 SNMP


      O Simple Managemente Network Protocol (SNMP) é o protocolo padrão para
o gerenciamento de redes, permitindo o controle e monitoração de uma rede e seus
dispositivos. Este protocolo compõem, conforme descrito anteriormente, os
frameworks de gerência de redes padrão IETF.


      O SNMP foi inicialmente desenvolvido em 1988 [STA96] como uma pequena
solução para gerenciamento de dispositivos conectados a Internet. O plano inicial
era substituir o SNMP pelo padrão OSI depois que ele fosse desenvolvido e
implementado. Este plano não teve sucesso pois a implementação do padrão OSI
era muito lenta e a esta altura o protocolo SNMP já havia se proliferado detendo o
apoio da industria. Como resultado esta substituição acabou não ocorrendo e o
SNMP tornou-se padrão para as redes baseadas no conjunto de protocolos TCP/IP
como a Internet, o CMIP tornou-se padrão inicialmente para as grandes redes de
telecomunicações e outras grandes organizações.


      Originalmente o SNMP oferecia suporte somente para o gerenciamento de
bridges, routers e gateways, mas rapidamente este suporte foi estendido para todo
o tipo de dispositivo de rede. Os dispositivos de redes SNMP utilizaram
originalmente o conjunto de protocolos TCP/IP sobre redes ethernet, como protocolo
de redes e comunicação das aplicações de gerência, no entanto conforme descrito
em [MUR98] existem implementações do SNMP para suporte a Novell IPX/SPX,
ApleTalk DDP e outras tecnologias de enlace como ARCNET, ATM e FDDI.
      A primeira versão do SNMP conhecida como SNMPv1 continua sendo a
versão completa padronizada para a Internet. Diversas tentativas de especificação
                                                                                                 21


da segunda versão falharam, resultando apenas em especificações de nível
histórico ou experimental. Segundo o IETF cada especificação pode apresentar os
níveis proposta, rascunho, completa, experimental e histórica. O SNMPv3 é a
terceira versão do SNMP em desenvolvimento com a proposta de adicionar
características necessárias para o suporte dos ambientes de Internet atuais. Esta
versão está passando para o nível rascunho e as principais propostas são a
segurança e novas implementações para administração remota.



       Nome              Nível                                 Descrição

      SNMPv1           Completa      A versão Original, definida pela RFC 1157 [maio de 1990].

     SNMPsec           Histórica     A primeira tentativa de adição de Segurança ao SNMPv1,
                                     definida pelas RFCs 1351 [julho de 1992], 1352 [julho de
                                     1992] e 1353 [julho de 1992].

     SNMPv2p           Histórica     Outra tentativa de adição de Segurança ao SNMP, definida
                                     pelas RFCs 1441[abril de 1993], 1445 [abril de 1993], 1446
                                     [abril de 1993], 1448 [abril de 1993] e 1449 [abril de 1993].

      SNMP2c         Experimental Foi uma tentativa de combinar o protocolo de operação do
                                     SNMPv2 com com a segurança do SNMPv1, definida pelas
                                     RFCs 1901 [janeiro de 1996] , 1905 [janeiro de 1996] e
                                     1906 [janeiro de 1996].

     SNMPv2u         Experimental Foi uma tentativa de oferecer segurança baseada em nas
                                     operações de nomes de usuários e protocolos do SNMPv2,
                                     definida pelas RFCs 1905 [January 1996],1906 [janeiro de
                                     1996],1909 [fevereiro de 1996] e 1910 [fevereiro de 1996].

     SNMPv2*         Experimental Foi uma tentativa de adicionar as melhores características
                                     do SNMPv2p e SNMPv2u, definida pelo documento
                                     encontrado no site SNMP Research.

      SNMPv3           Proposta      Proposta atual para a adição de segurança e administração
                                     remota ao SNMP, definida pelas RFCs 2271 [janeiro de
                                     1998] e 2275 [janeiro de 1998].


                     Figura 3.2 – Evolução da Versões do protocolo SNMP
                                                                                  22


Na figura 3.2 está descrita a evolução das versões do SNMP.



3.1.1.1        Arquitetura SNMP


       O modelo referencial apresentado na figura 3.3 descreve os componentes da
arquitetura SNMP. Incluindo a estação de gerência, o agente de gerência, a base de
informação e o protocolo de gerência.


       Conforme detalhado em [STA96] a estação de gerência é caracterizada como
uma interface para a aplicação de gerência, com um conjunto de aplicações para
análise de dados e identificação de falhas; interface para monitoração e controle da
rede; um banco de dados com as informações extraídas das MIBs dos dispositivos
gerenciados na rede.


       Os agentes quando instalados nos dispositivos de redes como hosts, bridges,
routers e hubs, respondem por solicitações de informações e ações efetuadas a
partir da estação de gerência e pode de forma assíncrona enviar informações
importantes para esta mesma estação de gerência sem a necessidade de
solicitação.


       Os recursos de uma rede são representados como objetos, cada objeto é
uma variável de dados que representa um aspecto do agente gerenciado. A coleção
destes objetos é referenciada como base de informação de gerência MIB. A estação
de gerência executa as tarefas de monitoração buscando informações dos objetos
da MIB. A estação de gerência pode fazer com que o agente realize uma ação no
dispositivo gerenciado ou modificar uma configuração alterando o valor da variável
específica no agente do dispositivo gerenciado.


       A estação de gerência e os agentes são ligados pelo protocolo SNMP. Este
protocolo possui a capacidade de realizar as operações de get, habilitando a
estação de gerência a requisitar os valores dos objetos no agente; set, habilitando a
estação de gerência a alterar valores dos objetos no agente; trap, habilitando o
agente a informar à estação de gerência sobre eventos importantes.
                                                                                        23




   Gerente de rede




  Interface de usuário

                                                                      Dispositivo
                                                                      gerenciado
      Aplicação de
       gerência
                                 Protocolo SNMP

   MIB       Estação                                               Agent      Agent
  Estação    Gerência                                                          MIB


  Protocolos de Rede                                               Protocolos de Rede




                                      Rede




                          Figura 3.3 – Modelo de Referência SNMP



3.1.1.2        SMI


       A estrutura de informação de gerência (SMI) descreve como os objetos de
gerência das MIBs são definidos e codificados para serem transferidos sobre o
protocolo SNMP. Esta estrutura foi definida pela primeira vez em agosto de 1988 e
obteve o nível completo na RFC 1155. Melhorias na definição de objetos e formato
do mecanismo de trap, foram incluídas em 1991 nas RFCs 1212 e 1215.


       Conforme detalhado em [MUR98][STA96], a SMI identifica quais os tipos de
dados que podem ser utilizados em uma MIB e especifica como os recursos da MIB
são representados e nomeados. A SMI se caracteriza pela definição de tipos de
dados simples do tipos escalar e tabelas bidimensionais. Os tipos de dados
complexos são evitados para simplificar a implementação.
       A estrutura de informação de gerência possui três maneiras de representar as
informações de gerência de forma padronizada:
                                                                                    24




           Fornecendo técnicas padronizadas para definição da estrutura de uma
            determinada MIB;
           Fornecendo técnicas padronizadas para definição de objetos individuais,
            sua sintaxe e valores;
           Fornecendo técnicas padronizadas para a codificação dos valores dos
            objetos;




3.1.1.2.1      Estrutura da MIB


      Conforme detalhado em [STA96] todos os objetos gerenciados de uma MIB
são representados na forma de uma árvore obedecendo uma disposição
hierárquica. Os objetos gerenciados são descritos através de uma linguagem
chamada ASN.1, esta linguagem define uma forma de representação padrão para
as informações de gerência que são trafegadas na rede. Associado a cada tipo de
objeto da MIB existe um identificador do tipo ASN.1 object identifier que serve para
nomear cada objeto. Este nome serve para identificar também a estrutura dos
grupos de objeto.


      Conforme descrito na figura 3.4, o conjunto de objetos possui uma estrutura
em árvore, começando a partir da raiz existem três nós principais no primeiro nível,
o nós iso,ccitt e joint-iso-ccitt, cada um desses nós é administrado pela organização
específica. Dentro do nó iso, uma das ramificações corresponde a dod,
Departamento de Defesa Americano, que criou o primeiro nó para uso do IAB
(Internet). As outras são para uso de outras organizações. Neste caso o object
identifier corresponde ao valor 1.3.6.1. Este valor irá servir como prefixo para os nós
localizados nos níveis mais baixos da árvore.


      O nó Internet é subdividido nos nós diretory, management, experimental e
private. O nó diretório está reservado para os serviços de diretório OSI a serem
implementados futuramente na Internet.
                                                                                 25
root-node


    ccitt (0)




     iso (1)

                    aut (1)

 joint-isso-ccitt
        (2)
                    bod (2)




                    org (3)


                       dod (6)


                        Internet (1)


                              diretory (1)


                              management
                                  (2)

                                                     mib-2 (1)



                                                     System
                                                        (1)
                                                       Interfac
                                                            (2)
                                                         esAt (3)
                                                             Ip (4)
                                                                Icmp
                                                                 (5)
                                                               Tcp (6)
                                                                  Udp (7)
                                                                     Egp (8)
                                                                      Transm
                              experimental                             ission
                                  (3)                                    Snmp
                                                                        (10)
                                                                          (11)

                               private (4)



                                             enterprises
                                                 (1)


                               Figura 3.4 – Objetos da MIB
                                                                                 26


      O ramo management contém os objetos definidos pelo IAB. Sobre este ramo
da árvore , no ramo 1 está definida a MIB SNMP padrão. Incluindo todos os objetos
das MIBs padrões, incluindo a MIB-II que começam com o mesmo prefixo do object
identifier: 1.3.6.1.2.1. O Internet Assigment Number Authority (IANA) é responsável
pela administração deste ramo.


      Os objetos utilizados para testes e pesquisa podem ser definidos no ramo
experimental, cujo prefixo object identifier corresponde a 1.3.6.1.3..1. Este ramo
também é administrado pelo IANA.


      O ramo private possui atualmente apenas um nó definido, o nó enterprise.
Este nó é utilizado pelos fornecedores para a melhoria do gerenciamento de seus
dispositivos e compartilhamento de informações. Cada companhia interessada pode
requerer um número ao IANA para a inclusão de seus objetos.


3.1.1.2.2      Descrição dos Objetos da MIB


      Todo objeto da MIB obedece uma definição formal utilizando a linguagem
ASN.1. A sintaxe define uma estrutura abstrata que corresponde a cada tipo de
objeto específico. Quatro atributos padrões devem ser definidos para cada objeto
para que estes sejam declarados de forma apropriada em uma MIB SNMPv1:


           Syntax type;
           Acces mode;
           Status;
           Name value.


      O atributo syntax type é uma das opções do conjunto de objetos ASN.1
predefinidos. As opções podem ser subdivididas nas categorias simple, application-
wide e simple-constructed.     A categoria simple consiste de INTEGER, OCTET
STRING, OBJET IDENTIFIER E NULL. A categoria application-wide engloba
IpAddress, Netwok Address, Counter, Gauge, TimeTicks e Opaque. A categoria
simple-constructed contém listas e tabelas.
                                                                                  27


      O atributo access mode é examinado pelo agente a cada request de
informações de um objeto. Os valores permitidos são read-only, read-write, write-
only e not-accessible.


      O atributo status define o suporte requerido para a implementação do objeto.
O suporte pode ser mandatory ou optional. Um objeto pode ser especificado como
deprecated, neste caso indica que o objeto deve ser suportado, mas não será
suportado na versão posterior. O objeto pode ser ainda especificado como obsolete,
indicando que o sistema de gerência não implementa mais este objeto.


      O atributo name value é um nome textual, chamado object descriptor que
eqüivale ao seu object identifier correspondente.



3.1.1.2.3    Codificação de Objetos


      Os valores dos objetos definidos e declarados são transmitidos do agente
para o gerente e vice-versa, utilizando uma regra de codificação da linguagem
ASN.1 para a sintaxe do object type. A notação da sintaxe de transferência utilizada
no SNMP é a Basic Encoding Rules (BER). A BER especifica como a sintaxe é
codificada em octetos e transferida pela rede. A BER é um algoritmo que interpreta
os valores ASN.1 e codifica os bits em octetos apropriados para serem transmitidos
pela rede.


3.1.1.3      Protocolo SNMP


      O protocolo SNMP é definido em [STA96] como um protocolo de aplicação
para serviço de gerência de redes. O SNMP foi projetado para ser um protocolo de
camada de aplicação, integrante do conjunto de protocolos TCP/IP. Operando desta
forma sobre o protocolo UDP. O SNMP é um protocolo de requisição e resposta
assíncrono que atende a estação de gerência e os agentes. O SNMPv1 suporta
cinco tipos de mensagens que contém o comando e os dados associados. A
estação de gerência tem a capacidade de transmitir mensagens com três diferentes
PDUs: Get-Request- PDU, GetNextRequest-PDU e SetRequest-PDU. O agente
                                                                                28


pode transmitir mensagens com dois diferentes PDUs: GetResponse-PDU
processando requisições provenientes da estação de gerência e mensagens Trap-
PDU em situações onde o agente descobriu um evento predefinido que precisa ser
notificado ao gerente.


      O SNMP faz o intercâmbio das informações de gerência através da troca de
mensagens do seu protocolo. Cada mensagem é representada de forma
independente em um único datagrama do serviço de transporte UDP. Cada
mensagem contém a identificação da versão, a comunidade SNMP e o PDU.


      A comunidade SNMP identifica um grupo particular de gerentes e agentes.
Os membros de uma comunidade forçam a autenticação utilizando um esquema de
password não encriptada conhecida como trivial authentication scheme. A
comunidade public é geralmente utilizada como padrão nas configurações.



3.1.1.4      RMON


      Conforme detalhado em [STA96], o RMON foi um dos mais importantes
padrões incorporadas ao protocolo SNMP.        O RMON permite a monitoração de
várias redes e segmentos identificando possíveis gargalos ou problemas. O RMON
permite o controle de operação da rede através da análise do tráfego, permitindo a
distribuição da carga dos dispositivos existentes na rede.


      Os dados fornecidos pelas variáveis RMON podem ser utilizados para o
planejamento de capacidade e simulações de rede. A gerência pró-ativa de
performance é suportada através da utilização das estatísticas de performance na
configuração de alarmes, coleta de dados e análise de resultados na busca de
possíveis problemas.


      O RMON é implementado normalmente através de dispositivos que ficam
“ouvindo” o tráfego da rede. Estes dispositivos reúnem e armazenam dados
importantes sobre a atividade da rede que podem ser utilizados para o ajuste de
performance da rede. Uma classe especial de dispositivos chamados probes ou
                                                                                 29


sondas tem sido dedicados para este propósito. Estes dispositivos são configurados
normalmente em cada seguimento da rede, com o objetivo de coletar informações
definidas em suas MIBs. Estas informações incluem banda disponível, contadores
de erros, alarmes, histórico de eventos, entre outros.


      Conforme descrito em [STA96], a especificação RMON é antes de tudo uma
definição de MIB. Desta forma são definidas funções de monitoração de redes e
interfaces de comunicação entre a estação gerente e o monitor remoto. A RFC
1757 lista os objetivos projetados para um dispositivo RMON:


         Operação off-line, Um agente RMON continua coletando informações
          mesmo quando a conexão com estação gerente é perdida;
         Monitoração pró-ativa, caso ocorra uma falha , o monitor pode notificar a
          estação de gerência e fornecer informações úteis para o diagnóstico da
          falha;
         Detecção e informação de problemas, o agente pode ser configurado para
          informar condições de erros importantes;
         Dados adicionais, uma série de dados adicionais específicos podem ser
          coletados pelo agente RMON para a estação gerente. Muitos destes
          dados não estão disponíveis para a estação gerente quando esta não está
          conectada diretamente em uma determinada sub-rede;
         Múltiplos gerentes, o agente RMON deve suportar a comunicação com
          mais de uma estação gerente.


      O RMON nasceu oficialmente em 1991 com a capacidade de monitorar as
camadas 1 e 2. A primeira versão é chamada RMON-1 e está definida na RFC
1757. A versão RMON-2 definida na RFC 2021 é uma extensão natural da versão
RMON-1. A versão RMON-2 especifica a gerência das camadas OSI três a sete
permitindo a monitoração do tráfego dos protocolos IP, TCP, UDP HTTP e outros
protocolos de aplicação. A figura 3.5 descreve a atuação das versões do protocolo
RMON.
                                                                                30


                                                          Sonda RMON

  Gerente de rede

                                                             Aplicação

                                                           Apresentação    RMON-2
     Gerente
                                                              Sessão
      SNMP
                                                            Transporte

                                                                  Rede

                                                              Enlace       RMON-1

                                                                  Fisica




                               Rede




                         Figura 3.5 – Versões do Protocolo RMON


3.1.2 CMIP


      A arquitetura de gerência de rede OSI, referenciada por CMIP e detalhada em
[HER99][LEI96], foi projetada inicialmente para dispositivos que utilizassem o
conjunto de protocolos OSI. E faz parte de um amplo conjunto de padrões que vem
sendo desenvolvidos para uso no modelo referencial OSI. Estes padrões são
definidos em mais de trinta documentos produzidos pela ISO. O padrões mais
importantes são descritos nos seguintes documentos:


         OSI Management Framework (IS 7498-4);
         Common Management Information Service (IS 9595);
         Common Managemente Information Protocol (IS 9596);
         Structure of Management Information (DIS 10165);
         System Management Overview (DIS 10040);
         Sysatem management Funtional Areas (DIS 10164).
                                                                                  31


      Diferente do padrão SNMP, a arquitetura de gerência de redes OSI é
completamente orientada a objetos e fornece um conjunto de serviços através do
modelo de informação, modelo de organização, modelo de comunicação e modelo
funcional. Conforme descrito na figura 3.6, a estrutura do protocolo de gerência OSI
segue o modelo referencial OSI.


                        Processos de Aplicação de Gerência

 Camada 7                              CMISE



                       ACSE                             ROSE


 Camada 6
                                  Apresentação ISO

 Camada 5
                                    Sessão ISO

 Camada 4
                                   Transporte ISO

 Camada 3
                                     Rede ISO

 Camada 2                            Enlace ISO


 Camada 1                              Física


                          Figura 3.6 – Estrutura do protocolo CMIP


      O modelo de informação inclui uma estrutura de gerência de informação, uma
hierarquia de nomes, e uma definição de objetos. A linguagem ASN.1 é utilizada
para a descrição das informações.


      O framework OSI é organizado da mesma maneira que o SNMP, com a
estrutura de gerente e agente. Da mesma forma que o SNMP o protocolo CMIP é
implementado na camada de aplicação do modelo OSI. O modelo de comunicação
utiliza o conjunto de protocolos OSI com serviços orientados a conexão.
                                                                                             32




Serviço              Descrição


M-INITIALIZE         Serviço de associação de gerenciamento utilizado para o estabelecimento
                     da associação

M-TERMINATE          Serviço de associação de gerenciamento utilizado para finalizar a
                     associação

M-ABORT              Serviço de associação de gerenciamento utilizado para uma parada não
                     confirmada

M-EVENT-REPORT       Serviço de associação de gerenciamento utilizado para sinalizar um evento
                     predefinido

M-GET                Serviço de associação de gerenciamento utilizado para a leitura de um
                     atributo de um objeto

M-CANCEL-GET         Serviço de associação de gerenciamento utilizado para o cancelamento de
                     uma leitura solicitada

M-SET                Serviço de associação de gerenciamento utilizado para modificar um
                     atributo de um determinado objeto

M-ACTION             Serviço de associação de gerenciamento que permite que o gerente
                     execute uma determinada operação num determinado recurso

M-CREATE             Serviço de associação de gerenciamento que permite a criação de uma
                     determinada instância de objeto

M-DELETE             Serviço de associação de gerenciamento que permite a destruição de um
                     determinada instância de objeto




                                   Figura 3.7 – Serviços CMIP



        O modelo funcional inclui as áreas funcionais de gerência vistas
anteriormente, falha, configuração contabilização, performance e segurança.


        A definição dos serviços é chamada de Common Management Information
Services (CMIS). Estes serviços são apresentados na figura 3.7.
                                                                              33


      O protocolo CMIP define como devem ser implementados os serviços CMIS
especificando as PDUs e a sintaxe utilizada na codificação de informações do
protocolo. Três camadas do protocolo OSI necessitam ser implementadas :


         Common Management Information Service Element (CMISE);
         Association Control Service Element (ACSE);
         Remote Operations Service Element (ROSE).


O elemento CMISE permite o acesso ao serviço de gerência CMIS que por sua vez
utiliza o CMIP para a comunicação com o agente e o gerente. O ACSE e ROSE são
utilizados pelo CMISE, sendo necessários para o controle das associações de
aplicação. O ACSE gerencia a abertura e fechamento da comunicação do agente e
do gerente e o ROSE gerencia a solicitação e resposta quando uma associação é
estabelecida.


3.1.3 TMN


      O framework TMN engloba um conjunto de especificações que tratam da
gerência e controle de recursos e dispositivos de redes numa rede de
comunicações.


      Conforme detalhado em [HER99] o TMN é orientado a objeto e inicialmente
utilizava o padrão de construção OSI, com a especificação de MIBs e objetos de
gerência, agentes e gerentes CMIP, e os protocolos OSI para a troca de
informações de gerência. O framework TMN possui sua própria terminologia. As
áreas funcionais de redes de telecomunicações são definidas por operação,
administração, manutenção e provisioning.


      A ITU-T, antiga CCITT, começou o trabalho com o TMN em 1985. O TMN é
definido atualmente pelos documentos série M.3000 ITU-T. A lista de alguns deste
documentos é apresentada baixo.
                                                                                    34


         Overview of TMN Recomendations (M.3000);
         Principles for a Telecomunications Management Network (M.3010);
         TMN Interface Specification Methodology (M.3020);
         Catalog of TMN Management Information (M.3180);
         TMN Management Services Overview (M.3200);
         TMN Management Capabilities Presented at the F Interface (M.3300);
         TMN Management Functions (M.3400)




3.2   Gerência de Sistemas


      A área de gerência de sistemas trata especificamente dos componentes dos
servidores e computadores pessoais. A gerência de rede trata da rede como um
todo, por outro lado a gerência de sistemas trata do que está dentro de cada
dispositivo de rede. A gerência de sistemas [HER99] é responsável pelas
seguintes tarefas:


         Inventário de software e status dos sistemas operacionais e aplicações;
         Inventário de hardware e status de CPU, Memória, discos e periféricos
          entre outros;
         Controle de licenças de softwares;
         Distribuição e atualização automática de softwares;
         Controle remoto de Servidores e estações;
         Outras tarefas relativas a sistemas e dispositivos específicos.




3.2.1 DMI



      O Distributed Management Task Force (DMTF) é um dos grupos mais fortes
na criação de padrões de gerência de sistemas. Conforme detalhado em
[DMT99][HER99] o DMTF é um consórcio formado por diversos fornecedores que
                                                                                35


definiram uma interface de programação padrão para a gerência de estações do tipo
DOS-Windows, permitindo a gerência destas estações e sua integração com outros
frameworks como SNMP.


      A especificação da interface independe do sistema operacional de rede e
protocolo de gerência, isto irá permitir que o acesso das informações das estações
gerenciadas seja feito através do protocolo SNMP ou através de técnicas via WEB.


      O consórcio DMTF foi formado em maio de 1992, e compreendia inicialmente
os seguintes membros:


         Intel Corporation;
         Novell, Inc.
         SunConnect;
         Microsoft Corporation;
         SynOptcs
         Communications, Inc.


      Outras companhias entraram para o consórcio, a lista completa pode ser
encontrada no site www.dmtf.com. Entre elas:


         International Business Machines Corporation;
         Digital Equipament Corporation;
         Hewlett-Packard.


      A interface de programação padrão define como o protocolo de gerência e
outras aplicações podem acessar as informações das estações. A arquitetura da
interface DMTF e apresentada na figura 3.8. Embora o foco principal seja o SNMP,
futuramente serão incluídos outros protocolos de gerência e aplicações incluindo a
gerência via WEB.
                                                                                           36




                   SNMP                                         Outras Aplicações




                                Management Interface (MI)




                                     DMI Service Layer



                                 Component Interface (CI)




      Componentes de      Aplicações de            Sistemas            Placas Adicionais
        Hardware            Software              Operacionais


        ESTAÇÃO



                          Figura 3.8 – Arquitetura da Interface DMTF




      A Desktop Management Interface DMI, consiste da DMI Service Layer e das
interfaces MI e CI. A Management interface disponibiliza o acesso padronizado para
as aplicações de gerência solicitarem e receberem informações da DMI Service
Layer. A Component Interface caracteriza o acesso comum para os vários
componentes de hardware e software que podem residir na estação, permitindo a
gerência através de produtos de vários fornecedores. A Component Interface foi
definida para implementar facilmente as versões dos produtos de hardware e
softwares atuais e futuros.


      Na DMI Service layer vários serviços são implementados. Estes serviços são
necessários para os comandos e respostas para a interface de gerência e para a
configuração e obtenção de informações de hardware e software a partir da
Component Interface.
                                                                                37


3.3   Gerência de Aplicações


      A gerência de aplicação [HER99] corresponde ao controle, monitoração e
configuração de aplicações que são executadas num determinado host conectado a
rede. Esta área de gerência é muito mais complexa que a gerência de sistema, pois
existem mais versões de aplicações sendo executadas do que sistemas. E diversas
variáveis precisam ser consideradas para a implementação deste tipo de gerência,
incluindo a lista de executáveis, arquivos de configurações associados, métodos de
comunicação entre processos, versões, compatibilidade entre plataformas entre
outras.




3.3.1 ARM


      A mais importante iniciativa na área de gerência de aplicação é a API
Aplication Response Measurement (ARM) , definida em 1996 e mantida pela ARM
Working Group. Diversos exemplos de agentes, bibliotecas e programas podem ser
encontrados no site www.cmg.org.


      Conforme estudado em [HER99] a API ARM permite que diversas aplicações
de cliente e servidor incluam chamadas de funções simples em seus códigos de
forma a prover informações que podem ser utilizadas para monitoração, medição de
utilização entre outras. A arquitetura ARM utiliza, também, o conceito de agente e
gerente. A figura 3.9 descreve como os servidores e clientes utilizam a API para
comunicar as informações de gerência de aplicação com as aplicação de gerência
de aplicação.




3.4   Gerência de Serviços


      A gerência de serviços, incluindo a gerência de acordo de níveis de serviço,
descreve como são definidos, monitorados e apresentados, os serviços contratados
externamente pela empresa e os serviços utilizados internamente. Os serviços que
                                                                                       38


podem ser gerenciados incluem a utilização de canais de voz, tempo de resposta
diversos, acesso a Internet, carga de utilização de LANS e WANS, utilização de E-
mails, e outros serviços que possam ser quantificados. Os acordos de nível de
serviço são medidos em tempo de resposta, disponibilidade, utilização número de
pacotes entre outros. A gerência de serviço é a maneira principal de avaliar a
qualidade de serviços e os custos envolvidos na empresa.




                              Aplication
                              Response
                             Measurement




           ARM Agent                                    ARM Agent


           ARM API                                     ARM API


                stop        start                       stop                   start



            Server                                       Client



   Aplicações                                                     Aplicações
   de Negócio                                                     de Negócio


                                    Rede




                              Figura 3.9 – Arquitetura ARM
                                                                                   39


4      GERÊNCIA VIA WEB

4.1    Conceito de Gerência via WEB


       A Gerência via WEB é definida em [HER99] como a utilização de
tecnologias WEB para a realização da gerência corporativa. A gerência via WEB
é muito nova, existem várias frentes de trabalho definindo padrões, frameworks,
modelos de objetos, protocolos e APIs, implementando códigos e testes de
produtos. Para que a gerência via WEB se torne realidade muitas pessoas,
organizações aliadas a tecnlogias precisam reunir esforços e contribuições para
colocar a gerência corporativa sobre o controle desta nova aplicação de gerência
via WEB.


       Conforme estudado no capitulo 2, a gerência corporativa utiliza uma série
de protocolos de comunicação sobre a rede com o objetivo de controlar os
dispositivos de rede e os seus softwares associados. A gerência corporativa
monitora, controla e configura todos estes componentes. Com o avanço das
tecnologias WEB, a gerência via WEB pode expandir este leque para incluir a
gerência de recursos de sistemas, aplicações, acordo de níveis de serviço, políticas,
propriedade intelectual, e outros recursos e funções de negócios.


       As tecnologias WEB permitem a gerência corporativa a partir de qualquer
ponto da rede corporativa ou da Internet através de um browser (navegador).
Conforme descrito em [HER99] o modelo genérico de framework de gerência via
WEB é dividido em sete partes descritas abaixo. Este modelo é apresentado na
figura 4.1.


          Cliente WEB, é o computador de gerência corporativa que contém o
           browser WEB. O browser é a interface padrão para visualização das
           informações de gerência. O browser permite que o usuário digite
           comandos, solicite informações de gerência e apresente os resultados.

          Servidor WEB, o servidor WEB corresponde ao programa servidor
           responsável por atender as requisições realizadas a partir do browser e
                                                                                  40


           retornar as respostas. O servidor WEB possui uma interface para a função
           de mediação de dados;

          Função de Mediação de Dados, é a função responsável pela conversão
           dos dados de gerência do repositório de dados para um formato que seja
           reconhecido pelo Servidor WEB pelas aplicações de gerência;

          Repositório de Dados, corresponde ao banco de dados onde são
           armazenadas as informações de gerência;

          Função      de   Agrupamento   e   Mapeamento, corresponde a função
           responsável pela conversão dos dados coletados pelos gerentes em um
           formato padrão reconhecido pelo repositório de gerência;

          Gerentes de Protocolos, correspondem ao lado gerente responsável pela
           gerência convencional e a gerência via WEB. Cada gerente utiliza o seu
           protocolo para se comunicar com o agente correspondente. Os gerentes
           de protocolos tratam SNMP, CMIP, WEB entre outros frameworks de
           gerência;

          Agente, o agente de gerência corresponde à entidade processo
           localizada no dispositivo gerenciado. Muitos agentes são capazes de gerar
           alarmes indicando que alguma ação predefinida aconteceu no dispositivo
           gerenciado.




4.1.1 Frameworks de Gerência via WEB


      Os três principais modelos de frameworks de gerência via Web estudados em
[JAV99], são definidos de acordo com a forma de agrupamento de seus
componentes e relacionamentos. Os três modelos possíveis são o nativo, proxy e
gateway.
                                                                                               41



                                                                           Cliente de
                                                                           Gerência
                                                                          baseado em
                                                                              WEB




            Repositório de                 Dados da                       Servidor de
              dados de                     função de                        gerência
              gerência                    mediação de                     baseado em
                                             dados                           WEB


              Função de
            agrupamento e
             mapeamento
               de dados


                         Gerência Convencional e Baseada em WEB
                                  Gerentes de Protocolos
                     SNMP          CMIP           WEB           Outros




                     SNMP            CMIP             WEB                 Outros



                        Figura 4.1- Modelo Genérico de Gerência via WEB




4.1.1.1     Nativo


      O modelo de framework do tipo nativo descrito na figura 4.2, corresponde ao
cenário onde o browser se comunica diretamente com o servidor HTTP no
dispositivo gerenciado. O dispositivo gerenciado contém o servidor HTTP e o
suporte necessário para a leitura e gravação das variáveis de gerência. Para que
este modelo seja implementado é necessário que a entidade gerenciada possua as
camadas de protocolo TCP/IP necessárias e opcionalmente applets java para a
gerência via WEB. Os dispositivos gerenciados podem conter                         adicionalmente
páginas HTML e todas as funcionalidades de um WEB Server. As requisições via
browser são executadas a partir do servidor WEB onde estão armazenadas as
applets java. As applets são carregadas no cliente browser e executadas.
                                                                                           42




 Entidade de Gerência                                              Entidade Gerenciada



  Aplicação Browser                                                Servidor de Aplicação



          HTTP                                                            HTTP



    Rede TCP/IP                                                        Rede TCP/IP




                                     Rede




                         Figura 4.2 – Modelo de Framework Nativo




      As páginas WEB armazenadas no servidor WEB podem conter links para
outras páginas e applets. As applets incluem suas interfaces, sockets, segurança,
entre outras características. Esta solução é barata,          pois não é necessário um
dispositivo de gerência intermediário, como por exemplo uma estação de gerência
de redes SNMP.




4.1.1.2          Proxy


      O modelo de framework do tipo proxy descrito na figura 4.3, envolve o uso de
um servidor proxy para realizar a tradução da informação de gerência para
informação baseada em WEB para os dispositivos gerenciados. Este modelo de
framework representa a união e coexistência entre a gerência via WEB e os
agentes e gerentes da gerência de rede SNMP. O Gerente pode conter applets e
páginas WEB para as diversas entidades gerenciadas. Neste cenário o gerente é
definido também como servidor HTTP.
                                                                                      43



     Entidade de                 Entidade de gerência
      Gerência                          proxy
                                 Servidor de Aplicação
  Aplicação Browser                                                       Entidade
                                              Mediação                   gerenciada
                                  HTTP          SNMP
          HTTP                                                             SNMP
                                  TCP              UDP

                                                                           Rede
    Rede TCP/IP                          Rede IP                           UDP
                                                                            IP


                                         Rede




                           Figura 4.3 – Modelo de Framework Proxy




       As requisições via browser podem ser realizadas a partir de CGI´s localizados
onde as aplicações de gerência são armazenadas.                As aplicações escritas em
linguagens como PERL, conhecidas por interfaces Pearl2SNMP, executam
chamadas aos métodos apropriados nas bibliotecas SNMP. Estes métodos por sua
vez executam as operações SNMP nos agentes específicos.



4.1.1.2          Gateway


       O modelo de framework do tipo gateway descrito na figura 4.4, envolve o uso
de um gateway para realizar a tradução de diferentes tipos de protocolos e formatos
de dados vindos de diversas fontes. O modelo de framework do tipo gateway
contém as funcionalidades necessárias e pode incluir a gerência de dados
provenientes de diferentes fontes. Pode também incluir um servidor de applets que
pode lançar applets de gerência permitindo a gerência de informação de diversos
tipos de dispositivos gerenciados, incluindo de forma híbrida os dispositivos
gerenciados via framework proxy.
                                                                                 44



                                 Entidade de gerência
                                       gateway



                                 app 1     …       app n

    Entidade de
     Gerência                      Banco de dados


                               Servidor de
 Aplicação Browser                                                   Entidade
                               Aplicação       Mediação             gerenciada
                                 HTTP           Gerente               Agente
       HTTP                                                             de
                                  TCP        Transporte              Gerência
                                                                      Pilha
    Rede TCP/IP                          Rede IP                        de
                                                                    Protocolos


                                         Rede




                         Figura 4.4 – Modelo de Framework Gateway




4.1.2 Benefícios da Gerência via WEB



      Conforme descrito em [HER99], existem vários benefícios relacionados a
implementação da gerência baseada em tecnologias WEB. Entre os principais
benefícios, destacam-se o baixo custo de implementação e a facilidade de uso e
acesso via browser Internet. Os principais benefícios estão descritos abaixo:


         Baixo custo de implementação, através da redução das despesas desta
          solução em relação às soluções convencionais. A utilização do modelo
          Internet e as ferramentas requeridas para o desenvolvimento de soluções
          baseadas em tecnologia WEB, correspondem a custos bem menores que
          os custos envolvidos no desenvolvimento de soluções convencionais.
          Existe ainda a possibilidade de redução de custos relacionados a
          treinamento, integração do Help Desk e suporte técnico entre outros;
                                                                             45


   Independência de localização do cliente de gerência, as informações de
    gerência estão disponíveis em qualquer lugar na rede através do uso de
    browsers Internet. Quando comparados as soluções convencionais, estas
    informações estão mais disponíveis pela facilidade e flexibilidade de
    visualização proporcionadas pela independência de localização do cliente
    de gerência;

   Facilidade de uso, as características básicas de uma ferramenta browser
    podem ser aprendidas rapidamente. E os conceitos sobre HTML, URLs e
    navegação sobre hiperlinks entre outros, estão cada vez mais difundidos;

   Independência de plataforma e alto grau de interoperabilidade, a utilização
    de tecnologias de gerência via WEB permite a gerência dos mais
    diversos recursos corporativos, sem a necessidade de instalações,
    manutenções e operações adicionais sobre a plataforma de gerência. A
    interoperabilidade e independência de plataforma é alcançada através do
    uso da linguagem Java e applets, linguagens script e das tecnologias
    WEB adaptadas a quase todas as plataformas de computadores
    existentes;

   Modelo de dados de gerência corporativa amplo e acessibilidade,
    conforme detalhado anteriormente no modelo geral de gerência via WEB,
    os dados dos sistemas de gerência baseada em padrões e sistemas
    proprietários serão coletados e armazenados em um formato padrão no
    repositório de gerência;

   Possibilidade   de   substituição   das   soluções   atuais   de   gerência
    corporativa, a razão principal da pesquisa e uso da gerência via WEB é
    a possibilidade de substituição das soluções atuais. A gerência via WEB
    tem se posicionado como uma alternativa para as plataformas atuais de
    gerência, estas plataformas são caras, difíceis de aprender e de difícil
    manutenção e upgrade. A maioria das plataformas de gerência atuais para
    serem implementadas necessitam de muito treinamento e do trabalho de
    consultores.
                                                                                   46


         Expansão das funcionalidades da gerência corporativa, através da
          definição de WEB Servers embutidos em dispositivos, aumento da
          acessibilidade a Help Desks, documentação online e links com mais
          informações sobre o fornecedor entre outros.




4.2   A Evolução da Internet e Serviços WEB


      A Internet teve seu início em 1969 como um projeto experimental de rede de
dados chamado Advanced Research Agency Network ARPANET. Conforme
descrito em [HER99] o departamento de defesa americano utilizava a rede como
teste para fins militares. A rede conectava inicialmente quatro universidades. E após
obter sucesso foi estendida com a adição de infra-estrutura de conexão e
computadores dentro dos Estados Unidos.


      No início dos anos 70 alguns cientistas iniciaram o desenvolvimento de
protocolos e aplicações de redes aumentando o uso da rede. Em 1972 os cientistas
do NCSA desenvolveram o serviço Telnet, permitindo que usuários pudessem
executar o login em servidores remotos. No ano seguinte o serviço FTP foi
disponibilizado, padronizando desta forma a transferência de arquivos entre os
computadores da rede.


      Em 1980 o conjunto de protocolos TCP/IP, tornou-se o único protocolo a ser
utilizado pela rede ARPANET. A década de 80 presenciou um grande crescimento
da difusão dos computadores pessoais e minicomputadores, com sistemas UNIX
versão Berkeley que incluíam os softwares de redes baseados no conjunto de
protocolos TCP/IP. Estes computadores utilizavam os serviços FTP e Telnet para
compartilhar e distribuir e aplicações na Internet.


      O maior passo na expansão da Internet ocorreu em meados da década de
80 quando a NSF conectou inicialmente seis centros de supercomputadores. Esta
rede de conexão foi chamada de backbone NSFNET. Este backbone foi expandido
                                                                                 47


pela NSF, com a criação de redes regionais permitindo a conexão de universidades
e outras instituições a Internet. Em 1987 a NSF concedeu para a Merit Network o
direito de operação e gerência do backbone NSFNET. A Merit Network em conjunto
com a IBM e MCI trabalharam na pesquisa e desenvolvimento de uma tecnologia
mais rápida de redes. Em 1989 o backbone NSFNET mudou os seus troncos para a
tecnologia T1. Isto permitiu que o tráfego do backbone passasse para 1.544 Mbits/s.
Quatro anos depois mudou para T3 com velocidade de 45 Mbits/s. Em meados dos
anos 90 o backbone NSFNET foi substituído pela arquitetura vBNS. Este sistema
possui uma organização hierárquica que utiliza provedores de serviços de redes,
redes regionais, pontos de acesso de trabalho. Atualmente estão sendo discutidos
os projetos relacionados a Internet2.


      Em 1991 o serviço chamado Gopher foi desenvolvido na Universidade de
Minnesota. Permitindo o acesso de informações através listas de arquivos, estas
listas são acessadas através de menus organizados de forma hierárquica. No
modelo cliente servidor do serviço Gopher, o cliente utiliza um visualizador que
permite a leitura de arquivos de forma individual.


      Em 1992, Tim Berners-Lee trabalhando no laboratório europeu de física de
partículas (CERN) localizado na Suíça, criou juntamente com outras pessoas a
Word Wide WEB. A WEB introduziu as tecnologias essenciais para a gerência via
WEB. Incluindo o protocolo HTTP, a linguagem HTML, os links para hipertextos e
hipermidias e o esquema de endereçamento URL.


      Uma das principais inovações da WEB foi o uso da linguagem HTML para a
publicação de páginas. As páginas WEB são transferidas entre o servidor e o cliente
através do protocolo HTTP, que é um protocolo de aplicação leve que roda sobre o
TCP. Além das páginas conterem textos podem conter links para hipertextos e
hipermídia. Desta forma, através do clique do mouse sobre o link é possível abrir
uma outra página ou ainda imagens, gráficos, áudio e vídeo.


      Finalmente, a utilização da WEB de forma genérica teve seu grande incentivo
com a criação da versão gratuita do browser Mosaic. O browser Mosaic foi projetado
                                                                                  48


e desenvolvido por Marc Andreessen e outros estudantes da Universidade de
Illinois.   As versões comerciais foram projetadas e entregues pela Netscape,
Microsoft , entre outras empresas a partir de 1995.


        A evolução dos Serviços Internet e da WEB continua ocorrendo de forma
muito rápida. Várias tecnologias baseadas em WEB estão sendo definidas, entre
estas, várias estão servindo de base para a implementação da gerência
corporativa via WEB.




4.3     Tecnologias WEB

        Conforme estudado em [HER99], existem diversas tecnologias que são
utilizadas na gerência via WEB. Estas tecnologias incluem protocolos, interfaces,
padrões, linguagens e técnicas que estão sendo utilizadas e desenvolvidas para a
WEB. As principais tecnologias utilizadas atualmente na implementação da
gerência corporativa via WEB são apresentadas a seguir.



4.3.1 Protocolos de Comunicação


        Os protocolos de comunicação correspondem a um conjunto de regras
[MUR98][STA96] que definem como a comunicação será realizada na WEB. O
conjunto de protocolos TCP/IP é o principal protocolo utilizado na Internet.
Conforme descrito na figura 4.5, o modelo TCP/IP, embora represente todas as
funcionalidades do modelo de sete camadas OSI, é representado de forma
condensada em um modelo de quatro camadas.




4.3.3.1       Protocolos de Camada de Acesso à Rede


        A função principal dos protocolos de camada de acesso a rede [STA96] é
garantir a troca de informações de forma confiável entre o dispositivo e a rede onde
ele está conectado.     O software específico a ser utilizado nesta camada irá
                                                                                  49


depender do tipo de infra-estrutura de rede que será utilizada. Os padrões utilizados
incluem o protocolo X.25 e Ethernet, ATM, F.Relay, HDLC entre outros.



                         OSI                                   TCP/IP

                       Aplicação

                    Apresentação
                                                              Aplicação
                        Sessão

                      Transporte                          Host-to-host

                         Rede                                 Internet

                    Link de Dados
                                                        Acesso à Rede
                        Fisica




                                 Figura 4.5 – Modelo TCP/IP




4.3.3.2      Protocolos de Camada Internet


      A função da camada Internet é transmitir os dados entre os dispositivos de
origem e destino. O principal componente da camada Internet é o protocolo IP. O
protocolo IP é utilizado nesta camada para fornecer [STA96] as funções de
roteamento entre múltiplas redes. Este protocolo é implementado não somente em
dispositivos de sistemas, mas também em roteadores.


      O protocolo IP não é orientado a conexão. A RFC que define a versão 4 do
protocolo IP é a RFC 791. A         responsabilidade pela garantia das mensagens
transmitidas e de responsabilidade da camada de transporte. No caso de protocolos
de transporte não confiáveis como o UDP, esta responsabilidade passa a ser da
camada de aplicação. As mensagens transmitidas entre a camada de transporte e
IP são conhecidas como datagramas e possuem o seu tamanho limitado a 64
                                                                                 50


Kbytes. Estes datagramas são trocados entre as camadas da pilha de protocolos
para serem transmitidos e recebidos na Internet.




4.3.3.3      Protocolos Host-To-Host


      A camada de transporte é responsável [STA96] pela transferência dos dados
entre aplicações de forma confiável através do protocolo TCP ou de forma não
confiável utilizando o protocolo UDP.


      O protocolo TCP é um protocolo de transporte orientado a conexão. A RFC
que define o protocolo TCP é a RFC 793. Quando uma requisição é feita para um
dispositivo e a conexão TCP é estabelecida, os dados são transferidos e a conexão
é terminada. O protocolo TCP recebe um buffer de dados, divide-o em datagramas
e envia cada datagrama separadamente. O protocolo TCP mantém a lista dos
datagramas transmitidos, através de acknowledgment ou reconhecimento recebidos
por outros hosts, números sequenciais e timeouts. Se o outro host não receber um
pacote em particular, o protocolo TCP irá retransmitir o datagrama. O protocolo TCP
no host destino recompõem o datagrama na ordem correta. A transmissão no
protocolo TCP é feita de forma assíncrona. O protocolo TCP usa a seqüência no
reconhecimento para determinar quais datagramas foram recebidos e quais não
foram, dando maior eficiência ao protocolo.


      O protocolo de datagramas de usuário (UDP) corresponde a um serviço de
transporte simples que permite que aplicações utilizem os serviços de rede IP.
Conforme estudado no capítulo três, o protocolo UDP é o protocolo de transporte
preferencialmente utilizado para a gerência SNMP. A RFC que define este protocolo
é a RFC 768.     Este protocolo é orientado a datagrama e fornece serviços não
orientados a conexão.     A confiabilidade deve ser fornecida pelas camadas de
aplicação. O protocolo UDP não fornece a capacidade de detecção e retransmissão
de datagramas perdidos. O protocolo UDP é incompleto pois não possui controle de
fluxo, congestionamento e seqüência de datagramas. A aplicação deve utilizar
mecanismo     como    timeouts   para   determinar   quando   é   necessário   uma
retransmissão.
                                                                                   51


4.3.3.1      Protocolo de Camada de Aplicação


      A camada de aplicação [STA96] fornece os serviços de aplicações ou
serviços para usuários finais. Um número grande de aplicações têm sido
padronizadas para operarem sobre a camada de transporte, entre elas as
aplicações de Telnet, FTP, SMTP e SNMP.
      O protocolo de camada de aplicação SNMP, estudado em detalhes no
capítulo três, é utilizado para a gerência de dispositivos de redes TCP/IP.



4.3.1 Browser WEB


      O browser WEB [HER99] corresponde à aplicação executada no computador
cliente para a apresentação da interface de gerência via WEB. Esta aplicação
utiliza os protocolos padrões HTTP e FTP para a troca de informações na WEB. A
principal função do browser é a apresentação de páginas WEB.             Os primeiros
browsers eram utilizados para a apresentação de páginas baseadas em textos.
Atualmente todos os browsers possuem interface gráfica com a apresentação de
gráficos, hipertextos, e outros formatos himpermídia. Os browsers possuem suporte
ainda a plug-in, segurança,       execução de applets java, animação, gráficos
tridimensionais entre outros. Conforme descrito na figura 4.6 o browser é constituído
da interface GUI, um interpretador HTML e uma interface HTTP.


      O esquema utilizado para o endereçamento de páginas WEB é chamado de
Uniforme Resource Location (URL). Este esquema utilizado globalmente como
convenção para endereçamento. A URL é constituída do nome do protocolo e
endereço. O endereço destino pode ser acessado tanto pelo endereço IP como pelo
nome de domínio Internet. O nome de domínio corresponde ao nome que é
resolvido pelos servidores DNS na WEB. A URL é constituída de três campos:


      Protocolo://<nome de domínio>/<página ou objeto>
                                                                                    52




   Cliente browser                                             Servidor WEB

                                 Interface GUI

  Aplicação Browser                                         Servidor de Aplicação
                               Interpretador HTML


                                Interface HTTP
       HTTP                                                        HTTP




    Pilha TCP/IP                                                Pilha TCP/IP




                                    Rede




                               Figura 4.6 – Browser WEB




      Além da URL servir para endereçar páginas utilizando protocolos FTP ou
HTTP, pode ser utilizada também para a visualização de arquivos locais. Neste
caso o campo “file:” é utilizado como campo de protocolo.


      Quando um browser é iniciado ele apresenta uma interface padrão,
constituída por uma barra de título, barra de menu, barra de endereço, a área de
apresentação da página WEB e a barra de mensagens.                A barra de título
corresponde ao título da página exibida no momento. A barra de menu contém os
comandos que podem ser executados pelo browser. Cada nova versão de browser
acrescenta novos itens de menu. Estes itens incluem o tratamento de arquivos
opções de edição, preferências, ferramentas de procura, help, bookmarks,
segurança entre outros. A barra de endereço corresponde ao campo onde é
informada a URL para a carga da página desejada. A área de apresentação da
página WEB corresponde a área onde a página é apresentada. O interpretador
                                                                                 53


HTML analisa a sintaxe e cria a página na área de apresentação. A área de
mensagem indica a URL correspondente a um hiperlink quando o mouse é
posicionado com a indicação de uma mão, ou ainda pode apresentar mensagens
genéricas ou mensagens de erro.


      Os plug-ins    correspondem a uma parte importante das tecnologias de
clientes browsers. Os plug-ins correspondem a módulos de softwares ou hardwares
que executam determinadas aplicações. A maioria dos plug-ins mais populares
incluem os chamados áudio e vídeo players. Os plug-ins são na maioria das vezes
proprietários ou baseados em tipos de arquivos MIME. Com o aumento da
sofisticação dos browser e applets java a maioria dos plug-ins estão sendo incluídos
de forma padronizada e transparente.



4.3.2 Servidor WEB



      O Servidor WEB [HER99] é responsável pela gerência dos recursos WEB
que são requisitados pelos clientes via WEB. A figura 4.7 descreve o modelo de um
Servidor WEB genérico. Um servidor WEB é composto de uma interface de código
HTTP, um gerador de páginas HTML e uma interface de servidor. Um Servidor WEB
pode incluir o tratamento de scripts CGI, acesso a banco de dados para requisições
de sistemas de procura (search engines), interface para configuração e
administração.


      Muitos Servidores WEB são disponibilizados como parte integrante de
sistemas maiores que incluem compiladores de linguagens e editores, suporte para
frameworks convencionais de gerência entre outros.


      Existem implementações de servidores WEB para a maioria das plataformas
existentes. Para as plataformas UNIX o serviço é implementado normalmente com o
nome “httpd” ou “http daemon” . Um daemon é um processo UNIX executado em
background. Em plataformas Windows o servidor WEB corresponde normalmente a
mais um serviço. A interface WEB possui uma interface HTTP que conversa com a
                                                                                      54


camada TCP. Como o serviço HTTP é orientado a conexão, o protocolo TCP é
utilizado ao invés do UDP utilizado pelo SNMP. O Servidor aguarda requisições da
camada de transporte realizadas pelos clientes normalmente na porta 80, que
corresponde a porta bem conhecida para a WEB.




     Cliente browser                                             Servidor WEB

                                  Interface Servidor

    Aplicação Browser            Gerador de páginas           Servidor de Aplicação
                                      HTML


                                   Interface HTTP
         HTTP                                                        HTTP




      Pilha TCP/IP                                                Pilha TCP/IP




                                       Rede




                                Figura 4.7 – Servidor WEB




      O protocolo HTTP é um protocolo [HER99] do tipo requisição/reposta utilizado
na WEB. O cliente browser estabelece uma conexão com o servidor HTTP e faz
requisições que são respondidas pelo servidor. Como o HTTP é um protocolo do
tipo stateless (sem estado), a conexão é desfeita após a transmissão da resposta ao
cliente. O HTTP define um conjunto de primitivas que descrevem o tipo de
requisição enviada pelo cliente ao servidor. A primitiva mais comum é a GET,
utilizada pelo cliente para solicitar uma arquivo HTML ou outro arquivo multimídia ao
servidor. O formato das requisições do cliente incluem o método de requisição, URL,
versão do protocolo, mensagem MIME com modificadores de requisição, informação
do cliente e conteúdo do corpo. A resposta do servidor inclui linha de status, versão
do protocolo de mensagem, código de retorno de erro ou sucesso, informações do
                                                                           55


servidor em formato MIME e conteúdo do corpo da resposta. O protocolo HTTP é
definido na RFC 1945. Um exemplo de transação HTTP é apresentado na figura
4.8. Conforme descrito nesta figura, o protocolo HTTP é um protocolo leve que
utiliza conexões TCP de curta duração.


    Cliente
                                                             Servidor

                             O Cliente estabelece
                              uma conexão TCP


                              O cliente envia a
                              requisição HTTP


                             O servidor retorna a
                                  resposta


                              O servidor fecha a
                                  conexão




                                    Rede




                              Figura 4.8 – Transação HTTP




4.3.3 Markup languages


Conforme estudado em [HER99] as Markup languages são linguagens para
formatação de páginas WEB. Estas linguagens correspondem a uma das principais
razões do grande sucesso da WEB. O consórcio W3 está desenvolvendo padrões
para estas linguagens, especialmente para a HTML e XML. O consórcio W3 é
presidido por Tim Berners-Lee, criador da WEB. O consórcio é responsável pela
definição de padrões para a WEB. O site do consórcio pode ser acessado no
endereço http:/www.w3.org.
                                                                                  56


4.3.3.1      HTML

      As páginas Web são escritas [HER99][THE99] na linguagem HTML (Hipertext
Markup Language). A linguagem HTML é derivada da linguagem SGML (Standard
Generalized Markup Language) utilizada para a gerência de grandes documentos.
A linguagem HTML já possui cerca de dez anos, com várias versões definidas.
Embora a versão atuais 4.0/4.1 [THE99] esteja ganhando popularidade, a versão
mais utilizada é a versão 3.2, que uniu as extensões dos browsers Netscape e
Microsoft e incluiu novas funcionalidades.

      A linguagem HTML é composta por marcadores ou TAG e atributos. O TAG
define como a página é formatada, como um hiperlink é especificado, entre outros
aspectos. Os TAGS são definidos no formato <TAG> ... </TAG>. Um exemplo
simples de página WEB é apresentado a seguir.


      <HTML.>
      <HEAD><TITLE>
      Exemplo de página WEB
      </TITLE></HEAD>
      <BODY>
      TESTE
      </BODY>
      </HTML>

      Os TAGS <HTML> e </HTML> definem o início e fim da página WEB. A
página é composta basicamente de um cabeçalho e um corpo. Dentro do cabeçalho
é definido o título com o nome da página. O título é apresentado na barra de títulos
do browser WEB. O corpo contém o conteúdo que é apresentado na área de
apresentação do browser. A Linguagem HTML versão 2.0 foi desenvolvido em 1994.
Esta versão foi a primeira versão utilizada e suportada pelos primeiros browsers
comerciais. A linguagem HTML versão 2.0, definiu oito tipos básicos de comandos:
tags de estrutura,   cabeçalhos, tags de caracteres, tags de âncoras, gráficos,
separadores de texto, listas, blocos de texto. A figura 4.9 descreve os TAGS HTML
versão 2.0 segundo os tipos definidos com uma breve descrição.
                                                                                          57



TAG                    Tipo         Descrição


<HTML></HTML>          Estrutura    Especifica que a página é um documento WEB.


<HEAD></ HEAD >        Estrutura    Define o cabeçalho da página.

<BODY></BODY>          Estrutura    Define o corpo da página

<TITLE></TITLE>        Estrutura    Especifica o título da página.

<BASE>                 Estrutura    Especifica o endereço base para resolução de
                                    endereços.

<LINK>                 Estrutura    Fornece informações que relacionam a página
                                    corrente a outros documentos.

<META>                 Estrutura    Especifica   meta-informação      associada    a      um
                                    documento.

<H1></H1> …<H6></H6>   Estrutura    Especifica os níveis de cabeçalho de 1 a 6.

<B></B>                Caracteres   Especifica o formato de fonte bold para o texto.

<I></I>                Caracteres   Especifica o formato de fonte itálico para o texto.

<TT></TT>              Caracteres   Especifica o formato de fonte monospaced para o
                                    texto.

<CITE></CITE>          Caracteres   Especifica uma citação em formato itálico.

<EM></EM>              Caracteres   Especifica uma frase enfatizada em formato itálico.

<KBD></KBD>            Caracteres   Especifica um texto a ser digitado pelo usuário.

<SAMP></SAMP>          Caracteres   Especifica uma seqüência de caracteres literais.

<STRONG></STRONG>      Caracteres   Especifica    a    apresentação      de    caracteres
                                    fortemente enfatizados.

<VAR></VAR>            Caracteres   Inclui um texto usado como uma variável em
                                    formato itálico.

<A></A>                Âncoras      Inclui um texto utilizado como uma âncora hiperlink.
                                                                                      58




<IMG>                Gráficos       Especifica uma imagem a ser apresentada na
                                    página.

<P>                  Separador de Define um salto de parágrafo.
                     textos

<BR>                 Separador de Define um salto de linha.
                     textos

<HR>                 Separador de Especifica a apresentação de uma régua horizontal
                     textos

<UL><LI></OL>        Lista          Especifica uma lista não ordenada, com cada
                                    elemento listado com o tag <LI>.

<OL><LI></OL>        Lista          Especifica uma lista ordenada por números, com
                                    cada elemento listado com o tag <LI>.

<DL><DT><DD></DL>    Lista          Especifica uma lista de definições onde cada termo
                                    especificado    usa    <DT>     e     sua   definição
                                    correspondente <DD>.

<DIR><LI></DIR>      Lista          Especifica uma lista de diretórios com cada
                                    elemento especificado utilizando o tag <LI>.

<MENU><LI></MENU>    Lista          Especifica uma lista de menus com cada elemento
                                    especificado utilizando o tag <LI>.

<ADRESS></ ADRESS>   Bloco      de Inclui um texto de endereço para endereços,
                     texto          assinaturas, entre outros apresentado em formato
                                    itálico.

<BLOCKQUOTE>         Bloco      de Inclui textos entre aspas .
                     texto
</BLOCKQUOTE>

<PRE></PRE>          Bloco      de Inclui textos pré formatados.
                     texto



                     Figura 4.9 – TAGs HTML versão 2.0
                                                                                59


        A linguagem HTML versão 3.2 [HER99][THE00] uniu as extensões dos
browsers Netscape e Microsoft e incluiu novas funcionalidades. Entre estas
funcionalidades novos padrões de cores, imagens e fontes; alinhamento de textos;
tabelas; mapas; maior controle do tipo e tamanho de fontes. A figura 4.10 lista os
TAGS incluídos nesta versão.




TAG                        Nome


<APPLET>                   Java Applet

<AREA>                     Area

<BIG>                      Big Text

<CAPTION>                  Caption

<DFN>                      Definition

<DIV>                      Division

<FONT>                     Font

<INPUT>                    Form Input File

<MAP>                      Mao

<PARAM>                    Parameters

<SMALL>                    Small text

<SUB>                      Subscript

<SUP>                      Superscript

<TABLE>                    Table

<TD>                       Table Data

<TEXTFLOW>                 Java Applet Textflow

<TH>                       Table Header
                                                                                     60



<TR>                           Table Row



                              Figura 4.10 – TAGs HTML versão 3.2




       A   linguagem    HTML      versão     4.0    [HER99][THE00]   introduziu   novas
funcionalidades entre elas:

          O suporte a múltiplos estilos de páginas;

          Capacidade de construção de teclas de atalho para controle de páginas;

          Suporte a acesso somente para leitura de documentos;

          Suporte a Frames;

          Suporte a objetos e scripts;

          Maior versatilidade aos botões;

          Suporte a usuários que não falam inglês e deficientes.
4.3.3.2       Service Side Includes



       As Server Side Includes (SSI) [HER99][THE00] ou simplesmente includes de
Servidor, são um tipo de comentário HTML que direcionam o Servidor WEB a gerar
de forma dinâmica os dados de uma página sempre que ela for chamada. O formato
básico da include é:

       <!-#command tag=”value”…>

       Onde a diretiva #command pode ser qualquer um dos vários comandos
suportados pela implementação do servidor. Um exemplo é a utilização da diretiva
#include que insere o contexto de um arquivo especificado na página WEB. Um uso
comum deste comando é a utilização de um mesmo template para cada página
WEB definida no site. Desta forma as alterações de template serão sempre
                                                                               61


realizadas somente em uma include. Existem ainda a possibilidade de executar
programas apresentando o resultado através da diretiva #exec.



4.3.3.3     Dinamic HTML



      Dinamic HTML é o nome dado a um conjunto de proposta encaminhadas
para o Consórcio W3 pela Microsoft e Netscape. O objetivo da Dinamic HTML é
definir um comportamento mais dinâmico para os browsers, na forma como é feita
interação entre o usuário e as páginas WEB no lado cliente. A Dinamic HTML irá
reduzir de forma gigantesca o tráfego HTTP do servidor na criação de atualizações
de páginas WEB no lado cliente.



4.3.3.4     Extensible Markup Language



      A Extensible Markup Language (XML) é uma linguagem [HER99][THE00] cujo
desenvolvimento está sendo supervisionado, também, pelo Consórcio W3. A XML
se diferencia da linguagem HTML, por ser uma linguagem de definição de dados.
Assim como a linguagem HTML, a XML é derivada da linguagem SGML. È uma
linguagem extensível pois permite a criação de novos TAGS. A maneira como a
linguagem XML irá se desenvolver, no meio dos esforços voltados para a linguagem
HTML é ainda uma incógnita.

      No site WEBEM um documento escrito por Roger Boot, propõem a utilização
da linguagem XML para a apresentação de dados de gerência. Estes dados
poderão ser apresentados e manipulados por aplicações de gerência corporativa
WEBEM.



4.3.3.5     Cascading Style Sheets



      a definição de múltiplos estilos de páginas (Cascading Style Sheets)
[HER99][THE00], tem por objetivo oferecer um maior controle da maneira como as
                                                                              62


páginas WEB são apresentadas. Através da criação de estilos um layout de página
pode ser definido de forma a sobrepor vários estilos na mesma página. A
especificação do CSS está sendo definida pelo Consórcio W3 e poderá ser
suportada pelas releases futuras dos browser.



4.3.3.6     Document Object Model



      Conforme descrito em [THE00] o Document Object Model (DOM) é uma
proposta de padrão, que irá permitir que programas e scripts acessem e atualizem
de forma dinâmica conteúdos, estrutura e estilos de documentos. Os documentos
poderão ser processados e seus resultados incorporados na página apresentada. A
especificação do DOM está sendo definida pelo Consórcio W3.



4.3.4 Linguagens de Programação WEB

      As linguagens de programação WEB [HER99] são utilizadas para a criação
de conteúdos ativos e ainda para permitir a execução processos complexos e
processos interativos entre o Servidor e os Clientes WEB.     As linguagens mais
populares da WEB incluem Java, C++ e C. Uma série de outras linguagens são
também utilizadas, incluindo Visual Basic e as antigas linguagens de terceira
geração Fortran, Pascal, Assembly e mesmo o Cobol.



4.3.4.1     Linguagem Java

      A linguagem de programação Java [HER99] é uma linguagem orientada a
objetos, desenvolvida em 1990 pela Sun Microsystems. A linguagem Java é
compilada em um formato “byte code” intermediário, que é interpretado pela
máquina virtual Java ativa no computador onde o programa é executado.

      A utilização de applets java torna as páginas WEB mais dinâmicas. As
applets são pequenos programas que são carregados do servidore WEB para o
cliente sendo então executados.
                                                                                      63


        A linguagem java fornece uma série de classes para criação de animação,
atualização de páginas,             entre outras funcionalidades que dificilmente seriam
implementadas somente com a tecnologia HTML. A figura 4.11 apresenta um
exemplo de codificação da linguagem Java.

// Exemplo de programa Java
class exemplo
        {
        public static void main (string args [])
                 {
                 String name;
                 name = “Exemplo”
                 System.out.println(name);
                 }
        }




                          Figura 4.11 – Exemplo de codificação da linguagem Java




4.3.4.2         Linguagem C++

        A linguagem de programação C++ [HER99] foi desenvolvida nos laboratórios
Bell por Bjarne Stroup no início de 1980. A linguagem C++ se diferencia da
linguagem C pela inclusão de construções orientadas a objeto e outras pequenas
melhorias. È uma linguagem muito utilizada para o desenvolvimento de aplicações e
sistemas. A figura 4.12 apresenta um exemplo de codificação da linguagem C++.

 // Exemplo de programa C++

 #include <iostream.h>

 main ()
  {
  cout << “Exemplo\n”;
  }




                           Figura 4.12 – Exemplo de codificação da linguagem C++
                                                                                64


4.3.4.3        Linguagem C

      A linguagem de programação C [HER99] foi desenvolvida no início de 1970
por Dennys Ritchie, como uma melhoria da linguagem de programação B que era
utilizada pelos laboratórios Bell para a programação do sistema operacional UNIX.
Quando Brian Kernighan e Dennys Ritchie liberaram a definição da linguagem C em
1978, a sua utilização foi ampliada. Em pouco tempo a linguagem C superou a
linguagem assembly como uma nova opção de linguagem de programação de
sistemas. A linguagem C passou também a ser amplamente utilizada para
programação de aplicações. A figura 4.13 apresenta um exemplo de codificação da
linguagem C.

 // Exemplo de programa C

 #include <stdio.h>

 main ()
  {
  printf “Exemplo\n”;
  }




                          Figura 4.13 – Exemplo de codificação da linguagem C




4.3.5 Linguagens Script WEB

      A linguagens script [HER99] são ferramentas importantes para a extensão
das funcionalidades baseadas na WEB. São linguagens baratas e de fácil
aprendizado e desenvolvimento. Estas linguagens são ainda fáceis de serem
testadas por serem interpretadas. Os interpretadores de linguagem script estão
disponíveis para a maioria das plataformas, o que torna a programação
independente          da plataforma utilizada. São linguagens que oferecem maior
facilidade de manutenção e debug se comparadas as linguagens compiladas C e
C++. Muitos programas sofisticados e implementações de referência, relacionados
a estas linguagens, estão disponíveis gratuitamente na WEB. As principais
linguagens utilizadas incluem as Linguagens JavaScript, ECMAScript, PERL, TCL,
                                                                                   65


Python . Uma série de outras linguagens são também utilizadas, incluindo a
linguagem Rexx desenvolvida pela IBM, a VBScript desenvolvida pela Microsoft e
AppleScript da Apple.



4.3.5.1       JavaScript

      A linguagem JavaScript [HER99] é uma linguagem script utilizada no lado
cliente. Esta linguagem foi desenvolvida pela Netscape para os browsers Internet,
tornando fácil a codificação de scripts no cliente através da adição de
funcionalidades ao conteúdo WEB. A linguagem JavaScript necessita apenas de um
suporte restrito do lado Servidor. Esta linguagem pode interagir com códigos fontes
HTML criando conteúdos dinâmicos.

 <html>
 <body>
 <br>
   <script language=”JavaScript”>
   document.write(“Exemplo”)
   </script>
 <br>
 </body>
 </html>




                    Figura 4.14 – Exemplo de codificação da linguagem JavaScript


      A linguagem JavaScript é considerada um padrão aberto, sendo suportada
pelos browser da Netscape e Microsoft, com algumas diferenças de implementação.
A figura 4.14 apresenta um exemplo de codificação da linguagem JavaScript.



4.3.5.2       ECMAScript

      A linguagem ECMAScript [HER99] é uma linguagem script similar a
JavaScript, desenvolvida como padrão aberto para a Netscape, Microsoft e o
European Computer Standard Group ECMA. A primeira versão corresponde a
versão encontrada nos browsers Netscape Navigator 3. Tanto a Netscape como a
                                                                                            66


Microsoft implementam o padrão ECMAScript. A figura 4.15 apresenta um exemplo
de codificação da linguagem ECMAScript.


 <html>
 <body>
 <br>
   <script language=”ECMAScript”>
   document.write(“Exemplo”)
   </script>
 <br>
 </body>
 </html>




                     Figura 4.15 – Exemplo de codificação da linguagem ECMAScript



4.3.5.3        PERL

       A linguagem PERL (Pratical Extraction Report Language) [HER99] foi
desenvolvida por Larry Wall em 1986. Foi desenvolvida inicialmente para
codificação de relatórios, mas rapidamente ganhou popularidade como uma
linguagem script para administração de sistemas UNIX.                       A linguagem PERL é
utilizada para unir as funcionalidades das linguagens shell UNIX e utilitários como o
SED e AWK numa linguagem de uso comum. A linguagem PERL é talvez a
linguagem script mais popular. A linguagem PERL tornou-se muito popular a partir
do momento que passou a ser utilizada com CGIs (Common Gateway Interface).
Com certeza a maioria dos scripts CGI são escritos na linguagem PERL.. A figura
4.16 apresenta um exemplo de codificação da linguagem PERL.


 # Exemplo da linguagem PERL

 print “Exemplo” “\n”;




                         Figura 4.16 – Exemplo de codificação da linguagem PERL
                                                                                    67


4.3.5.4       TCL

      A linguagem TCL (Tool Command Language) [HER99] foi desenvolvida por
John Ousterhout. A linguagem TCL possui um modelo de dados simples e claro.
Esta linguagem é utilizada para a gerência de redes. Muitos fabricantes usam a
linguagem TCL como API para seus produtos, para criar funcionalidades adicionais.
A linguagem TCL possui um conjunto de ferramentas gráficas conhecidas como TK
para o desenvolvimento de interfaces de usuários. A figura 4.17 apresenta um
exemplo de codificação da linguagem TCL.

 # Exemplo da linguagem TCL

 puts stdout {Exemplo}




                          Figura 4.17 – Exemplo de codificação da linguagem TCL



4.3.5.5       Python

      A linguagem Python [HER99] foi desenvolvida por Guido Van Rossun. A
linguagem Python possui uma série de funcionalidades orientadas a objeto.

 # Exemplo da linguagem Python

 exemplo=”Exemplo \n”
 print exemplo




                         Figura 4.18 – Exemplo de codificação da linguagem Python
                                                                                68


      Esta linguagem inclui construções como módulos, exceções, tipos dinâmicos,
tipos dinâmicos de dados de alto nível, e classes. Inclui também interfaces para
chamadas e bibliotecas C e C++ e interfaces para diversos sistemas de janelas. A
linguagem Python é utilizada como uma linguagem de extensão para aplicações
para fornecer uma interface programável. Como a maioria das linguagens script , a
linguagem Python é portável para várias plataformas. A figura 4.18 apresenta um
exemplo de codificação da linguagem Python



4.3.6 Formatos Gráficos

      Os formatos gráficos são muito importantes para a WEB, pois um arquivo de
formato GIF pode corresponder a um texto com centenas de palavras. Os dois
formatos gráficos mais populares que são compatíveis com os browsers atuais são
o Graphics Interchange Format (GIF), o Joint Photographic Experts Group (JPEG) e
o Portable Network Graphics (PNG).

      O formato GIF [HER99] é o formato de arquivo mais utilizado na WEB. O
formato GIF suporta cores e várias resoluções.       Para diminuir o tempo de
transferência de imagens do servidor para o cliente economizando a quantidade de
espaço em disco necessária para gravar estas imagens, o formato GIF inclui
algoritmos de compressão.

      Como o formato GIF é baseado em 8 bits, a maior limitação é que pode
apenas suportar até 256 cores. A Compulserve, criadora do formato GIF, estava
iniciando um trabalhando no desenvolvimento do padrão 24 bits, no entanto quando
a Unisys passou a reclamar a patente das partes principais da tecnologia de
compressão do formato GIF, cobrando pelo seu uso o desenvolvimento foi
cancelado.

      O formato JPEG [HER99] é outro formato de arquivo muito popular. O
formato JPEG utiliza a técnica de compressão conhecida como “lossy”. Para realizar
a compressão de uma imagem o algoritmo descarta seletivamente partes da
imagem. O formato JPEG oferece maior flexibilidade em relação ao formato GIF é
possível configurar a taxa de compressão. Quanto maior a compressão menor será
a qualidade em relação a imagem original.
                                                                                      69


       Outro formato gráfico que está se tornando muito popular na Internet é o
Portable Network Graphics (PNG) [PNG00]. Ao contrário do formato GIF o formato
PNG é livre de copyright. A especificação do PNG está sendo definida pelo
Consórcio W3. O formato PNG é um formato de compressão de imagens que foi
especialmente concebido para ser utilizado na WEB. O PNG utiliza um esquema de
compressão sem perdas e pretende ser uma alternativa à utilização do formato GIF
na transmissão de imagens tipo bitmap através da Internet. Embora mantenha
algumas     das   características   originais   do   formato   GIF,   o   PNG   introduz
simultaneamente novas facilidades com o objetivo de obter imagens com uma
qualidade cada vez maior. O formato PNG suporta imagens true color com uma
profundidade de cor até 48 bits/pixel e imagens grayscale com uma profundidade de
cor até 16 bits/pixel.



4.3.7 MIME



       O Multipurpose Internet Mail Extensions (MIME) [HER99] é uma especificação
para formatação de mensagens que não utilizam o padrão ASCII. Estas mensagens
podem ser enviadas pela Internet por E-mail e browsers de cliente. Existem muitos
tipos MIME pré definidos como arquivos de formato GIF e arquivos PostScript. Tipos
customizados MIME podem ser definidos. A especificação MIME permite que os
browsers apresentem páginas que não são escritas na linguagem HTML.



4.3.8 CGI

       O Common Gateway Interface (CGI) é um método de criação de programas
que permite que aplicações externas se conectem a Servidores WEB de forma
padrão. O CGI é um programa executável que pode adicionar informações de forma
dinâmica ao conteúdo de uma página WEB. Uma das primeiras utilizações do CGI
foi para o processamento de transações. Um usuário pode digitar informações em
vários campos, enviar as informações para o servidor, executar o processamento
das informações no servidor e apresentar os resultados na área de apresentação do
browser.
                                                                                70


4.3.9 ACTIVEX

      O ActiveX corresponde a um conjunto de tecnologias desenvolvida pela
Microsoft que são utilizadas para desenvolvimento WEB. ActiveX é baseado na
tecnologias Object Linking and Embedding (OLE) e Component Object Module
(COM) que permitem que programas diferentes trabalhem juntos e compartilhem
dados. O ActiveX é implementado como um controle embutido ou programa em
páginas WEB.




4.3.10 Search Engines

      Os sistemas de busca ou Search Engines são utilizados para procurar,
catalogar e apresentar informações. Servidores especiais possuem sistemas de
busca que são utilizados para esta função. Os sites de busca mais populares são o
Alta Vista, Yahoo, Excite, Lycos entre outros.




4.3.11 Bancos de Dados

      Os bancos de dados são os repositórios das informações da WEB que são
procuradas ou que necessitam ser armazenadas. Estas informações podem ser
utilizadas para aplicações importantes como as informações de gerência via WEB.
A padronização da interface WEB tem aumentado a utilização de Data Warehouses
e áreas de armazenamento de informações.

      O padrão Open Database Conectivity (ODBC) é amplamente utilizado. O
ODBC é um método padrão de acesso a banco de dados que permite que qualquer
aplicação acesse dados de qualquer sistema gerenciador de banco de dados. O
acesso é realizado através de uma camada, conhecida como driver, entre a
aplicação e o sistema gerenciador de banco de dados. A função do driver é realizar
a tradução das solicitações de dados em formato conhecido pelo banco de dados
que foi implementado. Tanto o banco de dados quanto a aplicação devem suportar
a implementação ODBC. O ODBC é caracterizado como padrão de fato de mercado
e foi originalmente desenvolvido pela Microsoft.
                                                                                   71


      A Sun possui uma nova interface para a arquitetura Java, conhecida como o
padrão Java Database Connectivity (JDBC).



4.3.12 VRML

      A Virtual Realit Modeling Language (VRML) [HER99] é uma nova linguagem
de representação que permite a apresentação de objetos em duas ou três
dimensões em páginas WEB. As páginas WEB podem ser visualizadas através de
browsers especiais VRML ou com a utilização de plug-in especial VRML.



4.3.13 Cookies

      O cookie [HER99] é um marcador de mensagem que pode ser enviado ao
browser a partir do servidor. O browser no lado cliente normalmente grava a
informação da mensagem em um arquivo. Desta forma o cookie pode ser
transmitido toda a vez que a página é solicitada no servidor.      Os cookies são
utilizados para a coleta de informações e segurança. O cookie pode ser utilizado
pelo servidor para a criação de auditoria e definição do perfil de usuários. Este
recurso pode ser utilizado para fazer as páginas visitadas mais amigáveis, inserindo
informações como o nome do usuário, tradução da página para a linguagem nativa,
entre outras. Os cookies podem ser utilizados para autenticação de usuários.



4.4   CONCLUSÃO


      Neste Capítulo foram descritos o conceito de gerência via WEB [HER99] e
sua arquitetura e os modelos de framework nativo, proxy e gateway. A evolução da
Internet e da WEB e as tecnologias empregadas para a implementação da
gerência via WEB foram apresentadas. Entre as diversas tecnologias analisadas no
capítulo   4,   estão   o   conjunto   de   protocolos   de   comunicação      TCP/IP
[MUR98][STA96]; os browsers Internet [HER99], servidores WEB [HER99];              as
Markup Languages, incluindo HTML, XML entre outras [HER99]; as linguagens de
programação WEB Java, C, C++ [HER99]; as linguagens script WEB JavaScript,
                                                                                72


ECMAScript, PERL, TCL e Phyton [HER99]; os formatos gráficos GIF e JPEG
[HER99] e PNG [PNG00]; os padrões MIME, CGI, ActiveX,         VRML entre outros
[HER99].


      No dois próximos capítulos serão apresentadas as duas principais iniciativas
para a construção de frameworks de gerência corporativa via WEB. A iniciativa
Java Management Extension (JMX) [JAV99] da Sun Microsystems e a Web-based
Enterprise Management (WEBEM) [DMT99][HER99].
                                                                                 73


5     JAVA MANAGEMENT EXTENSION - JMX

5.1   JMX


      Conforme detalhado em [JAV99] a JMX (Java Management Extension)
conhecida anteriormente por JMAPI, define uma arquitetura de gerência, APIs, e
serviços de gerência, todos sobre uma única especificação. A especificação para
JMX foi desenvolvida pela SUN junto com os principais líderes da indústria de
gerência, seguindo a Comunidade Java.


      A JMX [JAV99] fornece uma maneira simples para instrumentação de objetos
Java. A instrumentação JMX tem muito poucas limitações porque é totalmente
independente da infra-estrutura de gerência. Isto significa que um recurso pode ser
gerenciado sem a preocupação de como seu gerente é implementado, se é
implementado por exemplo sobre TMN ou SNMP.


      A JMX permite que os desenvolvedores de aplicações baseadas em
tecnologia Java crie os agentes inteligentes e gerentes na linguagem Java. Estas
aplicações podem ser integradas as soluções em sistemas de gerência existentes. A
arquitetura JMX é dividida em três níveis, nível de Instrumentação, nível de agente
e nível de gerente.


      A JMX fornece ainda vários APIs Java para os protocolos padrões existentes.
São as APIs de protocolos de gerência adicionais. Estas APIs foram especificadas
de forma independente do modelo da arquitetura de três níveis, contudo elas são
essenciais porque elas permitem que as aplicações JMX escritas em Java se
integrem com as tecnologias de gerência existentes.



5.2   Arquitetura JMX


      A arquitetura JMX [JAV99] é construída de acordo com uma modelo de três
níveis. O nível de instrumentação, agente e gerente. Conforme detalhado na figura
5.1, esta divisão traz flexibilidade permitindo que subconjuntos da especificação
                                                                                    74


sejam utilizados individualmente por diferentes comunidades de desenvolvedores
que utilizam a tecnologia Java.


      O nível de instrumentação fornece a gerência imediata de qualquer objeto
baseado em tecnologia Java. Este nível é direcionado à toda a comunidade de
desenvolvedores que utiliza tecnologia Java.


      O nível agente fornece os agentes de gerência. Os agentes JMX são
recipientes que contém a base dos serviços de gerência. Esta base pode ser
facilmente estendida adicionando-se recursos JMX. Este nível é direcionado para a
comunidade    de   desenvolvedores    de   soluções   de   gerência   e   fornece   o
gerenciamento através da tecnologia Java.


      O nível gerente fornece os componentes de gerência que podem operar
como gerente ou agente para distribuição e consolidação dos serviços de gerência.
Este nível é direcionado para a comunidade de desenvolvedores de soluções de
gerência e complementa a gerência através da tecnologia Java provida pelo nível
agente. As APIs de protocolos de gerência adicionais são direcionadas para
comunidade de desenvolvedores de soluções de gerência e proporcionam a
integração com as soluções de gerência existentes.



5.3   Componentes JMX
5.3.1 Recurso Gerenciável


      Um recurso gerenciável [JAV99] é um recurso que foi instrumentado
conforme o nível de especificação de instrumentação JMX e passou pelo conjunto
de testes de compatibilidade de nível de instrumentação. Um recurso pode ser uma
aplicação de negócio, um dispositivo, ou uma implementação de software de um
serviço ou política. Para ser instrumentado, um recurso pode ser escrito na
linguagem de programação Java ou somente oferecer uma capa de tecnologia
baseada em Java.
                                                                                              75




 Nível             Aplicação                                   Aplicação
                                              WEB                                 APIs para
 Gerente         Proprietária de                             Proprietária de
                                             Browser                                outros
                    Gerência                                    Gerência
                                                                                 Protocolos de
                                                                                   Gerência




                                                Gerente
                                                    JMX


                                                                                  API para a
                  Adaptador de Protocolo                                           Gerência
                                                                                    SNMP
Nível
Agente




                  Mbean                                                           API para a
                  Server                                                           Gerência

                                          Serviço                                CIM/WEBEM


Níivel
Instrumentação
                               Objeto 2
                    Objeto 1               Objeto 3

                  Máquina Virtual Java                    Máquina Virtual Java
                                                                                  API para a
                                                                                   Gerência
                                                                                     TMN
           MBean ( Objeto Bean gerenciado registrado no servidor )


           JavaBeans simples ( não registrado no servidor )



                                     Figura 5.1 – Arquitetura JMX
                                                                             76


      Qualquer coisa que precisa ser gerenciada, de forma imediata ou no futuro
pode ser instrumentada e pode ser considerado como um recurso potencial.


      Um Objeto Mbean é um objeto Java que representa um recurso JMX
gerenciável. Os objetos MBeans seguem o modelo JavaBeans e permitem o
mapeamento entre os componentes JavaBeans e o seu gerenciamento. Os objetos
Mbeans podem ser adaptados a qualquer agente JMX, pois permitem a
instrumentação de forma padrão dos recursos gerenciados.




5.3.3 Agente JMX


      Um agente JMX é uma entidade de gerência implementada conforme         a
especificação de agente JMX e que passou pelo conjunto de testes de
compatibilidade de nível de agente. Um Agente JMX é composto de um servidor de
MBean, um Kit MBeans que representa os recursos gerenciados e por pelo menos
um adaptador de protocolo. Um Agente JMX pode conter serviços de gerência, que
são representados como MBeans.


      O servidor de MBean corresponde a um registro para MBeans no agente. O
servidor de MBean é o componente que fornece os serviços que permitem a
manipulação de objetos MBeans. Todas as operações de gerência executadas no
MBeans são realizadas por interfaces baseadas em tecnologia Java no servidor de
MBean.


      Os adaptadores de protocolos e conectores permitem que as aplicações de
gerência tenham acesso a um agente JMX e manipulem os seus objetos MBeans.
Os adaptadores de protocolo permitem a representação dos objetos MBeans de
forma direta sobre os protocolos HTML ou SNMP. Os conectores incluem um
componente remoto que permitem a comunicações com o agente sobre uma
variedade de protocolos, entre eles HTTP, HTTPS, IIOP. Como todos os conectores
possuem a mesma interface baseada em tecnologia Java, as aplicações de
                                                                                77


gerência utilizam o conector mais apropriado ao ambiente de rede e mudam de
forma transparente os conectores quando necessário.


5.3.2 Gerente JMX


      Um gerente JMX é uma entidade de gerência implementada conforme a
especificação de gerência JMX e que passou pelo conjunto de teste de
compatibilidade de nível de gerência. Um gerente JMX fornece uma interface para
que as aplicações de gerência possam interagir com o agente, distribuir ou
consolidar informação de gerência, e prover segurança. Os gerentes JMX podem
controlar qualquer número de agentes, simplificando a estrutura de gerência de
sistemas complexos e sistemas distribuídos.




5.3.3 Serviços de Gerência


      Os Agentes e gerentes JMX integram serviços que lhes dão autonomia e
inteligência. Estes serviços permitem que os agentes manipulem os seus recursos e
transfiram informações entre os agentes e a aplicação de gerência. Os agentes são
mais autônomos porque podem incorporar certas tarefas de gerência como polling.


      A inteligência é incorporada em lógicas simples que podem impedir que os
gerentes manipulem alarmes sem importância. Isto permite a redução do tráfego na
rede e melhoria da resistência das aplicações às paradas. Na arquitetura JMX os
serviços são objetos MBeans que podem ser adicionados ou removidos conforme a
necessidade. Isto dá escalabilidade aos agentes e gerentes, o que é crítico quando
estes são implementados em clientes magros.


      A especificação JMX define atualmente a interface para tais serviços básicos
como um registro para MBeans, queries destes registros, operações sobre os
recursos e transmissão de eventos de volta aos gerentes, carga dinâmica de um
novo MBean, criação de relações e dependências entre MBeans, funções de tempo
e monitoração de atributos. Outros serviços de administração que serão integrados
                                                                               78


na especificação incluem bootstrapping e persistência, gerência de políticas de
redes, descoberta de agentes e gerentes na rede e segurança.




5.3.4 APIs para outros Protocolos de Gerência


      O objetivo das APIs para outros protocolos é fornecer uma forma padrão para
que a gerência de aplicações Java possa interagir com tecnologias de gerência
existentes. Desta forma a aplicação usará uma destas APIs para ter acesso a um
sistema legado e expor seus atributos como um recurso gerenciável JMX. Este
recurso permitirá qualquer aplicação de gerência padrão JMX administrar os
sistemas legados através de um agente JMX. Estas APIs criam uma ponte entre as
tecnologias existentes e as tecnologias futuras. A especificação JMX incluirá uma
API para um gerente SNMP, APIs para gerentes e provedores WBEM, Gerente
TMN, APIs para Alarmes e topologias.




5.4   CONCLUSÃO


      Neste Capítulo foi descrita a iniciativa Java Management Extension, sua
arquitetura e componentes. A Java Management Extension (JMX) define uma
arquitetura de gerência, APIs e serviços de gerência, todos sobre uma única
especificação. Para isto a arquitetura de JMX é utiliza um modelo de três níveis,
instrumentação, agente e gerente.


      No próximo capítulo será apresentada a iniciativa Web-based Enterprise
Management (WEBEM) [DMT99][HER99], para a construção de frameworks de
gerência corporativa via WEB.
                                                                               79


6     WEB MANAGEMENT ENTERPRISE - WEBEM

6.1   Iniciativa WEBEM


      Conforme detalhado em [DMT99][HER99] em meados do ano de 1996 um
grupo de grandes fornecedores interessados em gerência via WEB, entre eles a
BMC, CISCO, Compaq, Intel e Microsoft, anunciaram a iniciativa de definição de um
esquema de gerenciamento corporativo que trabalharia com a WEB e os
frameworks convencionais de gerência de redes e sistemas. Este framework é
conhecido como WEB-Based Enterprise Management WEBEM.


      Conforme descrito em [HER99] um dos principais objetivos da iniciativa
WEBEM é a definição de uma modelo de dados padrão que possa ser utilizado
como repositório de dados de gerência. Permitindo que os frameworks de gerência
de redes e sistemas convencionais possam transformar os seus dados para este
formato padrão. O esquema de dados WEBEM permite também que os objetos de
sistemas legados ou proprietários sejam importados para o banco de dados de
objetos de gerência WEBEM, criando uma extensão destes esquemas. Este modelo
de dados é definido como Common Information Model (CIM). Com este modelo a
arquitetura WEBEM torna-se um ponto de integração dos diversos tipos de
frameworks existentes. Conforme apresentado na figura 6.1, todos os objetos de
dados WEBEM presentes no repositório podem ser acessadas através de
aplicações de gerência WEBEM. Estas aplicações podem ser executadas na
Internet usando como cliente um browser padrão.


      O Segundo maior esforço da iniciativa WEBEM é a definição de um protocolo
que irá permitir que os objetos gerenciados WEBEM sejam acessados via rede. O
ideal é que este protocolo seja independente de plataforma e trabalhe sobre a
Internet. O protocolo proposto é o HyperMedia Management Protocol (HMMP),
contudo conforme descrito em [DMT99] existe um estudo que aponta para a
utilização da linguagem XML sobre HTTP.
                                                                                                80


       O framework WEBEM é completamente orientado a objetos e permite a
herança     de    objetos    gerenciados,       abstração      de    dados,    polimorfismo     e
encapsulamento. O gerente de objetos é chamado CIM Object Manager (CIMOM).
Esta entidade de software é responsável pelo controle do objetos gerenciados,
incluindo o armazenamento e o acesso aos objetos no repositório central de dados.



  WEBEM Server



                                Aplicação de Gerência WEBEM




       Gerente de Objetos                                 Repositório de dados central




   Dados SNMP               Dados CMIP                 Dados DMI                   Dados
                                                                                Proprietários




                            Figura 6.1 – Modelo de fluxo de dados WEBEM




6.2    Arquitetura WEBEM


       Conforme detalhado em [DMT99][HER99] o framework WEBEM é constituído
do Cliente WEBEM, pelo conjunto de dispositivos gerenciados, Servidor WEBEM e
pelo   repositório    central   de    dados     do    Servidor. Estes componentes são
representadas no modelo de referência WEBEM, apresentado na figura 6.2, onde
são apresentados os aspectos funcionais, dados, informações e adaptações
necessárias para a implementação do framework WEBEM.
                                                                                            81




                                 Browser Cliente




WEBEM Server


       Aplicação de           Aplicação de                          Aplicação de
        Gerência               Gerência               ...            Gerência
       WEBEM (1)              WEBEM (2)                             WEBEM (n)




    CIMOM                                                   Repositório de dados




       Provedor (1)           Provedor (2)                          Provedor (n)
                                                      ...




 Agente                        Agente                                Agente

   Objetos Gerenciados          Objetos Gerenciados                   Objetos Gerenciados


   Objetos Gerenciados          Objetos Gerenciados                   Objetos Gerenciados

           ...                           ...                                   ...
Dispositivo                  Dispositivo                           Dispositivo
Gerenciado (1)               Gerenciado (2)                        Gerenciado (n)




                         Figura 6.2 – Modelo de Referência WEBEM
                                                                                82


       O Servidor WEBEM contém o gerenciador de objetos CIMOM, que pode
aceitar todos os objetos dos frameworks de gerência de sistemas e redes
existentes. Os dados de objetos são transformados em um formato padrão e
armazenados no repositório de dados central. O servidor WEBEM contém também o
servidor de aplicação WEBEM, que por sua vez pode ser acessado pelos clientes
WEBEM.


       O browser cliente utiliza um conjunto de aplicações residentes no Servidor
WEBEM ou em um sistema distinto, acessando as aplicações de gerência através
do protocolo HMMP. Quando executadas as aplicações de gerência WEBEM
acessam o CIMOM, este por sua vez interpreta a requisição feita pela aplicação
para a informação solicitada sobre o objeto gerenciado. O CIMOM possui a sua
própria linguagem para definição de objetos gerenciados. Esta linguagem e
conhecida como Managed Object Format (MOF). A aplicação reconhece os objetos
presentes no repositório porque ela entende que a lista de objetos do esquema foi
instanciada. As informações dos objetos gerenciados são entregues ao CIMOM para
serem colocadas no repositório de dados pelos diversos provedores conectados.


       Os provedores correspondem a um conjunto de processos que se comunicam
com os agentes de gerência de sistemas convencionais nos dispositivos
gerenciados, obtendo os valores dos objetos definidos. Os provedores são
responsáveis pela obtenção e apresentação dos dados de gerência dos protocolos
convencionais de gerência de sistemas e redes, que estão sendo trocados com o
agente do dispositivo gerenciado. Existem provedores que utilizam arquiteturas
padronizadas como SNMP, CMIP e DMI, estes provedores são denominados
Standard Providers. O framework WEBEM define os seguintes provedores:


   Provedores de Propriedade, retornam os valores de propriedade de objetos
    solicitados através de uma chave de identificação. Retorna informações em uma
    única instância.
   Provedores de Instância, retornam valores de instâncias de objetos. Retorna
    informações da instância em uma única classe;
                                                                               83


   Provedores de Classe, retornam classes e instâncias. Controlam todas as
    classes;
   Provedores de Namespace, são capazes de gerenciar um espaço de nome
    CIMOM definido. Controlam todos os espaços de nomes e instancias de objetos.


       Os dispositivos gerenciados contém um agente composto por um conjunto
lógico de objetos gerenciados. Conforme detalhado em [HER99] estes objetos são
representados por classes, com seus atributos e métodos apropriados. Estas
classes são agrupadas de acordo com os domínios de gerência específicos que elas
pertencem. Incluindo representações de objetos para gerência de redes SNMP e
CMIP, e representação de objetos para gerência de sistemas DMI. Cada domínio de
gerência é enxergado como uma representação de objetos controlada pelo CIMOM
correspondente.




6.2    Componentes da Arquitetura WEBEM
6.2.1 CIM


       O modelo geral de informação CIM (Common Information Management)
contém o modelo de descrição de dados para representação do ambiente
gerenciado. Conforme detalhado em [DMT99] o CIM foi projetado para receber
informações de agentes SNMP, CMIP, DMI entre outros. Permitindo que aplicações
corporativas de diferentes desenvolvedores que utilizam plataformas heterogêneas,
descrevam, criem e compartilhem todos os objetos de gerência. A intenção é criar
aplicações de gerência corporativa e ferramentas que possam monitorar e
controlar todas as redes sistemas e aplicações existentes nas empresas.


       O CIM é composto pelo meta esquema (CIM Meta-Schema) e pelos
esquemas padrões (CIM Schemas). Existe ainda um arquivo texto padrão ASCII
chamado Managed Object File (MOF) que contém as definições dos esquemas
padrões (CIM Schemas) implementados.
6.2.1.1        CIM Meta-Schema
                                                                                84


      O meta esquema corresponde a definição formal do modelo. Define os
termos que serão utilizados para expressar o modelo. Incluindo a maneira
apropriada de usar estes termos e sua semântica. Os quatro principais elementos
de um modelo são esquemas, classes, propriedades e métodos. O modelo define
também dois tipos importantes de classes, as indicações e as associações e um tipo
de propriedade que é a referência.


         Esquema, é definido como um conjunto de classes com um único
          proprietário. São utilizados para a nomeação e administração de classes.
          Dentro de um esquema os nomes de classes devem ser únicos;
         Classe, é um conjunto de instâncias do mesmo tipo, com as mesmas
          propriedades e métodos. A classe é a unidade básica de definição da
          estrutura de gerenciamento. Uma classe pode ser vista como um
          formulário para definição de objetos;
         Propriedade, valor utilizado para caracterizar uma instância de uma
          classe. A propriedade pode ser vista como um casal de funções get e set
          que quando aplicadas no objeto retornam e definem estados deste objeto;
         Método, define o tipo de conteúdo que pode ser aplicado sobre uma
          classe ou instância. A definição de um método é uma assinatura, que
          contém o nome do método, tipo de retorno e parâmetros;
         Trigger, é o reconhecimento de algum evento, mudança de estado ou
          alteração de alguma propriedade de um objeto;
         Indicação, objetos criados como resultado de um trigger. As indicações
          são tipos de classes, possuem propriedades e métodos e podem ser
          organizadas em hierarquia de tipos;
         Referência, são propriedades que uma classe ou instância possui.      O
          valor é um ponteiro para um objeto;
         Associação, é um tipo de classe que possui uma ou mais referências. São
          utilizadas para criar relacionamentos entre objetos sem necessidade de
          alterar as suas definições;
         Qualificador, são utilizados para caracterizar classes, instâncias ou
          métodos. Permite a extensão do esquema de forma limitada e controlada.
                                                                                     85




6.2.1.2      CIM Schemas


      O esquema padrão corresponde a um conjunto padrão de classes com suas
propriedades e associações. Estas propriedades e associações fornecem a base
necessária para a organização da informação sobre todos os dispositivos
gerenciados numa organização que irá utilizar o padrão WEBEM. O esquema
padrão foi definido com o objetivo de promover a uniformidade dos procedimentos
de requisição sobre a rede de gerenciamento. O esquema padrão (CIM Schema) é
composto pelo Core Squema, Common Squema e Extension Squemas.


      O Core Squema é constituído por um conjunto de objetos que são
referenciados por todas as áreas de gerência. O Core Squema é constituído das
sequintes classes:


         Managed System Element, classe base para os elementos dos sistemas
          gerenciados. Todos os componentes serão instanciados como uma
          subclasse desta classe;
         Physical     Element,   classe   correspondente   aos   elementos     físicos.
          Exemplos: drivers de discos e adaptadores;
         Logical Element, classe correspondente aos elementos que não são
          físicos. Exemplos: Sistemas Operacionais e drivers de dispositivos;
         System, classe correspondente a identificação do sistema, como PC, hub
          ou router;
         Network Component, corresponde a representação lógica do dispositivo
          de rede física, como um ícone num mapa representando um servidor;
         Service, classes que representam as capacidades e funcionalidades de
          um elemento de sistema;
         Physical Package, classes que representam o conteúdo físico de cada
          dispositivo. Exemplos: um switch possui uma placa esta placa por sua vez
          possui um processador e assim por diante.
                                                                               86


      Além das classes o Core Schema é constituído de várias associações
importantes:
         Component, relaciona partes de objetos com grupos de objetos;
         System Component, relacionam um sistema a seus elementos de sistema
          gerenciados;
         Dependency, relaciona as dependências existentes e dependências
          funcionais;
         Contains, relaciona a posição e localização de componentes físicos para
          expressar relações de conteúdo;


6.2.1.3        CIM Extensions Schemas


      As extensões de esquema (Extension Squemas) permitem o gerenciamento
de ambientes e plataformas específicas. Os exemplos incluem o desenvolvimento
de extensões de esquema para Sistemas Operacionais UNIX, Microsoft Windows,
Acordo de Níveis de Serviço, entre outros listados no site www.dmtf.org.


6.2.1.4        MOF


      O arquivo texto padrão ASCII chamado Managed Object File (MOF), contém
as definições dos esquemas padrões (CIM Schemas) implementados. O MOF serve
de entrada para o compilador MOF de aplicações de gerência, que tem o objetivo de
criar as chamadas apropriadas para o CIMOM. O compilador MOF define as
classes, propriedades e qualificadores para serem incluídos no banco de dados
CIMOM, e também coloca as instâncias dessas classes neste mesmo banco de
dados.
      A linguagem UML é utilizada nas especificações DMTF para descrever a
estrutura do esquema. A especificação CIM descreve a linguagem, convenção de
nomes e técnicas de mapeamento para outros modelos de dados de framework de
gerência. Incluindo as MIBs do protocolo SNMP, o Guidelines for Defining Managed
Objects (GDMO) do CMIP e a Management Information Format (MIF) do DMI. Como
todas as informações dos modelos são baseadas nos suas próprias definições de
                                                                                87


esquema, um mapeamento precisa ser realizado para converter os dados de
gerência convencionais para o formato MOF.


6.2.2 CIMOM


      O CIMOM, conforme descrito anteriormente é um gerenciador de objetos que
fornece vários mecanismos para que as aplicações de gerência possam trocar
dados com os objetos que estão sendo gerenciados. O CIMOM contem um modelo
de dados cuja tarefa é consolidar e traduzir os dados de gerência provenientes de
diferentes fontes como descrito na figura 2.6.


6.2.3 HMMP


      O HiperMedia Management Protocol (HMMP) é o protocolo de comunicação
que transmite os objetos gerenciados CIM entre o servidor e o cliente. O HMMP
encapsula e transmite os objetos CIM sobre protocolos de transporte como o TCP
que é utilizado normalmente para comunicação Internet.


      O protocolo HMMP especifica que cada operação é tratada separadamente.
Como exemplo, o suporte do CIMOM para criação, remoção, atualização e
requisição de classes e instâncias serão modelados cada um com sua própria
operação.


      O protocolo HMMP é projetado para ser mapeado sobre diferentes protocolos
de transportes. O protocolo pode trabalhar orientado ou não a conexão. O protocolo
TCP é o protocolo de transporte recomendado, por ser o protocolo típico para
gerência via WEB e para comunicação na Internet.




6.2.3 XML


      Conforme detalhado em [DMT99] um dos últimos estudos realizados pela
iniciativa WEBEM é a utilização da linguagem XML Extensible Mark-up Language,
como um método de representação das informações de gerência. No site WEBEM
                                                                              88


um documento escrito por Roger Boot, propõem o mapeamento entre o modelo CIM
e construções XML. Isto poderá permitir qualquer objeto de gerência CIM ser
representado na forma de um ou mais documentos XML. O maior benefício disto é a
padronização da linguagem XML para a apresentação dos dados de gerência. Estes
dados poderiam desta forma ser apresentados e manipulados por aplicações de
gerência corporativa WEBEM.




6.3   CONCLUSÃO

      Neste capítulo foi descrita a iniciativa Web-based Enterprise Management -
WEBEM [DMT99][HER99], sua arquitetura e componentes. A iniciativa WEBEM
define um esquema de gerenciamento corporativo com o objetivo de trabalhar com a
WEB e os frameworks convencionais de gerência de redes e sistemas existentes.
A iniciativa WEBEM define um modelo de dados padrão para ser utilizado como
repositório de dados comum de gerência. Permitindo que frameworks de gerência
de redes e sistemas convencionais possam transformar os seus dados para este
formato padrão.


      No próximo capítulo será apresentado um estudo de caso da solução de
gerência corporativa Unicenter TNG. Neste capítulo esta solução é estudada sobre
a ótica de implementação de funcionalidades de gerência via WEB e validação dos
conceitos apresentados nos outros capítulos deste trabalho.
                                                                                 89


7     ESTUDO UNICENTER TNG

7.1   Introdução


      A solução de gerência corporativa Unicenter TNG, da empresa Computer
Associates, é estudada neste capítulo sobre a ótica de implementação de
funcionalidades de gerência via WEB e validação dos conceitos apresentados nos
outros capítulos deste trabalho. Existem vários fabricantes de soluções de gerência
que já implementam a gerência via WEB em seus produtos. A solução da
Computer Associates foi escolhida pela sua disponibilidade, facilidade de instalação
e configuração de seu framework de gerência, distribuído gratuitamente para
diversas plataformas. Incluindo as plataformas Windows NT, plataformas UNIX de
diversos fabricantes, como HP-UX, SUN Solaris, IBM AIX e a plataforma Linux.




7.2   Arquitetura UNICENTER TNG


      O framework Unicenter TNG [UNI00] é definido de forma a ser o centro do
gerenciamento corporativo. Nele são concentradas todas as disciplinas, permitindo
uma visão centralizada das diversas plataformas a serem gerenciadas e uma
integração entre as diversas disciplinas de gerência.


      O gerenciamento de recursos não se limita a tecnologias específicas. Tendo
um amplo controle de todos os recursos corporativos, atuando em todos os tipos de
recursos: sistemas, redes, bancos de dados e aplicações. A integração de todos
estes recursos oferece uma visão unificada deste ambiente, através de um conjunto
de funções para gerenciamento desenvolvido com uma infra-estrutura flexível.


      O maior desafio do gerenciamento corporativo é a integração de várias
ferramentas de diversas fontes. A Computer Associates criou o Framework
Unicenter TNG, permitindo a integração entre fabricantes de diversas plataformas e
aplicativos de gerência de terceiros. Este framework contém todos os serviços
distribuídos básicos necessários para o gerenciamento corporativo integrado.
                                                                                   90


      O framework Unicenter TNG [UNI00] é disponibilizado com a infra-estrutura
necessária para o gerenciamento da maioria das plataformas existentes no
mercado. Entre elas a plataforma Windows NT, UNIX, Netware, AS/400, Tamdem
NSK e ainda os ambientes de Mainframe. O framework Unicenter TNG inclui as
seguintes funcionalidades básicas:


         Enterprise Discovery, para a realização da descoberta ou discovery de
          todos os objetos de rede e recursos existentes na rede corporativa.
          Incluindo sistemas, estações redes, aplicações e bancos de dados;
         Manager/Agent Event Management, para a monitoração completa de
          status e logs de eventos, habilitando a resposta automatizadas para a
          mudança do status de objetos;
         Calendar Management, para a definição de data e sincronização
          baseadas em tempo, para fornecer uma coordenação das mudanças que
          afetam os processos de negócio;
         Reporting, para a criação de relatórios padronizados e customizados;
         Virus Detection, para detecção de vírus registrados e não registrados;
         Common Object Repository; o repositório de objetos suporta todas as
          funções de gerenciamento e a interface de mundo real (Real Word
          Interface), Interface de Negócio (Business Process View) e os elementos
          de interface de usuários incluindo as representações 2-D e 3-D;
         Event Notification Faciliy (ENF) e a Common Communication Interface
          (CCI), que reforçam a confiabilidade e escalabilidade do framework
          fornecendo uma infra-estrutura de mensagens;
         WEBEM Support, para habilitar os usuários corporativos a relacionarem
          interfaces de gerência WEB a outros dados de gerência WEBEM de
          diversas fontes, criando uma visão centralizada dos recursos dos
          ambientes de tecnologia da empresa.
         Entreprise/CSI (Configuration Standarization Initiative), para a gerência de
          estações e servidores;
         WakePC Technology, este sistema permite que técnicos executem tarefas
          de manutenção remotamente;
                                                                                         91


         DMI Support, permite que administradores possam identificar, visualizar e
          gerenciar systemas, incluindo componentes de hardware e software e
          dados estáticos e dinâmicos;
         Real Word Interface, este serviço permite visualizar a topologia da rede e
          todos os recursos de computação na rede corporativa, através de uma
          interface real 2-D, 3-D e visualização via WEB.


      Para suportar a escalabilidade e flexibilidade requerida pelo gerenciamento
em todos os níveis, o Unicenter TNG é baseado em uma arquitetura para
gerenciamento em múltiplos níveis gerente/agente. Os agentes do Unicenter TNG
são ativos e inteligentes, capazes de implementar políticas e coordenar juntamente
com outros agentes ativos as funções de monitoração de eventos e estados,
gerenciamento da configuração de ambientes distribuídos, entre outras.



                             Interface com o Mundo Real
                                    (2-D, 3-D, WEB)




                                Repositório de Objetos




           Gerente           Gerente               Gerente         Gerente         ...




            Agente           Agente                 Agente         Agente    ...




                            Figura 7.1 Arquitetura Unicenter TNG
                                                                                      92


           A figura 7.1 descreve a arquitetura Unicenter TNG. A Arquitetura da solução
Unicenter TNG [UNI00] é definida pelas camadas de interface de mundo real,
repositório de objetos, gerentes e agentes.



7.2.1 Interface com o Mundo Real


           A Interface de Mundo Real ou Real Word Interface [UNI00] utiliza visualização
em 3-D e animação para mostrar todos os recursos da rede, permitindo, assim, uma
forma intuitiva de navegação através dos sistemas e conexões da rede, iniciando
pelas cidades e prédios do mundo real. Esta Interface permite visualizar a topologia
da rede e todos os recursos de computação na rede corporativa, como
equipamentos, sistemas operacionais, aplicações, bancos de dados, entre outras.
Possui visualização em 2-D e 3-D de todos os recursos da rede Interface Windows
da Microsoft. Com a disponibilidade de um browser Java baseado nas tecnologias 2-
D ou VRML 3-D é possível, também, realizar o gerenciamento via WEB a partir de
qualquer ponto da rede.


           O produto é configurável, permitindo aos clientes especificar mapas, edifícios
e controlar a configuração das redes e sistemas operacionais. Todos os recursos da
rede são representados como são no mundo real, e o funcionamento de cada
componente é sinalizado através de alertas coloridos verde, indicando uma situação
normal, amarelo indicando uma anormalidade ou vermelho indicando um problema
crítico.




7.2.2 Repositório de Objetos


           As informações exibidas na console ou Wordview, estão armazenadas no
repositório de objetos (Common Object Repository) do Unicenter TNG [UNI00], onde
todas as funções de gerenciamento armazenam informações sobre os objetos
gerenciados, suas propriedades e relacionamentos. As aplicações, hardware,
software, bancos de dados e entidades como contas a pagar, contas a receber,
recursos humanos, entre outros, são exemplos de objetos gerenciados.
                                                                                     93




      Os objetos gerenciados pelo Unicenter são formatados com base no modelo
padrão de objetos (Common Object Model), o que facilita a integração das diversas
aplicações e inclui recursos de pesquisa que permitem as funções de
gerenciamento encontrar e gerenciar objetos facilmente.




7.2.3 Visão de Negócios


      A visão de negócios [UNI00] ou Business Process View , permite visualizar o
conjunto de objetos necessários a execução de aplicações críticas como servidores,
bancos de dados, terminais e impressoras. É uma visão totalmente configurável
dos processos de negócios da companhia para suas aplicações críticas.
A visão tradicional de administradores de sistemas, bancos de dados, redes, entre
outras, não permite enxergar todos os recursos necessários a execução de uma
aplicação. Cada administrador preocupa-se com uma instância específica:


          A visão horizontal tradicional, não permite identificar processos de negócios
que se utilizam de diversos componentes existentes. Através de Business Process
views, o Unicenter TNG oferece uma nova visão de negócios, através da visão
vertical, ou seja, é possível visualizar somente as máquinas e ocorrências
envolvidas no processo de manufatura, nos aplicativos financeiros, e assim por
diante.


      É possível saber por exemplo quais aplicativos ou negócios da empresa
serão afetados pela queda de um servidor, ou descobrir se um determinado servidor
é o gargalo de algum processo ou negócio. Um administrador de rede local poderia
visualizar somente o seu ambiente computacional e suas ocorrências, enquanto que
o administrador principal teria uma visão global do ambiente corporativo.
                                                                                   94


7.2.4 Auto Discovery


       A criação e carga do repositório de objetos com os dados que descrevem a
rede corporativa é executada automaticamente pela função discovery que executa a
detecção automática da rede. As funções realizadas pelo discovery [UNI00]
automático incluem encontrar as entidades ou recursos e popular um repositório
com os objetos gerenciados; determinar os relacionamentos entres os recursos e
popular o repositório com representações destes relacionamentos.


       A função de descobrimento e detecção não somente detecta a topologia e
dispositivos da rede, mas também os computadores e suas configurações de
hardware e software. Ela detecta também bancos de dados e aplicações.
Uma vez criado o repositório, estes objetos podem ser exibidos pela console ou
WorldView do Unicenter. As entidades que eles representam podem ser controladas
pelas aplicações de gerenciamento bem como por aplicações de terceiros. As
principais vantagens do serviço discovery do Unicenter são descritas abaixo.


      Executar múltiplas instâncias de discovery simultaneamente;
      É possível Iniciar o discovery automaticamente ou manualmente ;
      É possível fazer um discovery de todas as entidades da rede ou somente de
       uma sub-rede específica;
      É possível especificar quais os recursos a serem detectados;



7.2.5 Gerentes e Agentes


       O Unicenter TNG [UNI00] implementa o gerenciamento em múltiplos níveis
gerente/agente. Os gerentes podem estar localizados em qualquer lugar da rede e
os agentes residem próximo dos recursos gerenciados. Os agentes coletam,
identificam, filtram e enviam dados para os gerentes. Os gerentes analisam,
controlam e correlacionam os recursos gerenciados e as informações do ambiente,
analisando os padrões e tendências de forma a determinar a melhor forma de
controlar os recursos gerenciados. A estrutura gerente/agente é flexível e escalável.
                                                                                95


Um gerente pode gerenciar múltiplos agentes e múltiplos gerentes podem gerenciar
um agente. Um gerente pode ainda atuar como um agente de outros gerentes. Esta
interação e cooperação entre gerente e agente permite a gerencia corporativa
distribuída.




7.2.6 Disciplinas de Gerência Corporativa


       O framework Unicenter TNG [UNI00] serve de base para as diversas
disciplinas de gerência implementadas nas áreas de segurança, operações, redes,
Servidores e Estações, Groupware, Aplicações e Bancos de Dados, Help Desk,
Serviços Internet e Storage.    Para que estas as soluções de gerencia sejam
implementadas nestas áreas, agentes específicos são disponibilizados para cada
área e plataforma. Existem mais de 50 agentes desenvolvidos para cada área e
diversas plataformas. A documentação detalhada da implementação de cada
gerente específico pode ser acessada na página http://www.cai.com/unicenter/
prodinfo.htm.




7.2.7 Tecnologia de Redes Neurais


       A tecnologia Neugents [UNI00] é composta por aplicações que utilizam a
tecnologia de redes neurais para prever falhas antes que elas ocorram. Os sistemas
convencionais de gerência de sistemas respondem somente a eventos baseados
em suposições anteriores. Os Neugents são capazes de se adaptarem, aprendendo
e observando a carga dos sistemas ao longo do tempo. A tecnologia Neugent lida
com performance e disponibilidade e foi introduzida na versão 2.2 do Unicenter
TNG.



7.2.8 Unicenter TNG SDK


       O kit de desenvolvimento de software Unicenter TNG fornece conjuntos de
APIs documentadas que mapeam cada camada da arquitetura TNG. Estas APIs
                                                                                  96


correspondem a maneira para desenvolver aplicações de gerência integrando
soluções de clientes e terceiros.




7.3   Análise da Solução Unicenter TNG
7.3.1 A Solução Unicenter TNG e a Gerência Corporativa


      A solução Unicenter TNG é apresentada pelo seu fornecedor como uma
solução de gerência corporativa, com o objetivo de integrar as diversas áreas de
gerência descritas no capítulo 2 e 3 deste trabalho. Incluindo as áreas de redes,
sistemas, aplicações e serviços.


      A tecnologia de agentes permite a implementação da gerência das diversas
disciplinas nas áreas de segurança, operações, redes, Servidores e Estações,
Groupware, Aplicações e Bancos de Dados, Help Desk, Serviços Internet e
Storage. Incluindo agentes específicos disponibilizados para cada área e plataforma,
incluindo servidores Windows, UNIX e Mainframe entre outras.




7.3.2 A Solução Unicenter TNG e os Padrões de Mercado


      A solução Unicenter TNG faz parte dos chamados sistemas convencionais de
gerência corporativa, descritos no capítulo 2 deste trabalho. E tem como base, a
aderência de seu framework aos padrões abertos, incluindo a o padrão SNMP para
a área de gerência de redes; o padrão DMI para a gerência de sistemas e o
padrão WEBEM para a gerência via WEB.


      A pesar da solução da Computer Associates ser baseada em padrões
abertos, assim como outros fornecedores de sistemas convencionais, esta solução
não integra em seu framework as soluções de seus concorrentes. A gerência de
eventos transmitidos pelo produto Netview da IBM ou Open View por exemplo, não
pode ser integrada diretamente na console de eventos da solução Unicenter TNG.
                                                                                   97


      A integração de produtos de terceiros é feita através do kit de
desenvolvimento de software SDK do Unicenter TNG. Este kit fornece conjuntos de
APIs documentadas que mapeam cada camada da arquitetura TNG. Estas APIs
correspondem a maneira encontrada para desenvolver aplicações de gerência
integrando soluções de clientes e terceiros.



7.3.3 A Solução Unicenter TNG e a Gerência Via WEB


      A gerência via WEB foi implementada na versão 2.2 do Unicenter TNG como
uma interface alternativa para a gerência . Nesta versão foi disponibilizada o acesso
via WEB através das tecnologias de browsers Java 2-D ou VRML 3-D, estudas no
capitulo 4 deste trabalho. A disponibilização desta interface permite a gerência de
todos os recursos de qualquer ponto da rede corporativa via WEB.


      O Unicenter TNG permite a visualização de informações via browser de forma
hierárquica ou em árvore. É possível visualizar a arvore das classes e instâncias;
objetos definidos para cada classe e a topologia de redes em formato de folders.


      Através   da   ferramenta    Class   Wizard   disponível   nos   browsers,   os
administradores podem criar ou modificar recursos gerenciados.         As mudanças
realizadas via Class Wizard afetam as classes herdadas e seus objetos. A
ferramenta ObjectView fornece detalhes performance dos dispositivos de rede.
Através desta ferramenta são realizadas consultas SNMP para acessar em tempo
real as informações contidas nas MIBs dos dispositivos. As informações são
apresentadas através de painéis no monitor.


      Conforme estudado anteriormente neste capítulo o framework Unicenter TNG
oferece suporte ao padrão WEBEM. Esta tecnologia foi estudada no capítulo 6
deste trabalho. Este suporte permite que usuários corporativos a relacionem
interfaces de gerência WEB a outros dados de gerência WEBEM de diversas fontes,
criando uma visão centralizada dos recursos dos ambientes de tecnologia da
empresa.
                                                                                    98


8      CONCLUSÕES

       Com base nas informações apresentadas nos capítulos anteriores, é possível
concluir que a utilização de tecnologias WEB em sistemas de gerência
corporativa já é uma realidade presente [DMT99][IBM99][JAV99][UNI00][WEB99]
na maioria das soluções existentes no mercado.


       Existe   uma   tendência   de   utilização   de   Tecnologias   WEB   para   a
implementação da gerência corporativa com objetivo de complementar as áreas
de gerência existentes. O que se pode constatar é que a utilização de tecnologias
WEB não significa simplesmente uma nova maneira de se apresentar informações
de gerência através de uma interface via browser [HERN99], e sim uma nova
plataforma de integração robusta, onde a redução de custos [WOL00] e a facilidade
de gerenciamento, seja via rede corporativa ou Internet, são fatores determinantes.


       Conforme estudado anteriormente no capítulo 2, os sistemas convencionais
de gerência corporativa tiveram um grande amadurecimento ao longo dos últimos
10 anos, suportando diversos padrões existentes no mercado. Neste período foram
acrescidos diversos tipos de gerenciamento e novas funcionalidades. Incluindo a
integração com os diversos padrões abertos existentes e a adoção das tecnologias
WEB.


       Entre os padrões estudados no capítulo 3,            estão o padrão SNMP
[MUR98][STA96], CMIP [LEI96] e TMN [HER99] para a área de gerência de redes;
o padrão DMI [HER99] para a área de gerência de sistemas e o padrão ARM
[HER99] para gerência de aplicações. Todos estes frameworks de gerência têm
estendido sua atuação sobre a gerência de redes de dados e telecomunicações. E
adicionalmente aos padrões utilizados vários outros consórcios e fóruns estão
desenvolvendo novos frameworks e APIs [DMT99][HER99][JAV99],            promovendo
desta forma o aumento da abrangência da gerência corporativa de redes e
sistemas. Entre estas iniciativas, estão as iniciativas de desenvolvimento e
padronização de frameworks baseados e tecnologia WEB, que propõem a
                                                                                 99


integração dos padrões existentes, principalmente na área de gerência de redes,
aos novos padrões que estão sendo definidos.


      No capítulo 4 foi estudado o conceito de gerência via WEB e sua arquitetura
[HER99] composta pelos modelos de framework nativo, proxy e gateway. Foram
analisadas a evolução da Internet e da WEB e as tecnologias empregadas para a
implementação da gerência via WEB. Entre as tecnologias estudadas no capítulo 4,
estão o conjunto de protocolos de comunicação TCP/IP [MUR98][STA96]; os
browsers Internet [HER99],     servidor WEB [HER99];       as Markup Languages,
incluindo HTML, XML entre outras [HER99]; as linguagens de programação WEB
Java, C, C++ [HER99]; as linguagens script WEB JavaScript, ECMAScript, PERL,
TCL e Phyton [HER99]; os formatos gráficos GIF, JPEG [HER99] e NPG [PNG00];
os padrões MIME, CGI, ActiveX, VRML entre outros [HER99].


      Nos capítulos 5 e 6 foram estudadas as duas principais iniciativas de projeto
de frameworks de gerência via WEB, a iniciativa Java Management Extension
(JMX) [JAV99] da Sun Microsystems e a Web-based Enterprise Management
(WEBEM) [DMT99][HER99]. A Java Management Extension (JMX) define uma
arquitetura de gerência,   APIs, e serviços de gerência, todos sobre uma única
especificação. A iniciativa WEBEM define um esquema de gerenciamento
corporativo com o objetivo de trabalhar com a WEB e os frameworks convencionais
de gerência de redes e sistemas.


      Finalmente, no capítulo 7 foi realizado um estudo de caso da solução
Unicenter TNG [UNI00] da empresa Computer Associates. Neste capítulo esta
solução foi estudada sobre a ótica da implementação de funcionalidades de
gerência via WEB e a validação dos conceitos apresentados nos outros capítulos
deste trabalho. A partir deste estudo é possível concluir que, assim como outros
fabricantes de soluções de gerência, a empresa Computer Associates apresenta
uma forte inclinação para a utilização de gerência via WEB. Incluindo o suporte
para sistemas convencionais de gerência de redes e sistemas com base nos
padrões SNMP e DMI. Possui ainda, uma arquitetura orientada a objeto, incluindo
agentes inteligentes e repositório de objetos. E a grande inovação correspondente a
                                                                               100


interface para mundo real (Real Word Interface) que permite a visualização em duas
ou três dimensões através de browsers baseados na tecnologia VRML [HER99]. O
acesso as informações de gerência pode ser realizado facilmente via ferramenta
browser, de qualquer lugar da rede corporativa ou através da Internet.
                                                                                 101


                              BIBLIOGRAFIA

[DMT99] Distributed Management Task Force: http://www.dmtf.org/wbem/index.html
. dezembro/1999


[HAR99] Harnedy, S. WEB-Based Management for de Enterprise.NewJersey :
Ed. Prentice Hall,1999


[IBM99] IBM Java Web-Based Network Management :
http://www.networking.ibm.com/cma/cmajava.html . dezembro/1999


[JAV99] Java Management Extension :
http://www.javasoft.com/products/JavaManagement/wp/ . dezembro/1999


[LEI96] Leiwand, A;Conroy, K.F. Network Management.New York : Ed. Addson-
Weley,1996


[MUR98] Murray, J.d. Windows NT SNMP.California : Ed. O´Reilly,1998


[PNG00] Portable Network Graphics: http://www.w3.org/TR/REC-png.html .
fevereiro/2000


[STA96] Stallings, W. SNMP, SNMPv2, and RMON - Practical Network
Management,. Ed. Addison-Wesley, 1996


[THE99] The Simple Times: http://www.si’mple-times.org/pub/simple-times/issues/4-
3.html . novembro/1999


[THE00] The Word Wilde Web Consortium: http://www.w3.org/ . janeiro/2000


[UNI00] Unicenter TNG Framework:
http://www.cai.com/products/unicent/framework/tng_framework.htm . janeiro/2000
                                                                            102


[WEB99] Web-Based Network Management:
http://www.baynetworks.com/products/Papers/WEBbased.html . dezembro/1999


[WOL00] Wolcott k. Reducing Your Network Hardware Support Costs by Adding
Web-based Management : http://www.summitonline.com/tech-
trends/papers/rapid1.html . janeiro/2000

								
To top