Passpoint 协议--公共Wi-Fi的变革者(二)

五、一般Wi-Fi的连接过程

         我们知道传统Wi-Fi的连接分三步:

         1)发现周围的路由器,被成为扫描阶段;

         2)然后根据路由器的名字(SSID)选择自己知道密码的路由器;

         3)输入密码等待连接完成。

         支持Passpoint协议的Wi-Fi设备依旧没有违反这个步骤,只不过在每一步添加了一些小小的动作,把人需要做的事情改成了后台自动完成,将整个连接过程隐藏了起来。

         Wi-Fi的连接过程就是Wi-Fi的寻找发现,认证关联,密码身份校验这三步,对于上网最后再加一步获取IP地址,至此就可以上网了,也是我们在手机上看到Wi-Fi连接标志出现的时候。

 

一般Wi-Fi连接过程

        在每一步中都会用到Wi-Fi的管理帧,对应与这几个步骤分别是:

        1)在扫描中分为主动扫描和被动扫描。主动扫描会用到Probe Request和Probe Response帧。而被动扫描则是在每个信道上监听路由器发出的beacon帧;

        2)在认证阶段和关联阶段,会通过authentication request 和authentication response 完成认证,association request和association response完成关联。虽然在现在连接过程中这两步看似走个过场,但是authentication在当年只有WEP加密的时代承担了整个加密过程的校验工作。中途为了兼容WPA和WPA2加密协议,一度被当作小透明的步骤,不过今天WPA3加密协议推出后,它又重新发光发热,在这里就不展开了。有兴趣的可以自己搜索一下,网上关于WPA3的加密过程解析有很多不错的资料。至于关联过程的association request和association response在平时也是不出意外意外的完成,但是在漫游时确实充当着密码载体的作用,后面有机会再说;

        3)在密码校验的时候,如果是企业级的路由器,那么会有EAP交互获取密码的过程,如果是普通的家用路由器,则直接使用密码进行密码校验;

        4)在完成了密码校验后则开始DHCP获取IP地址的过程,这一步其实和Wi-Fi连接没有什么关系,但是现在大家普遍认为连接Wi-Fi如果不能上网那Wi-Fi就不叫连接成功,所以Android手机上也把这一步算在了Wi-Fi连接的过程中了。         

六、Passpoint 设备的连接过程

       大家都知道,我们连接一个路由器,需要知道路由器的名字和密码,这个路由器名字用术语叫做SSID(Service Set Identifier),在扫描阶段实际上就是在寻找各个信道上的路由器SSID,当在所有的信道上都找完后,将收集到的SSID返回到界面上供用户进行选择。挑选出我们想要连接的路由器后,输入密码,发起认证,关联,密码验证,最后完成连接。

扫描阶段寻找SSID

        但是在支持Passpoint协议的客户端和路由器上,扫描过程中重点关注的将不再是SSID,而变成了寻找FQDN和roaming consortium。

        那么什么是FQDN呢?它是Full Qualified Domain Name的缩写, 关于它的简介网上有很多,这里不再啰嗦了。

        roaming consortium则是为了方便漫游,也作为可以进行连接AP的一个备选项。

        对于这两个,只要有一个匹配上,客户端就可以尝试连接,以FQDN为优先选项。

        但是不知道是为了考虑确定性还是兼容性,FQDN和roaming consortium并没有出现在beacon和probe response中,而是当客户端从beacon或者probe response中发现路由器是支持Hotspot 2.0协议的时候,开始尝试一个获取FDQN后者Roaming Consortium的过程,叫做ANQP(Access Network Query Protocol)。

        所以,支持Passpoint协议的Wi-Fi设备和普通Wi-Fi的重要改变在于扫描阶段寻找AP的方式。

普通AP和支持Passpoint协议的AP的重要改变
 普通AP支持Passpoint协议AP
扫描阶段接收beacon或者probe response接收 beacon 或者 Probe response 并 发起ANQP过程
寻找目标SSIDFQDN或者 Roaming Consortium

      支持Passpoint的Wi-Fi设备的连接过程依旧没有改变Wi-Fi的连接过程,只是在扫描时候加入了ANQP寻找匹配FQDN和roaming consortium的过程,整个的连接过程和正常Wi-Fi连接的过程一样。整个的连接过程如下图所示

Passpoint Wi-Fi设备连接过程

 

  6.1 Passpoint Wi-Fi扫描过程

       Passpoint 的Wi-Fi设备在扫描中寻找支持Passpoint协议的设备(也叫做支持Hotspot2.0的设备),为了做到这一点,Wi-Fi联盟借用了802.11u协议,使用了GAS(通用广告服务)和ANQP(访问网络查询协议)。

       首先客户端仍然会执行主动扫描或者被动扫描,接收Probe Response或者Beacon,对于支持Passpoint(或者Hotspot 2.0)的路由器(AP)设备,会在Probe Response和Beacon中Hotspot 2.0 Indication、Advertisement Protocol 和 Roaming Consortium三个IE元素,用于表明自己支持Hotspot2.0协议。

支持Passpoint协议的Beacon特有IE

       当发现有支持Hotspot2.0的路由器时,就会发起ANQP过程来获取AP端的具体Hotspot 2.0信息,整个过程都是由action帧完成。

       首先客户端向AP发出GAS Initial Request,其中带有ANQP协议,这一帧的ANQP是一帧request,其中会带有客户端想要向路由器端了解的信息,其中包括ANQP capability list、NAI Realm list、3GPP Cellular Network Information、Domain Name list和Venue Name Information,除此之外,还有附加一项Hotspot 2.0 ANQP Element,这个将贯穿整个hotspot 2.0 连接,从初始的获取FQDN,到后续OSU。首先我们先来看下这一element的格式。

Hotspot 2.0 ANQP Element格式

          由于Hotspot 2.0 ANQP Element是符合TLV格式的vendor IE,所以之前的Info ID、length、OUI、Type很好理解,只有Subtype从1-13代表不同含义,表明整个过程中AP和STA沟通时想要完成的事情,具体我们来看看从1到13分别代表了什么意思:

Hotspot 2.0 ANQP Element Subtype
  类型APSTA
1HS Query listQueryReceiveSend
2HS Capability listResponseSendReceive
3Operator Friendly NameResponseSendReceive
4WAN MetricsResponseSendReceive
5Connection CapabilityResponseSendReceive
6NAI Home Realm QueryQueryReceiveSend
7Operating Class IndiciationResponseSendReceive
8OSU Providers ListResponseSendReceive
10Icon RequestQueryReceiveSend
11Icon Binary FileResponseSendReceive
12Operator Icon MetadataResponseSendReceive
13Osu Providers NAI ListResponseSendReceive

         所以,在完成整个连接过程中,支持Passpoint协议的通信双方会通过Hotspot 2.0 ANQP element来完成一些Passpoint特有的过程,就像在扫描阶段,ANQP过程的开始,客户端会在GAS Initial Request中带有HS Query list来向路由器询问AP的HS Capability List、Operator Friendly Name和WAN Metrics。

GAS Initial Request

         当路由器端收到了客户端发来的GAS Initial Request后,会响应GAS Initial Response,其中会回复客户端所需的内容。

GAS Initial Response

         当客户端收到路由器发来的response后,回复GAS Query Done消息,代表完成ANQP的整个过程,至此,Passpoint 协议的扫描过程完成。

6.2 Passpoint Wi-Fi连接过程 

        当客户端通过ANQP过程找到自己可以连接的路由器后,就会以Wi-Fi连接过程进行连接。整个连接过程都和一般Wi-Fi连接过程一样没有区别。不过由于支持Passpoint的路由器都是企业级路由器,所以在四次握手对密码校验之前会有EAP的过程获取密码,称为WPA2-Enterprise加密方式。根据协议规定,支持的EAP method总共有5种,对于有SIM卡的客户端可以使用EAP-SIM、EAP-AKA和EAP-AKA'三种方法从AAAserver获取密码。对于没有SIM卡的客户端,也可以使用EAP-TLS和EAP-TTLS方法获取密码。

        对于使用SIM卡进行密码校验的双方,需要客户端先开通服务,将自己的SIM卡信息存储在运营商的服务器上,在密码校验时实际上是从运营商的服务器上检测是否存在该SIM卡,如果有EAP过程顺利完成并拿到密码,进而进行连接。

        对于没有SIM卡的客户端,想要进行连接,那就需要使用EAP-TLS或者EAP-TTLS方法,这样,就需要使用证书+用户名/密码的方法进行认证获取密码。

        由于EAP方法想要写的内容比较多,在这里一次性写不完,所以打算有时间了再总结好了再写一篇,所以在这里就不展开了。

        以上就是Passpoint R1版本的整个连接过程。

七、不知道证书、用户名/密码我们该怎么办

        大家会发现,其实这样仍然需要提前做些配置,对于使用SIM卡的设备还好,提前开通服务就可以了,但是对于没有SIM卡,需要证书,用户名/密码可不是那么容易,尤其是面对大街上一个从来没有连接过甚至是第一次遇到的路由器。不要着急,Wi-Fi联盟考虑到这种可能情况,所以又推出了R2版本的协议,这个版本引入了一个新的过程- OSU(Online Sign Up),将解决大家需要知道证书,用户名/密码的困扰,整个过程将获取证书、用户名/密码的过程放在了后台完成,对于你,只需要做一次简单的认证过程。这样将大大方便大家使用Passpoint设备做连接。

 

 

 

  • 3
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值