在之前TR-069中出现了很多WiFi有关节点,其中一些节点的含义一直没搞得那么清楚,正好趁这个机会来厘清一下。
WiFi基础术语
-
LAN
LAN: 即局域网(Local Area Network),是路由和主机组成的内部局域网,一般为有线网络。
-
WAN
WAN: 即广域网(Wide Area Network),是外部一个更大的局域网。
-
WLAN
WLAN ( Wireless LAN ,即无线局域网): 前面我们说过 LAN 是局域网,其实大多数指有线网络中的局域网,无线网络中的局域网,一般用 WLAN 。
-
AP
AP ( Access point 的简称,即访问点,接入点): 是一个无线网络中的特殊节点。
通过这个节点,无线网络中的其它类型节点可以和无线网络外部以及内部进行通信。这里, AP 和无线路由都在一台设备上(FAT AP )。 -
Station
Station (工作站): 表示连接到无线网络中的设备,这些设备通过 AP ,可以和内部其它设备或者无线网络外部通信。
-
Assosiate
Assosiate: 连接。如果一个 Station 想要加入到无线网络中,需要和这个无线网络中的 AP 关联(即 Assosiate )。
-
SSID
SSID: Service Set Identifier,用来标识一个无线网络,后面会详细介绍,我们这里只需了解,每个无线网络都有它自己的 SSID 。
-
BSSID
BSSID: 用来标识一个 BSS ,其格式和 MAC 地址一样,是 48 位的地址格式。
一般来说,它就是所处的无线接入点的 MAC 地址。某种程度来说,它的作用和 SSID 类似,但是 SSID 是网络的名字,是给人看的, BSSID 是给机器看的, BSSID 类似 MAC 地址。 -
BSS
BSS ( Basic Service Set ): 由一组相互通信的工作站组成,是 802.11 无线网络的基本组件。
主要有两种类型的 IBSS 和基础结构型网络。 IBSS 又叫 ADHOC ,组网是临时的,通信方式为 Station<->Station ,这里不关注这种组网方式;我们关注的基础结构形网络,其通信方式是 Station<->AP<->Station ,也就是所有无线网络中的设备要想通信,都得经过 AP 。在无线网络的基础形网络中,最重要的两类设备: AP 和 Station 。 -
DS
DS ( Distributed System ): 即分布式系统。
分布式系统属于 802.11 逻辑组件,负责将帧转发至目的地址, 802.11 并未规定其技术细节,大多数商业产品以桥接引擎合分步式系统媒介共同构成分布式系统。分步式系统是接入点之间转发帧的骨干网络,一般是以太网。其实,骨干网络并不是分步系统的全部,而是其媒介。主要有三点:(1)骨干网(例如以太网)、(2)桥接器(具有有线无线两个网络接口的接入点包含它)、(3)属于骨干网上的接入点。
所管辖的基础性网络的 station 通信(和外界或者 BSS 内部的 station )必须经过 DS 、而外部路由只知道 station 的 mac 地址,所以也需要通过分布式系统才能知道 station 的具体位置并且正确送到。
分步式系统中的接入点之间必须相互传递与之关联的工作站的信息,这样整个分步式系统才能知道哪个 station 和哪个 ap 关联,保证分步式系统正常工作(即转达给正确的 station )。
分步式系统也可以是使用无线媒介( WDS ),不一定一定是以太网。
总之,分步式系统骨干网络(例如以太网)做为媒介,连接各个接入点,每个接入点与其内的 station 可构成 BSS ,各个接入点中的桥接控制器有到达骨干网络和其内部 BSS 无线网的接口(类似两个 MAC 地址), station 通信需要通过分布式系统。 -
MAC
MAC (即 Medium/MediaAccess Control , 介质访问控制),是数据链路层的一部分。 MAC 地址是烧录在 NetworkInterfaceCard (即网卡,简称 NIC )里的,它也叫硬件地址,是由 48 位(即 bit ,一字节为8位,即 1byte=8bits ) 16进制的数字组成。其中 0-23 位叫做组织唯一标志符( organizationally unique ,简称 OUI ),是识别 LAN (局域网)节点的标识(在有些抓包工具抓包的时候会将前三个字节映射成某种组织名称的字符,也可以选择不显示这种映射)。 24-47 位是由厂家自己分配。
-
SSID
表示一个子网的名字,无线路由通过这个名字可以为其它设备标识这个无线路由的子网。设备进行扫描的时候,就会将相应 SSID 扫描到,然后就能够选择相应的 SSID 连接到相应的无线网络(当然不扫描,理论上也可以直接指定自己事先已经知道的 ssid 进行连接)。 SSID 可以和其它的重复,这样扫描的时候会看到两个同样 SSID 的无线网络,其实这一般用于将一个无线网络扩大的情况(毕竟无线路由器无线信号的覆盖范围是有线的):当想要扩大一个无线网络(即 SSID 固定)的范围的时候,可以给多个路由设置相同的 SSID 来达到这个目的。(这也是漫游的原理,漫游的时候,我们可以在远方或者本地都能够打电话,也就是访问移动通信网络)。
SSID 和 BSSID 不一定一一对应,一个 BSSID 在不同的 Channel 上面可能会对应到多个 SSID ,但是它们在一个 Channel 是一一对应的;另外,漫游的时候,虽然 SSID 不变,但是 BSSID 一定是会变化的。我们经常可以看到实际数据包中的 AP 的 MAC 地址和 BSSID 只差几位,其实实际设备的 MAC 地址可能只有一个,和 BSSID 没什么对应关系。在一个包含了路由功能和 AP 功能的无线路由器( Fat AP )上面,很可能是:路由器有两个 MAC 地址,一个用于外网( WAN ),一个用于内网( WLAN 和 LAN ),一般路由器上面或者配置路由器的网页上面只标注外网的 MAC 地址;内网的 MAC 地址和外网 MAC 地址一般只有几位不同(甚至连续,也有些相差很多的例外)。 -
Band (频率范围)
一般 ap 可以支持 5g 或 2.4g 两个频率范围段的无线信号。如果两者同时可以设置,而不是互斥那么,这个路由器还能够同时支持两种频段(频段即 Band ),这相当于这个 ap 可建立两个无线网络,它们采用不同的频段(这类似收音机在长波范围内收音和短波范围内收音)。
-
Channel (信道)
Channel 是对频段的进一步划分(将 5G 或者 2.4G 的频段范围再划分为几个小的频段,每个频段称作一个 Channel ),有 5.18GHZ , Auto ( DFS )等等,处于不同传输信道上面的数据,如果信道覆盖范围没有重叠,那么不会相互干扰。对于信道的使用,在国际上有所规定。其中有些信道是无需授权即可直接使用的(究竟是那个频段的那个信道,依照各个国家而不同),无需授权使用的意思是,传输数据的时候(无论以哪种无线方式),可以让设备收发的功率导致传输时的数据进入该信道的频率并在该信道所在频段宽度内进行传输;授权的使用的意思是,不允许传输时使用授权信道进行,否则会违反规定,并且干扰该信道上其他数据的传输。另外,除了 wifi ,微波、红外线、蓝牙(使用 802.15 协议)的工作频段也都有在 2.4gHZ 范围内的,所以,它们传输的时候会对 wifi 传输造成干扰,因为两者在不同的协议下进行通信,所以互相将对方传输的信号识别为噪声。 有时候配置 AP 的时候, Channel 中有一个类似 Auto 的选项值,这表示打开 AP 的时候, AP 自己 Scan 周围的环境,选择一个干扰最小的 Channel 来进行通信,当选择好了一个 Channel 的时候,一般就不会改变了。
-
Channel Width (信道宽度)
这里的 Channel Width 是信道的带宽,有 20M HZ 、 40M HZ 等,它表示一个 Channel 片段的宽度(假设 5g 的频段宽度总共为 100M ,平均划分为互不干扰的 10 个 Channel ,那么每个 Channel 的 Channel Width 就为 100M/10=10M ,实际 Channel 并不一定是完全不重叠的)。这个参数可能依赖于一些其它的选项,例如不是 802.11N 的协议,就可能不会有 40M HZ 的 Channel Width (N模式有一个特点就是可以把两个 Channel 合并,通过提高 ChannelWidth 来提高吞吐量)。例如选择了 20M HZ 这个 Channel Width 之后,后面再选择一个 5.18GHZ 的 Channel ,则表示以 5.18GHZ 为中心的前 10M HZ 以及其后面的 10M HZ 频带范围被占用。
至此可知,配置无线 AP 的时候,如果屋子里面有很多的 AP (也就是无线路由接入点)的话,仔细设置它们的 Channel Width 和 Channel 可以保证它们相互之间的干扰(类似收音机里面的串台)尽可能小。当然,如果相互干扰了,那么 Net Mode 所指定的协议也会有相应的处理方式让他们之间进行协调(例如让谁先通信谁等一会再通信之类的),但是这样网络的性能就不如没有干扰的时候好了。 -
Wireless Security (无线网络的安全性)
Wireless Security这里主要涉及 WEP 、 WPA 、 WPA2 和 RC4 、 TKIP 、 AES 。
IEEE 802.11 所制定的是技术性标准 , Wi-Fi 联盟所制定的是商业化标准 , 而 Wi-Fi 所制定的商业化标准基本上也都符合 IEEE 所制定的技术性标准。 WEP 是1999年9月通过的 IEEE 802.11 标准的一部分; WPA ( Wi-Fi Protected Access ) 事实上就是由 Wi-Fi 联盟所制定的安全性标准 , 这个商业化标准存在的目的就是为了要支持 IEEE 802.11i 这个以技术为导向的安全性标准;而 WPA2 其实就是 WPA 的第二个版本。直观点说, WEP 是较老的认证方法它有好几个弱点,因此在2003年被 WPA 淘汰, WPA 又在2004年由完整的 IEEE 802.11i 标准(又称为 WPA2 )所取代。 -
WEP
WEP ( Wired Equivalent Privacy ),采用名为 RC4 的 RSA 加密技术; WPA ( Wi-Fi Protected Access ) ,采用新的 TKIP 算法, TKIP 算法保留了 RC4 所以也有其弱点,但是这个时候更好的 CCMP 还没完成,所以先在 WPA 上用 TKIP 技术; WPA2 是 WPA 的第2个版本,采用 CCMP 加密协定(在有些路由器等设备上设定加密协定或者加密算法的时候,可能会用类似 AES 之类的字眼替代 CCMP )。所以 WPA2+AES 是安全性最强的。
另外,在有些无线网路设备的参数中会看到像 WPA-Enterprise/WPA2-Enterprise 以及 WPA-Personal/WPA2-Personal 的字眼 , 其实 WPA-Enterprise / WPA2-Enterprise 就是 WPA/WPA2 ; WPA-Personal/WPA2-Personal 其实就是 WPA-PSK/WPA2-PSK, 也就是以 pre-share key 或 passphrase 的验证 (authentication) 模式来代替 IEEE 802.1X/EAP 的验证模式 , PSK 模式下不须使用验证服务器 ( 例如 RADIUS Server), 所以特别适合家用或 SOHO 的使用者。
还有, wep 是旧的加密方式,工作于 802.11B/G 模式下而 802.11N 草案并不支持此加密方式,所以如果 802.11N 的设备采用 wep 加密方式后,它也只会工作在 802.11b/g 模式下, N 的性能发挥不出来。
实际中,在有些路由器上面,设置的时候,可能不是严格按照这个规定来设置的(例如设定了采用 WPA 方式,还可以选择 AES ),但是大体一样。 -
Region (区域)
一般在无线网络中的 AP 上都有一个参数,表明它是处于哪个 Region (地区)。 Station 根据 AP 中设置的 Region 调整其相应的发射功率以遵守该地区的规定。 AP 的调整过程一般都是手动设定,设置好 AP 所处的 Region 之后,这些信息就会在 AP 发送的 Beacon 帧(后面会说到)中包含了;通过这个 AP 连接到无线网络上的 Station ,从 Beacon 帧中了解到这些 Region 信息,并且根据这些信息中的规定和 AP 进行通信。如果 AP 开始设置错了,那么 Station 和 AP 通信的时候,采用的将会是不符合 Region 规定的频段,可能会对该 Region 中的其它传输网络造成干扰,这应当是“非法”的。
-
Transmission Rate
设置传输速率。这里采用不同的无线网络传输协议( 802.11a , 802.11b , 802.11g 等),那么可以设置的速率范围有所不同,这里的速度是指理论的速度,实际中,由于各种干扰因素,传输的速率可能会比设置的小。
一般而言,在无线网络中,对于某种协议的性能进行描述时,我们需要注意的是,描述时提到的传输速率( Datarate )和吞吐量( Throughput )是不同的。 Datarate 是理论上面最大数据传输速率,而 Throughput 是数据的实际最大吞吐量。因为厂家以及传输时所使用的协议等各种因素造成的开销,会导致实际吞吐量比理论吞吐量要小,一般实际最大吞吐为理论最大的 50% 左右(一个不太准确但是相对直观的估计:在网络中,高清视频所需的 Throughput 也就 30mbps 左右,网络上一般的视频也就 4mbps 左右)。 -
Qos (质量保证)
无线网络中的 QOS 是质量保证,大致的意思是,传输数据的时候,考虑各种因素(例如收费策略,所处地区等),以一定的优先级来保证传输的特定要求(一般就是速度),如果带宽足够的话, QOS 反而不需要了。
-
RTS Threshold/CTS Protection Mode
这里的 RTS 是 Request-To-Send 的简写, CTS 是 Clear-To-Send 的简写。设置好 RTS 的阈值之后,如果超过这个阈值就会在发送信息之前先发送 RTS ,以减少干扰,相应的 CTS 会回应之前的 RTS 。一般都是 AP 发送 CTS 数据,而 Station 发送 RTS 数据。
这里对 RTS 和 CTS 做一个简单解释:假设在同一个 AP 所覆盖的无线网络范围内的两个 Station A和B,它们之间可能会因为距离的原因互相不可见(例如它们在 AP 网络范围的两端,而这两端的距离大于两者的信号覆盖范围),但是 AP 却知道它们是在自己的范围内。当一个A想要在 AP 的网络中进行通信的时候,必定要经过 AP 转发它的信息,由于A不知道B的存在,所以如果同时B也通过 AP 进行网络通信,那么会出现 AP 同时收到A、B两个 Station 的通信请求,而这在无线网络中是不允许的(无线网络中,同一时刻不能有多个人传输数据)。在这种情况下,B和A互相干扰了对方的通信,但是却互相不可见(不可见的节点互相被称作隐藏节点)。如果在一个网络中,这样的隐藏节点很多,那么势必会影响网络的性能(因为数据一旦发送失败,就要重传,隐藏节点会导致重传的机率增大)。这个时候,可采用 RTS 和 CTS 机制。即:在A想要通信的时候,先广播发送 RTS 给 AP ,告诉 AP “它想要通信”,同时接受到 RTS 的别的 Station (它们对发送 RTS 的 Station 而言可见)会知道A将要发送数据,于是它们不会发送数据以免干扰A; AP 收到 RTS 之后,会广播发送 CTS ,告诉所有在 AP 范围内的 Station (包括对A而言的隐藏节点B)”A将要通信(同时也相当于告诉A,A可以无干扰的发送信息了)”,这样对A而言的隐藏节点B也知道有一个A的存在并且要发送信息了,于是B就不会干扰A了。 这里,A和B两者可以在不同的网络上,也就是说,不同网络的工作站之间也可以通过 RTS/CTS 来清除相互的干扰。 -
Beacon Interval
表示无线路由定期广播其 SSID 的时间间隔。这个一般不会特别设置,就采用默认值即可。如果不广播了,那么 Station 端扫描的时候可能会发现不定期广播的 AP 对应的 SSID 的网络不见了,所以可能会断开连接。这里定期广播,表示 AP 会定时向其范围内广播 SSID 的信息,以表示 AP 的存在,这样 Station 进入一个区域之后,就能够通过扫描知道这个区域是否有 AP 的存在。当然,除了 AP 广播 SSID 以告知其无线网络存在之外, Station 也可主动广播探寻包,在其能够覆盖的范围内询问是否有 AP 存在(即我们通常所说的扫描寻找接入点)。
-
DTIM Interval
DTIM/TIM 表示告诉 Station , AP 在为 Station 做 package buffer (例如 Station 睡眠的时候)的缓存时间。为了节省电池使用时间,处于无线网络中的 Station 可能会在一定时间之后自动进入休眠状态。这个时候, AP 会为这个 Station 缓存发送给它的数据,而处于休眠状态的 Station 只会在一定时间间隔内给 AP 发送一个数据帧,以确认是否有发送给自己的数据存在。例如,当我们在主机上 ping 另外一台睡眠的机器的时候,收到另外一台机器响应的时间,要比它不睡眠的时候响应的时间长很多。
-
Fragmentation Threshold
表示一个 package 的分片阈值。我们可以设置分片大小,当发送的数据包超过这个阈值之后, 802.11 协议会自动对这个数据包进行分割。如果设置的这个分片值越小,那么整个数据包越容易传输成功(因为如果出错,那么只需要传送一个片段而不是整个包,无线 wifi 网络中数据传输时出错的概率比有线的以太网要大的多的多),当然开销也越大(因为需要额外的信息标记每个分片,以及各个分片传输成功之后涉及到的重组问题)。