Click here to Skip to main content
15,891,923 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hi,

I am developing a USB 802.11 Wireless Miniport network driver for NDIS version 5.1 on Windows-XP for our device. Our driver is expected to support wireless WMM classification by looking at the TID (traffic ID) field in 802.1p/DSCP tag of the packets given by NDIS. When there are two applications trying to stream some data through our wireless interface and if their combined throughput requirement is greater than the available wireless bandwidth, it is expected that the higher priority stream should get greater throughput than the other stream and the lower priority stream being trottled.

However, we have found that NDIS (QoS packet scheduler) does not do any kind of prioritized scheduling of these streams before passing the packets to our driver i.e. packets from both the streams are given to the miniport driver by NDIS on First Come First Serve (FCFS) basis. Because of this, the two streams get equal bandwidth on the wireless LAN and also suffer the same end-to-end latency. Our driver sets the flag of NDIS_MAC_OPTION_8021P_PRIORITY in OID_GEN_MAC_OPTIONS query.

Also we are able to see the DSCP and 802.p tag values of the packet. Since I am not using the Vista, NDIS_PER_PACKET_INFO_FROM_PACKET(_Packet, Ieee8021pPriority) is used in detecting 802.1p tag.

So I want know the following:
1. Mechanism available in Windows to enable priority based packet scheduling based on DSCP/802.1p tagging
before passing the packets to our miniport driver.
2. Changes that need to be done in our miniport driver to support the same.

Could you please help me with this?

Regards,
Shivkumar
Posted
Updated 3-Jan-11 23:47pm
v2

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900