Abstract:
The present invention provides a system and method for managing a network. In response to an original request, a management station sends an augmented request to a remote server for information fulfilling the original request plus additional information available.

Description:
BACKGROUND OF THE INVENTION 
     Herein, related art may be discussed to put the invention in context. Related art labeled “prior art” is admitted prior art; related art not labeled “prior art” is not admitted prior art. 
     Centralized management of remote computers requires local access to configuration and utilization data for the remote computers. If required information is gathered from remote computers only upon request, there can be an undesirable latency between the request and provision of the data. This problem can be ameliorated by caching recently used data so that, if it is requested again, it can be supplied from a local cache. In an alternative approach, a management function continuously polls all remotely managed computers so that all data relating to their management is available locally. However, this approach can result in superfluous accesses and consume network bandwidth. The present invention provides for management of remote computers with fewer remote accesses so that network bandwidth is used more efficiently. These and other features of the present invention are apparent from the description below with reference to the following drawings. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWING 
       The following drawing is of an embodiment of the invention and not of the invention itself. 
         FIG. 1  is a schematic diagram of a management computer network and associated method in accordance with embodiments of the invention. 
     
    
    
     DETAILED DESCRIPTION 
     The present invention provides for collecting more data from a provider on a remote computer than is needed to meet a request. The extra data is cached along with requested data, reducing the number of remote computer connections relative to alternative approaches. In many cases, the cost of collecting and caching the extra data is small compared to the reduction in latency achieved when the extra data is requested. By “remote” is meant “accessed over a network”. 
     A network AP 1  includes servers SV 1 , SV 2 , and SV 3 , a management station S 1 , and network infrastructure  101 . Server SV 1  is divided into two hard partitions HP 1  and HP 2 . Hard partition HP 1  runs a workload WL 1  and a provider PH 1 , that can provide configuration and utilization data for hard partition HP 1 . Hard partition HP 2  includes a provider PH 2  that can provide configuration and utilization data for hard partition HP 2 . In addition, providers PH 1  and PH 2  can provide information regarding the non-respective hard partition. 
     Hard partition HP 2  runs two virtual machines VM 1  and VM 2 , each running a respective workload WL 2 , WL 3 . Each of these virtual machines VM 1 , VM 2  has a respective provider PV 1 , PV 2 . Each of these providers provides information only for the respective virtual machine. Servers SV 2  and SV 3  are also partitioned, but for expository purposes their details can be ignored. 
     The providers can conform to Web-Based Enterprise Management (WBEM), a set of systems management technologies developed to unify the management of distributed computing environments. Alternatively, another protocol can be used, such as the simple network management protocol (SNMP), which forms part of the Internet protocol suite defined by the Internet Engineering Task Force. The SNMP protocol is used by network management systems for monitoring network-attached devices for conditions that warrant administrative attention. 
     Management station S 1  runs several software programs in computer-readable media, including a workload manager WM 1 , a data manager DM 1 , a requestor RQ 1 , and a user interface to the data manager UI 1 . Workload manager WM 1  dynamically reallocates hardware resources to workloads on remote computers in accordance with locally stored management policies P 1 . To this end, it requests configuration and status information from data manager DM 1 . Also, a human manager can access data manager DM 1  via a user interface UI 1 , e.g., by using a display  103 , keyboard  105 , and mouse  107 . 
     A method ME 1  is practiced in the context of network AP 1 . At method segment M 1 , data manager DM 1  receives a request, e.g., from workload manager WM 1  or from a human manager, for data pertaining to a remote server. For example, a human manager might request information regarding the CPU utilization of virtual machine VM 1 . 
     At method segment M 2 , data manager DM 1  determines whether or not the request can be met from cache DC 1 . If it can (i.e., if there is a “hit”), the request is fulfilled from cache DC 1  at method segment M 3 . Whether or not there is a hit, at method segment M 4 , data manager DM 1  makes an augmented request for all data from the remote provider of the requested data. In the case of a request for CPU utilization by virtual machine VM 1 , data manager DM 1  makes an augmented request for all data available from provider PH 1 , including the requested CPU utilization, memory usage, input/output resources and utilization, operating system and version, identity of any applications running on the virtual machine, etc. The augmented request is handled by requestor RQ 1 , which accesses the specified provider and obtains both the requested and related data in the augmented request. 
     At method segment M 5 , requested data QD 1  and related data RD 1  returned by requestor RQ 1  are placed in cache DC 1 , which draws no distinction based on whether data is in there because it was originally requested or is in there as part of the augmented portion of the request. If at method segment M 2 , there was a hit, method ME 1  ends at method segment M 5 . However, if at method segment M 2 , there was a miss, then the requested data just cached is forwarded to data manager DM 1  to meet the original request. 
     Normally, the present invention will reduce the time-averaged number of connections to remote computers required. The illustrated embodiment reduces latency relative to a method in which only requested data is cached in cases when data manager DM 1  receives a request for cached related data RD 1 . The present invention achieves reduced bandwidth requirements relative to a continuous polling approach because data remote systems are accessed only when a request is made. The invention can require more time and bandwidth when fulfilling a request when compared to the request-only cache method. However, this extra latency and time are often negligible. In the event of a cache hit, timing is less critical as the request has already been satisfied from the cache. 
     The present invention applies to networks with different numbers and types of servers, different technologies (e.g., hard partitions, virtual partitions, virtual machines) for partitioning or otherwise allocating resources. In some embodiments, a remote server running multiple operating systems can have a system-wide provider that gathers all data of interest regarding the host server. In that case, each request to that server is for all information regarding that server and its partitions and workloads. 
     In the illustrated embodiment, the management station is accessed directly, e.g., not through network infrastructure  101 , using attached human interface devices, display  103 , keyboard  105 , and mouse  107 . In alternative embodiments, a management station is accessed over network infrastructure  101  via remote computers or terminals. For example, the user interface can be a web browser so that a human manager can control management network AP 1  using a World-Wide Web interface. These and other variations upon and modifications to the illustrated embodiment are provided for by the present invention, the scope of which is defined by the following claims.