智能网关及其方法与流程

文档序号:14124549阅读:824来源:国知局
智能网关及其方法与流程

本发明涉及一种智能网关,尤其是支持具有多种接口和通信协议的设备之间的数据通信的智能网关。



背景技术:

在例如生命科学实验室或综合检测实验室的监控系统中,各种传感器、仪器和仪表以及执行器等现场设备种类繁多,且来自于不同的厂家。这些设备通常具有多种不同的通信接口且采用多种不同的通信协议。同时,监控系统中进行数据采集、处理以及控制的控制设备(例如中央计算机或服务器),或中间控制设备(例如直接数字控制器(ddc)或可编程逻辑控制器(plc))也可能具有与这些现场设备不同的通信接口和通信协议。这导致在实验室环境下的监控系统中各个设备间通信的不兼容问题日益突显。为了解决上述问题,通常采用一种具有协议间直接转换芯片的网关来进行不同设备间的通信转换,但是采用一个协议间直接转化芯片只能实现固定的两种协议间的转换,转换方式不灵活。

此外,在例如生命科学实验室的监控系统中,需要使用很多具有不同接口和通信协议的无线现场设备。在各无线现场设备进行数据传输过程中数据有被窃取或者篡改的风险,通信安全无法得到保障。现在通常使用的解决方案是针对特定的无线通信接口开发加密算法。目前市面上的的网关对于无线通信接口的支持还是比较单一且没有加密功能。如对每个需要的无线通信接口进行加密算法的开发,那将导致一个监控系统中有多个不同类型的网关才能将所有无线设备集成,这样增加了工程实施的复杂度和成本。



技术实现要素:

本发明的一个目的是提供一种智能网关,其能够灵活方便地支持具有多种通信接口和多种通信协议的设备之间进行数据通信。本发明的另一个目的在于提供一种对于通信协议具有更好扩展性的智能网关。本发明的有一个目的在于提供一种能够更简单方便地加密处理多种无线协议传输的智能网关。

根据本发明一个实施例,本发明提出了一种用于监控系统的智能网关,所述监控系统包括能够经由所述智能网关传递业务数据的至少一个源设备和至少一个目标设备,其特征在于,所述智能网关包括:至少一个通信接口,所述源设备和所述目标设备分别与所述至少一个通信接口中之一通信连接,其中,所述通信接口从所述源设备接收源协议数据包,所述通信接口向所述目标设备发送目标协议数据包,所述源协议数据包和所述目标协议数据包使用不同的通信协议;一个处理器单元,其与所述通信接口中的每一个通信连接,所述处理器单元配置成具有至少两个协议驱动,每个所述协议驱动实现所述不同的通信协议中一种通信协议的解析和封装;一个存储单元,其与所述处理器单元通信连接,用于存储来自所述源设备的业务数据;其中,所述处理器单元配置成调用与所述源设备对应的一个所述协议驱动以从经由所述通信接口接收到的一个所述源协议数据包中解析出业务数据,并将解析得到的所述业务数据存储到所述存储单元;所述处理单元还配置成读取所述存储单元内存储的所述业务数据,并通过调用与所述目标设备对应的一个所述协议驱动将所述业务数据封装成一个所述目标协议数据包。

上述智能网关具有至少一个种通信接口,并且通过处理器单元的协议处理模块,能够接收采用不同的通信协议封装的协议数据包并转化为不包含协议信息的业务数据,还能够将业务数据转化为采用不同协议封装的协议数据包发出,实现不同协议的接口之间的数据通信。

优选地,所述处理器单元还被配置成能够对待发送的数据加密,或对接收到的加密的数据包进行解密。更为优选地,所述处理器单元包括:一个协议处理模块,该协议处理模块具有所述至少两个协议驱动;一个安全模块,该安全模块与所述协议处理模块通信连接,所述安全模块能够对来自所述协议处理模块的待发送的协议数据包加密,或对接收到的加密的协议数据包进行解密,并将解密后的协议数据包发送给所述协议处理模块。可选地,所述处理器单元包括:一个协议处理模块,该协议处理模块具有所述至少两个协议驱动;一个安全模块,该安全模块与所述协议处理模块通信连接,所述安全模块能够对待发送的业务数据加密并将其发送给所述协议处理模块,或对来自所述协议处理模块的数据进行解密,并将解密后的得到的业务数据存储在存储单元中。更为优选地,所述安全模块包括至少两个彼此算法不同的加密/解密模块,且所述安全模块根据预先设置选择对应的加密/解密模块执行所述解密和所述加密。

上述智能网关,通过处理器单元的协议数据处理模块和安全模块,能够接收采用不同的通信协议封装的加密协议数据包并转化为不包含协议信息的业务数据,还能够将业务数据转化为采用不同协议封装的加密协议数据包发出,实现不同协议的接口之间的加密数据通信,能够更简单方便地加密处理多种无线设备之间的无线数据传输。

优选地,所述源设备可以为一个服务器,所述处理器单元能够接收所述服务器发送的协议驱动数据和/或安全数据,并根据所述协议驱动数据和/或安全数据更新所述协议处理模块内的所述协议驱动或所述安全模块内的所述加密/解密模块,其中所述安全数据包括加密算法。由此,当需要扩充采用不同协议的接口时,只需增加相应的通信接口和更新协议驱动,转换方法灵活,且扩展性好。而且,加密方法也可根据需要而灵活更新和扩展。

根据本发明另一个方面,智能网关中的安全模块利用一个密钥进行所述加密和解密,且所述处理器单元还包括一个密钥认证模块,所述密钥认证模块具有一个认证驱动,所述密钥认证模块能够响应于一个源设备或一个目标设备的请求而生成一个包含一个密钥的密钥数据包,所述密钥数据包被发送到所述安全模块,且被经由所述通信接口发送到发出请求的所述源设备或所述目标设备。采用这种密钥认证方式,每一个接入该智能网关的网络内的设备均需要先从智能网关处得到密钥认证,这样将进一步加强了监控系统的网络以及数据传输的安全性。

可选地,上述协议驱动实现的协议包括:modbusrtu、modbustcp、bacnetmstp和/或bacnetip。上述通信接口包括紫蜂接口、保真接口,蓝牙接口、射频识别接口、3g接口、gprs接口、无线低频通信接口、rs-485接口和/或以太网接口。

可选地,源设备为所述监控系统中的传感器、探测器、执行器、测试仪表或仪器中任一,且所述目标设备为服务器、数字控制器、移动控制终端中任一;或者,所述源设备为服务器、数字控制器、移动控制终端中任一,且所述源设备为所述监控系统中的传感器、探测器、执行器、测试仪表中任一。

根据本发明另一个方面,本发明还提出一种用于监控系统中的智能网关的方法,其中所述监控系统包括能够经由所述智能网关传递业务数据的至少一个源设备和至少一个目标设备,所述源设备和所述目标设备采用不同的通信协议封装的协议数据包发送或接收所述业务数据,所述智能网关具有至少一个可与所述源设备和所述目标设备通信连接的通信接口以及能够实现所述不同的通信协议的至少两个协议驱动。所述方法包括:经由所述通信接口,接收来自一个源设备的源协议数据包;调用与所述源设备对应的一个所述协议驱动以所述源协议数据包中解析出业务数据,并存储该解析得到的所述业务数据;读取所存储的所述业务数据,并通过调用与所述目标设备对应的一个所述协议驱动将所述业务数据封装成一个目标协议数据包;经由所述通信接口,将所述目标协议数据包发送给所述目标设备。

优选地,在解析协议数据包之前,对来自所述源设备的加密后的源协议数据包进行解密;在发生目标协议数据包之前,对待发出的目标协议数据包进行加密;其中,所述加密算法和解密算法不同,或者加密所用密钥不同于解密所用密钥。

本发明还提供一种包括上述智能网关的监控系统。该监控系统优选为生命科学实验室的监控系统,其包括多个无线设备,这些无线设备通过该上述智能网关与移动控制终端、服务器或数字控制器进行数据通信。该监控系统包括至少一个源设备和至少一个目标设备,其中源设备和目标设备采用不同于所述源设备的通信协议封装的协议数据包发送或接收数据。所述监控系统还包括如上所述的智能网关,所述智能网关与所述源设备和所述目标设备通信连接。

下文将以明确易懂的方式,结合附图说明优选实施例,对安全无线网关的上述特性、技术特征、优点及其实现方式予以进一步说明。

附图说明

以下附图仅对本发明做示意性说明和解释,并不限定本发明的范围。

图1是根据本发明一个实施例的智能网关的结构示意图。

图2是根据本发明另一个实施例智能网关的结构示意图。

图3是根据本发明又一个实施例的智能网关的示意图。

图4是根据本发明再一个实施例的智能网关的示意图。

图5和图6是根据本发明另一个实施例的智能网关的方法流程图。

标号说明

100智能网关

10处理器单元

12协议处理模块

122、124协议驱动

16安全模块

18密钥认证模块

20存储单元

31、33通信接口

42源设备

44目标设备

50服务器。

具体实施方式

为了对发明的技术特征、目的和效果有更加清楚的理解,现对照附图说明本发明的具体实施方式,在各图中相同的标号表示结构相同或结构相似但功能相同的部件。

在本文中,“示意性”表示“充当实例、例子或说明”,不应将在本文中被描述为“示意性”的任何图示、实施方式解释为一种更优选的或更具优点的技术方案。

图1示意性地示出了根据本发明一个实施例的智能网关100的结构框图。在依据图1所示的示意性实施方式中,监控系统可以是任何具有现场设备和中央控制设备的监控系统。例如,监控系统可以是实验室环境下的实验系统,其现场设备例如是各种不同类型的传感器、探测器、监控仪器或仪表,或例如步进电机、阀门控制等执行器、甚或由继电器控制的机械开关。在本发明中,优选地,监控系统可以是生命特征监控系统,其现场设备例如为用于监测生命特征的探测器等。这些现场设备和中央控制设备均连接到如图1所示的智能网关100上且经由智能网关100进行通信。

为了描述方便,图1的例子仅仅示意性地示出了监控系统中两个设备经由智能网关100相互通信的情况,一个设备为源设备42,另一个设备为目标设备44。源设备42经由智能网关100传递业务数据给目标设备44。这里,在一种情况下,源设备42可以为监控系统中上述的任一现场设备,如传感器或测量仪表,目标设备44可以为中央计算机、服务器或中间控制设备中任一,或者反之。在一种实例中,作为源设备42的传感器将其采集的数据(可称之为业务数据或实体数据)经由智能网关100传递给作为目标设备44的服务器,以在服务器侧进行大规模的数据处理或数据分析。另一种实例中,作为源设备42的中央计算机/控制器将其指令或配置参数(可称之为业务数据或实体数据)经由智能网关100传递给作为目标设备44的传感器或执行器,以指示现场的执行器动作或配置现场的传感器。

如前述及,在图1的例子中,监控系统包括能够经由智能网关100传递业务数据的一个源设备42和一个目标设备44,源设备42和目标设备44各自采用彼此不同的通信协议封装的协议数据包发送或接收数据。

如图1所述,根据本发明提出的智能网关100包括多个通信接口31和33、一个处理器单元10和一个存储单元20。这里,通信接口的种类和数量取决于智能网关100所应用于的监控系统内源设备42与目标设备44所使用的通信接口类型和接入的源设备42与目标设备44的数量。例如,通信接口可以包括紫蜂(zigbee)接口、保真(wifi)接口,蓝牙(bluetooth)接口、3g接口、gprs接口、射频识别(rfid)接口、无线低频通信(433m)接口31、rs-485接口和以太网接口中的至少之一。当然并不局限于此,在其他示意性实施方式中,也可以根据实际需要增加其他需要的通信接口。在图1示意性实施方式中,源设备42与通信接口31采用无线通信(例如wifi)连接,目标设备44与通信接口33采用有限通信连接。当然,如果源设备42和目标设备44都为采用无线方式连接智能网关100时,也可以经由智能网关100上的同一个无线通信接口(例如wifi接口31)连接到智能网关。当然,实际使用中,源设备42和目标设备44一般按照如图1示意的情况连接到不同的通信接口。

在图1例子中,处理器单元10与通信接口31、33中的每一个通信连接。处理器单元10包括一个协议处理模块12,协议处理模块12具有例如两个协议驱动122、124。这里,协议驱动的种类和数目同样取决于所应用于的监控系统内源设备42与目标设备44所使用的通信协议的种类和数目,并可在构建监控系统时预先为智能网关配备所需的多个协议驱动。在示意性实施方式中,协议驱动所实现的协议包括modbusrtu、modbustcp、bacnetmstp和bacnetip,甚或任何用户自定义的协议等。当然并不局限于此,在其他示意性实施方式中,也可以根据实际需要增加其他需要的协议驱动。每个协议驱动122、124实现一种通信协议的解析和封装。每个协议驱动可以为一个以开放出的协议处理芯片,例如modbustcp芯片或bacnetip芯片,也可以是实现为fpga形式的芯片。这里,每个协议驱动还可以是一段软件驱动代码,其可以驻留在处理器单元的程序存储单元中。当处理器单元10需要使用某一协议的协议驱动时,协议处理模块12启动或调用相应的协议驱动,以实现相应的协议解析或协议封装。

通信协议(或与之对应的协议驱动)与通信接口彼此独立,一个接口可支持多种协议,同样协议也可用于不同接口。例如,modbusrtu协议可用于rs485或无线低频通信等接口;modbustcp可用于以太网、wifi,甚或3g等接口;bacnetmstp协议用于有线rs485接口,bacnetip协议用于以太网或wifi等接口。

存储单元20与处理器单元10通信连接,用于存储来自源设备42的业务数据。存储单元20所存储的业务数据为所需传递的净数据与任何协议无关。在运行过程中,例如通信接口31接收源设备42发送的源协议数据包。协议处理模块12经过预先配置能够接收来自通信接口31的源协议数据包(例如bacnetip协议数据包),并通过启动预先设置好的与源设备42所采用的通信协议对应的一个协议驱动122,从协议数据包解析出业务数据,并将解析得到的业务数据存储到存储单元20。协议处理模块12还配置成能够读取存储单元20内存储的业务数据,并通过启动预先设置好的与目标设备44对应的一个协议驱动124将业务数据封装成一个目标协议数据包(例如modbustcp),并将封装的目标协议数据包经由通信接口33(例如以太网接口)发送给目标设备44。

如上所述,智能网关100通过处理器单元的协议处理模块,能够接收采用不同的通信协议封装的协议数据包并转化为不包含协议信息的业务数据,还能够将业务数据转化为采用不同协议封装的协议数据包并发出,实现不同协议的接口之间的数据通信,当需要扩充采用不同协议源设备或目标设备时,只需增加相应的通信接口和协议驱动芯片。由此,这种智能网关的协议转换更加灵活,且扩展性好。

在示意性实施方式中,通信接口包括紫蜂接口、保真接口,蓝牙接口、射频识别接口、无线低频通信接口、gprs接口、3g接口、rs-485接口和以太网接口。当然并不局限于此,在其他示意性实施方式中,也可以根据实际需要增加其他需要的通信接口。

图2示意性地示出了根据本实用新型另一个实施例的智能网关200。在依据图2所示的示意性监控系统中,移动控制端45、48以及一个服务器50均可以连接到智能网关200上,以对现场设备42、46进行控制。监控系统中新增了一个源设备46(例如传感器),其使用例如有线的rs485接口与智能网关200中的rs485接口34通信连接。源设备46所使用的通信协议例如为bacnetmstp协议,目前智能网关200尚且不能支持。对于这种情况,智能网关200可以与一个服务器50通信连接,例如经由以太网线等有线连接。这时,服务器50充当源设备。处理器单元10能够经由智能网关200上的一个以太网通信接口(未示出)从服务器50接收以太网协议数据,该以太网协议数据包括一个bacnetmstp驱动。协议处理单元12从以太网协议数据包中解析出bacnetmstp驱动,并以此更新该协议处理模块12内的协议驱动,即,增加一个协议驱动126。可选地,协议处理模块12还可以将解析出的bacnetmstp驱动烧录到一个该模块12内的一个协议驱动芯片中,从而更新一个已有的协议驱动芯片。采用这种方式,智能网关可以灵活地根据实际需要扩展或更新其所支持的通信协议,从而使得智能网关在应用范围上的扩展更加灵活。

在依据图1和图2所示的示意性实施方式中,源设备42为监控系统中的传感器、探测器、执行器、测试仪表中的任意一种,且目标设备44为服务器50、数字控制器、移动控制终端中任意一种;或者,源设备42为服务器50、数字控制器、移动控制终端中任意一种,且源设备42为监控系统中的传感器、探测器、执行器、测试仪表中任意一种。事实上,数据通信在智能网关通信的双方是双向的。

本发明还提供一种监控系统,如图1或图2所示,该监控系统包括至少一个源设备42、至少一个目标设备44和一个上述的智能网关,所述源设备42和所述目标设备44采用不同的通信协议封装的协议数据包发送或接收所述业务数据。

在示意性实施方式中,处理器单元10采用armcortex-a15内核的处理器芯片。当然并不局限于此,在其他示意性方式中可以为任意满足硬件需求的处理器电路或处理器芯片。

图3示意性地示出了根据本发明一个实施例的智能网关300的结构示意图。图3中与图1相同的部件采用相同的附图标记,其功能也基本相同或相似,这里不再赘述。与图1不同,在图3所示的例子中,源设备42和目标设备46均通过无线通信方式连接到智能网关300。可选地,源设备和目标设备中任一一个经由无线通信方式连接到智能网关300。考虑到无线数据传输的安全性问题,在图3所示的例子中,处理器单元10同样包括一个协议处理模块12,其具有至少两个协议驱动,每个协议驱动用于按照一种通信协议解析或封装数据。这里,协议驱动可以是软件层面的驱动代码,也可是已经开发好的协议处理芯片。

除了协议处理模块12外,处理器单元10还包括一个安全模块16,其负责实现加密或解密处理。在图3的例子中,安全模块16与协议处理模块12通信连接。在一个实施例中,现场设备与智能网关10均按照预先设定的加密/解密算法以及利用预先设定或从第三方获得的密钥进行无线传输加密。例如,假设源设备42预先保留有一个密钥,或者从任意第三方认证机构获得了一个有效密钥,则源设备42可利用该密钥对其待发出的源协议数据包进行加密,形成加密的原协议数据包。这时,无线通信接口31接收来自源设备42的加密的源协议数据包。安全模块16配置成能够将经由无线通信接口31接收的加密的源协议数据包解密为一个源协议数据包,并发送给协议处理模块12。协议处理模块12配置成能够接收来自安全模块16的源协议数据包,并通过启动或调用与该源设备对应的一个协议驱动124从解密后的源协议数据包解析出业务数据,然后将解析得到的业务数据存储到存储单元20。协议处理模块12还配置成能够读取存储单元20内存储的业务数据,并通过启动或调用与目标设备44对应的一个协议驱动124将业务数据封装成一个目标协议数据包,并发送给安全模块16。安全模块16配置成能够将来自协议处理模块12的目标协议数据包加密成加密的目标协议数据包,并将加密的目标协议数据包发送到无线通信接口33。无线通信接口33最终将加密的目标协议数据包发送到目标设备44。

在此实施例中,源设备42和智能网关300之间的无线传输,以及智能网关300和目标设备46之间的无线传输均为加密传输,从而保证数据安全。而且,由于智能网关300在源和目标设备之间起到中继的作用,源设备和目标设备可以采用完全不同的密钥或完全不同的加密算法。这样,由于智能网关具有安全模块16,监控系统可以兼容采用多种不同的安全加密方式的设备,同时确保整个监控环境下的数据安全。可选地,监控系统还可以仅针对无线数据传输采取安全加密处理。例如图1所示的例子中,源设备和智能网关之间的无线传输可以采用加密处理,而智能网关和目标设备之间的有线传输可以不采用加密处理。当然,可选地,对于安全等级要求比较高的监控系统,加密处理可以施加到任何有线或无线传输上。

在图3所示的例子中,安全模块16对封装好的协议数据包进行加密,或对加密的协议数据包进行解密。可选地,安全模块16还可以仅对业务数据进行加密。例如,在进行协议封装前,源设备42可利用其密钥对业务数据进行加密,在将加密的业务数据封装成源协议数据包,发送给智能网关300。在智能网关300侧,协议处理模块12先对经由通信接口31接收的源协议数据包进行解析,得到其中加密的业务数据。加密的业务数据由安全模块16进行解密,得到业务数据,存入存储单元20中。类似地,安全模块16可以从存储单元20中读出业务数据,对其进行加密后得到加密的业务数据,送入协议处理模块12再进行协议封装。

图4示例性地示出了根据本发明又一个实施例的智能网关400的结构示意图。在图4中与图1~3中相同的部件采用相同的附图标记,其功能也相似,这里不再赘述。

与图3不同,除了协议处理模块12和安全模块16外,智能网关400中的处理器单元10还包括一个密钥认证模块18。密钥认证模块18具有一个认证驱动,密钥认证模块18能够响应于一个源设备42的请求而生成一个密钥数据包。一方面,该密钥数据包发送给安全模块16,供安全模块16进行加密和解密使用。另一个方面,密钥数据包经由例如无线通信接口31发送给源设备42。源设备42能够使用该密钥数据包内的密钥对其待发出的数据或协议数据包进行加密。安全模块16能够使用该密钥数据包内的密钥将无线通信接口31接收的经过源设备42加密的源协议数据包解密为协议数据包,还能使用该密钥将协议处理模块12封装的目标协议数据包加密。与源设备42类似,目标设备44也可以采用相同的方式请求密钥。可选地,在智能网关400所管理的应用环境中,每一个设备(目标设备或源设备)均需要向智能网关400请求进行密钥认证,且在获得密钥后,方可接入该应用环境的网络中。

图5是用于说明智能网关通信方法的流程示意图。图5示出的方法流程图适用于图1~4中所提及的应用场景。即,监控系统包括能够经由智能网关传递业务数据的至少一个源设备42和至少一个目标设备44,且源设备和所述目标设备采用不同的通信协议封装的协议数据包发送或接收所述业务数据。其中的智能网关具有至少一个可与所述源设备和所述目标设备通信连接的通信接口以及能够实现上述不同的通信协议的至少两个协议驱动。如图5所示,智能网关执行的方法从步骤s1开始。

在步骤s1中,智能网关经由通信接口31接收来自一个源设备42的源协议数据包。

在步骤s2中,智能网关调用与该源设备42对应的一个所述协议驱动122以从所述源协议数据包中解析出业务数据,并存储该解析得到的业务数据。

在步骤s3中,智能网关读取所存储的业务数据,并通过调用与一个目标设备44对应的一个协议驱动124将所述业务数据封装成一个目标协议数据包;

在步骤s4中,智能网关经由其通信接口33,将封装好的目标协议数据包发送给目标设备44。

优选地,根据本发明的智能网关还能够实现无线数据的加密传输。这种情况下,来自源设备的数据为加密后的原协议数据包。具体操作方法为,在上述步骤s2之前还包括步骤s21,且在步骤s4之前包括步骤s41。具体地,在步骤s21中,即在解析协议数据包之前,对来自所述源设备42的加密后的源协议数据包进行解密,然后再对解密后的源协议数据包进行解析。在步骤s41中,在发送目标协议数据包之前,对待发出的目标协议数据包进行加密;其中,所述加密算法和解密算法不同,或者加密所用密钥不同于解密所用密钥。

更为优选地,智能网关所在的网络可以构成一个安全网络环境,每个接入该网络环境的设备(无论传感器还是服务器)均需要在智能网关处进行密钥认证。密钥认证的具体步骤如图6所示,即,在步骤s61中,智能网关响应于一个设备(源设备或目标设备)的请求而生成一个密钥数据包。在步骤s62中,将所述密钥数据包发送给所述设备。在s63中,密钥认证中所生成的包含在密钥数据包内的密钥可以用来对于该设备相关的协议数据包进行加密或解密。

本发明还提供一种监控系统,包括至少一个源设备42和至少一个目标设备44,所述源设备42和所述目标设备44采用不同的通信协议封装的协议数据包发送或接收所述业务数据,源设备42经由上述提及的智能网关向目标设备44传递业务数据。

应当理解,虽然本说明书是按照各个实施例描述的,但并非每个实施例仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。

上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施例的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方案或变更,如特征的组合、分割或重复,均应包含在本发明的保护范围之内。

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