Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Computing > Wireless Networking > QoS in Wi-Fi driver and winsock

Reply
Thread Tools

QoS in Wi-Fi driver and winsock

 
 
Pavel A.
Guest
Posts: n/a
 
      11-18-2004
I'm going to add multimedia (WME) support to a 802.11 miniport driver.
What is the best way to expose this to applications and Windows (XP+)?
The WMM whitepaper on wi-fi.org states that newly developed apps should
use GQOS, as defined in winsock2 API.
But MSDN and DDK are quite fuzzy in this area
Basically I want to track WSAIocltl(SET_QOS) on sockets,
and pass the entire QoS struct to my driver. So I need also track opening
and closing sockets. Also the interface should be seen as QoS enabled in
WSAEnumProtocols, WSAGetQOSByName and so on.
So, what I need to add to the miniport driver? a winsock
LSP hook, a TC hook, or RSVPSP hook or all of them?

Is it a good idea to provide WSAGetQOSByName, so apps
could get QoS templates provisioned by network administrator, and select
the most suitable? Or apps won't use this and will just go ahead and set
QoS by traffic type, ot specifying qualitative parameters.
Of course I'd like to implement this in the most generic way, to
support also other device types : cellular WWAN, DOCSIS and so on.

Please advice...

With regards
--PA


 
Reply With Quote
 
 
 
 
Arkady Frenkel
Guest
Posts: n/a
 
      11-20-2004
Pavel !
Without any other propositions, I'm back with advise to use LSP, which parse
and send data to your protocol driver which in turn send to miniport.
Arkady

"Pavel A." <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> I'm going to add multimedia (WME) support to a 802.11 miniport driver.
> What is the best way to expose this to applications and Windows (XP+)?
> The WMM whitepaper on wi-fi.org states that newly developed apps should
> use GQOS, as defined in winsock2 API.
> But MSDN and DDK are quite fuzzy in this area
> Basically I want to track WSAIocltl(SET_QOS) on sockets,
> and pass the entire QoS struct to my driver. So I need also track opening
> and closing sockets. Also the interface should be seen as QoS enabled in
> WSAEnumProtocols, WSAGetQOSByName and so on.
> So, what I need to add to the miniport driver? a winsock
> LSP hook, a TC hook, or RSVPSP hook or all of them?
>
> Is it a good idea to provide WSAGetQOSByName, so apps
> could get QoS templates provisioned by network administrator, and select
> the most suitable? Or apps won't use this and will just go ahead and set
> QoS by traffic type, ot specifying qualitative parameters.
> Of course I'd like to implement this in the most generic way, to
> support also other device types : cellular WWAN, DOCSIS and so on.
>
> Please advice...
>
> With regards
> --PA
>
>



 
Reply With Quote
 
 
 
 
Pavel A.
Guest
Posts: n/a
 
      11-20-2004
Akady thanks,
but I have at least two doubts about LSP:
1. It looks too complicated and not robust. LSP database in the registry is used
by all kinds of s/w - from viruses to antiviruses... you know.
I'd like to avoid it if possible.
2. How about kernel side traffic. LSP won't catch it, correct?

--PA

"Arkady Frenkel" <arkadyf@hotmailxdotxcom> wrote in message news:(E-Mail Removed)...
> Pavel !
> Without any other propositions, I'm back with advise to use LSP, which parse
> and send data to your protocol driver which in turn send to miniport.
> Arkady
>
> "Pavel A." <(E-Mail Removed)> wrote in message
> news:(E-Mail Removed)...
> > I'm going to add multimedia (WME) support to a 802.11 miniport driver.
> > What is the best way to expose this to applications and Windows (XP+)?
> > The WMM whitepaper on wi-fi.org states that newly developed apps should
> > use GQOS, as defined in winsock2 API.
> > But MSDN and DDK are quite fuzzy in this area
> > Basically I want to track WSAIocltl(SET_QOS) on sockets,
> > and pass the entire QoS struct to my driver. So I need also track opening
> > and closing sockets. Also the interface should be seen as QoS enabled in
> > WSAEnumProtocols, WSAGetQOSByName and so on.
> > So, what I need to add to the miniport driver? a winsock
> > LSP hook, a TC hook, or RSVPSP hook or all of them?
> >
> > Is it a good idea to provide WSAGetQOSByName, so apps
> > could get QoS templates provisioned by network administrator, and select
> > the most suitable? Or apps won't use this and will just go ahead and set
> > QoS by traffic type, ot specifying qualitative parameters.
> > Of course I'd like to implement this in the most generic way, to
> > support also other device types : cellular WWAN, DOCSIS and so on.
> >
> > Please advice...
> >
> > With regards
> > --PA
> >
> >

>
>



 
Reply With Quote
 
Arkady Frenkel
Guest
Posts: n/a
 
      11-20-2004

"Pavel A." <(E-Mail Removed)> wrote in message
news:#(E-Mail Removed)...
> Akady thanks,
> but I have at least two doubts about LSP:
> 1. It looks too complicated and not robust. LSP database in the registry

is used
> by all kinds of s/w - from viruses to antiviruses... you know.
> I'd like to avoid it if possible.

So you need to use old method - hooking of winsock , not nice too

> 2. How about kernel side traffic. LSP won't catch it, correct?
>

Sure not

Arkady

> --PA
>
> "Arkady Frenkel" <arkadyf@hotmailxdotxcom> wrote in message

news:(E-Mail Removed)...
> > Pavel !
> > Without any other propositions, I'm back with advise to use LSP, which

parse
> > and send data to your protocol driver which in turn send to miniport.
> > Arkady
> >
> > "Pavel A." <(E-Mail Removed)> wrote in message
> > news:(E-Mail Removed)...
> > > I'm going to add multimedia (WME) support to a 802.11 miniport driver.
> > > What is the best way to expose this to applications and Windows (XP+)?
> > > The WMM whitepaper on wi-fi.org states that newly developed apps

should
> > > use GQOS, as defined in winsock2 API.
> > > But MSDN and DDK are quite fuzzy in this area
> > > Basically I want to track WSAIocltl(SET_QOS) on sockets,
> > > and pass the entire QoS struct to my driver. So I need also track

opening
> > > and closing sockets. Also the interface should be seen as QoS enabled

in
> > > WSAEnumProtocols, WSAGetQOSByName and so on.
> > > So, what I need to add to the miniport driver? a winsock
> > > LSP hook, a TC hook, or RSVPSP hook or all of them?
> > >
> > > Is it a good idea to provide WSAGetQOSByName, so apps
> > > could get QoS templates provisioned by network administrator, and

select
> > > the most suitable? Or apps won't use this and will just go ahead and

set
> > > QoS by traffic type, ot specifying qualitative parameters.
> > > Of course I'd like to implement this in the most generic way, to
> > > support also other device types : cellular WWAN, DOCSIS and so on.
> > >
> > > Please advice...
> > >
> > > With regards
> > > --PA
> > >
> > >

> >
> >

>
>



 
Reply With Quote
 
Ganaka
Guest
Posts: n/a
 
      12-03-2004
Pavel,
Did you have a chance to implement WMM in your miniport? I am doing
the same, but for some reason I don't get the 802.1p priority codes
all the time (it depends on the AP used). Any ideas?

Thanks,
-Ganaka
 
Reply With Quote
 
Pavel A.
Guest
Posts: n/a
 
      12-03-2004
"Ganaka" <(E-Mail Removed)> wrote in message news:(E-Mail Removed) om...
> Pavel,
> Did you have a chance to implement WMM in your miniport? I am doing
> the same, but for some reason I don't get the 802.1p priority codes
> all the time (it depends on the AP used). Any ideas?
>
> Thanks,
> -Ganaka


Of course we will support WMM. But it is media specific.
I'm looking for media independent QoS support, that will cover
also DSL/ATM and docsis.

Winsock 2 API already defines interfaces for detecting and specifying
QoS for applications - but it seems that nobody knows how exactly
the MAC driver should expose it's QoS caps to be seen by OS and winsock.

Is there some standard NDIS OIDs or characheristics, registry settings?
Do I need to write some plugin? Mistery, mistery...
--PA



 
Reply With Quote
 
Pavel A.
Guest
Posts: n/a
 
      12-03-2004
Ah. If the AP does not support WMM, you won't get it.
The only idea here is to get a compatible AP.
And test that your driver doesn't crash with any AP.

"Pavel A." <(E-Mail Removed)> wrote in message news:#(E-Mail Removed)...
> "Ganaka" <(E-Mail Removed)> wrote in message news:(E-Mail Removed) om...
> > Pavel,
> > Did you have a chance to implement WMM in your miniport? I am doing
> > the same, but for some reason I don't get the 802.1p priority codes
> > all the time (it depends on the AP used). Any ideas?
> >
> > Thanks,
> > -Ganaka

>
> Of course we will support WMM. But it is media specific.
> I'm looking for media independent QoS support, that will cover
> also DSL/ATM and docsis.
>
> Winsock 2 API already defines interfaces for detecting and specifying
> QoS for applications - but it seems that nobody knows how exactly
> the MAC driver should expose it's QoS caps to be seen by OS and winsock.
>
> Is there some standard NDIS OIDs or characheristics, registry settings?
> Do I need to write some plugin? Mistery, mistery...
> --PA
>
>
>



 
Reply With Quote
 
Ganaka
Guest
Posts: n/a
 
      12-04-2004
Pavel,
My questions is more on the basics side. In order to support QoS, I
need to get the priority information per packet (using
NDIS_PER_PACKET_INFO_FROM_PACKET). However, in most of the cases the
packet priority is 'best effort'. This is while running WiFi tests
(using Chariot and all). I don't understand what could be wrong...

According to DDK documentation, the miniport driver must support
OID_GEN_MAC_OPTIONS and return NDIS_MAC_OPTION_8021P_PRIORITY &
NDIS_MAC_OPTION_8021Q_VLAN flags in response. This I am doing, yet the
packet priorities are not being passed down properly.

I am running out of ideas. Does anyone know what could be the cause?

Thanks,
-Ganaka

"Pavel A." <(E-Mail Removed)> wrote in message news:<#(E-Mail Removed)>...
> "Ganaka" <(E-Mail Removed)> wrote in message news:(E-Mail Removed) om...
> > Pavel,
> > Did you have a chance to implement WMM in your miniport? I am doing
> > the same, but for some reason I don't get the 802.1p priority codes
> > all the time (it depends on the AP used). Any ideas?
> >
> > Thanks,
> > -Ganaka

>
> Of course we will support WMM. But it is media specific.
> I'm looking for media independent QoS support, that will cover
> also DSL/ATM and docsis.
>
> Winsock 2 API already defines interfaces for detecting and specifying
> QoS for applications - but it seems that nobody knows how exactly
> the MAC driver should expose it's QoS caps to be seen by OS and winsock.
>
> Is there some standard NDIS OIDs or characheristics, registry settings?
> Do I need to write some plugin? Mistery, mistery...
> --PA

 
Reply With Quote
 
=?Utf-8?B?UGF2ZWwgQS4=?=
Guest
Posts: n/a
 
      12-06-2004
We are currently investigating this.
Seems like at some layer, we need to persuade tcpip to add the 802.1p/q tag
to packets, but we don't know how to talk to this layer.

--PA

"Ganaka" wrote:
> Pavel,
> My questions is more on the basics side. In order to support QoS, I
> need to get the priority information per packet (using
> NDIS_PER_PACKET_INFO_FROM_PACKET). However, in most of the cases the
> packet priority is 'best effort'. This is while running WiFi tests
> (using Chariot and all). I don't understand what could be wrong...
>
> According to DDK documentation, the miniport driver must support
> OID_GEN_MAC_OPTIONS and return NDIS_MAC_OPTION_8021P_PRIORITY &
> NDIS_MAC_OPTION_8021Q_VLAN flags in response. This I am doing, yet the
> packet priorities are not being passed down properly.
>
> I am running out of ideas. Does anyone know what could be the cause?
>
> Thanks,
> -Ganaka


 
Reply With Quote
 
=?Utf-8?B?QXJ1bCBWIFJhag==?=
Guest
Posts: n/a
 
      12-09-2004
Ganaka,
U are right. Probably make sure, 'Packet' is refreshed everytime before
making the call.
It works well, and consistent.

Which is the vendor card and AP u are using with.

Arul V raj.
Atheros Communications

"Ganaka" wrote:

> Pavel,
> My questions is more on the basics side. In order to support QoS, I
> need to get the priority information per packet (using
> NDIS_PER_PACKET_INFO_FROM_PACKET). However, in most of the cases the
> packet priority is 'best effort'. This is while running WiFi tests
> (using Chariot and all). I don't understand what could be wrong...
>
> According to DDK documentation, the miniport driver must support
> OID_GEN_MAC_OPTIONS and return NDIS_MAC_OPTION_8021P_PRIORITY &
> NDIS_MAC_OPTION_8021Q_VLAN flags in response. This I am doing, yet the
> packet priorities are not being passed down properly.
>
> I am running out of ideas. Does anyone know what could be the cause?
>
> Thanks,
> -Ganaka
>
> "Pavel A." <(E-Mail Removed)> wrote in message news:<#(E-Mail Removed)>...
> > "Ganaka" <(E-Mail Removed)> wrote in message news:(E-Mail Removed) om...
> > > Pavel,
> > > Did you have a chance to implement WMM in your miniport? I am doing
> > > the same, but for some reason I don't get the 802.1p priority codes
> > > all the time (it depends on the AP used). Any ideas?
> > >
> > > Thanks,
> > > -Ganaka

> >
> > Of course we will support WMM. But it is media specific.
> > I'm looking for media independent QoS support, that will cover
> > also DSL/ATM and docsis.
> >
> > Winsock 2 API already defines interfaces for detecting and specifying
> > QoS for applications - but it seems that nobody knows how exactly
> > the MAC driver should expose it's QoS caps to be seen by OS and winsock.
> >
> > Is there some standard NDIS OIDs or characheristics, registry settings?
> > Do I need to write some plugin? Mistery, mistery...
> > --PA

>

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Winsock & Winsock 2 spears list Computer Support 3 10-16-2007 03:28 AM
[QOS] minimal hardware and IOS requirement for QOS dominix Cisco 2 02-06-2007 10:19 AM
ERROR [HY000] [Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key 'Temporary (volatile) Jet DSN for process 0xffc Thread 0x228 DBC 0x437b94 Jet'. ERROR [IM006] [Microsoft][ODBC Driver Manager] Driver's SQLSetConnectAttr bazzer ASP .Net 0 03-30-2006 03:16 PM
ERROR [HY000] [Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key 'Temporary (volatile) Jet DSN for process 0x8fc Thread 0x934 DBC 0x437b94 Jet'. ERROR [IM006] [Microsoft][ODBC Driver Manager] Driver's SQLSetConnectAttr bazzer ASP .Net 1 03-24-2006 04:20 PM
ERROR [HY000] [Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key 'Temporary (volatile) Jet DSN for process 0x8fc Thread 0x934 DBC 0x437b94 Jet'. ERROR [IM006] [Microsoft][ODBC Driver Manager] Driver's SQLSetConnectAttr bazzer ASP .Net 0 03-24-2006 02:22 PM



Advertisments