zoukankan      html  css  js  c++  java
  • (六)STA接入过程

    转自http://support.huawei.com/ecommunity/bbs/10232527.html

    主顾STA找镖局托镖,具体过程有三:

    其一、寻找到满意的镖师AP(扫描:用于STA发现无线网络);

    其二、向镖师出示自己的托镖资格(链路认证:STA和AP间无线链路的认证过程,通过了这个认证,才表示STA有资格和AP建立无线链路);

    其三、签订托镖协议(关联:确定STA有资格和AP建立无线链路后,STA还需要与AP协商无线链路的服务参数,才能完成无线链路的建立)。

    本文以STA找镖局托镖的流程来喻指STA接入过程,托镖则指数据传输。这里我们说的STA接入过程,包括三个阶段:扫描链路认证关联

    完成了这三个阶段后,STA就连接上了AP。后续STA还要根据实际情况,来决定STA是获取IP地址后就可以接入网络,还是需要再进行各种接入认证和密钥协商后才能接入网络(图中是以Portal认证的流程为例,获取IP是在接入认证之前,不同的认证方式获取IP的顺序可能不一样,例如MAC认证,获取IP是在接入认证之后进行的)。

    Ps:接入认证和密钥协商不是一定要进行的,在STA关联阶段,STA会根据收到的关联回应报文来决定是否需要进行接入认证和密钥协商。具体会在后面的关联阶段描述。但在实际的应用中,考虑到无线网络的安全性,通常都会选择进行接入认证和密钥协商的。

    第一阶段:扫描

    主顾STA在托镖之前,首先要找到自己满意的镖师。因为镖局为适应市场需求,在不同区域安排有不同的镖师负责业务,而主顾可能会在不同的区域中移动,因此主顾就需要及时的了解到当前有哪些镖师可以雇佣。主顾找到可雇佣镖师的过程,用行话来说就是扫描。主顾可以主动的去寻找镖师,也可以被动的等待镖师推送给你的服务信息。

    联系到平时我们使用手机连接Wi-Fi之前,通常都是要先看看当前手机上能搜索到哪些无线信号,然后再选中一个网络接入。图中是手机搜索到的无线网络,里面的那一串串字母是啥?对了,就是我们之前介绍过的SSID,也就是每个无线网络的标志。而我们就是通过点击其中的一个想要连接的SSID来进行联网的。

    其实在这里就体现了一个信息,要想连接无线网络,就需要先搜索到无线网络。STA搜索无线网络的过程就叫做扫描。当然现在很多手机在开启Wi-Fi连接功能的时候,如果以前连接的网络能够连上,会自动就连接以前的网络,这是手机软件为简化用户的操作而设计的功能,并不是说手机就不用再进行扫描过程了。实际上扫描过程是手机等这类STA自动进行的过程,我们在使用的时候,看到的已经是扫描到的结果了。

    扫描分为两类:主动扫描和被动扫描。正如字面的含义,主动扫描是指STA主动去探测搜索无线网络,而被动扫描则是指STA只会被动的接收AP发送的无线信号。具体过程请看下文描述。

    主动扫描

    主动寻找镖师的过程中,主顾STA会在其力所能及的范围内,主动去寻找都有哪些镖师可以帮忙押镖。现在STA已经前往镖局,寻找所有能提供服务的镖师。进入镖局后,STA找了个稍高的位置站好,喊了一嗓子,“有镖师可以帮忙托镖没,这有一宗大买卖”,也许是大买卖三个字引起了众镖师的关注,几乎是最短的时间内,所有的镖师的回应了STA的请求。一般按照龙门镖局的规范要求,所有在位的镖师都要回应主顾的需求,为的就是能够让主顾能够完整的获取到镖师的信息,为主顾提供更多的选择。而STA现在需要做的就是从中选择一个最中意的镖师。

    主动扫描情况下,STA会主动在其所支持的信道上依次发送探测信号,用于探测周围存在的无线网络,STA发送的探测信号称为探测请求帧(Probe Request)。探测请求帧又可以分为两类,一类是未指定任何SSID,一类是指定了SSID的。

    1、探测请求帧里面如果没有指定SSID,就是意味着这个探测请求想要获取到周围所有能够获取到的无线网络信号。所有收到这个广播探测请求帧的AP都会回应STA,并表明自己的SSID是什么,这样STA就能够搜索到周围的所有无线网络了。(注意如果AP的无线网络中配置了Beacon帧中隐藏SSID的功能,此时AP是不会回应STA的广播型探测请求帧的,STA也就无法通过这种方式获取到SSID信息。)

    有时候STA发现热情的镖师实在是太多了,为了能够迅速找到想要雇佣的镖师,STA会直接喊出镖师的名字,这样其他的镖师自然不会再来打扰,而只有被点名的镖师才会找上前来,与主顾沟通交流。

    2、探测请求帧中指定了SSID,这就表示STA只想找到特定的SSID,不需要除指定SSID之外的其它无线网络。AP收到了请求帧后,只有发现请求帧中的SSID和自己的SSID是相同的情况下,才会回应STA。

    被动扫描

    除了通过主动去镖局的方式寻找镖师外,镖师也会定期发送信息或传单来告诉主顾们这里有镖师可以提供押镖服务。通过这些主动送上门的信息或传单上的联系方式,STA也能找到可以雇佣的镖师。这样做的好处当然就是让主顾更加的省力省事了。

    被动扫描情况下,STA是不会主动发送探测请求报文的,它要做的就只是被动的接收AP定期发送的信标帧(Beacon帧)。

    AP的Beacon帧中,会包含有AP的SSID和支持速率等等信息,AP会定期的向外广播发送Beacon帧。例如AP发送Beacon帧的默认周期为100ms,即AP每100ms都会广播发送一次Beacon帧。STA就是通过在其支持的每个信道上侦听Beacon帧,来获知周围存在的无线网络。(注意如果无线网络中配置了Beacon帧中隐藏SSID的功能,此时AP发送的Beacon帧中携带的SSID是空字符串,这样STA是无法从Beacon帧中获取到SSID信息的。)

    STA是通过主动扫描还是被动扫描来搜索无线信号呢?这完全是由STA的支持情况来决定的。手机或电脑的无线网卡,一般来说这两种扫描方式都会支持。无论是主动扫描还是被动扫描探测到的无线网络都会显示在手机或电脑的网络连接中,供使用者选择接入。而一般VoIP语音终端通常会使用被动扫描方式,其目的是可以节省电量。

    当手机扫描到无线网络信号后,我们就可以选择接入哪个网络了,这时STA就需要进入链路认证阶段了。

    第二阶段:链路认证

    当STA找到满意的镖师后,并不能够直接就让镖师押送货物,而是需要先通过镖师的认证,验证STA的合法资格后才能签订押镖协议,避免不合法或恶意的STA进行不可告人的活动。

    龙门镖局为主顾们提供了好几种服务套餐(安全策略),每种服务套餐都会包含有不同的方式来验证STA的合法资格。但总的来说验证STA资格的方式分有两种:开放系统认证和共享密钥认证。

    STA和AP之间是通过无线链路进行连接的,在建立这个链路的过程中,需要要求STA通过无线链路的认证,只有通过认证后才能进行STA和AP之间的无线关联。但此时尚不能判断,STA是否有接入无线网络的权限,需要根据后续STA是否要进行接入认证、是否通过接入认证才能判断。

    一说到认证,可能大家就会想到802.1X认证、PSK认证、Open认证等等一堆的认证方式。那这些认证方式和链路认证有什么关系呢?在解决这个问题前,我们先来简单的了解下安全策略。

    安全策略体现的是一整套的安全机制,它包括无线链路建立时的链路认证方式,无线用户上线时的用户接入认证方式和无线用户传输数据业务时的数据加密方式。如同下表中,列举出来几种安全策略所对应的链路认证、接入认证和数据加密的方式。

    安全策略

    链路认证方式

    接入认证方式

    数据加密方式

    说明

    WEP

    Open

    不涉及

    不加密或WEP加密

    不安全的安全策略

    Shared-key Authentication

    不涉及

    WEP加密

    仍然是不安全的安全策略

    WPA/WPA2-802.1X

    Open

    802.1X(EAP)

    TKIP或CCMP

    安全性高的安全策略,适用于大型企业。

    WPA/WPA2-PSK

    Open

    PSK

    TKIP或CCMP

    安全性高的安全策略,适用于中小型企业或家庭用户。

    WAPI-CERT

    Open

    预共享密钥鉴别

    SMS4

    国产货,应用的少,适用于大型企业和运营商。

    WAPI-PSK

    Open

    WAPI证书鉴别

    SMS4

    国产货,应用的少,适用于小型企业和家庭用户

    这里再配合下面这张图一起理解下。链路认证和接入认证是先后两个不同阶段的认证

    从表中可以看出,安全策略可分为WEP、WPA、WPA2和WAPI几种,这几种安全策略对应的链路认证其实只有Open和Shared-key Authentication两种,而802.1X和PSK则是属于接入认证方式。另外用户接入认证方式其实还包括表中未列出的MAC认证和Portal认证。

    (Ps:更多的安全策略、MAC认证和Portal认证的内容,可以参考WLAN安全特性和安全特性的特性描述。)

    现在回到我们的主题上来,链路认证包括Open和Shared-key Authentication,具体认证过程是怎么样的呢?

    开放系统认证(Open System Authentication)

    为加快镖师处理业务的速度能力,龙门镖局使用了一种叫做开放系统认证的方式来检查主顾的合法资格,只要主顾有托镖请求,镖师都会直接同意。当然这样做会存在安全隐患,让不合法的主顾有机可趁,所以为了提高镖局的安全保障,通常配合这套认证方式,会在后面的托镖流程中再进行一次严格的方式来专门检查主顾的合法资格。

    开放系统认证简称就是Open认证,又叫不认证。但是要注意,不认证也是一种认证方式,只不过这种链路认证方式下,只要有STA发送认证请求,AP都会允许其认证成功,是一种不安全的认证方式,所以实际使用中这种链路认证方式通常会和其它的接入认证方式结合使用,以提高安全性。

    共享密钥认证(Shared-key Authentication)

    另一种方式叫共享密钥认证,需要主顾和镖师间先确定好一个暗语,主顾发出托镖请求后,镖师会用暗语的方式验证主顾的身份合法性。通过了认证会给主顾办理托镖业务。

    看到共享密钥认证,从名称上很容易就让人联想到预共享密钥认证PSK(Pre-shared key Authentication),其实共享密钥认证是一种链路认证方式,而预共享密钥认证是一种用户接入认证方式,两种认证方式的过程实际上是类似的。

    共享密钥认证的过程只有四个步骤,在认证前,需要在STA和AP上都配置相同的密钥,否则是不能认证成功的。

    认证的第一步,是由STA向AP发送一个认证请求。

    接着,AP在收到请求后会生成一个挑战短语,再将这个挑战短语发送给STA,假设这个挑战短语是A。

    然后,STA会用自己的密钥Key将挑战短语进行加密,加密后再发给AP,假设加密后变为了B。

    最后,AP收到STA的加密后信息B,用自己的密钥Key进行解密。只要STA和AP上的密钥配置的一致,解密出来的结果就会是A,AP会将这个结果与最开始发给STA的挑战短语进行对比,发现结果一致,则告知STA认证成功,结果不一致则就会认证失败。

    链路认证成功后,STA就可以进行下一步的关联阶段了。

    第三阶段:关联

    验证完了主顾的合法资格后,镖师将主顾请到会客室,准备签订托镖协议。STA将准备好的各类协议材料提交给镖师,然后镖师会把这些材料递交给镖头,由现任的镖头AC来审核签订协议。审核签订完成后,镖师再把镖头的审核签订结果递交给主顾。至此,STA完成了托镖的流程。

    关联总是由STA发起的,实际上关联就是STA和AP间无线链路服务协商的过程。

    关联阶段也是一个只有关联请求和回应的两步的过程。

    STA在发送的关联请求帧中,会包含一些信息,包括STA自身的各种参数,以及根据服务配置选择的各种参数。(主要包括STA支持的速率、信道、QoS的能力,以及选择的接入认证和加密算法等等。)如果是FAT AP收到了STA的关联请求,那么FAT AP会直接判断STA后续是否要进行接入认证并回应STA;如果是FIT AP接收到了STA的关联请求,FIT AP要负责将请求报文进行CAPWAP封装后发送给AC,由AC进行判断处理,并且FIT AP还要负责将AC的处理结果解CAPWAP封装后再发送给STA。(在这个过程中FIT AP起到一个传话筒的作用,且AP和AP间的这类关联报文需要通过CAPWAP隧道传输。)

    托镖协议签订完成后,根据主顾选择的服务套餐,后续会有不同的托镖流程。例如,主顾选择的是WEP安全策略的服务套餐(例如Open+不加密),这种情况下,协议签订完成后,STA获取一个临时联系方式(获取IP地址),就可以通过镖局发镖了。如果主顾选择的是WPA安全策略的服务套餐(例如Open+802.1X+CCMP),协议签订完成后,用户获取联系方式后,还需要进行一轮新的身份权限认证(802.1X认证)和密钥协商,成功后才能通过镖局发镖。

    关联完成后,表明STA和AP间已经建立好了无线链路,如果没有配置接入认证,STA在获取到IP地址后就可以进行无线网络的访问了。如果配置了接入认证的,STA还需要完成接入认证、密钥协商等阶段才能进行网络访问。(如果接入认证失败,仅可以访问Guest VLAN中的网络资源或Portal认证界面。)

    其它阶段

    如前面链路认证阶段所述,接入认证包括802.1X认证、PSK认证、MAC认证以及Portal认证。通过这些认证方式可以实现了对用户身份的认证,提高了网络的安全性,而密钥协商是对用户数据安全提供保障。完成接入认证和密钥协商后,就可以进行网络访问了。限于本期的重点,详细的内容不加以描述,有兴趣了解这方面内容,可以参考WLAN安全和安全的特性描述。

  • 相关阅读:
    我在面试中碰到的面试题
    JavaScript中数组去重的几种方法整理
    html网页外框布局设计总结
    css+Jquery实现抽拉式导航条和页面内容适应
    jquery不能实现对dom元素的伪类元素样式进行操作
    css的文字颜色渐变
    javascript函数立即调用
    javascript闭包
    js异步原理
    关于浏览器兼容问题
  • 原文地址:https://www.cnblogs.com/santiaoa/p/5784306.html
Copyright © 2011-2022 走看看