The method for processing data packets at nodes in Bluetooth Mesh network includes: (a) determining a list of one-hop device caches for the node, which includes the addresses of one or more one-hop nodes; (b) checking whether the destination address of the data packet is the same as one of the addresses stored in the list of one-hop device caches when the node sends the data packet, and: Similarly, the TTL value of the packet is set to 0 and the packet is sent, otherwise, the TTL value of the packet is set to be greater than the set TTL threshold and the packet is sent; (c) When the node forwards the packet, check whether the target address of the packet is the same as one of the addresses stored in the cache list of the one-hop device, and if it is the same, then the TTL value of the packet is set to be greater than the set TTL threshold. Set the value to 1 and forward the packet. Otherwise, subtract the TTL value of the packet by one and forward the packet. The invention can significantly reduce the signal interference problem in dense Bluetooth Mesh network.
【技术实现步骤摘要】
用于在蓝牙Mesh网络中的节点处对数据包进行处理的方法
本专利技术涉及蓝牙Mesh网络,更具体地,涉及一种用于在蓝牙Mesh网络中的节点处对数据包进行处理的方法。
技术介绍
蓝牙Mesh采用“网络泛洪(Flooding)”的方式发布和中继消息数据(或简称为消息)。这意味着消息没有一个固定的传输路径,节点也不需要保存路由表信息。因为这个节点传输范围内的所有其它节点都会接收该消息,具备中继功能的节点会继续将消息转发至其传输范围内的所有其它节点。“泛洪网络”会造成这样的问题,即在对于一个密集的网络中节点间距离比较近的情况下,每个节点都会收到大量重复的数据包,因为同一条消息可能会由多个中继节点帮助转发。密集的网络例如可以是所有设备或大量设备都处在一跳范围内的网络。例如,如图1所示,假设节点B、C、D在节点A的通信范围内,节点F不在节点A的通信范围内,但是可以通过节点B、C、D中继转发从而收到节点A发送的数据包,因此,最终节点F可能会收到来自于节点B、C、D中继转发的数据包,当然,如果节点B、C、D中某个节点并没有收到该数据包,也有可能不参与中继转发。有时,为让该Mesh网 ...
【技术保护点】
1.一种用于在蓝牙Mesh网络中的节点处对数据包进行处理的方法,其特征在于,所述方法包括:(a)确定该节点的一跳设备缓存列表,该一跳设备缓存列表包括一个或多个一跳节点的地址;(b)当该节点发送数据包时,检查该数据包的目标地址是否与该一跳设备缓存列表中存储的地址中的一个地址相同,并且:如果相同,则将该数据包的TTL值设置为0,并发送该数据包,否则,将该数据包的TTL值设置为大于设定的TTL阈值,并发送该数据包;(c)当该节点转发数据包时,检查该数据包的目标地址是否与该一跳设备缓存列表中存储的地址中的一个地址相同,并且:如果相同,则将该数据包的TTL值设置为1,并转发该数据包, ...
【技术特征摘要】
1.一种用于在蓝牙Mesh网络中的节点处对数据包进行处理的方法,其特征在于,所述方法包括:(a)确定该节点的一跳设备缓存列表,该一跳设备缓存列表包括一个或多个一跳节点的地址;(b)当该节点发送数据包时,检查该数据包的目标地址是否与该一跳设备缓存列表中存储的地址中的一个地址相同,并且:如果相同,则将该数据包的TTL值设置为0,并发送该数据包,否则,将该数据包的TTL值设置为大于设定的TTL阈值,并发送该数据包;(c)当该节点转发数据包时,检查该数据包的目标地址是否与该一跳设备缓存列表中存储的地址中的一个地址相同,并且:如果相同,则将该数据包的TTL值设置为1,并转发该数据包,否则,将该数据包的TTL值减1,并转发该数据包。2.根据权利要求1所述的方法,其特征在于,所述步骤(a)中确定该节点的一跳设备缓存列表包括:如果该节点从另一节点接收到的数据包的RSSI值大于设定RSSI阈值,则将该另一节点的地址加入到该节点的一跳设备缓存列表中。3.根据权利要求1所述的方法,其特征在于,所述步骤(a)中确定该节点的一跳设备缓存列表包括:如果该节点从另一节点接收到的数据包的原始TTL值与到达该节点时的TTL值相同,则将该另...
【专利技术属性】
技术研发人员:不公告发明人,
申请(专利权)人:乐鑫信息科技上海股份有限公司,
类型:发明
国别省市:上海,31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。