内网设备的内容下载方法与流程
未命名
09-07
阅读:189
评论:0
1.本发明属于计算机通讯技术领域,具体涉及内网设备的内容下载方法。
背景技术:
2.目前,目前,若通过云平台下发内容到实体店里的几个设备,一般的做法是设备连接到平台,平台将内容下载的指令下发给每一个设备,设备收到指令后,通过指令中的下载地址下载对应的内容。通常平台部署在公网,每个设备都需要从公网下载一遍文件,不仅消耗大量的公网带宽,而且公网的带宽有限,也很难保证内容下发的实时性。
技术实现要素:
3.有鉴于此,一些实施例公开了内网设备的内容下载方法,应用于内网设备组成的内网系统,包括:内网系统包括多个内网设备,且每个内网设备装载有内网下载模块,内网设备之间配置为通过广播协议进行通讯;内网设备配置为具有主设备状态、从设备状态或竞选主设备状态;其中,处于主设备状态的内网设备配置为需要定时发送心跳包,并向其他内网设备提供下载内容服务;处于从设备状态的内网设备配置为接收主设备的心跳包及下载指令;处于竞选主设备状态的内网设备配置为定时发送竞选主设备的指令;启动内网系统,主设备竞选流程启动,选定的内网设备作为主设备,其他内网设备为从设备;内网系统接收到内容下载指令;主设备从公网下载对应内容,从设备从主设备下载对应内容。
4.一些实施例公开的内网设备的内容下载方法,竞选流程中,处于主设备状态的内网设备配置执行的过程包括:周期性发送心跳消息;接收广播消息;若接收到到竞选主设备的指令消息,则修改主设备状态为从设备状态;若收到其他内网设备发送的心跳消息,则对比其他内网设备与自己的session值:若自己的session值大于其他内网设备的session值,则继续作为主设备;若自己的session值等于其他内网设备的session值,则重新随机生成新的session,修改自己为竞选主设备状态;若自己的session值小于其他内网设备的session值,则修改自己为从设备。
5.一些实施例公开的内网设备的内容下载方法,处于主设备状态的内网设备发送心跳消息的周期设置为1s。
6.一些实施例公开的内网设备的内容下载方法,竞选流程中,处于从设备状态的内网设备配置执行的过程包括:
监听广播消息,等待接收主设备发送的心跳包;收到主设备发送的心跳包,记录主设备的id和接收心跳包的时间;若在设定时间周期内没有收到主设备发送的心跳包,则修改自己的状态为竞选主设备状态。
7.一些实施例公开的内网设备的内容下载方法,收到主设备发送心跳包的时间周期设定为3s。
8.一些实施例公开的内网设备的内容下载方法,处于竞选主设备状态的内网设备配置执行的过程包括:处于竞选主设备状态期间,接收其他内网设备发送的消息;按照设定的时间间隔发送竞选消息,发送n次;若发送n次竞选消息都成功,则修改自己的状态为主设备状态;若发送n次竞选消息,不成功,继续处于竞选主设备状态;若接收到其他内网设备的竞选消息,则比较自己与其他内网设备的session值:若自己的session值大于其他内网设备的session值,则继续处于竞选主设备状态;若自己的session值小于其他内网设备的session值,则修改自己的状态为从设备状态;若自己的session值等于其他内网设备的session值,则重新生成一个新的session值,同时发送竞选消息的次数清零,重新发送竞选消息。
9.一些实施例公开的内网设备的内容下载方法,竞选主设备的内网设备发送竞选消息的时间间隔设定为1s,发送次数n设定为3。
10.一些实施例公开的内网设备的内容下载方法,主设备从公网下载对应内容的过程,包括:接收内容下载指令,根据指令中的地址从公网下载对应的内容;生成对外提供下载内容的本地下载地址;向外发送内容下载消息,内容下载的地址为主设备生成的本地下载地址;从公网下载内容的过程中,同时提供对外下载内容服务,直至完成下载任务。
11.一些实施例公开的内网设备的内容下载方法,从设备从主设备下载对应内容的过程包括:接收到内容下载指令消息,将该消息的name保持在本地,作为待下载任务;接收到主设备发送的内容下载消息,从本地保存的name中查找对应的待下载任务;若找到对应的待下载任务,则根据主设备发送的本地下载地址下载对应内容,若没找到对应的待下载任务,则忽略该内容下载消息;内容下载完成后,删除对应的待下载任务。
12.本发明实施例公开的内网设备的内容下载方法,在多个内网设备中选出一个作为主设备,其他内网设备作为从设备,内网设备接收到下载指令时,主设备根据指令从公网下载对应的内容,然后形成本地下载地址,并向从设备提供下载内容,从设备从主设备提供的下载地址从本地下载对应内容;内网设备只需要集成内网下载模块就从内网设备中自动选
出主设备,主设备离线后,其他内网设备又能自动选出新的主设备,无需人为干涉,大大降低了运维成本;主设备从公网下载对应的内容,从设备通过内网从主设备下载内容,大大降低了公网带宽的消耗,而且内容下发的实时性也得到了保证。本发明实施例公开的内网设备的内容下载方法,降低了对公网资源的占用率,提高了下载效率,提高了内容下载的实时性。
附图说明
13.图1 一些实施例公开的内网设备的内容下载方法流程图;图2 一些实施例公开的内网系统拓扑图;图3 一些实施例公开的竞选流程中作为主设备的内网设备配置执行任务的流程图;图4一些实施例公开的竞选流程中作为从设备的内网设备配置执行任务的流程图;图5一些实施例公开的竞选流程中竞选主设备的内网设备配置执行任务的流程图;图6一些实施例公开的主设备下载对应内容的流程图;图7一些实施例公开的从设备下载对应内容的流程图。
具体实施方式
14.在这里专用的词“实施例”,作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。本发明实施例中性能指标测试,除非特别说明,采用本领域常规试验方法。应理解,本发明实施例中所述的术语仅仅是为描述特别的实施方式,并非用于限制本发明实施例公开的内容。
15.除非另有说明,否则本文使用的技术和科学术语具有本发明实施例所属技术领域的普通技术人员通常理解的相同含义;作为本发明实施例中其它未特别注明的试验方法和技术手段均指本领域内普通技术人员通常采用的实验方法和技术手段。
16.本文所用的术语“基本”和“大约”用于描述小的波动。例如,它们可以是指小于或等于
±
5%,如小于或等于
±
2%,如小于或等于
±
1%,如小于或等于
±
0.5%,如小于或等于
±
0.2%,如小于或等于
±
0.1%,如小于或等于
±
0.05%。在本文中以范围格式表示或呈现的数值数据,仅为方便和简要起见使用,因此应灵活解释为不仅包括作为该范围的界限明确列举的数值,还包括该范围内包含的所有独立的数值或子范围。例如,“1~5%”的数值范围应被解释为不仅包括1%至5%的明确列举的值,还包括在所示范围内的独立值和子范围。因此,在这一数值范围中包括独立值,如2%、3.5%和4%,和子范围,如1%~3%、2%~4%和3%~5%等。这一原理同样适用于仅列举一个数值的范围。此外,无论该范围的宽度或所述特征如何,这样的解释都适用。
17.在本文中,包括权利要求书中,连接词,如“包含”、“包括”、“带有”、“具有”、“含有”、“涉及”、“容纳”等被理解为是开放性的,即是指“包括但不限于”。只有连接词“由
……
构成”和“由
……
组成”是封闭连接词。
18.为了更好的说明本发明内容,在下文的具体实施例中给出了众多的具体细节。本
领域技术人员应当理解,没有某些具体细节,本发明同样可以实施。在实施例中,对于本领域技术人员熟知的一些方法、手段、仪器、设备等未作详细描述,以便凸显本发明的主旨。
19.在不冲突的前提下,本发明实施例公开的技术特征可以任意组合,得到的技术方案属于本发明实施例公开的内容。
20.在一些实施方式中,内网设备的内容下载方法,应用于内网设备组成的内网系统,用于内网设备下载内容,如图1所示例,下载方法包括:内网系统包括多个内网设备,且每个内网设备装载有内网下载模块,内网设备之间配置为通过广播协议进行通讯;内网设备配置为具有主设备状态、从设备状态或竞选主设备状态;其中,处于主设备状态的内网设备配置为需要定时发送心跳包,并向其他内网设备提供下载内容服务;处于从设备状态的内网设备配置为接收主设备的心跳包及下载指令;处于竞选主设备状态的内网设备配置为定时发送竞选主设备的指令;启动内网系统,主设备竞选流程启动,选定的内网设备作为主设备,其他内网设备为从设备;内网系统接收到内容下载指令;主设备从公网下载对应内容,从设备从主设备下载对应内容。
21.如图2所示例,多个内网设备组成内网系统,内网系统与云平台之间建立连接。与云平台建立联系的内网系统,各个设备需要与云平台之间通讯联络,云平台下达内容下载指令到内网系统,内网设备根据下载指令下载对应的内容,为了提高下载内容的效率和实时性,为内网系统中的内网设备装载内网下载模块,并在内网设备之间配置共享通讯协议,例如广播协议;内网设备可以配置为处于从设备状态、竞选主设备状态和主设备状态;通常内网系统中的内网设备,有一个作为主设备,其他作为从设备;内网系统启动后,内网设备处于启动,启动后的内网设备通过广播协议可以将内网设备进行分类,选举出一个内网设备作为主设备,其他内网设备作为从设备;通常,选举主设备的广播协议需要包含设备标识、动作等信息,而且主设备一旦选定,主设备与从设备之间需要保持心跳,以确定主设备是否在线;一旦从设备检测到主设备离线,立即发起重新选举主设备的竞选流程;内网系统接收到下载内容的指令后,主设备根据指令从公网下载对应内容,从设备通过内网系统从主设备下载对应内容。通常云平台可以下发内容下载指令到内网系统中的各个内网设备,内网设备根据内网设备的内容下载方法进行内容下载。
22.一些实施例公开的内网设备的内容下载方法,内网设备之间的通讯协议使用广播协议,广播的地址配置为,内网设备的ip的最后一组数改为255,端口为12345。例如,内网设备ip为192.168.1.101,则广播地址为192.168.1.255。
23.一些实施例中,主设备发送的心跳包表达为:{
ꢀꢀ
"id":"a5ac4356-8b04-461e-9532-19d87263c4b4",
ꢀꢀ
"action":"heartbeat",
ꢀꢀ
"session":14,
ꢀꢀ
};其中,id为当前内网设备的标识,action为心跳包的类型,heartbeat表示心跳,
session为设备竞选值,该值为设备启动竞选主设备流程时随机生成,取值[1 ,1000]的正整数。
[0024]
一些实施例中,云平台下发的内容下载指令消息可以表达为:{
ꢀꢀ
"id":"a5ac4356-8b04-461e-9532-19d87263adsfd",
ꢀꢀ
"action":"download",
ꢀꢀ
"name":"奶茶广告",
ꢀꢀ
"url":"http://192.168.1.101:8888/video/1.mp4", };其中,id为下发指令的内网设备标识,平台的设备id固定为cloud-platform;action为download,表示下载内容;name表示下发内容的名称,url为内容下载的地址。 一些实施例公开的内网设备的内容下载方法,竞选流程中,处于主设备状态的内网设备配置执行的过程包括:周期性发送心跳消息;一般设置心跳的时间周期为1秒,也可以根据需求修改心跳周期;接收广播消息;若接收到到竞选主设备的指令消息,则修改主设备状态为从设备状态;若收到其他内网设备发送的心跳消息,则对比其他内网设备与自己的session值:若自己的session值大于其他内网设备的session值,则继续作为主设备;若自己的session值等于其他内网设备的session值,则重新随机生成新的session,修改自己为竞选主设备状态;若自己的session值小于其他内网设备的session值,则修改自己为从设备。
[0025]
一些实施例公开的内网设备的内容下载方法,处于主设备状态的内网设备发送心跳消息的周期设置为1s。
[0026]
一些实施例中,内网系统开始启动后,内网设备的默认状态为从设备,选出主设备后,其余的内网设备为从设备;如图3所示例,主设备在后续的作业中,配置为执行下述过程:作为主设备的内网设备以设定周期持续发送心跳消息;通常设定的周期为1秒;同时持续接收广播消息;若接收到的广播消息中,收到竞选主设备消息,表示有其他内网设备竞选主设备,则修改自己的状态,从主设备状态修改为从设备状态;若收到的广播消息中,收到其他设备的心跳消息,则说明同时存在两个主设备,则对收到的心跳消息做如下处理:对比发送心跳消息的其他内网设备与自己的session值:若自己的session值小于其他内网设备的session值,则表示内网系统中已经有更优的主设备,则修改自己的状态,即修改主设备状态为从设备状态;若自己的session值等于其他内网设备的session值,则重新随机生成新的session,修改自己为竞选主设备状态;以竞选主设备状态进行作业;若自己的session值大于其他内网设备的session值,则继续作为主设备,继续发送心跳消息。
[0027]
一些实施例公开的内网设备的内容下载方法,竞选流程中,处于从设备状态的内网设备配置执行的过程包括:监听广播消息,等待接收主设备发送的心跳包;收到主设备发送的心跳包,记录主设备的id和接收心跳包的时间;若在设定时间周期内没有收到主设备发送的心跳包,则修改自己的状态为竞选主设备状态。
[0028]
一些实施例中,内网系统开始启动后,内网设备的默认状态为从设备,如图4所示例,内网设备配置为执行下述过程,具体包括:接收广播消息,监听广播消息,等待主设备发送的心跳消息;如果收到主设备发送的心跳包,则记录该主设备的id,以及收到心跳包的时间;若接收主设备心跳超时,例如在三个周期内都没有接收到心跳包,则内网设备调整自己的状态,由从设备状态修改为竞选主设备状态。通常主设备发送心跳包的时间间隔为1s,三个周期即为3s。
[0029]
一些实施例公开的内网设备的内容下载方法,处于竞选主设备状态的内网设备配置执行的过程包括:处于竞选主设备状态期间,接收其他内网设备发送的消息;按照设定的时间间隔发送竞选消息,发送n次;若发送n次竞选消息都成功,则修改自己的状态为主设备状态;若接收到其他内网设备的竞选消息,则比较自己与其他内网设备的session值:若自己的session值大于其他内网设备的session值,则继续处于竞选主设备状态;若自己的session值小于其他内网设备的session值,则修改自己的状态为从设备状态;若自己的session值等于其他内网设备的session值,则重新生成一个新的session值,同时发送竞选消息的次数清零,重新发送竞选消息。
[0030]
一些实施例公开的内网设备的内容下载方法,竞选主设备的内网设备发送竞选消息的时间间隔设定为1s,发送次数n设定为3。
[0031]
一些实施例中,内网系统中的一些内网设备处于竞选主设备状态,如图5所示例,处于竞选主设备状态的内网设备配置为执行下述过程:内网系统开始,处于竞选主设备状态的内网设备发送竞选主设备消息;处于竞选主设备期间,同时接收广播消息;如果若接收到其他内网设备竞选消息,则比较自己与其他内网设备的session值:如果自己的session值大于其他内网设备的session值,则继续处于竞选主设备状态;如果自己的session值小于其他内网设备的session值,则修改自己的状态为从设备状态;如果自己的session值等于其他内网设备的session值,则重新生成一个新的session值,同时发送竞选消息的次数清零,重新发送竞选消息;如果发送竞选主设备消息超过3次,都成功,则修改自己的状态,即修改竞选主设
备状态为主设备状态;如果发送竞选主设备消息超过3次,不成功,则继续处于竞选主设备状态。
[0032]
一些实施例中,竞选主设备的内网设备发送的竞选消息可以表达为:{"id":"53ab20ab-4cbf-4fef-897b-124020f95b8e","action":"voting","session":14,};其中,id为当前内网设备的标识,action为voting表示竞选,session为当前设备的竞选值。
[0033]
一些实施例公开的内网设备的内容下载方法,主设备从公网下载对应内容的过程,包括:接收内容下载指令,根据指令中的地址从公网下载对应的内容;生成对外提供下载内容的本地下载地址;向外发送内容下载消息,内容下载的地址为主设备生成的本地下载地址;从公网下载内容的过程中,同时提供对外下载内容服务,直至完成下载任务。
[0034]
一些实施例中,如图6所示例,内网系统的主设备下载内容的过程,包括:作为主设备的内网设备接收平台下发的下载内容指令,根据地址下载内容;通常主设备启动内网系统的内容服务,对内网设备提供内容下载服务,内容下载使用chunk模式;平台下发内容下载指令给主设备,主设备根据指令中的地址从公网下载对应内容并在本地保存;将下载的内容保存在本地,并生成本地下载地址;向作为从设备的内网设备发送本地下载指令;通常主设备生成对外提供下载内容的地址,主设备发送的下载内容的消息,下载地址为主设备生成的本地下载地址;主设备继续下载内容,直至下载完成。通常,主设备一边继续从公网下载内容,一边向从设备提供内容下载服务,直到内容下载完成。
[0035]
一些实施例公开的内网设备的内容下载方法,从设备从主设备下载对应内容的过程包括:接收到内容下载指令消息,将该消息的name保持在本地,作为待下载任务;接收到主设备发送的内容下载消息,从本地保存的name中查找对应的待下载任务;若找到对应的待下载任务,则根据主设备发送的本地下载地址下载对应内容,若没找到对应的待下载任务,则忽略该内容下载消息;内容下载完成后,删除对应的待下载任务。
[0036]
一些实施例中,如图7所示例,从设备从主设备下载内容的过程,包括:接收下发的指令;若是平台下发的下载指令,则保持下载指令,将下载指令消息的name保持在本地,作为待下载任务;若是主设备发送的下载消息,从本地保存的name中查找对应的待下载任务;若找到对应的待下载任务,则根据主设备发送的本地下载地址下载对应内容,直至内容下载完成,内容下载完成后,删除对应的待下载任务;若没找到对应的待下载任务,则忽略该内容下载消息。
[0037]
本发明实施例公开的内网设备的内容下载方法,在多个内网设备中选出一个作为主设备,其他内网设备作为从设备,内网设备接收到下载指令时,主设备根据指令从公网下载对应的内容,然后形成本地下载地址,并向从设备提供下载内容,从设备从主设备提供的下载地址从本地下载对应内容;内网设备只需要集成内网下载模块就从内网设备中自动选出主设备,主设备离线后,其他内网设备又能自动选出新的主设备,无需人为干涉,大大降低了运维成本;主设备从公网下载对应的内容,从设备通过内网从主设备下载内容,大大降低了公网带宽的消耗,而且内容下发的实时性也得到了保证。本发明实施例公开的内网设备的内容下载方法,降低了对公网资源的占用率,提高了下载效率,提高了内容下载的实时性。
[0038]
本发明实施例公开的技术方案和实施例中公开的技术细节,仅是示例性说明本发明的发明构思,并不构成对本发明实施例技术方案的限定,凡是对本发明实施例公开的技术细节所做的常规改变、替换或组合等,都与本发明具有相同的发明构思,都在本发明权利要求的保护范围之内。
技术特征:
1.内网设备的内容下载方法,应用于内网设备组成的内网系统,其特征在于,包括:所述内网系统包括多个内网设备,且每个内网设备装载有内网下载模块,内网设备之间配置为通过广播协议进行通讯;所述内网设备配置为具有主设备状态、从设备状态或竞选主设备状态;其中,处于主设备状态的内网设备配置为需要定时发送心跳包,并向其他内网设备提供下载内容服务;处于从设备状态的内网设备配置为接收主设备的心跳包及下载指令;处于竞选主设备状态的内网设备配置为定时发送竞选主设备的指令;启动内网系统,主设备竞选流程启动,选定的内网设备作为主设备,其他内网设备为从设备;内网系统接收到内容下载指令;主设备从公网下载对应内容,从设备从主设备下载对应内容。2.根据权利要求1所述的内网设备的内容下载方法,其特征在于,竞选流程中,处于主设备状态的内网设备配置执行的过程包括:周期性发送心跳消息;接收广播消息;若接收到到竞选主设备的指令消息,则修改主设备状态为从设备状态;若收到其他内网设备发送的心跳消息,则对比其他内网设备与自己的session值:若自己的session值大于其他内网设备的session值,则继续作为主设备;若自己的session值等于其他内网设备的session值,则重新随机生成新的session,修改自己为竞选主设备状态;若自己的session值小于其他内网设备的session值,则修改自己为从设备。3.根据权利要求2所述的内网设备的内容下载方法,其特征在于,处于主设备状态的内网设备发送心跳消息的周期设置为1s。4.根据权利要求1所述的内网设备的内容下载方法,其特征在于,竞选流程中,处于从设备状态的内网设备配置执行的过程包括:监听广播消息,等待接收主设备发送的心跳包;收到主设备发送的心跳包,记录主设备的id和接收心跳包的时间;若在设定时间周期内没有收到主设备发送的心跳包,则修改自己的状态为竞选主设备状态。5.根据权利要求4所述的内网设备的内容下载方法,其特征在于,收到主设备发送心跳包的时间周期设定为3s。6.根据权利要求1所述的内网设备的内容下载方法,其特征在于,处于竞选主设备状态的内网设备配置执行的过程包括:处于竞选主设备状态期间,接收其他内网设备发送的消息;按照设定的时间间隔发送竞选消息,发送n次;若发送n次竞选消息都成功,则修改自己的状态为主设备状态;若发送n次竞选消息,不成功,继续处于竞选主设备状态;若接收到其他内网设备的竞选消息,则比较自己与其他内网设备的session值:若自己的session值大于其他内网设备的session值,则继续处于竞选主设备状态;若自己的session值小于其他内网设备的session值,则修改自己的状态为从设备状
态;若自己的session值等于其他内网设备的session值,则重新生成一个新的session值,同时发送竞选消息的次数清零,重新发送竞选消息。7.根据权利要求6所述的内网设备的内容下载方法,其特征在于,竞选主设备的内网设备发送竞选消息的时间间隔设定为1s,发送次数n设定为3。8.根据权利要求1所述的内网设备的内容下载方法,其特征在于,主设备从公网下载对应内容的过程,包括:接收内容下载指令,根据指令中的地址从公网下载对应的内容;生成对外提供下载内容的本地下载地址;向外发送内容下载消息,内容下载的地址为主设备生成的本地下载地址;从公网下载内容的过程中,同时提供对外下载内容服务,直至完成下载任务。9.根据权利要求1所述的内网设备的内容下载方法,其特征在于,从设备从主设备下载对应内容的过程包括:接收到内容下载指令消息,将该消息的name保持在本地,作为待下载任务;接收到主设备发送的内容下载消息,从本地保存的name中查找对应的待下载任务;若找到对应的待下载任务,则根据主设备发送的本地下载地址下载对应内容,若没找到对应的待下载任务,则忽略该内容下载消息;内容下载完成后,删除对应的待下载任务。
技术总结
本发明所示例公开了内网设备的内容下载方法,应用于内网设备组成的内网系统,包括:内网系统包括多个内网设备,且每个内网设备装载有内网下载模块,内网设备之间配置为通过广播协议进行通讯;内网设备配置为具有主设备状态、从设备状态或竞选主设备状态;启动内网系统,主设备竞选流程启动,选定的内网设备作为主设备,其他内网设备为从设备;内网系统接收到内容下载指令;主设备根据指令从公网下载对应的内容,形成本地下载地址并向从设备提供下载内容,从设备从主设备提供的下载地址从本地下载对应内容,降低了对公网资源的占用率,提高了下载效率,提高了内容下载的实时性。提高了内容下载的实时性。提高了内容下载的实时性。
技术研发人员:杨小明
受保护的技术使用者:北京朝歌数码科技股份有限公司
技术研发日:2023.07.31
技术公布日:2023/9/6
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
