前言:什么是漫游?

漫游行为:

简单来说,就是设备从一个AP,连接到另一个AP。IP地址不需要重新申请。整个过程需要尽可能快的进行,否则对于用户而言,就会发现网络出现卡顿。而为了安全,网络的认证过程已经变得十分耗时(例如802.1X认证)。所以为了避免漫游时出现重新认证,开发出了OKC,以及802.11R协议进行补充。避免漫游时进行完整的认证过程。

使用OKC,802.11R等协议,省去认证过程的漫游称为快速漫游

一、预先认证(preauthentication)

Preauthentication是802.11-2007中定义的Fast Roaming方法。是指STA通过当前连接的AP(AP1),跟它即将要连的AP(AP2)进行一次完整的802.1X认证。认证通过后,AP2中就会生成一条PMKSA Cache。

简单总结下:预认证是用于802.1X。与多个AP进行开放式系统认证并不是预认证。向新AP进行802.1X认证才是预认证

问题:

当使用WPA时能否进行预认证(preauthentication)?

按照802.11-2007标准,预认证能力是利用RSN IE来通告的。这意味着Wi-Fi联盟之前的WPA由于使用WPA IE而不是RSN IE而不能进行预认证。

WPA2和WPA区别是什么呢?

它们对于快速漫游和安全特性有什么影响呢?

首先,要知道一个BSS只要不支持WEP而支持TKIP或CCMP,那么就被认为是一个RSN。 但使用哪一种encryption cipher(s)也决定了BSS中的帧格式。具体来讲,如果网络支持WPA2 (AES-CCMP与可选的TKIP)安全,那么在许多管理帧中将包含RSN IE。但如果BSS仅支持WPA安全(TKIP),那么RSN IE将被WPA IE替换。WPA IE与RSN IE的功能类似,但RSN IE中的一些字段发生了变化或被忽略。 
仔细分析下WPA IE中遗漏的一些字段。首先WPA IE中不存在preauthentication字段,这也就意味着不能支持预认证功能。而且,WPA IE中不存在PMKID Count和PMKID List字段,而现在快速安全漫游中的许多特性(诸如PMK caching和Opportunistic Key Caching (OKC))都要使用这些字段,这两个字段缺失也意味着不能支持这些特性,这对于移动环境中使用WPA-Enterprise的人是一个考验。

下面看看WPA IE和RSN IE的差异。 
 
图 2-1 Beacon帧中携带的WPA IE


图 2-2 关联请求帧中携带的WPA IE

图 2-3 Probe应答帧中携带的RSN IE

图 2-4 关联请求帧中携带的RSN IE

图 2-1是Beacon帧(使用PSK安全)中携带的WPA IE, 可以与图 2-3给出的Probe应答帧(使用802.1X/EAP安全)中携带的RSN IE对比。然后比较图 2-2和图 2-4,分别是关联请求帧中携带的WPA IE和关联请求帧中携带的RSN IE。这里的截图使用了现实世界中常用的PSK和802.1X/EAP来展示两者的差异。
    注意:OUI从00:0F:AC变为00:50:F2(IEEE对Wi-Fi联盟),但是cipher type与authentication type的编码相同。在WPA IE中没有preauthentication bit,而且在(重)关联帧1如果对老客户需要支持TKIP,但又要支持CCMP,那么可以配置为WPA2就可以同时支持这两种ciphers,这将使网络中使用的是RSN IE。当然,你会发现一些使用TKIP的设备无论如何不支持快速安全漫游,但是客户真的希望具备该特性。 中没有PMKID count和PMKID list字段。注意这里的RSN IE截图中只有PMKID Count字段而没有PMKID List字段,这是由于PMKID Count取值为0,否则将会有PMKID list字段。如果对老客户需要支持TKIP,但又要支持CCMP,那么可以配置为WPA2就可以同时支持这两种ciphers,这将使网络中使用的是RSN IE。当然,你会发现一些使用TKIP的设备无论如何不支持快速安全漫游,但是客户真的希望具备该特性。

Preauthentication虽然在Roaming期间略过了802.1X,但还是每次都要做,只不过提前罢了。

OKC的出现,就是为了解决每次都要做802.1X的问题,可以提高效率,降低网络负荷。可是,OKC的方便是建立在牺牲安全性的基础上的。这会导致每个AP上都拿到相同的PMK。

为了同时解决Preauthentication和OKC的缺陷,IEEE推出了802.11r,对Fast Roaming进行了补充。

二、OKC

OKC(Opportunistic Key Caching)

也叫OPC(Opportunistic PMK Caching),是微软定义的一套标准,并不在802.11标准中。不过多数厂商都支持这种方式,也成为了一种事实标准。是在PMK caching基础上进行设计的。所以首先了解一下PMK caching

2.1、PMK caching

PMK caching是由802.11i协议定义的,一种用在单个AP与设备之间的认证中的有效技术。使用在当一个工作站已经认证在某个AP上,然后漫游到其他AP,之后又漫游回该AP。不用进行完整的认证,只需进行802.11i中定义的四次握手交换共享密钥过程即可。

所以PMK caching只适用802.1X认证。

工作原理:

在漫游发生之后,会在关联请求帧中将PMKID上报,AP根据PMKID在PMK caching中进行查找对应的PMK,如果找到,就不需要再进行802.1X过程获取PMK了。

2.2、OKC

Opportunistic Key Caching:是与PMK caching类似的技术,也是为了避免复杂的802.1X认证过程。

OKC适用在同一网络下,同一AC下的多个AP之间进行的漫游。

与PMK caching不同,OKC会将PMK在AP之间进行交换。

工作原理:

当STA跟AP1经过完整的EAP/802.1X建立连接后,产生一条PMKSA,里面包含一个PMKID1,然后AP1把这个PMKSA传给它的邻居,其中一个就是AP2。

漫游发生前,STA要根据AA,SPA和PMKID1计算出一个PMKID2,把这个PMKID2放在RSN IE里,送给AP2。

AP2在收到这个PMKID2后,就像平时一样,会在自己的PMKSA Cache里找,当然,这是找不到的。因为Cache没有一个的PMKID是PMKID2。然后,AP2就要对Cache中的每一个Entry计算一次新的PMKID,其必要的几个元素,AA,SPA和PMKID1都是有的。每计算一个就跟PMKID2匹配一次,匹配成功就可以直接进行4次握手。

注意:

由于OKC是在PMK caching上进行开发,且并不是Wi-Fi联盟推出的协议,所以并不是每个设备厂商都支持。

参考文档:

《Aruba+OKC+Implementation》:

aruba公司关于OKC的官方文档,下载网址:

https://download.csdn.net/download/u012503786/10931601

代码参考:

hostapd中的pmksa_cache.c和pmksa_cache_auth.c

三、802.11R

802.11R与OKC的不同:

1、802.11R不仅可以用在802.1X认证中,也可以用在PSK认证中

2、802.11R协议延伸出新的共享密钥生成过程

3、802.11R将密钥交换过程放到关联认证过程

4、802.11R不仅可以省去802.1X认证过程,也可以省去四次握手过程

参考文档:

《802.11r BSS Fast Transition Deployment Guide》:英文

关于802.11r步骤的文档,没有802.11r的细节描述,下载地址:

https://download.csdn.net/download/u012503786/10931616

《基于802.11R协议的快速漫游系统的设计与实现》:中文

论文,介绍802.11r的实现过程细节,有抓包分析。

《IEEE Std 802.11r-2008》英文

IEEE关于802.11r技术的标准文档,版本为2008年版,有详细的介绍,强力推荐下载地址:

https://download.csdn.net/download/u012503786/10931632

《80211r原理明细》中文

侧重于介绍802.11r的密钥产生以及状态机变化,下载地址:

https://download.csdn.net/download/u012503786/10931623

代码参考:

hostapd中的wpa_ft.c和wpa_auth_ft.c

*******************************************************************************************

无法下载可发送邮件至hanfs390@foxmail.com

主流漫游技术-OKC802.11r介绍相关推荐

  1. 区块链主流开源技术体系介绍(转)

    接上一篇应用开发入门介绍,Elwin这篇将会介绍主流的区块链开源技术体系,供大家开发自家区块链平台及应用参考. 一.     比特币体系 比特币(BitCoin)是最早也是全球最广泛使用和真正意义的去 ...

  2. 区块链主流开源技术体系介绍

    区块链技术如今是非常火热,不仅让金融家和创投家趋之若鹜,如今已经在多个领域遍地播种.作为拥有锐利触角的创业家们,是否也想将区块链集成到你们现有的应用中去,而作为IT技术工程师的你,是否也是跃跃欲试,想 ...

  3. [转]区块链主流开源技术体系介绍

    区块链应用开发入门 区块链技术如今是非常火热,不仅让金融家和创投家趋之若鹜,如今已经在多个领域遍地播种.作为拥有锐利触角的创业家们,是否也想将区块链集成到你们现有的应用中去,而作为IT技术工程师的你, ...

  4. js 判断支持webgl_基于WebGL无插件虚拟场景漫游技术如何构建?ThingJS

    #三维可视化##3D开发# WebGL, ThingJS及3DSMAX 虚拟场馆漫游技术构建 基础组件 加载三维模型 实现虚拟漫游 渲染优化 如果要构建一个具有交互性和拓展性的沉浸式漫游场景,常用到3 ...

  5. 网上调研:主流网络技术和设备的性能与市场

    网上调研:主流网络技术和设备的性能与市场 网上调研主流网络技术和设备的性能与市场 一当前主要的网络技术的进展以太网的进展 以太网的历史 以太网的相关标准 以太网现状 二当前主要网络技术的应用大学校园使 ...

  6. open source license主流的开源软件协议介绍

    open source license主流的开源软件协议介绍(20190222) 文章目录: 一.开源软件的直观介绍 二.常用开源协议介绍 三.常用开源协议之间的对比 当Adobe.Microsoft ...

  7. 网易来聊聊子弹短信的消息漫游技术

    "子弹短信"炸翻了创投圈,上线短短7天,掀起IM行业一股巨浪.网易云信作为子弹短信IM以及音视频通话技术提供者,今天来聊聊子弹短信这款即时通讯产品里面一个重要功能-消息漫游. [知 ...

  8. 6个越南主流社交媒体软件简单介绍

    越来越多的小伙伴发现了东南亚市场的魅力,开始主攻东南亚跨境电商了.今天我们小编就来给大家简单介绍一下东南亚国家之一越南主流社交媒体平台,为大家开拓越南市场贡献一份力量. 6个越南主流社交媒体软件简单介 ...

  9. 【重识云原生】计算第2.4节——主流虚拟化技术之KVM

    <重识云原生系列>专题索引: 第一章--不谋全局不足以谋一域 第二章计算第1节--计算虚拟化技术总述 第二章计算第2节--主流虚拟化技术之VMare ESXi 第二章计算第3节--主流虚拟 ...

  10. 虚拟化技术:KVM介绍及试用

    KVM介绍及试用 服务器虚拟化是云计算最核心的技术,而KVM是当前最主流的开源的服务器虚拟化技术.从Linux2.6.20起,KVM作为内核的一个模块 集成到Linux主要发行版本中.从技术架构(代码 ...

最新文章

  1. python处理多个excel文件-python多个excel文件合并成一个sheet
  2. CentOS 7 下 Zeal 安装
  3. 超图桌面版GIS配准基本操作
  4. 《openssl 编程》之 RSA(转)
  5. sqlldr 导入乱码,Oracle客户端字符集问题
  6. 转:集群和分布式的区别
  7. PS3支持的显示标准介绍
  8. Android 设备的CPU类型(通常称为”ABIs”)
  9. php函数积累第二弹(关于文件操作)
  10. wincc与第三方软件opc通讯_OPC 通讯不得不说的强大软件
  11. 基于matlab的捷联惯导算法设计及仿真,基于 Matlab 的捷联惯导算法设计及仿真1.doc...
  12. 版本管理SVN的使用——SmartSVN使用
  13. 中国贸易外经统计年鉴(2021年)
  14. Android Mvp架构的小demo
  15. mac 安装ffmpeg以及各种编码器
  16. securecrt破解版64位
  17. 华为“天才少年”稚晖君又出新作,从零开始造“客制化”智能键盘
  18. 转载四代重歼的一片博文 - 漏斗子:“三大战役”完成 人民币国际化就登场
  19. 机械键盘测试(1)——序
  20. 用python实现自动化翻译

热门文章

  1. 笔记本计算机摄像头怎么打开,手把手教你笔记本内置摄像头打不开解决方法
  2. 大数据核心技术是什么?
  3. ios8以后Label自适应大小
  4. 对38位互联网大佬奇葩癖好的奇葩解读
  5. IP.cn - 全国 DNS 服务器 IP 地址汇总 | 公共 DNS 服务器 | DNS 地址
  6. win10误删的注册表能还原吗_Win10自带注册表修复方法 Win10注册表误删修复步骤...
  7. 人民搜索2013年招聘的三道算法题 西安站
  8. Pytorch与Tensorflow权重互转
  9. 非战之罪,从永中Office谈起
  10. 搜索引擎优化内容及方法