蓝牙的基本概念以及发展轨迹 - 蓝牙的前生后世

一. 声明

本专栏文章咱们会以连载的方式持续更新,本专栏计划更新内容以下:css

第一篇:蓝牙综合介绍 ,主要介绍蓝牙的一些概念,产生背景,发展轨迹,市面蓝牙介绍,以及蓝牙开发板介绍。git

第二篇:Transport层介绍,主要介绍蓝牙协议栈跟蓝牙芯片以前的硬件传输协议,好比基于UART的H4,H5,BCSP,基于USB的H2等github

第三篇:传统蓝牙controller介绍,主要介绍传统蓝牙芯片的介绍,包括射频层(RF),基带层(baseband),链路管理层(LMP)等算法

第四篇:传统蓝牙host介绍,主要介绍传统蓝牙的协议栈,好比HCI,L2CAP,SDP,RFCOMM,HFP,SPP,HID,AVDTP,AVCTP,A2DP,AVRCP,OBEX,PBAP,MAP等等一系列的协议吧。安全

第五篇:低功耗蓝牙controller介绍,主要介绍低功耗蓝牙芯片,包括物理层(PHY),链路层(LL)网络

第六篇:低功耗蓝牙host介绍,低功耗蓝牙协议栈的介绍,包括HCI,L2CAP,ATT,GATT,SM等性能

第七篇:蓝牙芯片介绍,主要介绍一些蓝牙芯片的初始化流程,基于HCI vendor command的扩展学习

第八篇:附录,主要介绍以上经常使用名词的介绍以及一些特殊流程的介绍等。优化

另外,开发板以下所示,对于想学习蓝牙协议栈的最好人手一套。以便更好的学习蓝牙协议栈,相信我,学完这一套视频你将拥有修改任何协议栈的能力(好比Linux下的bluez,Android下的bluedroid)。加密

------------------------------------------------------------------------------------------------------------------------------------------

CSDN学院连接(进入选择你想要学习的课程):https://edu.csdn.net/lecturer/5352?spm=1002.2001.3001.4144

蓝牙交流扣扣群:970324688

Github代码:https://github.com/sj15712795029/bluetooth_stack

入手开发板:https://item.taobao.com/item.htm?spm=a1z10.1-c-s.w4004-22329603896.18.5aeb41f973iStr&id=622836061708

------------------------------------------------------------------------------------------------------------------------------------------

二. 前言

首先在介绍如下内容以前,咱们先来介绍下咱们的CSDN课程,如下介绍内容都会在 CSDN课程 手把手教你蓝牙协议栈入门(点击我)中第二小节介绍。

三. 蓝牙概念

蓝牙,是一种支持设备短距离通讯(通常10m内)的无线电技术,能在包括移动电话、PDA、无线耳机、笔记本电脑、相关外设等众多设备之间进行无线信息交换。利用“蓝牙”技术,可以有效地简化移动通讯终端设备之间的通讯,也可以成功地简化设备与因特网Internet之间的通讯,从而数据传输变得更加迅速高效,为无线通讯拓宽道路。

蓝牙做为一种小范围无线链接技术,能在设备间实现方便快捷、灵活安全、低成本、低功耗的数据通讯和语音通讯,所以它是目前实现无线个域网通讯的主流技术之一。与其余网络相链接能够带来更普遍的应用。是一种尖端的开放式无线通讯,可以让各类数码设备无线沟通,是无线网络传输技术的一种,本来用来取代红外。

蓝牙技术是一种无线数据与语音通讯的开放性全球规范,它以低成本的近距离无线链接为基础,为固定与移动设备通讯环境创建一个特别链接。其实质内容是为固定设备或移动设备之间的通讯环境创建通用的无线电空中接口(Radio Air Interface),将通讯技术与计算机技术进一步结合起来,使各类3C设备在没有电线或电缆相互链接的状况下,能在近距离范围内实现相互通讯或操做。简单的说,蓝牙技术是一种利用低功率无线电在各类3C设备间彼此传输数据的技术。蓝牙工做在全球通用的2.4GHz ISM(即工业、科学、医学)频段,使用IEEE802.11协议。做为一种新兴的短距离无线通讯技术,正有力地推进着低速率无线我的区域网络的发展。

四. 蓝牙的产生背景

“蓝牙”的造成背景是这样的: 1998 年 5 月,爱立信、诺基亚、东芝、 IBM和英特尔公司等五家著名厂商, 在联合开展短程无线通讯技术的标准化活动时提出了蓝牙技术,其宗旨是提供一种短距离、 低成本的无线传输应用技术。 这五家厂商还成立了蓝牙特别兴趣组, 以使蓝牙技术可以成为将来的无线通讯标准。 芯片霸主 Intel 公司负责半导体芯片和传输软件的开发,爱立信负责无线射频和移动电话软件的开发, IBM 和东芝负责笔记本电脑接口规格的开发。 1999 年下半年,著名的业界巨头微软、摩托罗拉、三星、朗讯与蓝牙特别小组的五家公司共同发起成立了蓝牙技术推广组织,从而在全球范围内掀起了一股“蓝牙”热潮。全球业界即将开发一大批蓝牙技术的应用产品, 使蓝牙技术呈现出极其广阔的市场前景,并预示着 21 世纪初将迎来波澜壮阔的全球无线通讯浪潮。

关于蓝牙这个名字的由来还有一个小故事。 “蓝牙” 这名称来自 10 世纪的丹麦国王哈拉尔德 (Harald Gormsson) 的外号。出身海盗家庭的哈拉尔德统一了北欧四分五裂的国家,成为维京王国的国王。 因为他喜欢吃蓝莓, 牙齿经常被染成蓝色,而得到“蓝牙”的绰号,当时蓝莓由于颜色怪异的缘故被认为是不适合食用的东西,所以这位爱尝新的国王也成为创新与敢于尝试的象征。 1998 年,爱立信公司但愿无线通讯技术能统一标准而取名“蓝牙” 。

随着蓝牙技术由手机、 游戏、耳机、 便捷式电能和汽车等传统应用领域向物联网、医疗等新领域扩展,市场对低功耗的要求愈来愈高。蓝牙 4.0 协议版本是蓝牙 3.0 高速版本基础上增长了低能消耗协议部分。 嵌入式设备在不少应用场景要求能耗很是低,传输速率要求也不高,对于这类设备,能够仅实现 4.0 协议中低耗能蓝牙部分,经过与支持双模的主机设备进行通讯或者跟同类设备通讯。

因为蓝牙 4.0 协议拥有极低的运行和待机功耗, 使用一粒纽扣电池甚至可持续工做数年之久;同时还有低成本、 跨厂商互操互做性、 2 毫秒低延迟、 AES-128加密等诸多特点,能够普遍应用于计步器、心律监视器、智能仪表、传感器物联网等众多领域,大大扩展蓝牙技术的应用范围。 因此, 目前不少蓝牙厂商也都推出了符合蓝牙 4.0 版本的低功耗协议的蓝牙芯片

五. 蓝牙发展轨迹

若是你想看一下的那么多文字,又想吹水下发展历程,那么观看咱们CSDN学院的课程就好:

https://edu.csdn.net/course/detail/30065

1998 年 5 月 20 日,爱立信联合 IBM、英特尔、诺基亚及东芝公司等 5 家著名厂商成立“特别兴趣小组”(Special Interest Group,SIG),即蓝牙技术联盟的前身,目标是开发一个成本低、效益高、能够在短距离范围内随意无线链接的蓝牙技术标准。当年蓝牙推出 0.7 规格,支持 Baseband 与 LMP(Link Manager Protocol)通信协定两部分。

1999 年前后推出 0.8 版、0.9 版、1.0 Draft 版。完成了 SDP(Service Discovery Protocol)协定和 TCS(Telephony Control Specification)协定。

1999 年 7 月 26 日正式公布 1.0A 版,肯定使用 2.4GHz 频段。和当时流行的红外线技术相比,蓝牙有着更高的传输速度,并且不须要像红外线那样进行接口对接口的链接,全部蓝牙设备基本上只要在有效通信范围内使用,就能够进行随时链接。

1999 年下半年,微软、摩托罗拉、三星、朗讯与蓝牙特别小组的五家公司共同发起成立了蓝牙技术推广组织,从而在全球范围内掀起了一股“蓝牙”热潮。

到 2000 年 4 月,SIG 的成员数已超过 1500,其成长速度超过任何其余的无线联盟。

蓝牙技术变迁历史

第一代蓝牙:关于短距离通信早期的探索

1999 年:蓝牙 1.0

早期的蓝牙 1.0 A 和 1.0B 版存在多个问题,有多家厂商指出他们的产品互不兼容。同时,在两个设备“连接”(Handshaking)的过程当中,蓝牙硬件的地址(BD_ADDR)会被发送出去,在协议的层面上不能作到匿名,形成泄漏数据的危险。

所以,当 1.0 版本推出之后,蓝牙并未当即受到普遍的应用。除了当时对应蓝牙功能的电子设备种类少,蓝牙装置也十分昂贵。

2001 年:蓝牙 1.1

蓝牙 1.1 版正式列入 IEEE 802.15.1 标准,该标准定义了物理层(PHY)和媒体访问控制(MAC)规范,用于设备间的无线链接,传输率为 0.7Mbps。但由于是早期设计,容易受到同频率之间产品干扰,影响通信质量。

2003 年:蓝牙 1.2

蓝牙 1.2 版针对 1.0 版本暴露出的安全性问题,完善了匿名方式,新增屏蔽设备的硬件地址(BD_ADDR)功能,保护用户免受身份嗅探攻击和跟踪,同时向下兼容 1.1 版。此外,还增长了四项新功能:

AFH(Adaptive Frequency Hopping)适应性跳频技术,减小了蓝牙产品与其它无线通信装置之间所产生的干扰问题;

eSCO(Extended Synchronous Connection-Oriented links)延伸同步连结导向信道技术,用于提供 QoS 的音频传输,进一步知足高阶语音与音频产品的需求;

Faster Connection 快速链接功能,能够缩短从新搜索与再链接的时间,使链接过程更为稳定快速;

支持 Stereo 音效的传输要求,但只能以单工方式工做。

表明做:爱立信第一台蓝牙手机 T39mc

第二代蓝牙:发力传输速率的 EDR 时

2004 年:蓝牙 2.0

蓝牙 2.0 是 1.2 版本的改良版,新增的 EDR(Enhanced Data Rate)技术经过提升多任务处理和多种蓝牙设备同时运行的能力,使得蓝牙设备的传输率可达 3Mbps。

蓝牙 2.0 支持双工模式:能够一边进行语音通信,一边传输文档/高质素图片。

同时,EDR 技术经过减小工做负债循环来下降功耗,因为带宽的增长,蓝牙 2.0 增长了链接设备的数量。

2007 年:蓝牙 2.1

蓝牙 2.1 新增了 Sniff Subrating 省电功能,将设备间相互确认的讯号发送时间间隔从旧版的 0.1 秒延长到 0.5 秒左右,从而让蓝牙芯片的工做负载大幅下降。

另外,新增 SSP 简易安全配对功能,改善了蓝牙设备的配对体验,同时提高了使用和安全强度。

支持 NFC 近场通讯,只要将两个内置有 NFC 芯片的蓝牙设备相互靠近,配对密码将经过 NFC 进行传输,无需手动输入。

表明做:正在以蓝牙与无线耳机沟通的 Sony Ericsson P910i PDA 手机

第三代蓝牙:High Speed,传输速率高达 24Mbps

2009 年:蓝牙 3.0

蓝牙 3.0 新增了可选技术 High Speed,High Speed 可使蓝牙调用 802.11 WiFi 用于实现高速数据传输,传输率高达 24Mbps,是蓝牙 2.0 的 8 倍,轻松实现录像机至高清电视、PC 至 PMP、UMPC 至打印机之间的资料传输。

蓝牙 3.0 的核心是 AMP(Generic Alternate MAC/PHY),这是一种全新的交替射频技术,容许蓝牙协议栈针对任一任务动态地选择正确射频。

功耗方面,蓝牙 3.0 引入了 EPC 加强电源控制技术,再辅以 802.11,实际空闲功耗明显下降。

此外,新的规范还加入 UCD 单向广播无链接数据技术,提升了蓝牙设备的相应能力。

表明做:蓝牙适配器

第四代蓝牙:主推” Low Energy”低功耗

2010 年:蓝牙 4.0

蓝牙 4.0 是迄今为止第一个蓝牙综合协议规范,将三种规格集成在一块儿。其中最重要的变化就是 BLE(Bluetooth Low Energy)低功耗功能,提出了低功耗蓝牙、传统蓝牙和高速蓝牙三种模式:

”高速蓝牙“主攻数据交换与传输;“传统蓝牙”则以信息沟通、设备链接为重点;”低功耗蓝牙“以不需占用太多带宽的设备链接为主,功耗较老版本下降了 90%。

BLE 前身是 NOKIA 开发的 Wibree 技术,本是做为一项专为移动设备开发的极低功耗的移动无线通讯技术,在被 SIG 接纳并规范化以后重命名为 Bluetooth Low Energy(后简称低功耗蓝牙)。这三种协议规范还可以互相组合搭配、从而实现更普遍的应用模式。

蓝牙 4.0 的芯片模式分为 Single mode 与 Dual mode。Single mode 只能与蓝牙 4.0 互相传输没法向下与 3.0/2.1/2.0 版本兼容;Dual mode 能够向下兼容 3.0/2.1/2.0 版本。前者应用于使用纽扣电池的传感器设备,例如对功耗要求较高的心率检测器和温度计;后者应用于传统蓝牙设备,同时兼顾低功耗的需求。

此外,蓝牙 4.0 还把蓝牙的传输距离提高到100米以上(低功耗模式条件下)。拥有更快的响应速度,最短可在 3 毫秒内完成链接设置并开始传输数据。更安全的技术,使用 AES-128 CCM 加密算法进行数据包加密和认证。

^ 表明做:苹果 iPhone 4S 是第一款支持蓝牙 4.0 标准的智能手机

2013 年:蓝牙 4.1

蓝牙 4.1 在传输速度和传输范围上变化很小,但在软件方面有着明显的改进。这次更新目的是为了让 Bluetooth Smart 技术最终成为物联网(Internet of Things)发展的核心动力。

支持与 LTE 无缝协做。当蓝牙与 LTE 无线电信号同时传输数据时,那么蓝牙 4.1 能够自动协调二者的传输信息,以确保协同传输,下降相互干扰。

容许开发人员和制造商「自定义」蓝牙 4.1 设备的从新链接间隔,为开发人员提供了更高的灵活性和掌控度。

支持「云同步」。蓝牙 4.1 加入了专用的 IPv6 通道,蓝牙 4.1 设备只须要链接到能够联网的设备(如手机),就能够经过 IPv6 与云端的数据进行同步,知足物联网的应用需求。

支持「扩展设备」与「中心设备」角色互换。支持蓝牙 4.1 标准的耳机、手表、键鼠,能够不用经过 PC、平板、手机等数据枢纽,实现自主收发数据。例如智能手表和计步器能够绕过智能手机,直接实现对话。

2014 年:蓝牙 4.2

蓝牙 4.2 的传输速度更加快速,比上代提升了 2.5 倍,由于蓝牙智能(Bluetooth Smart)数据包的容量提升,其可容纳的数据量至关于此前的10倍左右。

改善了传输速率和隐私保护程度,蓝牙信号想要链接或者追踪用户设备,必须通过用户许可。用户能够放心使用可穿戴设备而不用担忧被跟踪。

支持 6LoWPAN,6LoWPAN 是一种基于 IPv6 的低速无线个域网标准。蓝牙 4.2 设备能够直接经过 IPv6 和 6LoWPAN 接入互联网。这一技术容许多个蓝牙设备经过一个终端接入互联网或者局域网,这样,大部分智能家居产品能够抛弃相对复杂的 WiFi 链接,改用蓝牙传输,让我的传感器和家庭间的互联更加便捷快速。

LE连接安全

从Spec定义上蓝牙4.0和4.1的配对加密环节都是基于AES-CCM加密,可是因为蓝牙4.1双方共享同一密钥,因此存在被破解风险和漏洞。蓝牙4.2的pairing环节,采用Diffie-Hellman Key Exchange密钥交换算法进行加密,每个设备有一对密钥对,公钥和私钥,私钥本身保存,公钥公开给对方,数据交互时,一方经过本身的私钥和对方的公钥进行加密文件,接收方经过本身私钥和传输方的公钥进行解密,从而有效的防止中间人破解密钥的事件发生。

历代蓝牙标准性能

隐私保护

蓝牙在广播过程当中会携带本身的BD address (bluetooth device address)即为蓝牙惟一的MAC地址,在某些应用,好比物流追踪应用当中是很是有帮助的,能够根据BD address固定物流设备。

可是在某些应用不但愿本身的BD address暴露在主端设备的监控下,蓝牙4.2给出了灵活的选择,蓝牙4.2规定,从机设备能够选择在广播模式下发送随机BD address,这样主端设备除了接该到设备以后才能获取其真实BD address,除此该设备广播模式的BD address为随机序列。

第五代蓝牙:开启「物联网」时代大门

2016 年:蓝牙 5.0

蓝牙 5.0 在低功耗模式下具有更快更远的传输能力,传输速率是蓝牙 4.2 的两倍(速度上限为 2Mbps),有效传输距离是蓝牙 4.2 的四倍(理论上可达 300 米),数据包容量是蓝牙 4.2 的八倍。

支持室内定位导航功能,结合 WiFi 能够实现精度小于 1 米的室内定位。

针对 IoT 物联网进行底层优化,力求以更低的功耗和更高的性能为智能家居服务。

低功耗版蓝牙与经典版蓝牙参数

Mesh 网状网络:实现物联网的关键”钥匙“

Mesh 网状网络是一项独立研发的网络技术,它可以将蓝牙设备做为信号中继站,将数据覆盖到很是大的物理区域,兼容蓝牙 4 和 5 系列的协议。

传统的蓝牙链接是经过一台设备到另外一台设备的「配对」实现的,创建「一对一」或「一对多」的微型网络关系。

而 Mesh 网络可以使设备实现「多对多」的关系。Mesh 网络中每一个设备节点都能发送和接收信息,只要有一个设备连上网关,信息就可以在节点之间被中继,从而让消息传输至比无线电波正常传输距离更远的位置。

这样,Mesh 网络就能够分布在制造工厂、办公楼、购物中心、商业园区以及更广的场景中,为照明设备、工业自动化设备、安防摄像机、烟雾探测器和环境传感器提供更稳定的控制方案。

办公楼里的 Mesh 网络

物联网:将来蓝牙技术的新主场

2019年1月:蓝牙5.1

增长AoA/AoD,号称厘米级偏差定位

2019年12月31:蓝牙5.2

增长BLE audio,LC3的编解码方式

总结起来就几张图吧,以下: