The client does not need to get a session handle to read the current configuration. Clients can use a NULL context, however, any error messages will be returned in the default language for the managed machine. In the following table, items enclosed in { } are object paths. These paths are assumed to have been obtained from previous WQL queries. The client should never need to construct an object path without doing a query. The __PATH attribute of every object contains the object path for that object.
In all the following use cases, the methods IWbemServices::ExecQuery or IWbemServices::ExecQueryAsync are used to execute WQL queries.
The main class for the adapters is IANet_EthernetAdapter. This class is used for both physical and virtual adapters, and the client needs to know how to distinguish between them.
Task |
WQL Query |
Result Class |
Comment |
Enumerate all adapters |
SELECT * FROM IANet_EthernetAdapter |
IANet_EthernetAdapter |
Returns all IANet_EthernetAdapters. This is equivalent to IWbemServices::CreateInstanceEnumAsync. |
Determine if adapter is virtual |
ASSOCIATORS OF {adapter path} WHERE AssocClass = IANet_NetworkVirtualAdapter |
IANet_TeamOfAdapters |
If the query results in no classes then the adapter is a real adapter. |
Determine if adapter is a phantom adapter |
ASSOCIATORS OF {adapter path} WHERE ResultClass = IANet_EthernetPCIDevice |
IANet_EthernetPCIDevice |
If the adapter is not virtual and this query returns no objects then the adapter is a phantom adapter.
|
The main classes are IANet_EthernetPCIDevice, IANet_PCIDevice, and IANet_AdapterDevice (an association class to associate an adapter with its device).
In this case, the association class does not contain any data, i.e., it has no value by itself. IANet_EthernetPCIDevice inherits from IANet_PCIDevice and contains extra attributes that are specific for a PCI device that is an Ethernet adapter.
Task |
WQL Query |
Result Class |
Comment |
Enumerate network PCI devices |
SELECT * FROM IANet_PCIDevice |
IANet_PCIDevice |
The query may return modems and other devices that Intel® PROSet does not configure. This is equivalent to IWbemServices::CreateInstanceEnumAsync. |
Enumerate all PCI devices used by Intel® PROSet configured adapters. |
SELECT * FROM IANet_EthernetPCIDevice |
IANet_EthernetPCIDevice |
The query returns just the PCI devices that Intel® PROSet manages. This is equivalent to IWbemServices::CreateInstanceEnumAsync. |
Determine if adapter is installed. |
N/A |
IANet_EthernetPCIDevice |
Check the “Availability” attribute of IANet_EthernetPCIDevice. If equal to 10 - “Not Installed”, then the device is not installed. Note: Not much information is known about the device at this stage. |
Get the PCI Device associated with an adapter |
ASSOCIATORS OF { IANet_EthernetAdapter path} WHERE ResultClass = IANet_EthernetPCIDevice |
IANet_EthernetPCIDevice |
If this returns no objects, then the adapter is either virtual or a phantom adapter. |
Get the adapter associated with a PCI device |
ASSOCIATORS OF {Ethernet PCI device path} WHERE ResultClass = IANet_EthernetAdapter |
IANet_EthernetAdapter |
This query is not optimal for the Provider – it is preferred that the client starts with the adapter. |
The setting objects are not associated with the adapter directly. In conformance with the CIM standard, they are associated with a configuration object, which is associated with the adapter.
The classes involved with this part of the schema are IANet_EthernetAdapter, IANet_Configuration, IANet_SettingInt, IANet_SettingString, IANet_SettingEnum, IANet_SettingMultiSelection and IANetSettingSlider.
The association classes IANet_AdapterConfiguration and IANet_SettingContext do not contain any real data - they act as glue between the settings and their parent object.
Task |
WQL Queries |
Result Class |
Comments |
Get the Configuration object for the adapter |
ASSOCIATORS OF {IANet_EthernetAdapter path} WHERE ResultClass = IANet_Configuration |
IANet_Configuration |
Returns exactly one object; even if there are no settings there will always be a configuration object. The object path from this object is used in the next query. |
Get the settings associated with an adapter |
ASSOCIATORS OF {IANet_Configuration path} WHERE AssocClass = IANet_SettingContext |
A mixture of
IANet_SettingInt, IANet_SettingString, IANet_SettingEnum,
IANet_SettingMultiSelection,
IANet_SettingSlider
|
Returns all the setting classes associated with the adapter. The client should use the __CLASS attribute to determine that type of each setting.
|
The main classes in the teaming schema are IANet_EthernetAdapter, IANet_TeamOfAdapters, IANet_NetworkVirtualAdapter and IANet_TeamedMemberAdapter.
The challenge in this schema is that an instance of IANet_EthernetAdapter exists for each physical adapter and for each virtual adapter. The client must be capable of distinguishing between the virtual adapter for a team and the adapters that are members of the team.
The association class IANet_NetworkVirtualAdapter contains no useful data - clients are really only interested in the endpoints of this association. IANet_TeamedMemberAdapter does contain useful data about how the member adapter is used within the team.
Task |
WQL Queries |
Result Class |
Comments |
Enumerate all teams |
SELECT * FROM IANet_TeamOfAdapters |
IANet_TeamOfAdapters |
There is one instance of IANet_TeamOfAdapters for each team. This is equivalent to IWbemServices::CreateInstanceEnumAsync. |
Get the virtual adapter for a team |
ASSOCIATORS OF {IANet_TeamOfAdapters path} WHERE AssocClass = IANet_NetworkVirtualAdapter |
IANet_EthernetAdapter |
Returns only the adapter object for the virtual adapter in the team. This adapter will not exist if the team has been created but Apply has not been called. (see below on updating the configuration). |
Enumerate the team’s member adapters |
ASSOCIATORS OF {IANet_TeamOfAdapters path} WHERE AssocClass = IANet_TeamedMemberAdapter |
IANet_EthernetAdapter |
Returns the adapters which are in the team, but does not describe what role the adapter plays. |
Determine an adapter’s role in a team |
REFERENCES OF {IANet_EthernetAdapter path} WHERE ResultClass = IANet_TeamedMemberAdapter |
IANet_TeamedMemberAdapter |
The class contains information about how the member adapter relates to the team and its current status within the team. |
The setting objects are not associated with the team directly. In conformance with the CIM standard, they are associated with a configuration object which is associated with the virtual IANet_EthernetAdapter for the team. The same configuration object is also associated with the IANet_TeamOfAdapters object for the team.
The classes involved with this part of the schema are IANet_EthernetAdapter, IANet_TeamOfAdapters, IANet_Configuration, IANet_SettingInt, IANet_SettingString, IANet_SettingEnum, IANet_SettingMultiSelection and IANetSettingSlider.
The association classes IANet_AdapterConfiguration and IANet_SettingContext do not contain any real data - they act as glue between the settings and their parent object. This is exactly the same as the adapter settings case.
Task |
WQL Queries |
Result Class |
Comments |
Get the configuration object for the team, starting with the virtual adapter |
ASSOCIATORS OF {IANet_EthernetAdapter path} WHERE ResultClass = IANet_Configuration |
IANet_Configuration
|
Returns exactly one object. Even if there are no settings, there will always be a configuration object. The object path from this object is used in the next query. |
Get the configuration object for the team, starting with the team of adapters |
ASSOCIATORS OF {IANet_TeamOfAdapters path} WHERE ResultClass = IANet_Configuration |
||
Get the settings associated with an adapter |
ASSOCIATORS OF {IANet_Configuration path} WHERE AssocClass = IANet_SettingContext |
A mixture of IANet_SettingInt, IANet_SettingString, IANet_SettingEnum, IANet_SettingMultiSelection, IANet_SettingSlider |
Returns all the setting classes associated with the adapter. The client should use the __CLASS attribute to determine that type of each setting.
|
Each adapter that supports VLANs has an IANet_802dot1QVLANService associated with it, using the association class IANet_Device802do1QVVLANServiceImplementation. If an adapter does not have an instance of this class associated with it, then it does not support VLANs.
Each VLAN is represented by an instance of IANet_VLAN. The VLAN is not directly associated with the adapter - it is associated with the IANet_802dot1QVLANService for the adapter.
The association class IANet_VLANFor is used to associate each VLAN instance with the correct IANet_802dot1QVLANService. This class contains no useful data for the user.
Task |
WQL Queries |
Result Class |
Comments |
Get the 802.1q VLAN service object associated with an adapter |
ASSOCIATORS OF {IANet_EthernetAdapter path} WHERE ResultClass = IANet_802dot1QVLANService |
IANet_802dot1QVLANService |
Returns one or no object(s). |
Get the VLANs on an adapter |
ASSOCIATORS OF {IANet_802dot1QVLANService path} WHERE ResultClass = IANet_VLAN |
IANet_VLAN |
This can return no objects if there are no VLANs installed. |
The setting objects are not associated with the VLAN directly. In conformance with the CIM standard, they are associated with a configuration object, which is associated with the IANet_VLAN object for the VLAN.
The classes involved with this part of the schema are IANet_VLAN, IANet_Configuration, IANet_SettingInt, IANet_SettingString, IANet_SettingEnum, IANet_SettingMultiSelection and IANetSettingSlider.
The association classes IANet_VLANConfiguration and IANet_SettingContext do not contain any real data - they act as glue between the settings and their parent object. This is exactly the same as the adapter settings case.
Task |
WQL Queries |
Result Class |
Comments |
Get the Configuration object for the VLAN |
ASSOCIATORS OF {IANet_VLAN path} WHERE ResultClass = IANet_Configuration |
IANet_Configuration |
Returns exactly one object; even if there are no settings there will always be a configuration object. The object path from this object is used in the next query. |
Get the settings associated with a VLAN |
ASSOCIATORS OF {IANet_Configuration path} WHERE AssocClass = IANet_SettingContext |
A mixture of IANet_SettingInt, IANet_SettingString, IANet_SettingEnum, IANet_SettingMultiSelection, IANet_SettingSlider |
Returns all the setting classes associated with the VLAN. The client should use the __CLASS attribute to determine the type of each setting. |
The Provider will give some limited information about the IP Protocol Endpoints that are associated with adapters, VLANs and teams. No other protocols are supported.
The main class containing the protocol information is IANet_IPProtocolEndpoint. There are two association classes: IANet_VLANProtocolDependency and IANet_AdapterProtocolImplementation. To get the IP endpoint for a team, first get the virtual IANet_EthernetAdapter for the team, i.e., the IP Endpoint is associated with this instance.
Task |
WQL Queries |
Result Class |
Comments |
Get the IP Protocol Endpoints associated with an adapter |
ASSOCIATORS OF {path of IANet_EthernetAdapter} WHERE ResultClass = IANet_IPProtocolEndpoint |
IANet_IPProtocolEndpoint |
Though some adapters may have more than one IP address, they will be associated with only one IP Protocol Endpoint instance. |
Get the IP Protocol Endpoints associated with a VLAN. |
ASSOCIATORS OF {path of IANet_VLAN} WHERE ResultClass = IANet_IPProtocolEndpoint |
IANet_IPProtocolEndpoint |
There will be one IP Protocol Endpoint associated with the VLAN. |
Each adapter that can support a boot agent in flash ROM will have an IANet_BootAgent instance associated with it using the IANet_DeviceBootServiceImplementation association class.
Task |
WQL Queries |
Result Class |
Comments |
Get the Boot Agent associated with an adapter |
ASSOCIATORS OF {path of IANet_EthernetAdapter} WHERE ResultClass = IANet_BootAgent |
IANet_BootAgent |
The following read only attributes provide information on the boot ROM image for this adapter: InvalidImageSignature, Version, UpdateAvailable, FlashImageType |
The setting objects are not associated with the boot agent directly. In conformance with the CIM standard, they are associated with a configuration object which is associated with the boot agent.
The classes involved with this part of the schema are IANet_BootAgent, IANet_Configuration, IANet_SettingInt, IANet_SettingString, IANet_SettingEnum, IANet_SettingMultiSelection and IANetSettingSlider.
The association classes IANet_BootAgentConfiguration and IANet_SettingContext do not contain any real data - they act as glue between the settings and their parent object.
Task |
WQL Queries |
Result Class |
Comments |
Get the Configuration object for the boot agent |
ASSOCIATORS OF { IANet_BootAgent path} WHERE ResultClass = IANet_Configuration |
IANet_Configuration |
Returns exactly one object. Even if there are no settings, there will always be a configuration object. The object path from this object is used in the following query. |
Get the settings associated with an boot agent |
ASSOCIATORS OF {IANet_Configuration path} WHERE AssocClass = IANet_SettingContext |
A mixture of IANet_SettingInt, IANet_SettingString, IANet_SettingEnum, IANet_SettingMultiSelection, IANet_SettingSlider |
Returns all the setting classes associated with the adapter. The client should use the __CLASS attribute to determine that type of each setting. |
Copyright© 2002 Intel Corporation. Legal Information