Abstract:
A plurality of communication devices communicates with each other via a network in accordance with a simple network management protocol (SNMP). The communication devices include agents with specific identifications. At least one communication device includes a proxy manager. The agent updates its status log at each status transition. The proxy manager periodically monitors communication devices, irrespective of their conditions as to whether or not communication devices are each under maintenance, independently of trap messages notifying events that occur on the network. The proxy manager collects statuses of agents included in communication devices so as to store them in connection with agents. Thus, it is possible to periodically monitor agents under maintenance without conducting a status monitoring operation.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to a communication system that uses server agents according to a simple network management protocol (SNMP). 
     The present application claims priority on Japanese Patent Application No. 2011-77006, the entire content of which is incorporated herein by reference. 
     2. Description of the Related Art 
     In a network management system, a management device communicates with a plurality of devices via a network in accordance with a network management protocol such as SNMP (Simple Network Management Protocol). 
     Patent Literature 1 (PLT 1: Japanese Patent Application Publication No. 2006-23922) discloses a server system in which a manager communicates with a plurality of servers in connection with a controller in accordance with the SNMP. Herein, the manager uses the same object ID (i.e. an ID defining an object per each server) to obtain server management information via the controller and to instruct each server to transmit its management information. Additionally, a proxy server is provided to confirm the status of an agent per each server under maintenance when an operator conducts a status confirmation operation with the manager. When the manager makes status confirmation via the proxy server, it is possible to confirm the status of an agent included in the proxy server as well. 
     The technology disclosed in PLT 1 is incapable of collecting and managing status information of servers without a special request from the manager. When the proxy server confirms the status of an agent upon a status confirmation operation by an operator, it is difficult to confirm the status of an external agent, subordinate to the proxy server, without a status confirmation operation by an operator. In other words, the foregoing technology requires a status monitoring operation to monitor the status of an agent under maintenance since the proxy manager does not periodically monitor the status per each agent. 
     SUMMARY OF THE INVENTION 
     It is an object of the present invention to provide a communication system that is able to periodically monitor an agent under maintenance without a status monitoring operation. 
     A first aspect of the present invention refers to a communication system including a plurality of communication devices with agents having specific identifications, which communicate with each other via a network in accordance with a simple network management protocol (SNMP). Each of the communication devices has a function of updating a status log due to a shift of status with its agent. At least one of the communication devices includes a proxy manager which periodically monitors the statuses of the communication devices irrespective of their conditions as to whether or not the communication devices are each under maintenance, and which collects status logs from the communication devices so as to reflect an update on status logs by the agents independently of trap messages, notifying events that occur on the network, thus storing status logs in connection with the agents included in the communication devices. 
     A second aspect of the present invention refers to a communication method adapted to a plurality of communication devices with agents having specific identifications, which communicate with each other via a network in accordance with a simple network management protocol (SNMP). The communication method includes a step of updating a status log per each agent due to a shift of status per each agent; a step of implementing a proxy manager by use of at least one of the plurality of communication devices; a step of periodically monitoring statuses with respect to the communication devices irrespective of their conditions as to whether or not the communication devices are each under maintenance; a step of collecting status logs from the communication devices so as to reflect an update on status logs by the agents independently of trap messages, which notify events that occur on the network; and a step of storing status logs in connection with the agents included in the communication devices. 
     In the above, each communication device has a function of determining a status per each agent in accordance with a status transition procedure which is determined in advance. Thus, each agent may determine its status based on a grade at fault recovery, a grade at reboot completion, or a grade at implementation, thus updating its status log based on the determined status. 
     According to the present invention, it is possible to periodically monitor the status of an agent under maintenance without conducting a status monitoring operation. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       These and other objects, aspects, and embodiments of the present invention will be described in more detail with reference to the following drawings. 
         FIG. 1  a block diagram of a network management system according to a preferred embodiment of the present invention. 
         FIG. 2  diagrammatically shows a data configuration of an agent status log of a proxy server included in the network management system. 
         FIG. 3  diagrammatically shows a data configuration of a status log of an agent server included in the network management system. 
         FIG. 4  is a mode transition diagram explaining the operation of an agent included in the proxy server. 
     
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENT 
     The present invention will be described in further detail by way of examples with reference to the accompanying drawings. 
       FIG. 1  is a block diagram of a network management system according to a preferred embodiment of the present invention. The network management system includes an agent server  1  and a proxy server  2  which are connected via a network  3 . Herein, the agent server  1 , which is a device under management, includes an agent  1 - 1 , a status log  1 - 2 , a transport/network part  1 - 3 , and an interface (I/F)  1 - 4 . The agent  1 - 1  updates the content of the status log  1 - 2  upon each status transition. The agent server  1  is connected to the network  3  via the transport/network part  1 - 3  and the interface  1 - 4 . 
     The proxy server  2  includes a proxy manager  2 - 1 , an agent status log  2 - 2 , an agent  2 - 3 , a status log  2 - 4 , a transport/network part  2 - 5 , and an interface (I/F)  2 - 6 . According to the SNMP, the proxy manager  2 - 1  is able to periodically monitor the status of the agent server  1  under maintenance independently of its trap message. The agent  2 - 3  updates the content of the status log  2 - 4  upon each status transition. 
     The proxy manager  2 - 1  is able to confirm the status of the agent server  1 . That is, the proxy manager  2 - 1  is connected to the network  3  via the transport/network part  2 - 5  and the interface  2 - 6  so as to collect status logs, related to the agent server  1  under maintenance and other external agents, including the content of the status log  2 - 4 , thus confirming the status of the agent server  1 . 
     With the aid of the proxy manager  2 - 1 , the agent status log  2 - 2 , the agent  2 - 3 , and its status log  2 - 4 , the proxy manager  2  is able to monitor external agents and to store status logs of external agents. 
       FIG. 2  diagrammatically shows a data configuration of the agent status log  2 - 2  in the proxy server  2 . As the agent status log  2 - 2 , the proxy server  1  provides a management table that manages agent IDs (i.e. identifications of agents) in connection with status transitions of agents. The proxy server  2  is able to manage which status each agent is connected to with reference to the agent status log  2 - 2 . 
     With reference to the agent status log  202 , the proxy server  2  is able to check the normality of the management table by detecting any inconsistency of status which occurs when an arbitrary agent has zero status, two or more statuses, or an undefined value of status or when the status of an arbitrary agent differs from the status included in a message of an agent ID detected via look-in monitoring. 
       FIG. 3  diagrammatically shows a data configuration of the status log  1 - 2  of the agent server  1  and data configuration of status log  2 - 4  of the proxy server  2 . As the status logs  1 - 2  and  2 - 4 , the agent server  1  and the proxy server  2  provide management tables for managing their agent IDs in connection with status transitions. 
     The agent server  1  and the proxy server  2  allocate status categories, according to reboot grades, to the agents  1 - 1  and  2 - 3  in advance. As shown in  FIG. 2 , the agent server  1  and the proxy server  2  are able to update the management tables, included in the status logs  1 - 2  and  2 - 4 , with transitions to status categories upon receipt of a maintenance instruction indicating reboot grades. 
     The agent server  1  and the proxy server  2  are able to check the normality of their management tables by detecting any inconsistency of status which occurs when an agent ID has zero status, two or more statuses, or an undefined value of status or when the status of an agent ID differs from the status included in an updated message. 
     Next, detailed operations will be described with respect to the agent  1 - 1  of the agent server  1  and the agent  2 - 3  of the proxy server  2 .  FIG. 4  is a mode transition diagram explaining the operations of the agents  1 - 1  and  2 - 3 . 
     In the proxy server  1  and the agent server  2 , the agents  1 - 1  and  2 - 3  have specific statuses.  FIG. 4  shows an agent (representing the agents  1 - 1  and  2 - 3 ) and a proxy manager (representing a proxy manager  2 - 1 ), each of which is shifted from one mode to another. Due to a shift from an initial status (ini) to an operating status (step S 1 ), for example, the agent is shifted to a mode to determine a status based on a grade at fault recovery (step S 2 ). In this mode, the agent updates its status log (representing the status logs  1 - 2  and  2 - 4 ) with the determined status (step S 11 ). 
     Upon detecting a fault at fault recovery, the agent is shifted to a mode to determine a status based on a grade at fault detection (step S 3 ). In this mode, the agent updates its status log with the determined status (step S 11 ). 
     Upon updating, the agent loads its status log so as to check the concurrence of the same status. 
     Even at fault recovery, the agent is shifted to a mode to determine a status in operation (step S 6 ). In this mode, the agent updates its status log with the status in operation (step S 11 ). Upon updating, the agent loads its status log so as to check the concurrence of the same status. 
     Similarly, due to a shift from the initial status (ini) to the operating status (step S 1 ), the agent is shifted to a mode to determine a status based on a grade at reboot completion (step S 4 ). In this mode, the agent updates its status log with the determined status (step S 11 ). The agent loads its status log so as to check the concurrence of the same status. Upon recognizing a reboot instruction at reboot completion, the agent is shifted to a mode to determine a status based on a grade at recognition (step S 5 ). 
     Due to a shift from the initial status (ini) to the operating status (step S 1 ), the agent is shifted to a mode to determine a status based on a grade at implementation (step S 6 ). In this mode, the agent updates its status log with the determined status (step S 11 ). Upon updating, the agent loads its status log so as to check the concurrence of the same status. At implementation, the agent is shifted to a mode to determine a status based on a grade before implementation (step S 7 ). 
     In either case, the agent can be shifted to a mode to determine a status in operation (step S 8 ). In this mode, the agent updates its status log with the status in operation (step S 11 ). Upon updating, the agent loads its status log so as to check the concurrence of the same status. 
     Upon determining the status in operation, the agent is shifted to a mode to determine a status before operation (step S 9 ). In this mode, the agent updates its status log with the determined status (step S 11 ). Upon updating, the agent loads its status log so as to check the concurrence of the same status. 
     In step S 20  in which the proxy manager (i.e. the proxy manager  2 - 1  of the proxy server  2 ) starts its operation or in a condition “a” in which the agent (i.e. the agents  1 - 1  and  2 - 3 ) updates its status log(i.e. the status logs  1 - 2  and  2 - 4 ), the proxy manager periodically monitors and loads the status log so as to collect status per each agent. When the proxy manager detects a discrepancy in monitoring the status log, the proxy manager updates its agent status log(i.e. the agent status log  2 - 2 ) in a condition “b” (step S 21 ). 
     Compared with the conventional technology, the present embodiment is characterized by interposing the proxy manager  2 - 1  between a manager and an agent, so that monitoring flows can be distributed to clusters of agents subordinate to the proxy server  2 . This reduces the number of monitoring flows handled by the proxy manager  2 - 1 . 
     Since the proxy server  2  periodically monitors the status of the agent server  1  independently of its trap message, it is possible to monitor the status of the agent server  1  under maintenance, which is subordinate to the proxy server  2 . This allows an operator to visually confirm the status of the agent server  1 . 
     Since the agent  2 - 3  of the proxy server  2  updates the status under maintenance, it is possible to easily update the status under maintenance. 
     Since the proxy server  2  is compatible to an http protocol, a maintenance worker is able to easily access the agent server  1  so as to confirm (or display) the status of the agent server  1  under maintenance with a management server installing an http browser. 
     Without a special request from an external agent, the proxy manager  2 - 1  is able to collect and manage status information of servers by use of a look-in tool. Additionally, the proxy manager  2 - 1  implements a tool for allocating management information of agents to messages at once; hence, it is possible to minimize an SNMP flow. 
     In this connection, the present embodiment is not necessarily limited to the proxy server  2 , but is applicable to other types of proxy servers that operate based on Java and VNC (Visual Network Computing). 
     Lastly, the present invention is not necessarily limited to the present embodiment, which can be further modified in various ways within the scope of the invention as defined by the appended claims.