一种基于RED-MOS工业物联网操作系统的设备发布与订阅设计方法与流程

文档序号:18135362发布日期:2019-07-10 10:34阅读:644来源:国知局
一种基于RED-MOS工业物联网操作系统的设备发布与订阅设计方法与流程

本发明涉及工业物联网技术领域,尤其是涉及一种基于red-mos工业物联网操作系统的设备发布与订阅设计方法。



背景技术:

工业物联网技术是新一代的信息通信技术的重点研究方向,各行各业都在关注这一新兴的信息领域。由于目前工业物联网面临的一些问题,制约了工业物联网大规模的应用。首先,工业物联网相关协议种类繁多,众多的标准协议之间无法相互兼容,导致大规模的部署困难。其次,工业物联网技术的应用领域宽泛,各领域的数据结构具有不同的特点,格式不统一,妨碍了物联网的标准化,不利于物联网的发展。最后,发布与订阅在工业物联网的应用中是一种重要的通信方式,但还未有完善的发布与订阅机制。

red-mos是智慧矿山物联网操作系统,由基础设施层、应用开发者工具、相关业务功能模块三部分组成。red-mos通过基础设施层实现数据集成、边缘处理及数据统一接入,实现数据传输的可管可控,并为上层业务应用和大数据分析应用提供了云解决方案。通过red-toolchain开发工具链、边缘计算ai工具等应用开发者工具,实现相关矿山应用的快速开发和系统的快速融合。通过内置的“全息展示”、“智慧安全”、“智慧生产”及“设备管理”等功能模块,为矿山企业提供智慧矿山基础服务功能。

xmpp是一种基于xml语言的即时消息传输规范,主要应用于即时消息通信和在线现场探测,已经由ietf(theinternetengineeringtaskforce,互联网工程任务组)正式完成了标准化工作。xmpp协议作为一种开放式的即时通信协议,具有良好扩展性和实时性,已经广泛应用于互联网。相比于其他物联网应用层协议,将xmpp协议引入工业物联网可更有效解决上述问题,实现互联网与工业物联网之间的发布/订阅交互,有助于实现人与物、物与物之间的互联互通。



技术实现要素:

本发明提供了一种基于red-mos工业物联网操作系统的设备发布与订阅设计方法,根据red-mos智慧矿山物联网操作系统中发布与订阅的应用需求,优化和改进了传统的xmpp发布与订阅协议,对传统的xmpp服务器职能进行扩展,使服务器不再只作为数据传输的通道,而是肩负更多的发布与订阅管理功能。

其技术方案如下所述:

一种基于red-mos工业物联网操作系统的设备发布与订阅设计方法,应用在基于xmpp协议的工业物联网设备上,设备中的发布与订阅系统由发布者、订阅者和xmpp服务器组成,服务器作为数据传输通道,同时管理和维护发布与订阅关系,包括接收发布者发布的消息,推送消息到所有已订阅的订阅者,并增加了对休眠功能的支持,在发布者休眠时代理休眠服务。

订阅者只需将感兴趣的条目发送给服务器请求服务,发布者将底层信息对象化处理,提供周期性和事件性的数据发布服务,满足订阅规则时发布对象消息,使得xmpp的客户端能够作为订阅者角色,也能够作为发布者角色,也能够同时作为发布者和订阅者双重角色。

服务器管理发布者与订阅者之间的订阅关系,当发布者按照周期性或事件性发布数据到服务器时,无需指定目的节点,且只需发布一次,由服务器转发至一个或多个订阅者。

发布与订阅设计方法的对象包括发布与订阅数据服务对象、发布与订阅休眠管理对象、发布与订阅关系管理对象,服务器的数据库存储采用面向对象模型,使数据模块化,对象中封装了属性及其方法,属性是对象的某种特性,方法是访问的接口和功能模块。

数据服务对象提供了对发布与订阅相关数据进行访问或配置的接口;休眠管理对象为节点支持休眠功能的发布与订阅提供支持;关系管理对象是为服务器管理发布者和订阅者之间的发布与订阅关系。

节点在休眠工作模式下,是间歇性工作,工作完成后进入休眠,休眠一会又唤醒工作,循环进行。.

发布与订阅设计方法的流程设计包括资源发现交互流程、订阅流程、取消订阅流程和消息发布流程,根据发布者是否支持休眠,将发布与订阅流程中订阅和取消订阅流程分为两种方式,一种为正常工作模式,另一种为睡眠工作模式。

资源发现是发布者为订阅者提供查询某个节点可提供的发布与订阅服务的过程。

消息发布流程是指发布者休眠工作时,不用管理发布消息时发给谁,只需关心订阅的事件,产生事件后即发送给服务器,由服务器来推送。

发布与订阅的语法设计使异构网络之间发布与订阅的交互格式得到统一。

本发明根据red-mos智慧矿山物联网操作系统中发布与订阅的应用需求,优化和改进了传统的xmpp发布与订阅协议,提出了本文的发布与订阅方法。首先,提出的总体设计方案中,对传统的xmpp服务器职能进行了扩展,使服务器不再只作为数据传输的通道,而要肩负起更多的发布与订阅管理功能。主要是在服务器中添加了对发布与订阅关系的管理和维护,以及对休眠功能的支持,从而降低发布者的功能复杂度,提高发布效率,并实现对休眠工作模式设备的支持。其次,介绍了本方法实现涉及到的对象设计、流程设计和语法设计。利用面向对象的设计思想,使数据模块化,实现以操作对象的方式进行发布与订阅对象的管理,提高系统的可靠性和灵活性;由于发布者不再管理和维护发布与订阅关系,所以对发布与订阅流程进行了设计,对其流程中服务器和发布者各自职能进行了详细阐述,并增加了对休眠的支持;然后对发布与订阅流程中所涉及到的语法进行了设计,使异构网络之间发布与订阅的交互格式得到统一。

附图说明

图1是发布与订阅系统结构图;

图2是对象模型图;

图3是资源发现交互流程图;

图4是正常工作模式订阅流程图;

图5是休眠工作模式订阅流程图;

图6是正常工作模式取消订阅流程图;

图7是休眠工作模式取消订阅流程图;

图8是消息发布流程图。

具体实施方式

如图1所示,本发明提供的基于red-mos工业物联网操作系统的设备发布与订阅设计方法,应用在基于xmpp协议(xmpp是一种基于标准通用标记语言的子集xml的协议,它继承了在xml环境中灵活的发展性)的工业物联网设备上,设备中的发布与订阅系统由发布者、订阅者和xmpp服务器组成,其中发布者、订阅者都为xmppclient(客户端),服务器(server)作为数据传输通道,同时管理和维护发布与订阅关系,包括接收发布者发布的消息,推送消息到所有已订阅的订阅者,并增加了对休眠功能的支持,在发布者休眠时代理休眠服务。

本发明的实现过程包括如下步骤:

步骤一:设计需求分析;

分析red-mos(mos:矿山操作系统)智慧矿山物联网操作系统的不同应用场景需求,考虑资源受限设备运行时占用资源和能耗的问题,并需要对具备休眠功能的设备进行支持。设计发布与订阅方法时需满足以下需求:

①发布与订阅方法轻量化;

②支持工业应用数据周期性发布和事件性发布;

③支持具备休眠代理的发布与订阅方法;

④统一发布与订阅信息交互格式。

步骤二:发布与订阅方法的总体设计;

根据red-mos智慧矿山物联网操作系统需求,需要对原有的xmpp发布与订阅扩展协议进行优化和改进。基于xmpp协议的red-mos智慧矿山物联网操作系统设备发布与订阅方法的发布与订阅系统仍由发布者、订阅者和xmpp服务器组成。订阅者只需将感兴趣的条目发送给服务器请求服务,发布者将底层信息对象化处理,提供周期性和事件性数据发布服务,满足订阅规则时发布对象消息。服务器不仅作为数据传输通道,需管理和维护发布与订阅关系,接收发布者发布的消息,推送消息到所有已订阅的订阅者,并在发布者休眠时代理休眠服务。如图4所示,xmpp的客户端可以作为订阅者角色,也可以作为发布者角色,也可同时作为发布者和订阅者双重角色。

这样设计具有的优势:

(1)发布者与订阅者的关系转换为发布者与xmpp服务器之间的订阅关系。作为发布者的red-mos智慧矿山物联网操作系统设备,不再维护与订阅者之间的订阅关系,特别是当有多个订阅者存在的情况下,可降低red-mos智慧矿山物联网操作系统设备xmpp客户端的功能复杂度。

(2)由于服务器管理发布者与订阅者之间的订阅关系,当发布者按照周期或事件发布数据到服务器时,无需指定目的节点,且只需发布一次,由服务器转发至一个或多个订阅者,降低了red-mos智慧矿山物联网操作系统设备发布的数据量,节约了功耗。

(3)便于维护管理订阅者与具备休眠功能的xmpp客户端之间的订阅关系。

步骤三:发布与订阅方法的对象设计;

①面向对象模型

面向对象是一种重要的程序设计思想,现在已经扩展到数据库、应用平台、交互式界面等等领域。发布者面向数据对象,其中面向对象模型则是其数据库存储描述的一种方式。面向对象的数据库可以使得数据的模块化并有重用性,减少维护成本,提高系统的可靠性和灵活性。如图2所示,一般来说,对象(object)中封装了属性及其方法。属性是对象的某种特性,方法是访问的接口和功能模块。底层(lowerlayer)为传输层(transportlayer),面向应用层(application)的对象(object),基于对象的设计,可以方便对软件进行修改、补充、扩展和升级。

②发布与订阅数据服务对象

数据服务对象提供了对发布与订阅相关数据进行访问或配置的接口。数据服务对象的设计主要考虑了red-mos智慧矿山物联网操作系统应用的场景。如图3所示,订阅者向服务器发出资源发现请求,服务器转发资源发现请求到发布者,发布者向服务器发送资源发现相应,再通过服务器向订阅者发送转发资源发送响应。

③发布与订阅休眠管理对象

节点休眠管理对象为节点支持休眠功能的发布与订阅提供支持。如图5所示,休眠工作模式下,不是节点完全休眠,而是间歇性工作,工作完成后进入休眠,休眠一会又唤醒工作,循环进行。灵活运用休眠工作模式,既可实现对设备的管理,同时降低了大量功耗。

④发布与订阅关系管理对象

发布与订阅关系管理对象是为服务器管理发布者和订阅者之间的发布与订阅关系而定义的。

步骤四:发布与订阅方法的流程设计;

发布与订阅方法的流程设计包括资源发现交互流程、订阅流程、取消订阅流程和消息发布流程。由于在red-mos智慧矿山物联网操作系统中,既包含不支持休眠功能的设备,同时也包含支持休眠工作的设备。所以,根据发布者是否支持休眠,将发布与订阅流程中订阅和取消订阅流程分为两种方式,一种为正常工作模式,另一种为睡眠工作模式。

①资源发现流程的设计

资源发现是发布者为订阅者提供查询某个节点可提供的发布与订阅服务的过程。订阅者在订阅之前,首先应该获取发布者包含哪些可以提供发布与订阅服务的对象,对象包含它的属性信息。

②订阅流程的设计

在本方法中,发布者具有订阅请求的鉴权,而不是服务器。服务器代理了发布者的大部分管理功能,但订阅时,是否提供发布与订阅服务,需要发布者来给出确定。

③取消订阅流程的设计

同于订阅流程的设计,如图6和图7所示,取消订阅时服务器会代理所有发布者(包括正常和休眠模式工作的节点)取消订阅的权利,使xmpp客户端发送取消订阅之后,不管发布者是否在发布该消息,服务器都立即停止对该取消订阅的客户端停止发布消息。

④消息发布流程的设计

在满足订阅者能及时获取感兴趣消息的前提下,本方法支持了发布者休眠时代理发布消息功能,同时去除了管理维护发布与订阅关系的功能。如图8所示,使发布者休眠工作时,不用管理发布消息时发给谁,只需关心订阅的事件,产生事件后即发送给服务器,由服务器来推送。

步骤五:发布与订阅的语法设计;

利用专用的语法对发布与订阅语法进行设计编写,使异构网络之间发布与订阅的交互格式得到统一。

本发明根据red-mos智慧矿山物联网操作系统中发布与订阅的应用需求,优化和改进了传统的xmpp发布与订阅协议,提出了本文的发布与订阅方法。首先,提出的总体设计方案中,对传统的xmpp服务器职能进行了扩展,使服务器不再只作为数据传输的通道,而要肩负起更多的发布与订阅管理功能。主要是在服务器中添加了对发布与订阅关系的管理和维护,以及对休眠功能的支持,从而降低发布者的功能复杂度,提高发布效率,并实现对休眠工作模式设备的支持。其次,介绍了本方法实现涉及到的对象设计、流程设计和语法设计。利用面向对象的设计思想,使数据模块化,实现以操作对象的方式进行发布与订阅对象的管理,提高系统的可靠性和灵活性;由于发布者不再管理和维护发布与订阅关系,所以对发布与订阅流程进行了设计,对其流程中服务器和发布者各自职能进行了详细阐述,并增加了对休眠的支持;然后对发布与订阅流程中所涉及到的语法进行了设计,使异构网络之间发布与订阅的交互格式得到统一。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1