Search Linux Wireless

Re: PS Poll

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Andy Johnson <johnsonzjo@xxxxxxxxx> writes:

> Hello,

Hi,

> I had encountered the recent PS-POLL patches from Kalle Valo and I
> have three questions about PS-Poll mechanism. I hope that I did not
> miss something. In fact, the first question, which is about the
> design of this mechanism, seems to me the most important.

I'll try to answer them.

> As I understand, when a station in power save mode (dozed) gets a
> beacon TIM from its AP which tells it that the AP has kept unicast
> packets for it, that station wakes up and starts sending PS-Poll
> frames. It sends PS-POLL one by one; each such packet, which is
> received in the AP, will cause it to send an skb from its buffer
> (ps_tx_buf skb queue, in sta_info struct). This packet has a
> MOREDATA flag set.
>
> The stations send PS Poll packets one by one, until the ps_tx_buf is
> emptied; when the last skb from ps_tx_buf is sent from the AP, it does
> not have the MOREDATA flag set, as opposed to all the previous
> sk_buffs which were retrieved from the ps_tx_buf.

Yes, this is the case when the station is in power save mode all the
time. But most of the implementations don't use ps-poll, instead they
wakeup from power save mode by sending a null frame. So there are two
ways to handle this.

> (I believe that it should be the IEEE80211_FCTL_MOREDATA flag, not sure).

Correct.

> In the period from when the first skb is retrieved to when the last
> skb, the station must not got to sleep. After the last one is
> received, it may go to sleep or stay awake (I wonder on what this
> depends).

If ps-poll is used, the assumption is that it should go to sleep
immediately.

> My questions are:
>
> 1) Why not send **one** PS-POLL which will signal the AP to start
> sending sk_buffs from the ps_tx_buf until is it emptied ? why do we
> send PS Poll packets
> one by one ? Sending only one PS poll, as suggested, will reduce
> traffic (take in accordance that we have ACKs also).

That's how ps-poll is defined in the spec in chapter 11.2. If
throughput is concern, then it's better to wakeup with a null frame
and AP will start sending all the frames to the station.

> 2) In the sceario depicted above, when sending PS polls one by one,
> what happens if there are packets sent to that station from the same
> source as packets
> that were kept in the buffer - will they be received in the
> destination (the client that awoke)? don't we loose here the order of
> the packets?

I would assume that the ap will take care of the ordering.

> 3) should the station send ACK to the AP  for each skb it receives (as
> a response to PS Poll) using this mechanism?

Yes, all frames (including ps-poll to the ap) need to be acked.

-- 
Kalle Valo
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux