Skip to content

Latest commit

 

History

History
177 lines (131 loc) · 6.34 KB

ns-nbl8021q-ndis_net_buffer_list_8021q_info.md

File metadata and controls

177 lines (131 loc) · 6.34 KB
UID title ms.date targetos description tech.root req.construct-type req.ddi-compliance req.dll req.header req.include-header req.kmdf-ver req.lib req.max-support req.redist req.target-min-winverclnt req.target-min-winversvr req.target-type req.typenames req.umdf-ver req.unicode-ansi topic_type api_type api_location api_name f1_keywords dev_langs
NS:nbl8021q._NDIS_NET_BUFFER_LIST_8021Q_INFO
NDIS_NET_BUFFER_LIST_8021Q_INFO
11/30/2020
Windows
The NDIS_NET_BUFFER_LIST_8021Q_INFO structure specifies 802.1Q information that is associated with a NET_BUFFER_LIST structure.
netvista
structure
ndis/nbl8021q.h
ndis.h
Supported in NDIS 6.0 and later.
Windows
NDIS_NET_BUFFER_LIST_8021Q_INFO, *PNDIS_NET_BUFFER_LIST_8021Q_INFO
apiref
HeaderDef
nbl8021q.h
_NDIS_NET_BUFFER_LIST_8021Q_INFO
PNDIS_NET_BUFFER_LIST_8021Q_INFO
NDIS_NET_BUFFER_LIST_8021Q_INFO
_NDIS_NET_BUFFER_LIST_8021Q_INFO
nbl8021q/_NDIS_NET_BUFFER_LIST_8021Q_INFO
PNDIS_NET_BUFFER_LIST_8021Q_INFO
nbl8021q/PNDIS_NET_BUFFER_LIST_8021Q_INFO
NDIS_NET_BUFFER_LIST_8021Q_INFO
nbl8021q/NDIS_NET_BUFFER_LIST_8021Q_INFO
c++

_NDIS_NET_BUFFER_LIST_8021Q_INFO structure

-description

The NDIS_NET_BUFFER_LIST_8021Q_INFO structure specifies 802.1Q information that is associated with a NET_BUFFER_LIST structure.

-struct-fields

-field TagHeader

A member in the union that is contained in NDIS_NET_BUFFER_LIST_8021Q_INFO. 802.3 Ethernet miniport drivers use TagHeader to access 802.1Q information. TagHeader is a bit field with the following members:

-field TagHeader.UserPriority

Specifies 802.1p priority information that is used to establish packet priority in shared-media 802 networks. The bits in this member specify an 802.1p priority value.

-field TagHeader.CanonicalFormatId

This member should be set to zero, which indicates that all MAC address information present in a packet is in canonical format (that is, simplest form).

-field TagHeader.VlanId

Identifies the VLAN that a packet belongs to. Outgoing packets are marked with the VLAN identifier.

-field TagHeader.Reserved

This member is reserved and should be set to zero.

-field WLanTagHeader

A member in the union that is contained in NDIS_NET_BUFFER_LIST_8021Q_INFO. Native 802.11 miniport drivers use WLanTagHeader to access 802.1Q information. WLanTagHeader is a bit field with the following members:

-field WLanTagHeader.UserPriority

Specifies 802.1p priority information that is used to establish packet priority in shared-media 802 networks. The bits in this member specify an 802.1p priority value.

-field WLanTagHeader.CanonicalFormatId

This member should be set to zero, which indicates that all MAC address information present in a packet is in canonical format (that is, simplest form).

-field WLanTagHeader.VlanId

Identifies the VLAN that a packet belongs to. Outgoing packets are marked with the VLAN identifier.

-field WLanTagHeader.WMMInfo

A wireless multimedia (WMM) integer value that is the same as the traffic identifier (TID) fields that appear in certain frames that are used to deliver and to control the delivery of 802.1Q Quality of Service (QoS) data. The values 0 through 7 represent QoS user priorities (UPs) for the MAC service data units (MSDUs). The values 8 through 15 are reserved. Therefore, the highest bit in WMMInfo must be zero.

Note  Traffic specification (TSPEC) and traffic classification (TCLAS) are not supported.
 

-field WLanTagHeader.Reserved

This member is reserved and should be set to zero.

-field Value

A member in the union that is contained in NDIS_NET_BUFFER_LIST_8021Q_INFO. Value contains a pointer value that is type-compatible with the NetBufferListInfo member in the NET_BUFFER_LIST structure.

-remarks

To retrieve or insert 802.1Q information that is associated with a NET_BUFFER_LIST structure, an NDIS driver calls the NET_BUFFER_LIST_INFO macro and specifies the Ieee8021QNetBufferListInfo information type.

The NET_BUFFER_LIST_INFO macro returns the pointer that is specified in the Value member of the NDIS_NET_BUFFER_LIST_8021Q_INFO structure. The NDIS driver can use the TagHeader or WLanTagHeader member of the union to access specific types of information, such as 802.1p priority and VLAN identifier information. The WLanTagHeader member provides access to the wireless multimedia (WMM) information in addition to the information that is available through the TagHeader member.

Miniport drivers that support the 802.1Q tag in hardware must use the NDIS_NET_BUFFER_LIST_8021Q_INFO structure for transmit and receive operations:

  • For transmit operations, the miniport driver must check for NDIS_NET_BUFFER_LIST_8021Q_INFO OOB data in the NET_BUFFER_LIST structure. The miniport driver must ensure that the hardware creates the 802.1Q tag from the NDIS_NET_BUFFER_LIST_8021Q_INFO specifications and insert it into the Ethernet frame.
  • For receive operations, the miniport driver must remove the 802.1Q tag from the Ethernet frame and map the 802.1Q tag information into the NDIS_NET_BUFFER_LIST_8021Q_INFO OOB data in the NET_BUFFER_LIST structure before indicating the data to NDIS with the NdisMIndicateReceiveNetBufferLists function.

-see-also

NET_BUFFER_LIST

NET_BUFFER_LIST_INFO

NdisMIndicateReceiveNetBufferLists