O SNMP
faz parte de um grupo de protocolos de acompanhamento da internet
segundo o IETF (Internet Engineering Task Force). Ele é usado
em sistemas de gerenciamento de redes a fim de monitorar
dispositivos conectados à rede que exijam atenção por parte de seus
administradores. Enquanto seu predecessor, o Simple Gateway
Management Protocol (SGMP), foi desenvolvido para gerenciar
apenas roteadores de internet, o SNMP possui a capacidade de ser
aplicado a sistemas Unix, Windows, impressoras, modem racks,
fontes de alimentação, dentre outros, não se restringindo somente a
dispositivos físicos, mas também podendo ser introduzido em
softwares, como servidores web e banco de dados.
O protocolo consiste em uma série de padrões para o
gerenciamento de uma rede, incluindo um protocolo da Camada
Aplicação, um programa de banco de dados e um conjunto de
dados (objetos). Basicamente, a idéia do SNMP é tratar os
dados de gerenciamento como variáveis pelo seu sistema e
assim, poder descrever a configuração do ambiente a ser
monitorado. Essas variáveis podem ser lidas e em alguns
casos até escritas pelas aplicações de gerenciamento,
possibilitando a modificação de algum dispositivo da rede.
Outro aspecto relevante alcançado pelo protocolo SNMP é a
sua capacidade de monitorar a rede por completo, incluindo
os dispostivos de cada nó e suas interações. Assim, o
gerenciamento não fica mais restrito a apenas um determinado
dispositivo.
Em outras palavras, a motivação básica para a utilização de
ferramentas capazes de realizar o gerenciamento dos
dispositivos conectados a uma rede é a de se otimizar o
desempenho de todos esses operando em conjunto. Para isso,
deve-se haver uma coordenação de informação não somente de
cada nó em separado, como também das vias de comunicação
entre esses. Em meio a essa imensa gama de informação a ser
tratada, a organização e o processamento desses dados
demandam um recurso dedicado a essa tarefa. Diante desse
contexto, surge a proposta do SNMP.
Em aplicações tradicionais em que o SNMP é utilizado, há uma
série de sistemas a serem gerenciados e um ou mais sistemas
podem ser responsáveis por administrar os demais. Diante
desse cenário, o procedimento para ocorrer o gerenciamento é
que um componente do programa denominado agente é executado
em cada sistema monitorado e esse envia as informações
coletadas via SNMP para o sistema gerenciador.
Essencialmente, os agentes do
protocolo SNMP expõem os dados sobre
a gestão dos sistemas como variáveis (tais como: “memória
disponível”, “nome do sistema”, “número de processos
correntes”, “rota padrão”, dentre outras). O sistema
gerenciador pode recuperar informações tanto por meio dos
comandos definidos como: GET, GETNEXT e
GETBULK, quanto com o uso do agente, de maneira direta,
por meio dos comandos: TRAP ou INFORM.
Operações de configuração e controle só são utilizadas
quando necessárias à infra-estrutura da rede. As operações
de monitoramento são usualmente realizadas numa base
regular.
As variáveis acessíveis via
SNMP são organizadas hierarquicamente. Estas hierarquias e
outras informações secundárias (como o tipo e a descrição
das variáveis) são definidas nas Management Information
Bases (MIBs).
A
seguir, ilustramos o fluxo de informação de gestão de rede
entre o agente e o gerente. Para isso, dois ou mais módulos
de softwares são adicionados em cada um desses. Um
deles é o programa que habilita o transporte da informação
de gerenciamento dos dispositivos e responsável por
implementar o protocolo SNMP.
O outro módulo adicionado é chamado de
processo de gerenciamento no gerente e processo de agente no
agente. Os serviços de processos de gerenciamento são
responsáveis pela gestão dos programas na camada de
aplicação e ainda proporcionam a interface para o protocolo
de gerenciamento da rede. O subagente funciona como o
integrador dos processos que acessam a informação requerida
pela aplicação de gerenciamento da rede e serve como
interface para o protocolo de gerenciamento da rede.
Figura 1 – Camadas de protocolo
na estação de gerenciamento e no agente de gerenciamento.
|