Method and system for intelligent function analysis and verification on CIM based devices
Original Publication Date: 2008-Jul-24
Included in the Prior Art Database: 2008-Jul-24
In the device management industry, the Common Information Model (CIM) has been accepted as an industry standard model by Distributed Management Task Force (DMTF). In a CIM implementation, the CIM Object Manager (CIMOM) manages the objects to be managed through the CIM protocol among a CIM Agent and a CIM Client. In a typical CIM based storage management software architecture, the CIM agent is implemented in the lower level hardware devices, and the CIM client is implemented in the higher level management software. Therefore, CIM agent becomes the management interface to devices. So the test through CIM protocol on device becomes very essential. However, to verify the functions on CIM based devices is very difficult, the main problems are: 1.When verifying function on device, the current criteria to decide whether a function is successful or not only depends on the return code (success information or failure information) of function execution, but that's always incorrect, because the return code always shows it successful, while the execution details are incorrect. Also it's impossible for people to know the execution detailes of function execution on devices, e.g. which component instance data is generated, or which attribute of component is changed, … 2.A bigger problem is: for some long running tasks, the function will return after submiting jobs to device, but whether the final execution is successful or not depends on the real execution result on devices. 3.People usually needs to manually write programming codes for test cases to verify functions of devices, which requires more specific skills and takes a long time to do, so the cost is very high. 4.When executing one function on devices, it’s impossible to find out the execution time or performance data for each sub-execution steps on that devices; for example: CreateReplica() will firstly create a volume, and then copy data from source to destination; But it's impossible for user to know the execution performance of volume creation sub step and data copy sub step. 5.People can write very specific checking codes to verify specific type of device, but these codes can always focus on one type of device, when changes to another type, original codes or program always doesn’t work. Also, writing that kind of specific checking codes requires very deep skill or knowledge on that device. This paper introduce the verification process in the following way: 1.Based on the Function Verification Plan, users run their test cases on the Function Test Engine. This involves any standard CIM requests and extrinsic methods from the target devices tested in this plan. While the users are running the test cases, actual implementation in CIM Agent will be executed, which are management operations over the CIM Device. 2.The Monitor Engine works on the other side of the CIM Agent. It plugs itself to the CIMOM server and starts the series of monitoring work automatically. Any operation happened while CIM Agent’s implementation is being executed. The Monitor Engine has a record stored to a local repository. These records will be the input to the Analysis Engine in the next step. Inside the Monitor Engine, the presented invention features a Function Monitor, a Performance Monitor and an Indication Registration sub-parts. The three sub-parts will generate data as in their specific area. 3.The Analysis Engine collects the data generated from Monitor Engine module. Using predefined standard rule in the inventions Verification Rule Base and other customized rule corresponding to any test scenario in the test plan input by the users, Analysis Engine gives out the verdict on the test results. Details in the test results represent the verification on the components implemented by CIM Agent to manage CIM Devices. Based on the modules in Monitor Engine and Analysis Engine, component instances, attributes of the component instances, operations conducted on the components and any events related to the components are included in the results. The users don’t have to do manual verification, because the rule-based verification mechanism in the invention has an intelligent engine to do this.
Method and system for intelligent function analysisand verification on CIM based devices
CIM is the acronym for Common Information Model. An object oriented description of the entities and relationships in a business' management environment maintained by the Distributed Management Task Force. CIM is divided into a Core Model and Common Models. The Core Model addresses high-level concepts (such as systems and devices), as well as fundamental relationships (such as dependencies). The Common Models describe specific problem domains such as computer system, network, user or device management. The Common Models are subclassesof the Core Model and may also be subclasses of each other.
The CIM Object Manager (CIMOM) manages CIM objects on a WBEM enabled system.
METHOD AND SYSTEM OVERVIEW
- Solution Overview
The following diagram shows our solution for function analysis and verification on CIM based devices, we will give a detailed description about two engines of our innovation, one is the monitor engine, which includes function monitor, performance monitor and indication registration, the other is analysis engine with the verification rule base, which includes pre-defined standard rule and post-defined customized rule.
Function Verification Plan
Function Test Engine
Verification Rule Base
Figure 2: The solution for intelligent function analysis and verification
- Monitor Engine
Three components should be integrated into the monitor engine for real-time and accurate supervision as we described in Figure 2, they are function monitor, performance monitor and indication registration component, and all these modules cooperate with each other to complete the process of CIM based monitor.
Function Monitor Component
In our design, we should have a CIM based function monitor at first, which will be started automatically when the function test engine and monitor engineis launched. It will first check the function verification plan through test engine, pick up which CIM classes and properties should be monitored with the additional associations between CIM classes according to specific monitor mechanism. Subsequently, this component will monitor CIM agent, and capture any changes occurred on CIM based device. Performance Monitor Component
Performance monitor is designed to find out the performance or execution time for each sequent sub-steps for one CIM operation on CIM based device. When the consumers do some operations on the device, it willobviously bring some changes on CIM agent and cause the function manager capture the differences, after that, this component could calculate the duration for each sub-st...