This describes the OIDs for Ethernet objects, both operational and statistical types.
Ethernet Operational Characteristics
The following chart summarizes the OIDs used to get or set Ethernet operational characteristics for underlying NDIS drivers and their NICs.
Length | Q | S | Name |
6 | M | OID_802_3_PERMANENT_ADDRESS Permanent station address |
|
6 | M | OID_802_3_CURRENT_ADDRESS Current station address |
|
Arr(6) | M | M | OID_802_3_MULTICAST_LIST Current multicast address list |
4 | M | OID_802_3_MAXIMUM_LIST_SIZE Maximum size of multicast address list |
|
4 | M | OID_802_3_MAC_OPTIONS NIC flags (encoded) |
The following describes each of the OID_XXX listed in the preceding chart more fully.
The address of the NIC encoded in the hardware.
The address the NIC is currently using.
The network management software cannot set the current station address using the NDIS interface library. It must set this address as a configuration parameter.
The multicast address list on the NIC enabled for packet reception.
When a NIC driver initializes, it resets the NIC so the multicast address list is zero. NDIS also initializes the packet filter so it does not allow the protocol driver to receive multicast packets.
To receive a multicast packet, the protocol driver must later set the packet filter to include the NDIS_PACKET_TYPE_MULTICAST flag. At any time, it can disable multicast packet reception by canceling this flag. The order in which the protocol driver enables reception for multicast packets is not important.
The NIC driver can set a limit on the number of multicast addresses bound protocol drivers can enable simultaneously. NDIS returns NDIS_STATUS_MULTICAST_FULL if a protocol driver exceeds this limit or if it specifies an invalid multicast address.
A protocol driver can set the packet filter to enable all multicast packets, and do the filtering itself.
For a query, NDIS returns a list containing the union of all bindings' multicast address lists.
A protocol can use this OID to determine features supported by the underlying driver, which could be emulating Ethernet.
The underlying driver either returns zero, indicating that it supports no options, or NDIS_802_3_OPTION_PRIORITY, indicating that it supports prioritized packets.
For example, the drivers of NICs for which the native media type is 100VG_AnyLAN or PACE should support packet priority. Such a NIC driver maps the NDIS priority range 0-3 to the medium-specific normal priority (zero) and the NDIS priority range 4-7 to the medium-specific high priority (one).
Any protocol bound to an underlying driver that supports packet priority can send prioritized packets over the network by setting up the out-of-band data block(s) associated with NDIS packet descriptor(s) before that protocol calls NdisSendPackets or NdisSend. However, such a protocol must take care to pass packet arrays in prioritized order to NdisSendPackets.
The maximum number of multicast addresses the NIC driver can manage.
This list is global for all protocols bound to (or above) the NIC. Consequently, a protocol can receive NDIS_STATUS_MULTICAST_FULL from the NIC driver when attempting to set the multicast address list, even if the number of elements in the given list is less than the number originally returned for this query.
Ethernet Statistics
The following chart summarizes the OIDs used to get Ethernet statistics for NICs.
Length | Q | S | Name |
4 | M | OID_802_3_RCV_ERROR_ALIGNMENT Frames received with alignment error |
|
4 | M | OID_802_3_XMIT_ONE_COLLISION Frames transmitted with one collision |
|
4 | M | OID_802_3_XMIT_MORE_COLLISIONS Frames transmitted with more than one collision |
|
4 | O | OID_802_3_XMIT_DEFERRED Frames transmitted after deferral |
|
4 | O | OID_802_3_XMIT_MAX_COLLISIONS Frames not transmitted due to collisions |
|
4 | O | OID_802_3_RCV_OVERRUN Frames not received due to overrun |
|
4 | O | OID_802_3_XMIT_UNDERRUN Frames not transmitted due to underrun |
|
4 | O | OID_802_3_XMIT_HEARTBEAT_FAILURE Frames transmitted with heartbeat failure |
|
4 | O | OID_802_3_XMIT_TIMES_CRS_LOST Times carrier sense signal lost during transmission |
|
4 | O | OID_802_3_XMIT_LATE_COLLISIONS Late collisions detected |
The following describes each of the OID_XXX listed in the preceding chart more fully.
The number of frames received with alignment errors.
The number of frames successfully transmitted after exactly one collision.
OID_802_3_XMIT_MORE_COLLISIONS
The number of frames successfully transmitted after more than one collision.
The number of frames successfully transmitted after the NIC defers transmission at least once.
The number of frames not transmitted due to excessive collisions.
The number of frames not received due to overrun errors on the NIC.
The number of frames not transmitted due to underrun errors on the NIC.
OID_802_3_XMIT_HEARTBEAT_FAILURE
The number of frames successfully transmitted without detection of the collision-detect heartbeat.
The number of times the CRS signal has been lost during packet transmission.
OID_802_3_XMIT_LATE_COLLISIONS
The number of collisions detected after the normal window.