Date: Sun, 31 Jan 2010 08:42:20 +0100 From: Alexander Egorenkov <egorenar@googlemail.com> To: Sam Leffler <sam@errno.com> Cc: freebsd-net@freebsd.org Subject: Re: A-MPDU transmission in net80211 on FreeBSD 8 Message-ID: <2d3b7e441001302342m7e7ae704td9a7137e657018d2@mail.gmail.com> In-Reply-To: <2d3b7e441001302334t5baa1102pdd1ee0309d32c2fd@mail.gmail.com> References: <2d3b7e441001271104j14836df4j14428d34561dead1@mail.gmail.com> <2d3b7e441001271108p2a40dbbbwaa6af9679d61ab@mail.gmail.com> <4B64FC76.5060506@errno.com> <2d3b7e441001302334t5baa1102pdd1ee0309d32c2fd@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
And i took a look into the 802.11 stack of OpenSolaris which also supports 802.11n. This 802.11n stack is very similar to the FreeBSD 802.11n stack and it assigns sequence numbers to A-MPDU frames. I did it in my device driver like 802.11n stack from OpenSolaris does it. See this link: http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/io/net80211/net80211_output.c Line: 211 Alex. On Sun, Jan 31, 2010 at 8:34 AM, Alexander Egorenkov < egorenar@googlemail.com> wrote: > Why doesn't 802.11 stack assign sequence numbers to A-MPDU frames ? > When sequence numbers are not assigned to A-MPDU frames, then BA doesn't > work with my AP. > I tried to assign sequence numbers to A-MPDU frames in my device driver and > then BAs worked > with my AP. > And what is meant by aggregation queue ? Where is that queue anf how do i > use it ? > > Thanks. > > > On Sun, Jan 31, 2010 at 4:43 AM, Sam Leffler <sam@errno.com> wrote: > >> Alexander Egorenkov wrote: >> >>> Sorry, i posted the wrong comment. >>> Here is the comment which i don't understand: >>> >>> /* >>> * NB: don't assign a sequence # to potential >>> * aggregates; we expect this happens at the >>> * point the frame comes off any aggregation q >>> * as otherwise we may introduce holes in the >>> * BA sequence space and/or make window accouting >>> * more difficult. >>> * >>> * XXX may want to control this with a driver >>> * capability; this may also change when we pull >>> * aggregation up into net80211 >>> */ >>> >>> Thanks. >>> >> >> What is unclear? >> >> Sam >> >> >>> >>> On Wed, Jan 27, 2010 at 8:04 PM, Alexander Egorenkov < >>> egorenar@googlemail.com> wrote: >>> >>> Hi, >>>> >>>> i'm implementing a device driver for a 802.11n NIC under FreeBSD 8 >>>> und experimented with A-MPDU transmission. I looked into net80211 code >>>> and there is some code which implements this feature but it worked not >>>> very >>>> well for me. >>>> I noticed e.g. that sequence numbers are not assigned to A-MPDU frames >>>> and found this comment in file ieee80211_output.c : >>>> >>>> >>>> /* >>>> * Check if A-MPDU tx aggregation is setup or if we >>>> * should try to enable it. The sta must be associated >>>> * with HT and A-MPDU enabled for use. When the policy >>>> * routine decides we should enable A-MPDU we issue an >>>> * ADDBA request and wait for a reply. The frame being >>>> * encapsulated will go out w/o using A-MPDU, or possibly >>>> * it might be collected by the driver and held/retransmit. >>>> * The default ic_ampdu_enable routine handles staggering >>>> * ADDBA requests in case the receiver NAK's us or we are >>>> * otherwise unable to establish a BA stream. >>>> */ >>>> >>>> Can somebody elaborate this description to me please. >>>> >>>> Thanks. >>>> >>>> ALex. >>>> >>>> >>>> _______________________________________________ >>> freebsd-net@freebsd.org mailing list >>> http://lists.freebsd.org/mailman/listinfo/freebsd-net >>> To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org" >>> >>> >>> >> >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?2d3b7e441001302342m7e7ae704td9a7137e657018d2>