来自Wi-Fi专家的声音

 

蓝牙的话题(3)

撰写于:2012年11月27日
作者:silex Wi-Fi专家

蓝牙+HS是蓝牙3.0新追加的“超高速模式”。这次我想介绍几个关于+HS的故事。

所谓蓝牙+HS
我记得蓝牙3.0的标准制定于2005年左右。其中一个论点是高速化。蓝牙2.0导入了高速模式EDR (3Mbps),“是以前的3倍!”毕竟是WiFi 802.11b (11Mbps)的1/3以下,而且当时WiFi是802.11g (54Mbps)的普及期,也就是所谓的“draft 11n”可支持100Mbps的产品也开始出货了。

蓝牙以高速化为目标的理由,不仅是对WiFi阵营性能提高的危机感,也可以看出是为了适应当时发展迅速的便携音乐播放器。便携式音乐播放器的存储容量已经达到G字节的单位,能够播放视频的机型也逐渐出现。对于处理巨大信息量的新一代便携信息设备来说,BDR的1Mbps自不必说,EDR的3Mbps也完全不够用,必须实现巨大的高速化。
关于这个问题,我不知道蓝牙SIG内部进行了怎样的讨论,他们并没有重新开发自己的高速无线技术,而是使用现有的(其他规格的)高速无线技术,我们决定以“劫持”蓝牙堆栈的方式提高速度。那就是+HS (High Speed)规格。

上次也说过,“蓝牙3.0”和“+HS”不是一回事,也有3.0规格却没有+HS的产品,蓝牙4.0加上+HS也可以实现,请理解这一点。虽然市面上也有不少场合将蓝牙3.0 = HS、蓝牙4.0 = LE的说法,但用语的定义是不同的。(我也觉得很难理解)


AMP/PAL的结构
+HS在蓝牙说明书中也被称为“AMP”或“PAL”。AMP是“Alternate MAC/PHY”的缩写,是蓝牙本来就具备的BDR和EDR的无线功能,借用(或“劫持”)其他规格的无线使用的意思,粗略地说就是被“劫持”的其他无线硬件。PAL是Protocol Adaptation Layer的缩写,是连接蓝牙驱动器和AMP驱动器的中间层。


蓝牙 3.0+HS 的架构

目前的蓝牙3.0+HS,设想的AMP是802.11无线LAN (WiFi)。“设想”这个说法听起来有点拐弯,但实际上蓝牙3.0+HS标准原本就计划使用UWB(MB-OFDM UWB)来提高速度。当时为了将蓝牙与UWB的MAC/PHY层结合起来而想到的机制就是PAL,但由于关键的MBOFDM-UWB在商业上失败,PAL的结构(几乎)直接将AMP层“替换”为WiFi。但是,作为被抛弃的UWB阵营,也许想说:“蓝牙啊,你也是吗?”

蓝牙 over 802.11
那么,将WiFi作为AMP使用时最大的障碍是微微网方式的蓝牙和集线器型(接入点+站)的WiFi的网络拓扑概念完全不同。假设有一台蓝牙+WiFi的PC电脑和一台蓝牙+WiFi的手机,即使可以在PC-手机之间连接蓝牙线路,也不能保证可以进行WiFi通信。两者可能会链接到不同的AP,即使链接到相同的AP,如果AP侧禁止站间通信(Intra-BSS),则站之间也不能进行通信。

BT设备之间可用WiFi直接通信(也许可以)的情况

 

BT设备之间无法用WiFi直接通信(也许可以)的情况


因此,在蓝牙3.0+HS的AMP中,PAL介入“劫持”WiFi时,暂时将WiFi从现有网络中断开,蓝牙采用了节点之间进行通信的方法。这个“临时WiFi网络”不是AdHoc模式,而是接入点和站的超小规模…类似于所谓的SoftAP。节点之间的连接顺序和基站模式一样,是信标检测→关联请求→关联响应(所谓的4次握手),使用的安全模型也是和802.11i(WPA2)一样是RSN(AES-CCMP)。

WiFi的网速为11Mbps (11b)或54Mbps (11a/11g),而蓝牙3.0+HS的网速标称为24Mbps,规格书中也有“假设最大连接速度不超过30000Kbps”的记述。我不知道这个数字是从哪里以什么理由被定义的。
另外只要读AMP的规格书,3.0+HS的AMP和“SoftAP”不同,被认为是限定1对1的连接(已经AP没有找到作为的节点追加连接的步骤)。另外,担任AP角色的总是被定义为发出连接请求的一方(发起人),在AMP中发起人/应答者的关系和蓝牙从规格书上也无法很好地理解piconet的主从关系(或者是无关)。

总觉得突然变成了满是“不明白”的解说。。。我自己一次都没有见过蓝牙3.0+HS的实际运行状况。实际上,在使用蓝牙的过程中,我连“慢得要命”的经历都没有过。因为现在蓝牙的主要用途基本上局限在不需要高带宽的音频传输(HSP/HFP/A2DP)和键盘鼠标连接(HIDP)上(注)。而且蓝牙+HS的立场更加微妙的是WiFi-Direct这一竞争规格的存在。
(※注)蓝牙很慢,所以不用于大量数据传输,因为不使用所以也不会出现高速化的欲望。

WiFi Direct vs 蓝牙+HS
WiFi一般是连接接入点和子机使用,连接子机之间的“自组织模式”在802.11b普及初期被使用,但之后由于高速化和安全强化的规格改良而被保留下来,成为了“不使用·不能使用”的功能。WiFi Direct是在WiFi中再次实现分机之间的特殊通信的规格。但是不是所谓的特设模式的扩展和发展型,终端之间协商决定接入点角色(群主,GO),将GO决定的SSID和秘匙(PSK) 通过WPS(WiFi Protected Setup)顺序交换,实现“不需要接入点”和“不需要设置”的无线通信。
蓝牙+HS和WiFi-Direct的方法虽然有很大的不同,但是所需要的道具和最终实现的功能却几乎相同,因此在功能上就形成了竞争。

WiFi Direct(以下简称WFD)的优点在于,对于文件共享和媒体流式传输等需要大带宽的应用,已经存在对应的IP协议。因此基础软件可以直接运行。但是,这个优点也成为了缺点。因为,WFD没有规定检测和确定通信对方的协议,而是使用“UPnP、Bonjour、WSD、LDAP等”,但没有“最低限度安装”的规定(注),会给不同机种、不同厂商之间的相互兼容带来困难。
(※注)严格来说MAC层的发现协议是有规定的,但是IP层以上的发现是依赖于实现的。

另外,虽然WFD也可以连接旧的WiFi设备,但是为了连接不支持WPS的旧设备,GO拥有的SSID和PSK需要用“某种方法”读取并设定为旧设备。但是由于哪个设备成为GO会根据协商的结果而改变,所以一次设定的旧设备第二次就无法连接了(每次指定GO后SSID/PSK必须重新设定)的可能性也存在。为此,有些产品特意设置了即使违反WFD规格也“始终以GO的形式运行”的选项。

在蓝牙+HS的情况下,由于蓝牙层的Inquiry / Page / SDP的服务检索过程用于检测邻近节点和服务,所以WFD像这样“不知道到底是什么,谁有什么功能”的情况原则上是不会发生的。蓝牙的连接对象识别是通过MAC地址(BD_ADDR)进行的,所以连IP地址都不用。

也就是说,+HS使用的是“蓝牙规格的配置文件”,只要“通信双方都支持+HS规格”,就几乎可以自动享受高速化带来的好处。但是,如上所述,原本“通过蓝牙实现的配置文件”中不太需要高带宽的应用程序,即使存在文件传输(FTP)和视频流(VDP)这样的配置文件,其对应的功能是IP现实是基础协议被广泛使用(注)。
(※注)通过运行名为BNEP的配置文件,可以在蓝牙上使用IP。但是BNEP中有具有外部路由功能的NAP模式和实现封闭网络的Group Ad-Hoc 模式, AP的NAP / GN和客户的NAP / GN如果用PANU来区分操作的话,会有很麻烦的地方,说实话并没有被广泛使用。另外,在BT+HS上运行IP,也会制造出越来越与WFD似是而非的东西。

总结
与上期提到的“有前途且实用的技术”蓝牙LE相比,关于蓝牙+HS的文章中充满了怀疑的见解。+HS是对不存在的问题的解决手段…只能认为“A solution looking for A problem to solve”。原本在2005年设想的“便携式音乐播放器和数码相机的数据传输”的用途,长期以来都是通过有线USB来满足的(无线USB在前面已经介绍过,其试图将其无线化而失败的故事),最近出现了Eye-Fi、iTunes WiFi同步等应用WiFi无线LAN的系统。即使存在“基于无线的高速数据传输”的需求,至少大部分市场不会选择蓝牙+HS。虽然不能断言今后这种状态会一直持续下去,但目前还感觉不到趋势改变的征兆。
如果你问我,是不是WiFi-Direct比蓝牙+HS更好,我已经说过了,我并没有太乐观的预测。近来,由于智能手机和智能平板的迅速普及和PC黄金时代的阴影,不少人评论“终于要进入智能家电的时代了”。作为适合智能家电时代的新连接技术,虽然也有很多人提出WiFi-Direct,但我认为无论是PC时代的结束=智能家电时代的开始,还是智能家电=新的无线标准的诞生,都不存在必然性。智能手机和智能平板作为“轻薄的PC”继续成为信息中心,现有面向PC的基础设施WiFi接入点+站(虽然伴随着一些不便)可能会直接应用到家电网络上。另外,多年前以“(不需要PC介入的)设备之间的连接”为口号推出的USB On-The-Go在市场上未能取得成功,WiFi-Direct是令人不安的因素之一。
 
下期的题目还没有决定,如果没有特别的想法的话,我想讲一下Linux上蓝牙安装系统的“BlueZ”。