[发明专利]智能家居系统中基于哈希算法的终端网关负载分配方法有效
申请号: | 201811388232.3 | 申请日: | 2018-11-21 |
公开(公告)号: | CN109462652B | 公开(公告)日: | 2021-06-01 |
发明(设计)人: | 戴国骏;赵骏;史建凯;张桦;吴以凡 | 申请(专利权)人: | 杭州电子科技大学 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L12/751;H04L12/743;H04L12/28 |
代理公司: | 杭州君度专利代理事务所(特殊普通合伙) 33240 | 代理人: | 朱月芬 |
地址: | 310018 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 智能家居 系统 基于 算法 终端 网关 负载 分配 方法 | ||
1.智能家居系统中基于哈希算法的终端网关负载分配方法,其特征在于该方法的负载分配是在由多台终端网关和本地服务器组成的网络中,终端网关利用Zigbee协调器接收从Zigbee子设备上发送到的传感器数据,并存储在服务器上;主控网关将数据切分成多个小区间并映射到哈希环上,用虚拟节点代替终端网关在哈希环上的位置,用虚拟节点的数量来表示终端网关的算力,即当终端网关加入边缘计算网络时,主控网关根据终端网关的算力为终端网关分配相应数量的虚拟节点,并将其虚拟节点用哈希函数映射到哈希环上,虚拟节点去捕获固定方向上离它最近的数据,让已经进入边缘计算状态的网关系统拥有在动态加入和退出边缘计算网络的同时,仍能实现按算力比值分配负载的能力;
具体步骤如下:
步骤1、系统初始化时,主控网关里存储一张算力表,以终端网关的网卡MAC值为主键值,查询加入智能家居系统的所有终端网关是否已在算力表中记录其算力,如果已经记录,进入步骤2;否则计算当前终端网关的算力,并在算力表中记录当前终端网关的MAC值和对应的算力,然后直至所有终端网关的算力均记录在算力表中后进入步骤2;
步骤2、判断当前数据积累量和系统运行时间,如果当前服务器上数据量累积到了C并且系统时间运行了T时,由主控网关向服务器和终端网关发起边缘计算请求;否则进入网关正常使用状态;
步骤3、终端网关接收到主控网关发出的边缘计算请求后,判断其自身当前是否处于空闲状态,如果是,则进入边缘计算网络,进入步骤4;否则不加入边缘计算网络;
步骤4、主控网关查询当前算力表中所有正处于边缘计算网络中的终端网关的算力值,并计算其比值β,以K为单位,为每一台终端网关分配N个虚拟节点,每台终端网关的虚拟节点标记为:
node(n)={Mn-1,Mn-2,...,Mn-N|n∈1~M,N=Kβ(n)},将标记的虚拟节点由哈希函数全部映射到哈希环上;
步骤5、当需要边缘计算的数据总量为Q GB时,主控网关从服务器上获取后,将数据总量分割为大小为P MB的样本,得到Q*1024/P个数据分块,并将分割的数据分块按顺序标记为1~Q*1024/P,使用哈希函数,映射到哈希环上;
步骤6、在哈希环上,标记为x的数据分块块按照顺时针方向去找离数据分块自身最近的虚拟节点,找到该虚拟节点归属的终端网关,并将该数据块分配到虚拟节点归属的终端网关上进行边缘计算,将这种分配的路径记录在路由表上,存储到服务器上并发送到每个终端网关中,然后将数据分块按照步骤5中标记的顺序依次将数据分块发送到对应的终端网关上;
步骤7、每个终端网关将拿到的数据分块和路由表中的数据路径进行对比,如果当前所在的终端网关拿到的数据分块在路由表中的数据路径指向自己,就进行边缘计算,否则不进行计算;
步骤8、当有新的终端网关接入智能家居系统时,同样需要进行步骤1的初始化过程;当有新的终端网关进入边缘计算状态时,则同理在算力表中,以MAC值为索引,查找新的终端网关对应的算力值,得到算力值后,计算新终端网关和边缘计算网络中其它终端网关的算力比值β(y),并为新的终端网关分配新的N个虚拟节点,标记为node(y)={My-1,My-2,...,My-N|N=Kβ(y)},根据哈希函数的计算,将新的虚拟节点全部映射到哈希环上,将哈希环上数据分块所在的位置向顺时针旋转,找到最近的终端网关,则新分配的虚拟节点又会捕获到数据分块,在路由表中更新新的分配路径,重新向所有网关发送路由表,服务器根据新的路径发送分块数据;
步骤9、当终端网关由空闲状态切换为非空闲状态时,需要退出边缘计算网络,此时,该终端网关对应的所有虚拟节点退出哈希环,同理在路由表中更新分配路径;
步骤10、每个数据块计算完成,终端网关将计算结果回传给服务器,当所有边缘计算任务完成后,服务器将计算结果汇总,进行相应后续处理和存储。
2.根据权利要求1所述的智能家居系统中基于哈希算法的终端网关负载分配方法,其特征在于步骤3所述的空闲状态,根据当前终端网关的CPU利用率来判定当前网关是否处于空闲状态,根据网关的负载,当CPU利用率小于等于T1超过U时间时,属于空闲状态,加入边缘计算网络;如果当CPU利用率大于T1,属于非空闲状态,则不加入或退出边缘计算网络,T1和U为设定的阈值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州电子科技大学,未经杭州电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811388232.3/1.html,转载请声明来源钻瓜专利网。