From owner-freebsd-net@FreeBSD.ORG Sat Feb 20 21:55:54 2010 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C5B7F10656C3 for ; Sat, 20 Feb 2010 21:55:54 +0000 (UTC) (envelope-from sam@errno.com) Received: from ebb.errno.com (ebb.errno.com [69.12.149.25]) by mx1.freebsd.org (Postfix) with ESMTP id 83DE98FC13 for ; Sat, 20 Feb 2010 21:55:54 +0000 (UTC) Received: from ice.local ([10.0.0.115]) (authenticated bits=0) by ebb.errno.com (8.13.6/8.12.6) with ESMTP id o1KLtrri021494 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sat, 20 Feb 2010 13:55:54 -0800 (PST) (envelope-from sam@errno.com) Message-ID: <4B805A69.7030004@errno.com> Date: Sat, 20 Feb 2010 13:55:53 -0800 From: Sam Leffler User-Agent: Thunderbird 2.0.0.23 (Macintosh/20090812) MIME-Version: 1.0 To: Alexander Egorenkov References: <2d3b7e441002181058u5006595an5c636843945bcca7@mail.gmail.com> In-Reply-To: <2d3b7e441002181058u5006595an5c636843945bcca7@mail.gmail.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-DCC-x.dcc-servers-Metrics: ebb.errno.com; whitelist Cc: freebsd-net@freebsd.org Subject: Re: Missing WME information element causes problems with 802.11n X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 20 Feb 2010 21:55:54 -0000 Alexander Egorenkov wrote: > I have encountered a problem with a 802.11n router Belkin F5D8631au. > The beacon and association response frames sent by this router do not > contain > WME information element although 802.11n mode is enabled. These frames > contain > HT capability IE and HT info. Because WME IE is missing in association > responses, > the net80211 stack does not set IEEE80211_NODE_QOS flag > (See ieee80211_sta.c:sta_recv_mgmt:IEEE80211_FC0_SUBTYPE_ASSOC_RESP). > But the flag IEEE80211_NODE_HT is set because the frame contains HT > capability and HT info. > > So, because IEEE80211_NODE_QOS is not set, all outgoing DATA frames sent to > the Belkin AP > do not contain QoS field in the 802.11 frame header. And it causes problems > with the Belkin AP. > > Is the QoS not mandatory for 802.11n mode ? > Why is QoS enabled only if an WME IE is found in association response ? > Would it be not right to enable QoS also if HT mode is enabled but no WME IE > was found ? The WME ie is mandatory; these routers are non compliant. We can probably hack net80211 to auto-enable WME if an HTCAP ie is present but that is a total hack. Were the HT ie's using the IEEE codes or the Vendor OUI codes? It could be this is old Broadcom code--at one point Broadcom intentionally didn't advertise WME. If this is the legacy HT stuff then perhaps we can add the auto-enable conditional on the legacy HT support. Sam