CN112929452B - 一种基于物联网边缘网关的消息协同推送方法 - Google Patents

一种基于物联网边缘网关的消息协同推送方法 Download PDF

Info

Publication number
CN112929452B
CN112929452B CN202110314854.7A CN202110314854A CN112929452B CN 112929452 B CN112929452 B CN 112929452B CN 202110314854 A CN202110314854 A CN 202110314854A CN 112929452 B CN112929452 B CN 112929452B
Authority
CN
China
Prior art keywords
edge gateway
central server
pushing
forwarding
edge
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110314854.7A
Other languages
English (en)
Other versions
CN112929452A (zh
Inventor
陈文彬
瞿洪桂
王浩
刘涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Sinonet Science and Technology Co Ltd
Original Assignee
Beijing Sinonet Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Sinonet Science and Technology Co Ltd filed Critical Beijing Sinonet Science and Technology Co Ltd
Priority to CN202110314854.7A priority Critical patent/CN112929452B/zh
Publication of CN112929452A publication Critical patent/CN112929452A/zh
Application granted granted Critical
Publication of CN112929452B publication Critical patent/CN112929452B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供一种基于物联网边缘网关的消息协同推送方法,包括:构建物联网架构;物联网架构包括中心服务器、边缘网关和终端传感器;其中,中心服务器与多个边缘网关通信连接;每个边缘网关与特定的若干个终端传感器通信连接;中心服务器根据边缘网关上报的负载数据,定时统计各个边缘网关的推送权重值,中心服务器根据边缘网关的推送权重标识将任务合理分配到各个边缘网关协同执行,并且,能够在边缘网关资源负载较高时,将推送任务回收到中心服务器,或者转移到其他较空闲的边缘网关。通过本发明,可以有效减小中心服务器的推送压力,并且合理利用空闲边缘服务的网络和计算能力,从整体上提高推送消息的效率,提高用户体验。

Description

一种基于物联网边缘网关的消息协同推送方法
技术领域
本发明属于物联网技术领域,具体涉及一种基于物联网边缘网关的消息协同推送方法。
背景技术
物联网系统管理着大量的终端传感器,终端传感器用于实时采集数据,并将采集到的数据实时传送到中心服务器,由中心服务器推送给外部应用,其中,外部应用包括上层平台或者终端用户。现有技术中,当外部应用越来越多时,会产生大量的订阅(推送)任务。目前,向外部应用推送任务均由中心服务集中执行,从而导致中心服务器压力过大,容易产生推送延迟现象,影响用户体验。
发明内容
针对现有技术存在的缺陷,本发明提供一种基于物联网边缘网关的消息协同推送方法,可有效解决上述问题。
本发明采用的技术方案如下:
本发明提供一种基于物联网边缘网关的消息协同推送方法,包括以下步骤:
步骤1,构建物联网架构;所述物联网架构包括中心服务器、边缘网关和终端传感器;其中,所述中心服务器与多个所述边缘网关通信连接;每个所述边缘网关与特定的若干个所述终端传感器通信连接;
步骤2,启动所述中心服务器,启动各个所述边缘网关,依次打开各个所述终端传感器;
所述中心服务器设置并存储每个所述边缘网关的负载参数,包括:所述边缘网关的CPU占比权重M1、内存占比权重M2以及网络IO占比权重M3;
步骤3,每个所述终端传感器实时采集数据,并将采集数据实时上传给与自身对应连接的所述边缘网关;
所述边缘网关将获得的所述采集数据上传到所述中心服务器,由所述中心服务器进行采集数据的存储、分析和处理;同时,所述边缘网关定时检测自身的负载数据,包括:CPU占用百分比C、内存占用百分比M和网络IO占用百分比I,然后,所述边缘网关将自身的负载数据定时上报给所述中心服务器;
步骤4,所述中心服务器根据所述边缘网关上报的负载数据,定时统计各个所述边缘网关的推送权重值W,并根据推送权重值W调整所述边缘网关的推送标识,形成用于存储各个所述边缘网关的推送权重值W和推送标识的边缘网关推送标识列表;所述边缘网关推送标识列表实时更新;
对于每个所述边缘网关,采用以下方法,得到其推送权重值W:
步骤4.1,所述中心服务器根据下式,计算得到所述边缘网关的推送权重值W:
W=1.0-(C*M1+M*M2+I*M3)
步骤4.2,所述中心服务器,通过以下规则,确定所述边缘网关的推送标识:
如果0.0<推送权重值W<0.3,或者,CPU占用百分比C、内存占用百分比M和网络IO占用百分比I中,至少一项指标超过80%,则推送标识为禁止标识;
如果0.3<推送权重值W<0.7,或者,CPU占用百分比C、内存占用百分比M和网络IO占用百分比I中,至少一项指标超过50%且小于80%,则推送标识为可行标识;
如果0.7<推送权重值W<1.0,并且,CPU占用百分比C、内存占用百分比M和网络IO占用百分比I中,三项指标均小于50%,则推送标识为推荐标识;
步骤5,当所述中心服务器接收到来自于某个外部应用的对目标终端传感器的采集数据的订阅请求时,其中,所述订阅请求携带所述外部应用的地址;所述中心服务器确定所述订阅请求,采用以下方式推送任务:
步骤5.1,所述中心服务器查找到与所述目标终端传感器直接相连的边缘网关,称为数据源边缘网关gateway(A);
步骤5.2,所述中心服务器查询到所述数据源边缘网关gateway(A)的当前推送标识;
如果所述数据源边缘网关gateway(A)的当前推送标识为可行标识或推荐标识,则执行步骤5.3;如果所述数据源边缘网关gateway(A)的当前推送标识为禁止标识,则执行步骤5.4;
步骤5.3:
步骤5.3.1,所述中心服务器向所述数据源边缘网关gateway(A)下发对所述外部应用执行推送任务的指令,其中,所述指令中携带所述外部应用的地址;
步骤5.3.2,所述数据源边缘网关gateway(A)接收到对所述外部应用执行推送任务的指令后,所述数据源边缘网关gateway(A)根据所述外部应用的地址,将来自于所述目标终端传感器的采集数据,直接发送给所述外部应用;
步骤5.3.3,所述中心服务器实时检测所述数据源边缘网关gateway(A)的当前推送标识,如果所述数据源边缘网关gateway(A)的当前推送标识持续为可行标识或推荐标识,则循环执行步骤5.3.2;如果所述数据源边缘网关gateway(A)的当前推送标识变化为禁止标识,则所述中心服务器回收推送任务,并执行步骤5.4;
步骤5.4:
步骤5.4.1,所述中心服务器查询步骤4存储并实时更新的所述边缘网关推送标识列表,如果所有边缘网关的推送标识均为禁止标识,则由中心服务器执行推送任务,即:所述中心服务器将所述数据源边缘网关gateway(A)上传的所述目标终端传感器的采集数据,直接发送给所述外部应用;
如果所述边缘网关推送标识列表中,存在推送标识为可行标识或推荐标识的边缘网关,则执行步骤5.4.2;
步骤5.4.2,所述中心服务器查询所述边缘网关推送标识列表,获得所有推送标识为可行标识或推荐标识的边缘网关,形成边缘网关推荐范围集合;
在边缘网关推荐范围集合中,按推送权重值W从大到小排列,并选择推送权重值W最大的n个边缘网关,形成转发边缘网关列表;其中,n为大于等于1且小于5的自然数;
假设转发边缘网关列表具有m个边缘网关,分别为:边缘网关gateway(B1),边缘网关gateway(B2),...,边缘网关gateway(Bm);
步骤5.4.3,所述中心服务器将转发边缘网关列表下发到所述数据源边缘网关gateway(A);
步骤5.4.4,所述数据源边缘网关gateway(A)从所述转发边缘网关列表中,选择最优的边缘网关,作为最终选定的转发边缘网关,表示为转发边缘网关gateway(B0);
步骤5.4.5,所述数据源边缘网关gateway(A)向所述中心服务器发送选择转发边缘网关gateway(B0)作为最终转发边缘网关的通知消息;
步骤5.4.6,所述中心服务器接收到所述通知消息后,向所述转发边缘网关gateway(B0)发送能否作为转发边缘网关的请求消息;如果所述中心服务器接收到来自于所述转发边缘网关gateway(B0)的请求拒绝响应消息时,则执行步骤5.4.7;
如果所述中心服务器接收到来自于所述转发边缘网关gateway(B0)的请求同意响应消息,则执行步骤5.4.8;
步骤5.4.7,所述中心服务器向所述数据源边缘网关gateway(A)发送拒绝选择转发边缘网关gateway(B0)作为转发边缘网关的通知消息;
所述数据源边缘网关gateway(A)接收到此通知消息后,将转发边缘网关gateway(B0)从转发边缘网关列表中剔除,然后返回步骤5.4.4,重新选择另一个边缘网关作为最终选定的转发边缘网关,由此循环执行步骤5.4.4-步骤5.4.6;
步骤5.4.8,所述中心服务器向所述数据源边缘网关gateway(A)发送同意选择转发边缘网关gateway(B0)作为转发边缘网关的通知消息,再执行步骤5.4.9;
步骤5.4.9,所述数据源边缘网关gateway(A)将来自于所述目标终端传感器的采集数据发送给转发边缘网关gateway(B0),所述转发边缘网关gateway(B0)再将所述目标终端传感器的采集数据发送给所述外部应用,再执行步骤5.4.10;
步骤5.4.10,所述中心服务器实时检测所述转发边缘网关gateway(B0)的当前推送标识,如果所述转发边缘网关gateway(B0)的当前推送标识持续为可行标识或推荐标识,则循环执行步骤5.4.9;如果所述转发边缘网关gateway(B0)的当前推送标识变化为禁止标识,则所述中心服务器回收推送任务,并返回步骤5.4.1。
优选的,步骤5.4.4中,所述数据源边缘网关gateway(A)从所述转发边缘网关列表中,选择延迟时间最小的边缘网关,作为最终选定的转发边缘网关。
优选的,所述数据源边缘网关gateway(A),采用以下方法确定所述转发边缘网关列表中各个转发边缘网关的延迟时间,进而选择延迟时间最小的边缘网关作为最终选定的转发边缘网关:
对于所述转发边缘网关列表中每个转发边缘网关,表示为边缘网关gateway(Bi),其中,i=1,2,...,m;
所述数据源边缘网关gateway(A)从t0开始向边缘网关gateway(Bi)发送探测信号,并在t1时刻接收到所述边缘网关gateway(Bi)的探测响应信号,则t1-t0即为延迟时间。
本发明提供的一种基于物联网边缘网关的消息协同推送方法具有以下优点:
本发明提供一种基于物联网边缘网关的消息协同推送方法,中心服务器根据边缘网关的推送权重标识将任务合理分配到各个边缘网关协同执行,并且,能够在边缘网关资源负载较高时,将推送任务回收到中心服务器,或者转移到其他较空闲的边缘网关。通过本发明,可以有效减小中心服务器的推送压力,并且合理利用空闲边缘服务的网络和计算能力,从整体上提高推送消息的效率,提高用户体验。
附图说明
图1为本发明提供的一种基于物联网边缘网关的消息协同推送方法的流程示意图。
具体实施方式
为了使本发明所解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明提供一种基于物联网边缘网关的消息协同推送方法,主要构思为:如果数据源边缘网关的负载在设定范围内,则将外部应用的推送任务分配给该数据源边缘网关;如果数据源边缘网关的负载超过设定值,则进一步判断是否存在负载在设定范围的其他边缘网关,如果不存在,则直接由中心服务器执行推送任务;如果存在,则选择最优的边缘网关,由边缘网关作为转发网关,执行推送任务。因此,本发明根据各边缘网关的实时负载情况,分配推送任务,减少中心服务器的压力,提高数据推送的效率,从总体上提高用户体验。
本发明提供的基于物联网边缘网关的消息协同推送方法,应用在物联网项目场景,由中心服务器、多个边缘网关以及终端传感器组成。
其中:
终端传感器主要负责采集数据、发送采集到的数据到与自身连接的边缘网关;边缘网关具有一定的网络和计算能力,主要负责转发终端传感器上报的采集数据到中心服务器;中心服务器一般部署在机房,管理所有的边缘网关,处理并存储终端传感器上传的采集的数据。
本发明的流程参考图1,包括:
步骤1,构建物联网架构;所述物联网架构包括中心服务器、边缘网关和终端传感器;其中,所述中心服务器与多个所述边缘网关通信连接;每个所述边缘网关与特定的若干个所述终端传感器通信连接;
步骤2,启动所述中心服务器,启动各个所述边缘网关(连接上中心服务器),依次打开各个所述终端传感器(连接上对应的边缘网关);
中心服务器、边缘网关和终端传感器均处于正常工作状态。
所述中心服务器设置并存储每个所述边缘网关的负载参数,包括:所述边缘网关的CPU占比权重M1、内存占比权重M2以及网络IO占比权重M3;
步骤3,每个所述终端传感器实时采集数据,并将采集数据实时上传给与自身对应连接的所述边缘网关;
所述边缘网关将获得的所述采集数据上传到所述中心服务器,由所述中心服务器进行采集数据的存储、分析和处理;同时,所述边缘网关定时检测自身的负载数据,包括:CPU占用百分比C、内存占用百分比M和网络IO占用百分比I,实际中,取值精度到小数点后2位,其中边缘网关标配百兆以太网接口,然后,所述边缘网关将自身的负载数据定时上报给所述中心服务器;
步骤4,所述中心服务器根据所述边缘网关上报的负载数据,定时统计各个所述边缘网关的推送权重值W,并根据推送权重值W调整所述边缘网关的推送标识,形成用于存储各个所述边缘网关的推送权重值W和推送标识的边缘网关推送标识列表;所述边缘网关推送标识列表实时更新;
对于每个所述边缘网关,采用以下方法,得到其推送权重值W:
步骤4.1,所述中心服务器根据下式,计算得到所述边缘网关的推送权重值W:
W=1.0-(C*M1+M*M2+I*M3)
其中:
C代表CPU占用百分比C,取值范围可以为10%-30%,分母参考具体的硬件配置;
M代表内存占用百分比,取值范围可以为10%-30%,分母参考具体的硬件配置;
I代表网络IO占用百分比,取值范围可以为40%-80%,默认上传带宽为10Mb/S,所以参数以10Mb/S作为分母。
其中:M1、M2、M3为可变参数,具体值可以参考边缘网关的资源情况和实际计算能力在中心服务器设置,默认值:M1=20%、M2=20%、M3=60%。
步骤4.2,所述中心服务器,通过以下规则,确定所述边缘网关的推送标识:
如果0.0<推送权重值W<0.3,或者,CPU占用百分比C、内存占用百分比M和网络IO占用百分比I中,至少一项指标超过80%,则推送标识为禁止标识;
如果0.3<推送权重值W<0.7,或者,CPU占用百分比C、内存占用百分比M和网络IO占用百分比I中,至少一项指标超过50%且小于80%,则推送标识为可行标识;
如果0.7<推送权重值W<1.0,并且,CPU占用百分比C、内存占用百分比M和网络IO占用百分比I中,三项指标均小于50%,则推送标识为推荐标识;
实际应用中,禁止标识可采用0表示;可行标识可采用1表示;推荐标识可采用2表示。
步骤5,当所述中心服务器接收到来自于某个外部应用(应用平台或者终端用户)的对目标终端传感器的采集数据的订阅请求时,其中,所述订阅请求携带所述外部应用的地址,例如,为外部应用提供的URL,一般为http服务接口;所述中心服务器确定所述订阅请求,采用以下方式推送任务:
步骤5.1,所述中心服务器查找到与所述目标终端传感器直接相连的边缘网关,称为数据源边缘网关gateway(A);
步骤5.2,所述中心服务器查询到所述数据源边缘网关gateway(A)的当前推送标识;
如果所述数据源边缘网关gateway(A)的当前推送标识为可行标识或推荐标识(1可行;2推荐),则执行步骤5.3;如果所述数据源边缘网关gateway(A)的当前推送标识为禁止标识(0禁止),则执行步骤5.4;
步骤5.3:
步骤5.3.1,所述中心服务器将推送任务前置到所述数据源边缘网关gateway(A),向所述数据源边缘网关gateway(A)下发对所述外部应用执行推送任务的指令,其中,所述指令中携带所述外部应用的地址;
步骤5.3.2,所述数据源边缘网关gateway(A)接收到对所述外部应用执行推送任务的指令后,所述数据源边缘网关gateway(A)根据所述外部应用的地址,将来自于所述目标终端传感器的采集数据,直接发送给所述外部应用;
步骤5.3.3,所述中心服务器实时检测所述数据源边缘网关gateway(A)的当前推送标识,如果所述数据源边缘网关gateway(A)的当前推送标识持续为可行标识或推荐标识,则循环执行步骤5.3.2;如果所述数据源边缘网关gateway(A)的当前推送标识变化为禁止标识,则所述中心服务器回收推送任务,并执行步骤5.4;
步骤5.4:
步骤5.4.1,所述中心服务器查询步骤4存储并实时更新的所述边缘网关推送标识列表,如果所有边缘网关的推送标识均为禁止标识(0禁止),则由中心服务器执行推送任务,即:所述中心服务器将所述数据源边缘网关gateway(A)上传的所述目标终端传感器的采集数据,直接发送给所述外部应用;
如果所述边缘网关推送标识列表中,存在推送标识为可行标识或推荐标识的边缘网关,则执行步骤5.4.2;
步骤5.4.2,所述中心服务器查询所述边缘网关推送标识列表,获得所有推送标识为可行标识或推荐标识的边缘网关,形成边缘网关推荐范围集合;
在边缘网关推荐范围集合中,按推送权重值W从大到小排列,并选择推送权重值W最大的n个边缘网关,形成转发边缘网关列表;其中,n为大于等于1且小于5的自然数;作为一种实现方式,当设置n为5时,取出推送权重值靠前的5个边缘网关,形成转发边缘网关列表;如果边缘网关推荐范围集合不足5个边缘网关,则以实际的边缘网关数量为准,如,为2-5个;
假设转发边缘网关列表具有m个边缘网关,分别为:边缘网关gateway(B1),边缘网关gateway(B2),...,边缘网关gateway(Bm);
步骤5.4.3,所述中心服务器将转发边缘网关列表下发到所述数据源边缘网关gateway(A);
步骤5.4.4,所述数据源边缘网关gateway(A)从所述转发边缘网关列表中,选择最优的边缘网关,作为最终选定的转发边缘网关,表示为转发边缘网关gateway(B0);
实际应用中,所述数据源边缘网关gateway(A)从所述转发边缘网关列表中,选择延迟时间最小的边缘网关,作为最终选定的转发边缘网关。
所述数据源边缘网关gateway(A),采用以下方法确定所述转发边缘网关列表中各个转发边缘网关的延迟时间,进而选择延迟时间最小的边缘网关作为最终选定的转发边缘网关:
数据源边缘网关gateway(A)按照转发边缘网关列表依次ping转发边缘网关,选择延迟时间最小的边缘网关作为最终选定的转发边缘网关。
具体的,对于所述转发边缘网关列表中每个转发边缘网关,表示为边缘网关gateway(Bi),其中,i=1,2,...,m;
所述数据源边缘网关gateway(A)从t0开始向边缘网关gateway(Bi)发送探测信号,并在t1时刻接收到所述边缘网关gateway(Bi)的探测响应信号,则t1-t0即为延迟时间。
步骤5.4.5,所述数据源边缘网关gateway(A)向所述中心服务器发送选择转发边缘网关gateway(B0)作为最终转发边缘网关的通知消息;
步骤5.4.6,所述中心服务器接收到所述通知消息后,向所述转发边缘网关gateway(B0)发送能否作为转发边缘网关的请求消息;如果所述中心服务器接收到来自于所述转发边缘网关gateway(B0)的请求拒绝响应消息时,则执行步骤5.4.7;
如果所述中心服务器接收到来自于所述转发边缘网关gateway(B0)的请求同意响应消息,则执行步骤5.4.8;
步骤5.4.7,所述中心服务器向所述数据源边缘网关gateway(A)发送拒绝选择转发边缘网关gateway(B0)作为转发边缘网关的通知消息;
所述数据源边缘网关gateway(A)接收到此通知消息后,将转发边缘网关gateway(B0)从转发边缘网关列表中剔除,然后返回步骤5.4.4,重新选择另一个边缘网关作为最终选定的转发边缘网关,由此循环执行步骤5.4.4-步骤5.4.6;
步骤5.4.8,所述中心服务器向所述数据源边缘网关gateway(A)发送同意选择转发边缘网关gateway(B0)作为转发边缘网关的通知消息,再执行步骤5.4.9;
步骤5.4.9,所述数据源边缘网关gateway(A)将来自于所述目标终端传感器的采集数据发送给转发边缘网关gateway(B0),所述转发边缘网关gateway(B0)再将所述目标终端传感器的采集数据发送给所述外部应用,再执行步骤5.4.10;
步骤5.4.10,所述中心服务器实时检测所述转发边缘网关gateway(B0)的当前推送标识,如果所述转发边缘网关gateway(B0)的当前推送标识持续为可行标识或推荐标识,则循环执行步骤5.4.9;如果所述转发边缘网关gateway(B0)的当前推送标识变化为禁止标识,则所述中心服务器回收推送任务,并返回步骤5.4.1。
本发明提供的一种基于物联网边缘网关的消息协同推送方法,中心服务器根据边缘网关的推送权重标识将任务合理分配到各个边缘网关协同执行,并且,能够在边缘网关资源负载较高时,将推送任务回收到中心服务器,或者转移到其他较空闲的边缘网关。通过本发明,可以有效减小中心服务器的推送压力,并且合理利用空闲边缘服务的网络和计算能力,从整体上提高推送消息的效率,提高用户体验。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。

Claims (3)

1.一种基于物联网边缘网关的消息协同推送方法,其特征在于,包括以下步骤:
步骤1,构建物联网架构;所述物联网架构包括中心服务器、边缘网关和终端传感器;其中,所述中心服务器与多个所述边缘网关通信连接;每个所述边缘网关与特定的若干个所述终端传感器通信连接;
步骤2,启动所述中心服务器,启动各个所述边缘网关,依次打开各个所述终端传感器;
所述中心服务器设置并存储每个所述边缘网关的负载参数,包括:所述边缘网关的CPU占比权重M1、内存占比权重M2以及网络IO占比权重M3;
步骤3,每个所述终端传感器实时采集数据,并将采集数据实时上传给与自身对应连接的所述边缘网关;
所述边缘网关将获得的所述采集数据上传到所述中心服务器,由所述中心服务器进行采集数据的存储、分析和处理;同时,所述边缘网关定时检测自身的负载数据,包括:CPU占用百分比C、内存占用百分比M和网络IO占用百分比I,然后,所述边缘网关将自身的负载数据定时上报给所述中心服务器;
步骤4,所述中心服务器根据所述边缘网关上报的负载数据,定时统计各个所述边缘网关的推送权重值W,并根据推送权重值W调整所述边缘网关的推送标识,形成用于存储各个所述边缘网关的推送权重值W和推送标识的边缘网关推送标识列表;所述边缘网关推送标识列表实时更新;
对于每个所述边缘网关,采用以下方法,得到其推送权重值W:
步骤4.1,所述中心服务器根据下式,计算得到所述边缘网关的推送权重值W:
W=1.0-(C*M1+M*M2+I*M3)
步骤4.2,所述中心服务器,通过以下规则,确定所述边缘网关的推送标识:
如果0.0<推送权重值W<0.3,或者,CPU占用百分比C、内存占用百分比M和网络IO占用百分比I中,至少一项指标超过80%,则推送标识为禁止标识;
如果0.3<推送权重值W<0.7,或者,CPU占用百分比C、内存占用百分比M和网络IO占用百分比I中,至少一项指标超过50%且小于80%,则推送标识为可行标识;
如果0.7<推送权重值W<1.0,并且,CPU占用百分比C、内存占用百分比M和网络IO占用百分比I中,三项指标均小于50%,则推送标识为推荐标识;
步骤5,当所述中心服务器接收到来自于某个外部应用的对目标终端传感器的采集数据的订阅请求时,其中,所述订阅请求携带所述外部应用的地址;所述中心服务器确定所述订阅请求,采用以下方式推送任务:
步骤5.1,所述中心服务器查找到与所述目标终端传感器直接相连的边缘网关,称为数据源边缘网关gateway(A);
步骤5.2,所述中心服务器查询到所述数据源边缘网关gateway(A)的当前推送标识;
如果所述数据源边缘网关gateway(A)的当前推送标识为可行标识或推荐标识,则执行步骤5.3;如果所述数据源边缘网关gateway(A)的当前推送标识为禁止标识,则执行步骤5.4;
步骤5.3:
步骤5.3.1,所述中心服务器向所述数据源边缘网关gateway(A)下发对所述外部应用执行推送任务的指令,其中,所述指令中携带所述外部应用的地址;
步骤5.3.2,所述数据源边缘网关gateway(A)接收到对所述外部应用执行推送任务的指令后,所述数据源边缘网关gateway(A)根据所述外部应用的地址,将来自于所述目标终端传感器的采集数据,直接发送给所述外部应用;
步骤5.3.3,所述中心服务器实时检测所述数据源边缘网关gateway(A)的当前推送标识,如果所述数据源边缘网关gateway(A)的当前推送标识持续为可行标识或推荐标识,则循环执行步骤5.3.2;如果所述数据源边缘网关gateway(A)的当前推送标识变化为禁止标识,则所述中心服务器回收推送任务,并执行步骤5.4;
步骤5.4:
步骤5.4.1,所述中心服务器查询步骤4存储并实时更新的所述边缘网关推送标识列表,如果所有边缘网关的推送标识均为禁止标识,则由中心服务器执行推送任务,即:所述中心服务器将所述数据源边缘网关gateway(A)上传的所述目标终端传感器的采集数据,直接发送给所述外部应用;
如果所述边缘网关推送标识列表中,存在推送标识为可行标识或推荐标识的边缘网关,则执行步骤5.4.2;
步骤5.4.2,所述中心服务器查询所述边缘网关推送标识列表,获得所有推送标识为可行标识或推荐标识的边缘网关,形成边缘网关推荐范围集合;
在边缘网关推荐范围集合中,按推送权重值W从大到小排列,并选择推送权重值W最大的n个边缘网关,形成转发边缘网关列表;其中,n为大于等于1且小于5的自然数;
假设转发边缘网关列表具有m个边缘网关,分别为:边缘网关gateway(B1),边缘网关gateway(B2),...,边缘网关gateway(Bm);
步骤5.4.3,所述中心服务器将转发边缘网关列表下发到所述数据源边缘网关gateway(A);
步骤5.4.4,所述数据源边缘网关gateway(A)从所述转发边缘网关列表中,选择最优的边缘网关,作为最终选定的转发边缘网关,表示为转发边缘网关gateway(B0);
步骤5.4.5,所述数据源边缘网关gateway(A)向所述中心服务器发送选择转发边缘网关gateway(B0)作为最终转发边缘网关的通知消息;
步骤5.4.6,所述中心服务器接收到所述通知消息后,向所述转发边缘网关gateway(B0)发送能否作为转发边缘网关的请求消息;如果所述中心服务器接收到来自于所述转发边缘网关gateway(B0)的请求拒绝响应消息时,则执行步骤5.4.7;
如果所述中心服务器接收到来自于所述转发边缘网关gateway(B0)的请求同意响应消息,则执行步骤5.4.8;
步骤5.4.7,所述中心服务器向所述数据源边缘网关gateway(A)发送拒绝选择转发边缘网关gateway(B0)作为转发边缘网关的通知消息;
所述数据源边缘网关gateway(A)接收到此通知消息后,将转发边缘网关gateway(B0)从转发边缘网关列表中剔除,然后返回步骤5.4.4,重新选择另一个边缘网关作为最终选定的转发边缘网关,由此循环执行步骤5.4.4-步骤5.4.6;
步骤5.4.8,所述中心服务器向所述数据源边缘网关gateway(A)发送同意选择转发边缘网关gateway(B0)作为转发边缘网关的通知消息,再执行步骤5.4.9;
步骤5.4.9,所述数据源边缘网关gateway(A)将来自于所述目标终端传感器的采集数据发送给转发边缘网关gateway(B0),所述转发边缘网关gateway(B0)再将所述目标终端传感器的采集数据发送给所述外部应用,再执行步骤5.4.10;
步骤5.4.10,所述中心服务器实时检测所述转发边缘网关gateway(B0)的当前推送标识,如果所述转发边缘网关gateway(B0)的当前推送标识持续为可行标识或推荐标识,则循环执行步骤5.4.9;如果所述转发边缘网关gateway(B0)的当前推送标识变化为禁止标识,则所述中心服务器回收推送任务,并返回步骤5.4.1。
2.根据权利要求1所述的一种基于物联网边缘网关的消息协同推送方法,其特征在于,步骤5.4.4中,所述数据源边缘网关gateway(A)从所述转发边缘网关列表中,选择延迟时间最小的边缘网关,作为最终选定的转发边缘网关。
3.根据权利要求2所述的一种基于物联网边缘网关的消息协同推送方法,其特征在于,所述数据源边缘网关gateway(A),采用以下方法确定所述转发边缘网关列表中各个转发边缘网关的延迟时间,进而选择延迟时间最小的边缘网关作为最终选定的转发边缘网关:
对于所述转发边缘网关列表中每个转发边缘网关,表示为边缘网关gateway(Bi),其中,i=1,2,...,m;
所述数据源边缘网关gateway(A)从t0开始向边缘网关gateway(Bi)发送探测信号,并在t1时刻接收到所述边缘网关gateway(Bi)的探测响应信号,则t1-t0即为延迟时间。
CN202110314854.7A 2021-03-24 2021-03-24 一种基于物联网边缘网关的消息协同推送方法 Active CN112929452B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110314854.7A CN112929452B (zh) 2021-03-24 2021-03-24 一种基于物联网边缘网关的消息协同推送方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110314854.7A CN112929452B (zh) 2021-03-24 2021-03-24 一种基于物联网边缘网关的消息协同推送方法

Publications (2)

Publication Number Publication Date
CN112929452A CN112929452A (zh) 2021-06-08
CN112929452B true CN112929452B (zh) 2021-09-07

Family

ID=76175821

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110314854.7A Active CN112929452B (zh) 2021-03-24 2021-03-24 一种基于物联网边缘网关的消息协同推送方法

Country Status (1)

Country Link
CN (1) CN112929452B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114095502B (zh) * 2021-10-08 2023-11-03 浙江吉利控股集团有限公司 一种业务处理方法、系统、装置及介质
CN114363399B (zh) * 2021-12-14 2024-03-26 中国农业银行股份有限公司 边缘网关的控制方法及系统
CN115499501A (zh) * 2022-09-01 2022-12-20 阿里巴巴(中国)有限公司 消息推送方法、系统、服务网关及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108712469A (zh) * 2018-04-19 2018-10-26 郑州科技学院 一种物联网中的传感网络连接分配和调度方法
CN108848131A (zh) * 2018-05-25 2018-11-20 杭州快越科技有限公司 一种单点对多点的工业物联虚拟专网实现方法
CN112217879A (zh) * 2020-09-24 2021-01-12 江苏方天电力技术有限公司 一种基于配电物联网的边缘计算技术和云边协同方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11315024B2 (en) * 2018-06-25 2022-04-26 Kyndryl, Inc. Cognitive computing systems and services utilizing internet of things environment
US11108849B2 (en) * 2018-12-03 2021-08-31 At&T Intellectual Property I, L.P. Global internet of things (IOT) quality of service (QOS) realization through collaborative edge gateways
US11025711B2 (en) * 2019-05-02 2021-06-01 EMC IP Holding Company LLC Data centric resource management for edge cloud systems

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108712469A (zh) * 2018-04-19 2018-10-26 郑州科技学院 一种物联网中的传感网络连接分配和调度方法
CN108848131A (zh) * 2018-05-25 2018-11-20 杭州快越科技有限公司 一种单点对多点的工业物联虚拟专网实现方法
CN112217879A (zh) * 2020-09-24 2021-01-12 江苏方天电力技术有限公司 一种基于配电物联网的边缘计算技术和云边协同方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
《Load Balancing Method for IoT Sensor System Using Multi-access Edge Computing》;Ryuta mogi等;《IEEE》;20181130;75-78 *
《基于云端协同计算架构的边缘端I/O密集型虚拟机资源分配方案》;赵龙乾,满君丰,彭成,薛振泽;《计算机应用研究》;20200930;2735-3738 *
《物联网云平台消息推送系统的研究与设计》;董梁玉,雷晓卫,刘继永;《机电产品开发与创新》;20200531;35-38 *

Also Published As

Publication number Publication date
CN112929452A (zh) 2021-06-08

Similar Documents

Publication Publication Date Title
CN112929452B (zh) 一种基于物联网边缘网关的消息协同推送方法
CN111131401B (zh) 一种服务请求的响应方法及系统
CN107204894A (zh) 网络业务质量的监控方法及装置
CN111064591B (zh) 数据汇聚方法、装置、设备、存储介质和系统
CN112543151B (zh) Sdn控制器部署方法、装置、电子设备和存储介质
CN114465945B (zh) 一种基于sdn的标识解析网络构建方法
CN108768690A (zh) 一种结构化的p2p自组织网络结构及资源搜索方法
CN116668364A (zh) 实时音视频网络的路由规划方法及装置
CN111324429B (zh) 一种基于多代血统参考距离的微服务组合调度方法
CN104025658A (zh) 无线通信系统、控制装置及无线通信方法
Khodaparas et al. A multi criteria cooperative caching scheme for internet of things
CN117081983B (zh) 数据传输方法及装置
CN111294553A (zh) 处理视频监控业务信令的方法、装置、设备和存储介质
CN113259481B (zh) 分布式数据存储方法、系统及可读存储介质
CN114760318A (zh) 一种边缘计算管理方法及系统
CN106533730B (zh) Hadoop集群组件指标的采集方法及装置
CN111010389B (zh) 码流调整方法及装置、存储介质、电子装置
CN116880426B (zh) 一种生产线变量调节方法及系统
CN115190128B (zh) 基于嵌入式边缘网关的算力感知与计算任务分配系统
CN112118278B (zh) 计算节点接入方法、装置、电子设备及机器可读存储介质
CN115604170B (zh) 用于分布式设备聚合的边缘网络容器数据路由方法及系统
CN116489738B (zh) 一种基于无线Mesh网络的QoS路由模型的处理方法和装置
CN114726918A (zh) 一种物联网跨网通信方法、装置、设备及存储介质
CN116684286A (zh) 一种映射关系表的建立方法、装置、设备及存储介质
CN118550971A (zh) 数据的同步方法、装置、存储介质及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant