Purpose
IANet_DiagTest is subclassed from CIM_DiagnosticTest.
The class provides a generic vehicle to run and control
diagnostic tests for an Intel® PROSet supported
Ethernet adapter. The superclass, CIM_DiagnosticTest, is designed to generically support the
testing of any computer hardware on a CIM enabled system. Properties of the class are
descriptive in nature and the mechanics of the testing are provided by
the exposed methods.
Instances
Key is Name and in this provider it is the concatenation of a numeric index of the test at
the GUID of the referenced adapter (e.g. 1@{12345678-9ABC-DEF0-1234-123456789012}). This
key value is, in one sense, redundant information, as all information
to reference an adapter and test is passed as object parameters to the
RunTest and other methods. Still, the instance must be consistent with parameters to the method or the
provider will reject the command. The caption property provides the name of the test that this
instance will run. Other properties provide other description and run-time information.
Creating Instances
You cannot create instances of IANet_DiagTest.
Deleting Instances
You cannot delete instances of IANet_DiagTest.
Modifying Properties
There are no user-modifiable properties for this
class.
Associations
Unsupported Properties
Install Date, OtherCharacteristicDescription
Methods
This class supports the following methods:
Class Hierarchy
For CimV2. Unused properties and methods not shown.
The RunTest method from the MOF file is as follows:
uint32
RunTest([IN] CIM_ManagedSystemElement ref SystemElement,
[IN] CIM_DiagnosticSetting ref Setting,
[OUT] CIM_DiagnosticResult ref Result);
The first two parameters are In parameters. You must get the object path of both objects referenced. You must also get the object path of the IANet_DiagTest object, which is exporting the RunTest object.
Purpose
Instances of IANet_DiagSetting provide specific run-time diagnostic test
directives. Directives used are common to all tests and are bound to the superclass
CIM_DiagnosticSetting. These include properties, such as ReportSoftErrors and HaltOnError. There are no additional
properties added to the subclass IANet_DiagSetting.
Creating Instances
You cannot create instances of this class.
Deleting Instances
You cannot delete instances of this class.
Modifying Properties
UpdateInstanceAsync is implemented and can be used to set test parameters to "Halt On
Error", "Report Soft Errors", "Report Status Messages", "Quick Mode", "Test Warning Level" and "Percent Of Test
Coverage".
Associations
An instance of IANetDiagSettingForTest associates an IANet_DiagTest with an IANet_DiagSetting.
Unsupported Properties
The following properties are not supported by NCS:
Methods
None
Class Hierarchy
For CimV2. Unused properties and methods not shown.
Purpose
Instances of IANet_DiagResult display result data for a particular test run on a
particular adapter. Instances of this class correspond identically to instances of IANet_DiagTest
and IANet_DiagSetting.
Instances
Instances of IANet_DiagResult correspond to results
of a particular test run on a specific adapter. The format for the key is the
same as IANet_DiagTest and IANet_DiagSetting. The instance can store
any arbitrary test results as any data, which does not fit the defined
properties, can be placed into the TestResults Array property. Any time a new test is run on
an adapter, the new instance overwrites the existing instance of test
results corresponding to that adapter and test combination.
Creating Instances
You cannot create instances of this class.
Deleting Instances
You cannot delete instances of this class.
Modifying Properties
You cannot modify instances of this class.
Associations
An instance of IANet_DiagResultForTest associates an IANet_DiagTest with an
IANet_DiagnosticResult instance.
Unsupported Properties
The following properties are not supported by NCS:
Methods
None
Class Hierarchy
For CimV2. Unused properties and methods not shown.
The following entries are entered into the registry during installation under HKLM\Software\Intel\NETWORK_SERVICES\NCS\NcsDiag. These keys and values control the execution of the diagnostic tests and are defined below.
The following table contains the values in the key, their type, and a brief explanation of their usage:
Value |
Type |
Default |
Usage |
Check Time |
REG_DWORD |
2 seconds |
Duration of time period between checks for completion of sender or responder test |
Enable |
REG_DWORD |
0 |
Enable (1) or Disable (0) usage of a results log file. |
FileAppend |
REG_DWORD |
1 |
Append (1) log results file to existing log results file. If 0, delete existing file. |
LogFileName |
REG_SZ |
NcsDiag.log |
The name of the log results file. |
MaxFileSize |
REG_DWORD |
0x10000 |
Maximum size of the log results file. |
MaxPktsRcvd |
REG_DWORD |
200 |
In Quick Mode (from IANet_DiagSetting), send/receive test will terminate when the number of packets received is greater than this value. |
TimeoutSndRsp |
REG_DWORD |
100 |
Test is exited when duration of test (in seconds) has exceeded this value. |
The Results log primarily shows information, which could also be obtained from IANet_DiagResult objects. The difference is that information obtained from a CIM browser will only show the immediate last results of particular tests on a particular adapter. Subsequent tests overwrite earlier test results. The Results log is more convenient for setting up and viewing multiple runs of such a test.
To enable the results log:
Associative Class |
Reference Property/Value |
Reference Property/Value |
IANet_DiagTestForMSE |
Antecedent = IANet_DiagTest |
Dependent = IANet_EthernetAdapter |
IANet_DiagResultForTest |
DiagnosticResult = IANet_DiagResult |
DiagnosticTest = IANet_DiagTest |
IANet_DiagSettingForTest |
Element = IANet_DiagTest |
Setting = IANet_DiagSetting |
IANet_DiagResultForTest |
DiagnosticResult = IANetDiagResult |
DiagnosticTest = IANet_DiagTest |
The implemented tests can run on a single machine or on two machines. Detailed descriptions of the tests are beyond the scope of this document because the CDM Provider is intended to be a generic test vehicle, which is not dependent on the particulars of the tests. However, there is some dependency built into the code and that is explained in this section.
The following tests are run on a single adapter and need no interaction with any other adapter:
All error messages from these tests result from HRESULT error codes returned from calls to lower stack layers. The error codes are stored internally as error codes and are not translated into error messages until the IANet_DiagResult objects are de-referenced by enumeration or object calls are received from a management application.
The sender and responder tests are codependent tests in which one adapter (the sender) sends packets to another adapter (the responder), which sends packets back to the sender, thus completing the loop. These are the same tests, which can be run from Intel® PROSet. However, Intel® PROSet does not use CDM and does not allow you to run two tests on the same machine at the same time. CDM will allow different tests to be run concurrently on the same machine.
Sender/Responder requires two Intel adapters, one to be the sender and one to be the responder. This test is the only one in which the test is run based on a second thread that continues running until the test completes according to completion criteria or is stopped by the primary thread. The completion criteria are timeouts based either on the length of the testing time or number of packets received. Both of these values are obtained from the registry. The test may only be ended based on the number of packets received if Quick mode has been enabled. Quick Mode is a property of the IANet_DiagSetting class and hence may be set on a per adapter basis. CDM responders will respond to PROSet responders and vice versa.
Two types of error values are returned from the sender/responder tests. First, an Error Code (HRESULT) may be returned from the lower layers. Secondly, while the test is running and, unless the test is terminated prematurely by returned error code, the test thread will return intermediate and then final test statistics, which will include the following:
Copyright© 2002 Intel Corporation. Legal Information