Thursday, December 15, 2011

Why wireless (802.11) roaming is a nightmare (and why CCX can help)

Part 2: Why CCX can help

In part 1, we saw the three main generations of roaming algorithms implemented in 802.11 wireless devices to handle roaming, and saw the limitations related to the fact that the wireless client has little or no visibility on the neighbouring environment. Because of this blindness, the wireless laptop is compelled to make roaming decisions built on "educated guesses" about the changes in its RF environment. In this second part, we will see how the Cisco Compatible Extensions can help the wireless device improve roaming efficiency.
This second part is not intended to be a general praise to "Great Cisco", but to show how a dynamic interaction between the wireless infrastructure and the wireless client can improve roaming. It is interesting to notice that the 802.11 standard did no implement such a dynamic interaction, and that it takes proprietary implementations to solve the "client blindness" issue.

- Tell me what you see: CCX message S36
The first issue you need to solve for efficient roaming is knowledge about the environment. If the wireless client knows about the neighbouring APs, roaming becomes a walk in the park! Yes, but we said in part 1 that the core  problem was to collect this information without having to spend precious milliseconds and battery time looking for it. In other words, you do not want each client to have to scan all the time looking for potential neighbours, because this decreases the efficiency of the client in the current cell (time wasted away from the cell frequency), consumes a lot of energy (strain on the client battery), and is inefficient (who knows if the client is going to detect the best APs, or just the first ones to reply).
A nice way to alleviate this problem is to centralize this information, for example on the AP. With CCX message S36 (from the number S3x, you can recognize that this was introduced in CCX version 2), and AP can ask a client to report about its environment. The process is as follows:
  1. The AP sends an S36 Radio Measurement request (S36 RRM request) to the client, basically saying "hey, report what you know of your environment".
  2. The client has several ways to react. 
  • The client can ignore the AP request ("leave me alone, I am busy, or I do not know anything about my environment, or I am no CCX anyway!"). 
  • The client can reply immediately with the information it knows
  • The client can explore its environment and come back with answers.
Most clients are set to explore their environment first and then come back with more detailed information. What is nice about S36 is that the AP can specify the target channel (tell what you know about APs on channel 11), to limit the information that the client needs to collect.
For this exploration, the client can use one of three modes:
  • Active scanning: in this mode, the client jumps to the requested channel(s), and sends broadcast probe requests. Each request contains a CCX S36 proprietary Information Element. 
  • Passive scanning: in this mode, the client jumps to the requested channel(s), and passively listens for beacons.
  • Beacon table: in this mode, the client simply returns to the requesting AP the information about the channel collected previously. In other words, the client does not jump to scan, but directly replies with the information that the client has about APs on the requested channel(s). 
These 3 modes are quite flexible: depending on your client battery conservation policy, any of these 3 modes can be used.
Where it gets smart is that the AP can ask the client to collect specific elements of information. In the S36 Radio Measurement request, the AP can specify what element is to be reported:
  • Channel load: check the channel for a specified duration and tell me how loaded this channel is.
  • Noise histogram: check noise on the channel, make a certain number of measurements, and report them to me.
  • Beacon: probe and collect the beacons you hear. Report them to me.
  • Frame: listen on the target channel and report what frames you hear.
The Radio measurement request can also specify if the client should perform all measurements then report, or if the client should report after each measurement. This is useful when more than one channel is to be explored, or if more than one measurement is expected (for example, the client may report each beacon heard, or collect all beacons on a given channel and report them all at one time).


The client will then report each of the elements requested in the Radio Measurement report (S36 RRM Report):
  • Channel load: this is a simple measurement, the client reports the measurement duration and the percentage of time the network was busy (someone was sending) on the tested channel.
  • Noise histogram: this is also quite simple, the client reports the measurement duration, then a certain number of noise values collected over the measurement duration. These noise values are always taken when the network is idle (i.e. no 802.11 frame is detected, and what is reported is the real background noise)
  • Beacon: this is a more complete list of elements. The report contains of course the measurement duration, then for each received beacon the received signal power, signal type (OFDM, ERP, DSSS, HT, etc), the beacon interval and main components (such as BSSID, supported data rates, etc.). This is an important element: with this report, the AP knows all the neighbouring WLANs detected by the client.
  • Frame: this report contains of course the measurement duration, then the number of frames detected, with the BSSID and the received power at which the frames were heard. With this piece of information,  the client may not have heard the AP on the tested channel, but the AP knows what clients of what SSID are communicating on the tested channel.

Okay, but how does that help? You might think that the client does not need the AP S36 message if all that fuss is just to go scan, something that the client could do on its own.You would be right if CCX only had S36, but this is combined with some other CCX messages, namely S51 and S68.
So far, CCX does a nice job at sharing the information: when a client scans other channels and learns about other APs and BSSIDs, S36 allows this information to be shared with the AP. Nice, because the AP is at the center of the cell, and is heard by all other clients.

- This is how you roam, S51
The CCX S51 message was introduced in CCXv4, as you may be able to guess from the S5x structure. CCXv2 already had an ancestor to S51, called S32. S32 was updated with S51, so we will ignore the old S32 and describe S51. This S51 message exchange is all about roaming. What is a bit complex about this exchange is that it can occur at different points in time, and contains several possible sub-components:

The first and probably most important element is the RF Parameter Element. The AP can send a S51 message to the client, containing the following "CCXv4 S51 RF parameter elements":
  • Minimum RSSI needed: the AP tells the client "this is the minimum RSSI you need to get if you want to associate to my cell".
  • AP Tx Power: the AP communicates its transmit power (in dBm).
  • Scanning threshold: the AP tells the client "if you get my signal below this RSSI level, start scanning for another AP".
  • Hysteresis: the AP tells the client "if while scanning you hear a neighbouring AP at a signal that many dB above mine, jump to that AP".
  • Transition time: the AP tells the client "when you roam, you have that number of seconds to get to another AP. After that, I'll disconnect you.
S51 contains other elements, they will come into play when looking at S51 more in detail. So how is S51 used? And how S36 works with S51?


First of all, a client is turned on, scans and discovers an AP with a probe request. The AP probe response can contain a S51 Channel Load Information element. This tells the client how busy the AP is (how many clients taking what percentage of the AP resources). This is a CCX S51 message, but is in fact an ancestor to the QBSS Load IE (QoS Basic Service Set Load Information Element) defined by 802.11e. If your station and AP are WMM, the station will receive the same information from the 802.11e/WMM QoS section of the beacon, without the need for a proprietary CCX S51 element in the beacon.

Just after the client successful association to the cell, the AP sends a CCX S51 Neighbour List Update message to the client. This is a unicast unsolicited message. In other words, the AP sends the message to the client without being asked, as soon as the CCXv4 client is associated. This S51 Neighbour List Update contains the list of 6 best neighouring APs. For each neighbour, the client learns the channel, the AP Minimum acceptable received signal level, the last known AP TX power, the AP beacon interval, and roaming parameters such as roaming Hysteresis, adaptive Scan Threshold and transition time.
In a logic where cells are next to each others, the 6 best neighbors for the AP give the client the best chances to find a better AP in case of roaming.


The AP collected this information thanks the the S36 messages reported by other clients. A client entering the cell is also a good candidate for a S36 question. As the client is entering the cell, it may be just turned on, or is coming from another cell. So the AP can ask "send me the list of neighbours you know, just your beacon table, not need to scan". This is not battery-expensive for the client (no scanning required), and allows the AP to be informed about neighboring APs.

With this information about neighbors and the information about the current client power level, the AP can then calculate the overlap between cells. The AP can then communicate to the client, its own RF parameter elements, including the Scanning Threshold (also called Adaptive Scan Threshold).
With this piece of information, the AP tells the client:
  • As long as my RSSI is above this value, you do not need to scan. You are in my inner /good coverage area, so conserve your battery. This is great. In practical tests, you can see the client get a 30 to 35% longer battery time when CCX is turned on, just thanks to this feature.
  • When my RSSI gets below this value, start scanning. Here are the possible neighbors. This way, the client only starts scanning when needed, and scans in priority the useful channels, here again saving on battery.
  • When you roam, only jump to another AP if its RSSI is that much better than mine ("that much" is given in the Roaming Hysteresis value). This is very useful for stability, and prevents a client from jumping back and forth between 2 APs of about the same RSSI.
  • As a side note, the AP can also use the S31 (CCXv2 and later, as you may have guessed) AP Controlled Client Transmit Power. If the client is close to the AP, the AP can tell the client: "no need to be that loud, I can hear you even if you are quieter", thus allowing the client to reduce its power level, and here again save battery power. The AP can also ask the client to increase its power level if the client goes out of range of the AP.
  • This S51/S36 message system can be very helpful with sticky clients. You may remember from part 1 the RSA algorithm (sticky clients that do not roam when they are far away, even if they are close to another, better AP). If the client signal gets too weak, the AP can send an S36 (give me the list of APs you hear), and if the client report a better AP, the current AP can send a  S51 Direct Roam message. This message basically says "Roam to AP X on channel Y, I know it's there and you can reach it". This way, the AP can dynamically compensate for a weak roaming algorithm.
CCX has other features to faciliate roaming. For example, CCXv5 introduces the S68 message (S6x, logically CCXv5), gratuitous probe response. To avoid that the client running a passive scan has to stay close to 100 ms on the scanned channel, the APs can send broadcast probe responses between beacons, thus speeding up the discovery process.
The good thing about CCX is that most silicon vendors for client devices implement CCX (check here for the list). Cisco gives it away to anyone who wants to implement it into their clients (they still have to pay for the certification)... but only Cisco access points are CCX on the infrastructure side.
The complexity of CCX lies in the fact that it has many features, and that certifying for a new generation of CCX costs quite some development work (and certification costs). For this reason, not all vendors implement the newest and latest CCX, and you may find that some features are not available in this or that client. Sometimes, a simple firmware upgrade is enough to get a newer CCX, but sometimes the vendor implements the newer CCX in the newer clients and you may be stuck with for example a CCX v3 client, doing S31 and S36, but no S51 or S68... Some vendors tell you which CCX they run in the properties windows of their adapters, some others don't. But if you associate that client to a Cisco AP, the AP will always tell you what CCX it is running. You may then have to spend hours to try to figure out if you can get a newer CCX for this adapter or not...

139 comments:

  1. awesome stuff jerome.. where do u get to know all this. but a bigger mystery is that machines do so much of thinking in just a small fraction of time.

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

    ReplyDelete
  3. Useful info jerome. have a question. Is that possible to specify Measurement duration or active/passive scan in the request. Any command in Controller/ AP to send the request with particulare measurement duration

    ReplyDelete
  4. Remarkable blog! I have no words to praise, it has really allured me.
    wireless internet

    ReplyDelete
  5. Now this is in actual fact cooperative. It’s very openhanded of you to share this with us.
    unlimited internet providers for rural areas

    ReplyDelete
  6. Many time, I was trying to access www.mywifiext.net, But unable to access the website http://www.mywifiext.net to set up your wireless extender, you might receive an error message or be unable to connect to the site. After that, I got a site mywifiext-net.us and found that mywifiext.net is not a regular Internet website. It is a local web address used to open the settings (genie or Smart Wizard) of a NETGEAR wireless range extender. Finally I was successfully configure my Mywifiext.Net Ex6400 Setup

    ReplyDelete
  7. Thank you so much for sharing this information. This blog is very helpful for readers. I really appreciate this information. research peptides

    ReplyDelete
  8. This is a very informative article for us.. Really this is an amazing and helpful article..I’m Always get..the new and latest article..from this site and I like its very much.it's helpful..Thanks you

    ReplyDelete
  9. Thanks for right nice information about this best topic Such an Awesome Blog !! Keep up the Good Work !! all details about it really interesting.Sarkari Exam.

    ReplyDelete
  10. Tech Gadgets reviews and latest Tech and Gadgets news updates, trends, explore the facts, research, and analysis covering the digital world.
    You will see Some Tech reviews below,

    lg bluetooth headset : You will also wish to keep design and assorted features in mind. The most essential part of the design here is the buttonsof lg bluetooth headset .

    Fastest Car in the World : is a lot more than the usual number. Nevertheless, non-enthusiasts and fans alike can’t resist the impulse to brag or estimate according to specifications. Fastest Car in the World click here to know more.

    samsung galaxy gear : Samsung will undoubtedly put a great deal of time and even more cash into courting developers It is looking for partners and will allow developers to try out
    different sensors and software. It is preparing two variants as they launched last year. samsung galaxy gear is very use full click to know more.

    samsung fridge : Samsung plans to supply family-oriented applications like health care programs and digital picture frames along with games It should stick with what they know and they
    do not know how to produce a quality refrigerator that is worth what we paid. samsung fridge is very usefull and nice product. clickcamera best for travel: Nikon D850: Camera It may be costly, but if you’re trying to find the very best camera you can purchase at this time, then Nikon’s gorgeous DX50 DSLR will
    probably mark each box. The packaging is in a vibrant 45.4-megapixel full-frame detector, the picture quality is simply wonderful. However, this is just half the story. Because of a complex 153-point AF system along with a brst rate of 9 frames per minute. camera best specification. click here to know more.

    ReplyDelete
  11. I haven’t any word to appreciate this post.....Really i am impressed from this post....the person who create this post it was a great human..thanks for shared this with us. Cell repairs Trinidad

    ReplyDelete

  12. Undoubtedly buying the best air purifier is challenging nowadays. There are hundreds of products available in the market, and selecting the one having all the required features is difficult. It would be best if you roamed here and there to find the best Honeywell air purifier. Best Honeywell Air Purifiers To Buy Under 700

    ReplyDelete

  13. I am really happy to say it’s an interesting post to read . I learn new information from your article , you are doing a great job . Keep it up

    Call Girl in Chennai
    Independent Russian Escorts
    Independent Housewife Escorts
    Cheap Rate Escorts in Chennai
    Chennaiindependent escort

    ReplyDelete
  14. crowdsourcehttp://www.incruiter.com recruitment agency.

    We ’incruiter’ provide a uniquerecruitment agencies platform to various committed professionals
    placement consultancyacross the globe to use their skills and expertise to join as a recruiter and
    interviewer to empower the industry with talented human resources.Searching for the right candidate is never easy.
    job consultancy We use crowdsource recruitment to find right talent pool at much faster pace.
    Our candidate search follows application of a rigorous methodology, and a comprehensive screening to find an individual
    whorecruitment consultants is not only skilled but is also the right culture fit for your organization.
    Our interviewers are best in the industry,staffing agencies being experts from various verticals to judge right
    candidate for the job. They interview candidates taking into account primarily defined job specification of our clients and targeting
    them for needs of the organization.Thinking about payment?placement agencies Don’t worry, you pay when you hire.
    Whether you are a startup or an established enterprise, join our 10x faster recruitment process that reduces your hiring process by 50% and give you
    manpower consultancyefficient results.

    check our website:http://www.incruiter.com.

    ReplyDelete
  15. A rangefinder is a camera equipped with a rangefinder. It enables the shooter to take distance-measured pictures that are extremely focused and sharpVisit rangefindergear!

    ReplyDelete
  16. They sometimes juggle several sales and several renovations at any given time. It is important to know that there is an art learning how to flip a house and make a profit instead of losing money.Westminster Finance
    Westminster Finance
    Westminster Finance
    Westminster Finance
    Westminster Finance
    Westminster Finance

    ReplyDelete
  17. This tablet is absorbed into your blood approximately 30 to 60 minutes after the intake and start acting on your system by inhibiting the enzyme PDE5 (phosphodiesterase type) found in penis.
    Kamagra
    Kamagra
    Kamagra
    Kamagra
    Kamagra
    Kamagra
    Kamagra

    ReplyDelete
  18. thank you for giving a piece of great information about the application.

    VueScan

    ReplyDelete
  19. Thanks for sharing, nice article, also check more information on this Over the years numerous unintended landing gear retraction events have occurred while the aircraft is on the ground. These unintentional retractions may have been via pilot or technician oversight.Custom Gear Manufacturing
    As a young co-pilot I flew with a Korean F-86 pilot who became a business pilot.

    ReplyDelete
  20. Javelin Male Enhancement overall good health is important to good healthy sexual living. Review your current health and medications with your doctor, eat right and get plenty of exercise, then consider natural male enhancement products if needed.Female sexual enhancement pills, female libido enhancers and other similar products will be the subject of a future article.Disclaimer: The Erectile Dysfunction (ED), Male Impotence and male enhancement pill

    ReplyDelete
  21. Vitrexotin RX
    Ginkgo (Ginkgo biloba) is a unique tree with no close living relatives. Ginkgo extract treats

    ReplyDelete
  22. Excellent post! zzzoomer We will be linking to this great article on our website. Keep up the good writing.

    ReplyDelete
  23. Nutrapharmex Ketoshedding off excess pounds and which is gaining popularity these days is the detox weight

    ReplyDelete
  24. Ciagra Male Enhancement including the penis. It helps to correct atheroscerosis, hypertension and depression, absentmindedness and memory problems. Ginkgo also protects against oxidative cell A

    ReplyDelete
  25. facilities. If you have a health care facility to manage, make sure you get the best air purifiers to meet your needs on a regular basis Cartel Health

    ReplyDelete
  26. about what you put Exceptional Keto into your body, and not base your decision upon taste alone. Unfortunately, the majority of people base their beverage choices on taste and usually upon

    ReplyDelete
  27. I want to to thank you for this very suitable read!! have a gorgeous day. I have you bookmarked to test out new matters you website…

    car overheating
    heavy machinery
    car engine wash
    motorcycle maintenance
    automotive industry
    kia cerato pakistan

    ReplyDelete
  28. You've made some really good points there. I checked on the internet for additional information about the issue and found most people will go along with your views on this website.
    learn quran online

    ReplyDelete
  29. This is the perfect website for anyone who wants to understand this topic. You realize so much its almost hard to argue with you (not that I personally will need to…HaHa). You certainly put a new spin on a topic that's been discussed for ages. Excellent stuff, just wonderful!viablequran.com

    ReplyDelete
  30. Italian products online The fish heart, dried and salted, is a forte of Sicilian and Sardinian food, like bottarga and increased in value by admirers of fish. The preparing of the core of fish is like that of fish roe. The heart is salted and put between two tables under a press. Following 20 days it is set to dry in the shade, in a ventilated region. The relieved fish heart has a solid taste, thusly it doesn't need exceptional flavoring. It is utilized in hors d'oeuvres, simply prepared with additional virgin olive oil, in plates of mixed greens or ground chips on pasta.

    ReplyDelete
  31. This is really nice blog or wix is really good plateform for makeing blogging or other type website. Thx one again.

    Buy property online india

    ReplyDelete
  32. Nice work. I really liked the article. Your writing style is really nice. Thanks for posting mobile price in bd

    ReplyDelete
  33. Nice post.
    https://crackvip.com/winzip-pro-crack/

    ReplyDelete
  34. Thanks for sharing such an informative article.
    https://cds-key.com/wonder-share-pdf-element-crack/

    ReplyDelete
  35. Usually I never comment on blogs but your article is so convincing that I never stop myself
    to say something about it. i am Really very happy to say that this post is very interesting
    to read.

    You’re doing a great job Man, Keep it up.
    I blog at
    Download crack, patch, serial number, keygen, key direct full and free and Software Crack Windows Product key
    Thanks! :)

    ReplyDelete
  36. I quite like reading through an article that can make people think. Also, thank you for permitting me to comment!
    urdu-language

    ReplyDelete
  37. Glad to found your blog thanks for sharing nice blog.
    https://crackgrid.com/desksoft-smartcapture-keygen/

    ReplyDelete

  38. Hi, thank you for writing this article and sharing this information. I have read this post from start to end and really enjoyed it. I hope you will share more articles with us. I am glad to be here. Wish you best of luck. Please don't stop writing and keep it up. Thanks again.

    Also please visit my website...

    CBNest - The problem solver. Save time and live better with www.cbnest.com

    ReplyDelete
  39. Very good article. I learned a lot from it and was inspired. Thank you so much for sharing this wonderful info. I appreciated your hard work and experience. Really Love it! Thank you.

    Also check out my blog please.

    Best Of CB. A Digital Infoproduct Store. Best Digital Products Information And Reviews















    ReplyDelete
  40. Finally I found a website where I can share my thought! Thanks admin for letting me to do that. Although I don't comments much. But I couldn't stop myself from commenting. Because this website is interesting. And the contents on this website are well written. And the site owner and author seems friendly.

    So, I have a question to the website owner that I could I get more traffic for my website.

    Google Sniper - Make Money Online On Autopilot! Finally Revealing George Brown's $2,556 A Day System!

    ReplyDelete
  41. Thankful to you for your post, I look for such article along time, today I find it finally. this one Such an Awesome Blog !! Keep up the Good Work !! all details about it really interesting. gk guru

    ReplyDelete
  42. Hi, Very good article.
    Thanks for sharing. Keep up the good work. happy journey.

    eMyPeople Webmail login

    ReplyDelete
  43. Nice Post Here I Found A Great Site that Shares Pets Rising information such as how often to change cat litter and other things about raising a pet and taking care of it. i hope you find it useful if you have pets or you want to have pets in future.

    ReplyDelete
  44. Chris Peris

    Thanks for this helpful article. If anyone wants to transfer playlists/songs between Spotify/apple music and more. Then you can use MusConv.com. MusConv – the easiest way to transfer your music data!

    ReplyDelete
  45. Awesome post. I’m a normal visitor of your website and appreciate you taking the time to maintain the nice site. I’ll be a frequent visitor for a long time.

    ReplyDelete
  46. This registered property is truly incredible and amazing. This article has really been observed and very well advised so I must thank him for his partners.https://buylinkedinaccount.com/

    ReplyDelete
  47. HEY!
    Really amazing and helpful site!
    Thanks for sharing with us.
    Custom Logo

    ReplyDelete
  48. HEY!
    Really amazing and helpful site!
    Thanks for sharing with us.
    Custom Logo

    ReplyDelete
  49. Cung cấp thiết bị bếp công nghiệp, bếp nhà hàng – khách sạn, thiết bị inox, bếp Á, bếp Âu với giá cả cạnh tranh, cam kết chất lượng, tiến độ giao hàng – lắp đặt

    ReplyDelete
  50. Cung cấp thiết bị bếp công nghiệp, bếp nhà hàng – khách sạn, thiết bị inox, bếp Á, bếp Âu với giá cả cạnh tranh, cam kết chất lượng, tiến độ giao hàng – lắp đặt

    ReplyDelete
  51. Cung cấp thiết bị bếp công nghiệp, bếp nhà hàng – khách sạn, thiết bị inox, bếp Á, bếp Âu với giá cả cạnh tranh, cam kết chất lượng, tiến độ giao hàng – lắp đặt

    ReplyDelete
  52. Nice article and explanation Keep continuing to write an article like this you may also check my website https://www.sukh100.com.

    ReplyDelete
  53. thanks for sharing this helpful & useful article with us....
    hey, are you interested in web designing or logo designing then visit us...
    Logo Designers

    ReplyDelete
  54. https://expertwireless2be.blogspot.com/2012/02/80211n-450-mbps-just-came-out-but-is-it.html?showComment=1625344600117#c4528085934251132953

    ReplyDelete
  55. If you want to watch child porn videos and brazzers sex videos free then please visit: xnxx
    Thank you
    Tim Kassouni

    ReplyDelete
  56. If you want to watch adult movies, child porn videos,live sex,Hardcore sex and brazzers sex videos free then please visit: Free Sex Videos
    Thank you
    Timothy Kassouni

    ReplyDelete
  57. To watch and download free child sex vedios, Lesbian sex vedios and new adult movies visit Watch and download free porn videos
    Timothy Kassouni
    Thank You

    ReplyDelete
  58. jasa pembuatan npwp, jasa bikin npwp, jasa buat npwp, jasa pembuatan npwp terdekat, jasa pembuatan npwp online, jasa pembuatan npwp pribadi, jasa membuat npwp, biro jasa pembuatan npwp, jasa bikin npwp online, jasa buat npwp pribadi Jasa Pembuatan NPWP

    ReplyDelete
  59. Situs 918kiss Welcome Bonus 100 Trusted yaitu salah satu penyedia games slot online yang memiliki tambahan 100 persen memiliki kali awal kali berpadu.

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

    ReplyDelete
  61. This article discusses how Cisco Compatible Extensions (CCX) can improve wireless roaming efficiency by addressing the limitations of existing roaming algorithms. It highlights the benefits of CCX messages, particularly S36 and S51, in gathering environmental data and optimizing roaming parameters for clients. However, it notes the complexity and varying support for CCX across devices and versions, despite its potential to enhance the wireless roaming experience.

    ReplyDelete
  62. Online surveys are a great way to make some quick money, and many platforms offer PayPal cash as a payout option: Check out this website for more Want more knowledge check this

    ReplyDelete