Go To Sleep, Go To Sleep, Go To Sleep Little iPhone

In some circles, Apple Wi-Fi devices are knows to have problems with lost connections.  iPhones and iPads will unexpectedly miss incoming calls, have delays in receiving push notifications and even be forced to reauthenticate.

There is a solution to Apple devices' connection problems, and as with most "device problems", the fix resides on the infrastructure.  The DTIM setting needs to be increased.  (Apple recommends a setting of 3 or higher.)  Here's why:

Some Apple Wi-Fi connection problems stem from Apple iOS devices' use of 802.11 power management.  To understand what Apple devices are doing with power management, one must first understand how 802.11 power management works.

Let's start with unicast data.  The 802.11 standard allows devices' Wi-Fi radios to enter the Doze state in order to conserve battery life.  Wi-Fi radios in the Doze state are unable to receive data from the AP, so APs buffer all unicast data that has a destination MAC address of a device that's in the Doze state.

This works just fine on Apple iOS devices, as my seen in a capture of my iPhone 6S:


Broadcast and multicast data is different from unicast data.  APs send broadcasts and multicasts once for the entire basic service set (BSS, which means all of the devices that are connected to any single SSID on any single AP).  

The 802.11 standard handles the transmission of broadcasts and multicasts to sleeping device radios by giving devices a timer for waking up.  This timer is called the DTIM (delivery traffic indication message).  Every AP beacon indicates how much time is expected to elapse before the next DTIM.  Immediately after sending a DTIM, the AP will send all broadcasts and multicasts that have been held in the AP's buffer.  Devices have the option of waking their Wi-Fi radios in time to receive the DTIM and the broadcast & multicast data that follows.  Devices can then go back to sleep after receiving broadcasts and multicasts.

The problem, at least as Apple sees it, is that battery life is more important than broadcast/multicast latency.  Apple doesn't want iOS devices to have to wake up for every DTIM because waking requires more power than sleeping.  If an iPhone's Wi-Fi radio wakes up ten times per second, that drains more of the iPhone's battery than if the radio wakes up three times per second.

Apple has chosen to preserve battery life for iOS devices by waking up less often, but there is a cost.  If an AP sends DTIMs and empties its buffer of broadcasts & multicasts more often than an iPhone wakes up, then the iPhone will miss some broadcast and multicast traffic.  

You can see my iPhone 6S missing broadcasts & multicasts in Wireshark.  

Here's my iPhone's wake/sleep pattern:


Before my iPhone goes to sleep, it sends a Null Data frame to the AP.  Wireshark labeled this frame number 18392.  When my iPhone wakes up, it sends another Null Data frame to the AP.  The wake-up frame was labeled by Wireshark as number 18494.  (I filtered out everything except for Null Data frames for the screenshot above.)

While my iPhone was sleeping, the AP sent out a broadcast:


Notice how the broadcast is labeled by Wireshark as number 18493.  My phone indicated that it was awake with frame 18494.  So, my phone probably* missed that broadcast.

(*I say "probably" because it's impossible to tell the exact microsecond that my phone stopped sleeping.  It's possible that my phone woke up and then waited to send a Null Data frame telling the AP that it was awake.  It wouldn't make any sense for a Wi-Fi device to wait to tell the AP that it's awake, but it's possible.)

All of this is red meat to the Wi-Fi community's populace of device-blamers (of which I am most certainly not a member).  If you love blaming your bad Wi-Fi on devices, feel free to print out this blog and frame it.  The AP is explicitly telling the iPhone when DTIMs (followed by broadcasts and multicasts) will be transmitted, as seen here:


Every single Beacon with a DTIM count of 0 is a DTIM Beacon.  Every Beacon with a DTIM count of 1 is telling my iPhone that the next Beacon will be a DTIM Beacon.  The iPhone 6S surely sees all of this, but it decides to sleep through broadcasts and multicasts anyway.

I look at the iPhone's sleep patterns a different way.  I love long battery life.  (Because I think that users love long battery life.)  If Apple wants to have iPhone sleep through DTIMs -- which is permitted in the 802.11 Standard, mind you -- then I say let them do it.  We, as Wi-Fi folks, need to adjust our infrastructure to allow these iPhones to maximize battery life without missing too many broadcasts and multicasts.

If you want to minimize the likelihood of iOS devices missing broadcast and multicast data, you can raise the DTIM setting on your APs.  Apple recommends a DTIM setting of at least 3 (thanks to Andrew Von Nagy of Revolution Wi-Fi for tipping me off to that on Twitter), which would give devices the ability to sleep for up to 300 kilo-microseconds without missing and broadcast or multicast data.  Raising the DTIM setting could prevent users from experiencing missed Wi-Fi calls, repeated re-authentications and other known connection issues on Apple iOS devices.

***
If you like my blog, you can support it by shopping through my Amazon link.  You can also donate Bitcoin to 1N8m1o9phSkFXpa9VUrMVHx4LJWfratseU 

Twitter: @Ben_SniffWiFi
ben at sniffwifi dot com

Comments

  1. Ben, do you have the source of where Andrew found the information on Apples' recommendation?
    Thanks,

    Eric

    ReplyDelete
  2. Regarding the comment - "Before my iPhone goes to sleep, it sends a Null Data frame to the AP. Wireshark labeled this frame number 18392. When my iPhone wakes up, it sends another Null Data frame to the AP. The wake-up frame was labeled by Wireshark as number 18494"


    I just wanted to clarify one thing - Data Null (PM=1) and Data Null (PM=0) should not be considered precise markers of when Phone is asleep or awake. They are really the markers for when Phone is asking the AP to start/stop buffering unicast data. A phone could very well be awake in between to receive the MCAST/BCAST traffic. A Data Null (PM=0) needs to sent only when Phone wants AP to start delivering any buffered unicast data.

    But In general , I agree with core message here which is IPhone sleeps for a longer interval to save battery at the cost of missing some of the BCAST/MCAST traffic

    ReplyDelete
    Replies
    1. Absolutely, Kumar. Still, I would say that it is unlikely that Apple is keeping iPhone Wi-Fi radios awake in between Null data frames. Why lose all of that battery life?

      Delete
  3. So, current issues with iPhone and other iOS devices with newer versions continue. I set DTIM at 3 and phones still dropped Internet (although still connected to network and getting DHCP). Tried it all the way to 125 and connectivity is better, but will eventually drop again. There has to be a magic number where the timing between the iOS sleep and the ACK request are in sync. Anyone figured this out yet?

    ReplyDelete
    Replies
    1. Depending on the app you need to run, keeping iPhones connected can be more complicated than adjusting the DTIM.

      Delete
  4. Interesting post. I Have Been wondering about this issue, so thanks for posting. Pretty cool post.It 's really very nice and Useful post.Thanks
    digital marketing courses in hyderabad with placement

    ReplyDelete
  5. i always used mobile before going to sleep its more dangerous for eys weakness
    OBD2 Apps for iPhone

    ReplyDelete
  6. Looking forward to reading more. Great blog post. Really Great.Mulberry silk bedding

    ReplyDelete
  7. It is essential whilst you pick to shop for personal label dietary supplements which you make certain your dealer now no longer simplest offers this service, however has their very own group of expert and skilled designers available to make certain you get the very best first-rate labels.white label supplement manufacturer

    ReplyDelete
  8. i like this blog.The leather jacket is cool, you should try some.killer croc black jacket cheap

    ReplyDelete
  9. I am impressed by the information that you have on this blog. It shows how well you understand this subject.
    data scientist course

    ReplyDelete
  10. Thanks for your post. I’ve been thinking about writing a very comparable post over the last couple of weeks, I’ll probably keep it short and sweet and link to this instead if thats cool. Thanks. top cyber security institute in delhi

    ReplyDelete
  11. I've been troubled for several days with this topic. 슬롯사이트, But by chance looking at your post solved my problem! I will leave my blog, so when would you like to visit it?


    ReplyDelete
  12. Thanks for sharing a wonderful article. It is an amazing article !!!!!

    ReplyDelete
  13. I really like your blog it is very interesting !!!

    ReplyDelete
  14. It's good to be back! I thought I've been to this site before, but after reading some of the posts, I realized it's new to me. In any case, I'm glad I found it and will definitely bookmark it and check back often. How much is a visa for India? Indian e visa fees depend on your nationality and your visa type.

    ReplyDelete
  15. It's late discovering this demonstration. At any rate, it's a thing to be acquainted with that there are such occasions exist. I concur with your Blog and I will have returned to investigate it more later on so please keep up your demonstration.

    ReplyDelete
  16. Thanks for providing relevant information as per the topic. That's why I like your articles.
    TATA Prima 5530

    ReplyDelete
  17. I’ve read some good stuff here. Definitely worth bookmarking for revisiting. I surprise how much effort you put to create such a great informative website. business analytics course in mysore

    ReplyDelete
  18. Intresting info and good to know, rarley use IOS devices but have noticed sometimes android would show the same behaviour, haven't seen it in a while though so may of been related to older OpenWrt I had running at the time, useful info if it shows these symptoms again :)

    ReplyDelete
  19. SMR Vinay ICONIA is an iconic gated community and one of the best Luxury Apartments in Hyderabad. We have meticulously planned every detail so that each home makes a statement. Our premium amenities are redefining the perception of luxury apartments in Hyderabad.

    ReplyDelete
  20. Awesome post thank you for sharing check my article here arieshemp

    ReplyDelete
  21. https://pagingsupermom.com/adorable-stocking-tags-12-free-christmas-printables/#comment-696194

    ReplyDelete
  22. This is so amazing Thanks for posting Classaction Lawsuit List

    ReplyDelete
  23. It is very interesting! Really useful for me and thank you for this amazing blog.
    Divorce in Virginia with Child

    ReplyDelete
  24. I'm another client of this site so here I saw different articles and posts posted by this site, I inquisitive more interest in some of them trust you will give more data on this subjects in your next articles. her latest blog

    ReplyDelete
  25. The game is vivaciously picked Greek stories, and the player should utilize information on Greek legends to advance. The game was conveyed in 2008, and got blended evaluations. Check for more pandora box arcade official website

    ReplyDelete
  26. Nice article! It was very innovative thing with unique title and keep it up...
    divorce in virginia with child
    divorce lawyer consultation cost

    ReplyDelete
  27. Are you looking for an opportunity to give back to your community? TeachIndia, Delhi is a great way to do just that! We are a non-profit organization that provides free education to children in need. We are always looking for volunteers to help us, so if you're interested in teaching, don't hesitate to contact us!

    ReplyDelete
  28. At Standout Music Studio, we offer Trombone Lessons in sydney, Australia for all levels, from beginners to advanced players. Our highly experienced and qualified instructors will help you to improve your skills and technique and achieve your musical goals.

    ReplyDelete
  29. Asset Plus Buyers Agents are the leading buyers advocate in Brisbane. With years of experience and a proven track record, we are dedicated to getting you the best possible price for your home. Contact us today for a free consultation to see how we can help you. Buyers Advocate Cost in Brisbane, Australia

    ReplyDelete
  30. Looking for the Best Hotel in Mathura? We offer comfortable accommodations, great amenities, and a perfect location near all the best Mathura attractions. Book your stay today and experience the best of Mathura!

    ReplyDelete
  31. This comment has been removed by the author.

    ReplyDelete
  32. Jabodetabek exclusive teaching services along with instructors coming over to the house. Over 1000 effective trainers will be ready coach many skills in addition to training for the kids to adults ... go to https://bimbel-calistung.netlify.app/les-privat-calistung-cakung.html for further

    ReplyDelete
  33. Perhaps you will find a cheaper fee than the table above, make sure again with regards to the qualifications from the teacher / Kindergarten teacher recommended to your account ... for more information https://biologi-exed.blogspot.com/2022/04/les-privat-biologi-di-jagakarsa.html

    ReplyDelete
  34. Are you looking for Curtains in Melbourne, Australia? Divine Interiors offers a wide range of curtain styles and designs to suit any home or office. We also provide free measure and quote services to ensure you get the perfect curtains for your space.

    ReplyDelete
  35. Awesome things here. I am very satisfied to look your article. DNR Drywall Burnaby, BC

    ReplyDelete
  36. Thanks for this intelligent post on data science. The statistics and data presented here are accurate, which is always a pleasure to read. This post definitely has something in it for data science newbies and experts, which, in itself is a difficult feat to achieve. I would strongly recommend this post to anybody who wants to know something about data science and its current trends.full stack developer course

    ReplyDelete
  37. Wouldn't "300 kilo-microseconds" just be easier to say .3 seconds?

    ReplyDelete

  38. Find someone to complete my assignment in Ireland? Look no further! Find someone to complete your assignment in Ireland with ease. Our professional and experienced team is dedicated to providing top-notch assistance, ensuring your assignments are completed with precision and on time. Trust us to help you achieve academic success effortlessly.

    ReplyDelete
  39. Unlock academic success with premier online assignment help services across Australia, Ireland, NZ, and the UK. Renowned for excellence, our platform, Go Grades Reviews, stands as a trusted companion, ensuring students achieve their educational milestones with expert guidance and top-notch assistance.

    ReplyDelete

  40. Gogrades, a reputable online assignment help service, extends its expertise across Australia, Ireland, NZ, and the UK, aiding students in academic excellence. With a commitment to quality, Gogrades stands out as a reliable ally in education. As students frequently inquire, Is Gogrades Legit? – rest assured, the service's credibility is affirmed by its consistent delivery of trustworthy academic assistance.

    ReplyDelete

Post a Comment

Popular posts from this blog

Five Facts About 6 GHz Wi-Fi

Chips, Glorious Wi-Fi 6E Chips!