● 摘要
随着低功耗蓝牙技术的发布与普及,目前大量智能家居传感设备、车载电子设备以及可穿戴设备大多数都支持低功耗蓝牙技术。当前IETF的6lo工作组已经制定了6lo-btle协议草案,规定了在低功耗蓝牙链路上传送IPv6数据包的实现,而目前的低功耗蓝牙设备正是缺乏这种无缝连接网络的功能,因此,设计并实现具备6lo-btle协议的低功耗蓝牙网关具有广泛的应用价值。
本文根据市场的需求和低功耗蓝牙技术的特点,基于嵌入式Linux的低功耗蓝牙网关分别实现了IPv6数据包与蓝牙数据包的协议数据转换功能、蓝牙设备管理功能、地址分配与管理功能、邻居发现、数据转发功能以及CoAP服务优先级质量服务功能。
本课题,在低功耗蓝牙协议栈上实现基于6LoWPAN 的报头压缩和解压模块,提高传输效率。根据低功耗蓝牙网络结构为星型拓扑的特点,实现了基于IPv6和6LoWPAN技术的邻居发现协议优化方案,设计并实现了低功耗蓝牙链路建立后设备节点的IPv6地址配置的流程,同时建立了上下文信息表,为报头压缩和解析模块提供了地址压缩和解压的依据。针对远端设备利用CoAP协议多次访问设备节点造成网络阻塞,导致高优先级的业务数据无法得到实时访问的问题,设计并实现了基于令牌桶算法的服务优先级的质量服务模块,保证了高优先级的CoAP服务请求数据包得到优先处理。
最后,依据低功耗蓝牙网关的测试内容和方案对网关进行测试,根据测试结果,表明该网关的功能和性能与项目需求一致,符合实际的应用场景。目前该解决方案得到客户的认可并进行了验收。