第四章无线局域网快速切换安全协议1第四章无线局域网快速切换安全协议随着无线局域网的快速普及,无线接入点的密度会不断增加,移动服务的连续性要求无线网络系统支持频繁的基站切换。以无线局域网语音服务为例,要求移动终端设备必须能够迅速地切断与一台接入点的连接,然后快速地连接到另一台接入点上。切换过程中出现的延时是由基站探测时间、安全认证时间和业务关联时间三部分组成。以移动语音为例,若时延超过50ms,这种间隔会被人耳明显感觉到。但是,802.11网络中目前的切换延时平均在数百毫秒,这可能导致传输临时中断、丢失连接和语音质量下降。因此,研究快速的切换协议对广泛部署的802.11语音服务极为关键。本章在对WLANESS内部切换规范IEEE802.11r草案分析的基础上,为了解决草案抗DoS攻击能力差的问题,介绍了基于MIC认证和基于哈希链表的快速安全切换协议方案,最后给出了基于位置的快速安全解决方案,该方案具有QoS保障、位置扫描和基于位置的快速切换功能。4.1IEEE802.11r快速切换草案概述近年来,用户对接入业务的需求呈现宽带化、移动化和便捷化等特点,以IEEE802.11b标准为基础的宽带无线局域网技术迎合了人们在移动状态下对宽带数据接入的需求,并在全球得到了大规模推广与应用。由于IEEE802.11系列标准解决了空中接口兼容性问题,促使WLAN技术近几年的迅速发展,有力地促进了无线局域网终端和接入点AP的互通,因此无线设备成本快速下降。在提供Internet接入业务的同时还提供语音通信和移动通信功能的宽带无线局域网技术已经成为当前的研究热点。4.1.1802.11r技术规范简介为了支持STA的移动性,IEEE802.11工作组首先提出了IEEE802.11f标准,即IAPP(Inter-AccessPointProtocol)[1]协议,该标准规定了STA在同一网段上多个AP之间的漫游功能,是AP之间进行通信、交换和切换相关信息的协议。所谓“切换”是指STA在移动到两个BSS覆盖范围的临界处时,STA与新AP重新关联并与原AP断开关联的过程。802.11f标准规定了由STA、多个AP、DS(DistributionService)、以及RADIUS服务器组成的系统来实现STA在同一个ESS下不同AP之间的切换功能。若因无线链路的原因STA需要发生切换时,在与新AP进行正常通信前,必须与新AP进行重新认证和重新关联。IAPP协议是一个应用在IP层之上的高层协议,为了保证AP之间安全通信,支持IAPP协议的AP应当向RADIUS服务器进行注册,建立AP之间的安全通信连接。AP与RADIUS之间的交互信息包括AP的BSSID到IP地址之间的映射,RADIUS向AP发送密钥以保证AP之间的安全通信。当STA需要切换时,需向新AP发出关联或者重新关联消息,AP应与RADIUS服务器进行消息交互,实现新APBSSID与IP地址的映射,并且由RADIUS服务器向AP发送相应的密钥。由于每次STA切换时AP都需要与RADIUS服务器进行消息交换,因此发生切换的时延比较长。为此802.11委员会成立了TGr任务组进行FBT(FastBSSTransition)的研究,目的是为了研究支持时延敏感业务的快速切换技术。802.11的TGr任务组在2004年底提出了802.11r的D0.00版本,并于2005年11月提出了D1.00版本[2],以下对于802.11r的介绍都是基于D1.00版本。802.11r规定了发生切换时STA与同一ESS下的AP之间的通信流程(包括验证密钥),实现基于无线数据和无线语音的快速漫游协议。对于STA发生切换的条件,STA在不同ESS下的AP之间切换不在802.11r的规定范围之内。802.11r技术适用于IEEE802.11i的RSN和IEEE802.11e网络,也适用于不支持802.11i的RSN和IEEE802.11e网络。当STA发生切换时,应与当前AP断开连接,与新AP建立新的连接,这个过程引起了短暂的连接消失,可能导致丢包和上层协议的重传,最终导致切换时延变长。802.11r的目的是为了减少切换的时延,用于支持对时延敏感的VoIP等实时业务。切换时延包括实现802.11i中规定的认证时延、密钥交换时延以及重关联时延等。802.11r通过研究新的认证协2无线局域网安全体系结构议、新的密钥管理协议、更快的PTK算法以及在重关联或者关联之前的资源的预留,努力使验证和切换的时间压缩到最小程度。4.1.2802.11r快速切换协议802.11r快速切换协议包括发现(Discovery)、资源确认和配置(ResourceAllocation)和快速切换(FastBSSTransition)三个阶段。发现阶段是指当STA发生切换之前,应该通过扫描其他的无线信道,发现候选切换的AP,以决定候选目标AP的过程。如果STA当前连接支持的业务需要一定的资源,那么候选的目标AP应该能够具备一定的资源,以支持此业务的切换。在IEEE802.11e的关联过程中,支持IEEE802.11e的QSTA与目标AP发生关联,然后进行资源确认和预留。此关联过程势必大大增加切换的时间,而且不能保证目标AP满足业务所需的资源要求,可能引起再一次的切换。在FBT网络中,资源确认和配置阶段是指当STA发生切换时,在与新AP发生关联之前就应该与新AP进行通信以确保目标AP具备所需的各类资源的过程。快速切换阶段是指STA一旦确定了目标AP,与原AP断开连接并与新AP建立连接的过程。RSN中的快速切换过程包括建立新信道的无线连接与新AP建立关联,接着是认证过程(也可以在关联之前实现预认证),然后是密钥管理阶段,最后是确认其他的一些连接参数,例如QoS参数。在RSN中,由802.1x认证引入的时延可以通过PMK(PairwiseMasterKey)的缓存和预认证来降低。当STA在与新AP关联之前或者预认证阶段缓存了安全关联,STA与新AP关联时无需再进行重新认证,但是还需要通过802.11i规定的4步握手协议实现密钥的管理和分发。STA可以在当前AP、DS与新AP实现关联之前的预认证过程中,建立PMK安全关联SA,然后在与新AP的关联或者重关联阶段中通过PMKID得到已经缓存的PMK。在与AAA服务器进行EAP认证时,AAA服务器向AP返回认证有效存活时间参数,例如RADIUS服务器和Diameter服务器返回的Session-Timeout属性。PMK作为认证的结果,AAA服务器的存活时间作为PMK的存活时间。AP为了保持业务的连续性应该在存活时间之内发起重新认证过程。在以前的RSN安全关联中,AP并不告诉STA有关PMK的超时信息,因此当STA利用PMKID试图发起重关联时,发现AP可能因PMK超时而不接收重关联,导致需要完整的认证过程。因此,为了实现快速切换也无法采用RSN中的重关联过程。FBT网络通过定义新的密钥管理协议用于减少动态密钥分发带来的时延,通过告知PMKSA的存活时间,STA可以选择合适的PMK作为密钥,以判断是否能够采用预密钥或者需要进行预认证过程。802.11r定义了两种切换方式实现快速切换:(1)基本方式(BasicMechanism),即在重关联阶段进行资源的分配和其他所需信息的交互。这种方式适用于AP工作在轻载状态,并且通过Beacon/Probe响应消息获得目标AP的资源状况的场合。在支持IEEE802.11e的QoS网络中,AP通过Beacon/Probe响应消息中的QBSSIE(信息元素)进行能力告知。QBSSIE包括3个字段,分别是已经关联的STA数、BSS信道使用情况和允许的接入能力。(2)预先保留资源方式(Pre-ReservationMechanism),指在重关联阶段之前预先进行资源确认和分配。这种机制适用于DS架构变化缓慢或者希望通过明确的资源保留来确保的业务QoS的场合。图4-1是一个典型的快速切换拓扑结构,包括多个目标AP、DS和认证服务器。假设DS是安全的,即AP之间的通信是安全的。STA已经与AP1进行连接,上面有多个QoS业务流。在此拓扑中,STA发生切换时,AP2和AP3作为候选的目标AP可以切换。设STA通过扫描或者其它的办法确定最佳的目标AP为AP2,则STA可以通过两种途径向目标AP发起资源请求(ResourceRequest):一种是STA暂时断开当前的无线信道,通过其它的无线信道与目标AP2进行通信;另一种是STA通过当前的AP1转发STA的资源请求与目标AP2进行通信。无论哪种方式,STA和目标AP之间都是通过RRSAP(ResourceRequestServiceAccessPoint)模块进行资源配置。第四章无线局域网快速切换安全协议3图4-1快速切换典型拓扑示意图图4-2通过无线方式实现资源请求功能图从图4-2可以看出,STA上的RRSAP产生资源请求消息,AP上的RRSAP接收和处理来自STA的资源请求,并且响应STA的资源请求。从图4-3可以看出,STA的RRSAP与当前AP的代理功能(Brokerfunction)模块进行资源请求与响应,STA发送对目标AP的资源请求消息,当前AP的代理功能模块向目标AP转发资源请求,目标AP接收资源请求。代理功能模块可以按转发策略实现资源请求消息的转发,限制STA发起的资源请求数或者能够同时保留资源的AP数。STA可以选择在切换之前在目标AP上保留资源,如果提前在目标AP上保留了资源,那么此资源在目标AP上的保存将持续一段时间,STA应该在此时间内完成切换过程。图4-3通过DS方式实现资源请求功能图802.11r通过定义一个RIC(ResourceInformationContainer,资源信息存储器)提供资源的保留机制。STA发起的资源请求消息中应该包括各种强制的和可选的资源。对支持RSN的网络,FBT定义了一种在STA与目标AP之间的预密钥或者资源预留机制,定义了新的4无线局域网安全体系结构802.11的认证消息用来允许客户端在重关联或关联之前发起握手消息生成PTK。4.1.3802.11r快速切换流程802.11r对快速切换功能的支持可以通过扩展的IE(信息元素)中的能力比特位进行指示。在802.11r中单独定义了快速切换IE(快速切换信息元素),其中包括2个附加的IE,一个用于QoS参数(TRIE),另一个用于安全参数(TSIE)。可以通过在Beason/Probe响应消息中包括的所有的IE进行能力交互。802.11r定义了新的802.11认证流程,允许支持快速切换的STA发起快速切换认证请求。802.11r定义了3类帧格式用于快速切换。第一类是快速切换Authenticationframe(认证帧),包括1thframe、2thframe、3thframe和4thframe共4种帧。其中1thframe是快速切换认证请求帧,由STA发往目标AP,2thframe是目标AP对STA的认证请求的响应帧。这两个帧用于AP和STA各自交换ANonce和SNonce,用于产生PTK。如果是非RSN,则这两个帧等同于802.11中的OpenAuthentication帧。3thframe和4thframe分别是802.11认证确认帧和802.11认证ACK帧,用在预先资源保留方式中的PTK生存时间交互和对资源进行提前保留。第二类是快速切换Reassociationframe(重关联帧),包括重关联请求帧和重关联响应帧。第三类是快速切换ActionFrame,包括FTRequestframe(快速切换请求帧)、FTResponseframe(快速切换响应帧)、FTConfirmframe(快速切换确认帧)和FTACKframe(快速切换响应帧)。快速切换ActionFrame用在当前AP和目标AP之间,表明通过DS方式实现资源请求的消息交互。基于基本方式的快速切换流程如图4-4所示。基本方式不需要提前保留资源,流程简化了为建立8