CN104734872B - 一种基于软件定义网络的工业回程网实现方法与系统 - Google Patents

一种基于软件定义网络的工业回程网实现方法与系统 Download PDF

Info

Publication number
CN104734872B
CN104734872B CN201310711910.6A CN201310711910A CN104734872B CN 104734872 B CN104734872 B CN 104734872B CN 201310711910 A CN201310711910 A CN 201310711910A CN 104734872 B CN104734872 B CN 104734872B
Authority
CN
China
Prior art keywords
module
data
strategy
unit
data layer
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
CN201310711910.6A
Other languages
English (en)
Other versions
CN104734872A (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.)
Shenyang Institute of Automation of CAS
Original Assignee
Shenyang Institute of Automation of CAS
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 Shenyang Institute of Automation of CAS filed Critical Shenyang Institute of Automation of CAS
Priority to CN201310711910.6A priority Critical patent/CN104734872B/zh
Publication of CN104734872A publication Critical patent/CN104734872A/zh
Application granted granted Critical
Publication of CN104734872B publication Critical patent/CN104734872B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种基于软件定义网络的工业回程网实现方法与系统。本发明方法包括:策略分配/更新阶段、模块加载/更新阶段和订阅/发布数据传输阶段。本发明系统包括管理服务器和数据层设备。其中,管理服务器包括用户接口单元、数据层接口单元、第一模块更新单元、第一策略更新单元、总模块库单元、总策略库单元、策略生成引擎单元、用户配置单元等。数据层设备包括输入信息提取单元、策略执行单元、子策略库单元、子模块库单元、第二策略更新单元、第二模块更新单元、数据层接口单元等。通过本发明的方法和系统,能够动态的、灵活的实现和更新订阅/发布网络功能,解决当前网络灵活性差、维护成本高、更新困难的问题。

Description

一种基于软件定义网络的工业回程网实现方法与系统
技术领域
本发明涉及网络技术领域,更具体的说是涉及一种基于软件定义网络的工业回程网实现方法与系统。
背景技术
软件定义网络(SDN)是目前一种新型网络创新架构,由于传统的网络设备(交换机、路由器)的固件是由设备制造商锁定和管理,所以SDN希望将网络管理与物理网络拓扑分离,从而摆脱硬件对网络架构的限制。这样用户便可以像升级、安装软件一样对网络架构进行修改,满足企业对整个网站架构进行调整、扩容或升级。而底层的数据层设备,如交换机、路由器等硬件则无需替换,节省大量的成本的同时,网络架构迭代周期将大大缩短,为核心网络及应用的创新提供了良好的平台。
回程网是在位于广域网络(Internet网络)和接入网络(如无线传感器网络)之间的传输网络,一般覆盖范围为几平方公里到十几平方公里,属于中等规模网络。如面向油田的工业回程网,一般架设在油田油井的监控采集传感器网络和管理控制中心之间,解决传感器网络接入广域网“最后几公里”的传输问题。
Pub/Sub模式即发布/订阅模式,在Pub/Sub传输模式的网络中,发布者不需要知道什么样的订阅者订阅其信息,只是将信息发布到网络中,由网络根据订阅者的订阅请求,将订阅者所需信息发送到订阅者手中,同样,订阅者只接收感兴趣的消息,而不需要知道什么样的发布者发布的消息。这种Pub/Sub的网络模式具有更强的灵活性和可扩展性,已经被用于如热点推送等许多应用场景,并取得不错的效果。
在工业回程网络中,为保证传输的安全性、Qos等性能,往往需要网络设备具备各种各样的功能,而且如果需要支持Pub/Sub传输模式,数据传输功能要更加多样(单播,多播,组播,聚合)且变化频繁。在现有技术中,这些功能往往是固化在网络设备中,通过用户指令对其进行配置。随着网络技术的日新月异,应用需求的不断推陈出新,网络设备的功能和技术的更新越来越频繁。当网络规模较大,网络设备数量较多时,如果需要网络更改或者添加新的功能时,需要人工通过配置命令,逐个设备进行配置,操作起来十分困难。并且如果网络设备本身并不支持新的功能时,还需要更换设备硬件或者重新烧写固件,增加维护成本。而且由于各种设备的功能千差万别,不能进行批量化处理,这又为网络的维护增加了难度。因此本领域技术人员迫切需要解决的技术问题是,如何能够在无需大量手动操作的前提下,灵活方便的实现网络设备功能更新和网络配置更改,根据应用需求更有针对性的实现网络功能。
发明内容
有鉴于此,本发明提供一种基于软件定义网络的工业回程网实现方法与系统,通过策略分配和模块组合的形式,能够动态、灵活的对网络中设备功能进行配置和更新,可以增加整个网络的灵活性,降低网络的维护和更新成本。
为实现上述目的,本发明提供如下技术方案:一种基于软件定义网络的工业回程网实现方法,包括以下步骤:
策略分配/更新阶段,管理服务器的策略生成引擎根据网络状态信息和用户配置生成数据层设备的订阅/发布策略并存储在总策略库中,同时发送给所述数据层设备;所述数据层设备接收到服务器分配的策略后,将所述策略保存/更新到本地子策略库中;
模块加载/更新阶段,所述数据层设备根据所述策略的功能模块组成检查所述本地子模块库中是否提供所需的模块,如所需模块缺失/更新,由第二模块更新组件从管理服务器的总模块库下载所需模块,并保存在本地子模块库中;
订阅/发布数据传输阶段,由策略执行引擎依照所述策略的功能模块组成从各个模块库中提取所需模块,执行操作。
所述策略分配/更新阶段包括以下步骤:
策略生成引擎将管理服务器的决策结果以数据层设备为单位分解成一段段的子决策并将所述子策略编号,每段子决策对应一个数据设备的执行过程和功能,将每个所述子决策转化成策略的标准算术表达形式,再将其存储在管理服务器的总策略库中;
数据层设备接收到管理服务器分配的策略后,通过策略更新模块提取子策略编号,查找本地子策略库是否存在该编号的子策略,如果有则用新的子策略替换,如果没有则将新的子策略存储到子策略库中。
所述策略是由一系列功能模块、模块版本和参数组成的有序操作链;其标准算术表达形式为:
模块表达式1*/+模块表达式2……
乘运算*表示上一模块的输出作为下一模块的输入数据,为顺序连接;
加运算+表示两模块为并列关系,模块应并行执行;
每个模块的表达形式为:模块编号v模块版本号(模块参数)。
所述模块加载/更新阶段包括以下步骤:
在接收到管理层分配的子策略后,数据层设备解析所分配策略中所包含的功能模块ID和版本信息,一一检查本地子模块库中是否包含了所有子策略需要的功能模块并且查看模块的版本是否符合策略需求:如果所需模块都具备,则进入到下一阶段进行订阅/发布数据的传输;如果所需模块有缺失,或者需要更新,则需要从管理服务器下载所需模块;
需要下载模块时,第二模块更新单元向管理服务器发送模块更新请求,请求中包含设备ID、所需模块ID和版本信息;
服务器接收到模块更新请求后,根据请求中的信息,查找总模块库,将符合请求的模块加入到模块请求响应中,然后发送给设备;
数据层设备接收到模块更新响应后,提取模块内容,并将该模块连同模块ID和版本信息存储到其子模块库中,并告知子策略更新模块,模块更新完成。
所述订阅/发布数据传输阶段包括以下步骤:
当有订阅数据到来时,数据层设备提取出订阅数据的Publication ID,根据Publication ID查找子策略库与之对应的策略,然后将该策略送入策略执行单元;
策略执行单元提取策略中各组成模块的参数,调用子模块库中的模块,依据执行策略规定的操作,完成对发布数据的处理。
一种基于软件定义网络的工业回程网系统,包括:
管理服务器,用于管理域内的数据层设备的管理和决策,根据网络的具体状态和用户的配置,制定所有数据层设备的功能,以策略的形式发送给数据层设备,并对数据层设备提供功能模块的下载支持;
数据层设备,用于根据管理服务器分配的策略进行数据的处理和转发,并且用于在缺少策略指定的功能模块时从管理服务器中下载更新。
所述管理服务器,包括:
管理服务基本功能单元,用于提供网络拓扑管理,网络设备注册,通讯协议,路由算法,安全算法、Qos保障算法的功能。
用户接口单元,用于管理服务器与用户的交互,将管理服务器的信息以可视化形式显示给本地用户或接收用户指令并将指令转化成网络系统能够解读的形式;
用户配置单元,用于用户对网络功能、参数、状态进行手动配置,并将配置结果保存供其他单元使用;
网络状态信息库单元,用于存储网络状态信息;
策略生成引擎单元,用于综合用户配置单元的具体配置和网络状态信息库单元的网络状态信息,利用管理服务器的管理服务基本功能单元,生成各数据层设备所需的功能方案,并将方案存入总策略库单元中,同时将策略发送给第一策略更新单元;
总策略库单元,用于存储各个数据层设备对应的策略;
总模块库单元,用于存储网络数据层设备所能支持的所有功能模块;
第一策略更新单元,用于与数据层设备进行策略更新的交互;
第一模块更新单元,用于与数据层设备进行模块更新的交互;
第一数据层接口单元,用于与数据层设备的交互。
所述总模块库单元包括:
转发/聚合模块库,用于存储发布/订阅传输过程需特殊数据处理功能模块;
安全模块库,用于存储安全功能相关的模块;包括密钥生成功能模块、AES加密功能模块、RSA认证功能模块、DES加密功能模块、CRC校验功能模块、MD5校验功能模块中的一种或几种;
Qos模块库,用于存储Qos保障功能相关的功能模块;包括绝对优先级队列模块、先入先出队列模块、权重优先级队列模块、流量限制模块中的一种或几种;
扩展模块库,用于其他功能模块的存储和后续功能模块的扩展。
所述转发/聚合模块库包括:
分发功能模块,用于一对多或一对一的数据分发;
聚合功能模块,用于同一订阅端订阅不同发布数据时,所述不同发布数据的聚合;
过滤功能模块,用于发布频率大于订阅频率时,根据sub订阅的频率过滤多余的发布数据。
所述数据层设备,包括:
输入信息提取单元,用于提取发布数据的Publication ID和数据内容,并将Publication ID作为查找索引,查找子策略库中是否有对应的策略,将查找结果发送给策略执行引擎单元;
子策略库单元,用于存储本地设备的策略信息;
策略执行引擎单元,用于依照策略的具体内容,调用子模块库单元内对应模块,执行策略所表述的功能;
子模块库单元,用于存储本地设备所能支持的功能模块;
第二策略更新单元,用于本地设备策略更新时与管理服务器的交互;
第二模块更新单元,用于与管理服务器进行模块更新的交互;
第二数据层接口单元,用于与其他数据层设备的数据传输;
管理层接口单元,用于与管理服务器的管理信息交互;
数据服务基本功能模块单元,用于数据层设备基本的数据业务和与管理层设备通讯。
经由上述的技术方案可知,与现有技术相比,本发明公开提供了一种基于软件定义网络的工业回程网实现方法与系统,策略分配/更新阶段,管理服务器的策略生成引擎根据网络状态信息和用户配置生成数据层设备的执行策略并存储在总策略库中,同时发送给数据层设备。数据层设备接收到所述服务器分配的策略后,将所述策略保存/更新到本地子策略库中;模块加载/更新阶段,所述数据层设备根据所述策略的功能模块组成检查所述本地子模块库中是否提供所需的模块,如所述所需模块缺失/更新,由第二模块更新组件从所述管理服务器的所述总模块库下载所需模块,并保存在所述本地子模块库中;订阅/发布数据传输阶段,由策略执行引擎依照所述策略的功能模块组成从各个模块库中提取所需模块,执行操作。该方法能够根据应用需求对订阅/发布网络进行动态的模块和策略更新,使设备功能能够以模块化可组合的方式执行,可以增加网络的灵活性,降低网络的维护和更新成本,解决当前发布/订阅网络灵活性差、维护成本高、更新困难的问题。
附图说明
图1为本发明一种基于软件定义网络的工业回程网组成的一个实施例的示意图;
图2为本发明一种基于软件定义网络的工业回程网实现方法的一个实施例的流程示意图;
图3为本发明一种基于软件定义网络的工业回程网实现方法中策略执行方法的一个实施例示意图;
图4a为本发明一种基于软件定义网络的工业回程网实现方法的一个实施例示意图;
图4b为本发明一种基于软件定义网络的工业回程网实现方法的另一个实施例示意图;
图5为本发明一种基于软件定义网络的工业回程网系统的一个实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明所指回程网络支持Pub/Sub传输模式。这里按照支持Pub/Sub传输模式的方法说明,但是本发明方法对于非Pub/Sub传输模式的网络也同样适用。
本发明的适用范围为面向中心式管理架构的回程网络。所谓中心式管理架构即网络分为控制层和数据层,控制层设备一般为管理服务器,负责数据层的设备管理、配置、路由等,数据层设备受管理服务器控制,根据网络层服务器的配置进行实际数据的传输。
参见图1,示出了本发明一种基于软件定义网络的工业回程网组成的一个实施例的示意图,整体网络系统分为两个层面,管理层和数据层。管理层由一个或多个分布式的管理服务器组成,负责管理域内的数据层设备的管理和决策,管理服务器根据网络的具体状态和用户的配置,制定所有数据层设备的功能,通过管理链路以策略的形式发送给数据层设备,并对数据层设备提供功能模块的下载支持;数据层由多个路由器和终端设备组成,其中终端设备又分为发布设备和订阅设备,每种数据层设备除了其本身具有的基本功能(如Pub设备具有数据采集和发布的功能,路由设备具有数据转发功能)外,其他的功能(如Qos保证、安全、多径转发等)由网络服务器通过策略的形式指定。数据层设备根据网络服务器分配的策略进行数据的处理和发送。同时,数据层设备具有模块下载的功能,可以在缺少策略指定的功能模块时,从管理服务器中下载更新。
在本发明中,管理服务器和数据层设备的基本功能与现有技术中的普通功能一致,不再做详细的说明,而系统的可组合的、动态的策略和模块更新方法和策略执行方法的实现为本发明的主要创新点,将做详细说明。
参见图2,示出了本发明一种基于软件定义网络的工业回程网实现方法的一个实施例的流程示意图,该方法包括:
步骤201:策略分配/更新阶段,管理服务器的策略生成引擎根据网络状态信息和用户配置生成数据层设备的订阅/发布策略并存储在总策略库中,同时发送给数据层设备。数据层设备接收到服务器分配的策略后,将策略保存/更新到本地子策略库中。
其中,网络状态信息库中信息由管理服务器自身维护和管理,通常包括网络拓扑、数据路由、Pub/Sub节点信息、Publication/Subscription内容信息等。
策略分配/更新时,可以包含多种情况,可以是管理服务器接收到数据层设备发送的注册请求或者更新请求时,也可以是管理服务器接收到用户发送的注册/更新请求。无论是数据层设备的请求还是用户配置请求,管理服务器都会响应该请求,从网络状态数据库中提取与注册/更新请求相关的信息,并根据用户配置需求进行决策,如,管理服务器接收到Subscription注册请求时,管理服务器根据网络拓扑、Subscription订阅的内容,数据层设备链路状态,进行Pub/Sub匹配,生成Pub到Sub设备的路由路径以及在路径上所有设备的处理策略。
策略生成引擎将管理服务器的决策结果以数据层设备为单位分解成一段一段的子决策并将各子策略编号,每段子决策对应一个数据设备的执行过程和功能,并将每个子决策转化成策略的标准算术表达形式,然后将其存储在管理服务器的总策略库中。需要说明的是,总策略库中的子策略储存也应该以设备为单位,将同一设备的不同子策略存储在一起,以便后续查找更新。其中,子策略编号一般为Publication ID,总策略库中策略的存储形式为:设备ID+子策略编号+策略算术表达式,在总策略库和数据层设备的子策略库中也是根据子策略编号进行查找和其他操作。
在子策略生成和储存完成后,子策略将发送给策略更新单元。策略更新单元根据子策略所属设备ID,通过数据层接口,将子策略发送到各数据层设备。
数据层设备接收到管理服务器分配的策略后,通过策略更新模块提取子策略编号,查找本地子策略库是否存在该编号的子策略,如果有则用新的子策略替换,如果没有则将新的子策略存储到子策略库中。
需要说明的是,策略是由一系列功能模块、模块版本和参数组成的有序操作链。策略的标准表达形式为算术表达式形式,具体形式如下:
模块表达式1*/+模块表达式2……
乘运算(*)表示上一模块的输出作为下一模块的输入数据,为顺序连接;加运算(+)表示两模块为并列关系,模块应并行执行。每个模块的表达形式为,模块编号v模块版本号(模块参数)。在执行策略时,策略执行单元依照策略中模块的算术表达式排列顺序及模块具体参数依次执行。
步骤202:模块加载/更新阶段,数据层设备根据策略的功能模块组成检查所述本地子模块库中是否提供所需的模块,如所需模块缺失/更新,由第二模块更新组件从管理服务器的总模块库下载所需模块,并保存在本地子模块库中。
在接收到管理层分配的子策略后,数据层设备会解析所分配策略中所包含的功能模块ID和版本信息,一一检查本地子模块库中是否包含了所有子策略需要的功能模块并且查看模块的版本是否符合策略需求。如果所需模块都具备,则进入到下一阶段进行订阅/发布数据的传输,如果所需模块有缺失,或者需要更新(一般为版本不符合),则需要从管理服务器下载所需模块。
需要下载模块时,第二模块更新单元向管理服务器发送模块更新请求,请求中包含设备ID、所需模块ID和版本信息。服务器接收到模块更新请求后,根据请求中的信息,查找总模块库,将符合请求的模块加入到模块请求响应中,然后发送给设备。
数据层设备接收到模块更新响应后,提取模块内容,并将该模块连同模块ID和版本信息存储到其子模块库中,并告知子策略更新模块,模块更新完成,进入订阅/发布数据正式传输阶段。
步骤203:订阅/发布数据传输阶段,由策略执行引擎依照所述策略的功能模块组成从各个模块库中提取所需模块,执行操作。
当有订阅数据到来时,数据层设备提取出订阅数据的Publication ID,根据Publication ID查找子策略库与之对应的策略,然后将该策略送入策略执行单元。策略执行单元提取策略中各组成模块的参数,调用子模块库中的模块,依据执行策略规定的操作,完成对发布数据的处理。
为了清楚的介绍本发明数据在数据传输阶段的处理方法和过程,下面以一个具体的应用场景进行详细的介绍,参见图3,一种基于软件定义网络的工业回程网实现方法中策略执行方法的一个实施例示意图。
在本实施例示意图场景中,当有发布数据通过数据层接口发送到该数据层设备时,首先要对输入数据进行信息提取,提取出输入数据的Publication ID(PubID1)和数据内容。Publication ID(PubID1)将作为策略检测的索引,在子策略库中查找该条订阅信息对应的处理策略。在本实施例中,子策略库中已经存在该订阅数据的处理策略,策略的算术表达为1-001v1.1(port1,port2)*[1-003v1.3(2:1)*3-002v2.0(2,4:3:2:1)+3-002v2.0(3,4:3:2:1)]。
其中,第一个模块表达1-001v1.1(port1,port2)中,1-001表示转发/聚合模块库中的分发功能模块,用于将一个发布数据发往多个订阅端,实现发布/订阅网络多对多的传输的功能,v1.1表示该模块的版本号,括号中内容为该模块的参数。由于分发模块表示数据在此处将被复制并发往两个端口,因此括号中的port1和port2表示将被分发的输出端口。
第二个模块表达1-003v1.3(2:1)中,1-003表示转发/聚合模块中的过滤模块,当发布频率大约订阅频率时,用于根据sub订阅的周期过滤多余的发布数据,v1.3表示该模块的版本号,括号中的2:1表示过滤的比例,每2个订阅数据过滤为1个。
第三个模块表达3-002v2.0(2,4:3:2:1)中,3-002表示Qos模块类中的权重优先级功能模块,该模块的功能是将发送数据按照指定优先级和指定的比例发送,此例中参数设置该数据的优先级为2,优先级的权重比例为4:3:2:1。通过优先级和权重的设置,可以将不同数据的服务等级合理区分,保障重要数据的实时性和可靠性。
在不同模块表达之间的算数运输符,“*”表示模块间为顺序执行的关系,即上一模块的输出作为下一模块的输入依次执行。“+”表示为并列执行的关系,即两个模块间没有输入即为输出的顺序承接,在时间上并行执行,为两个独立的执行流程。实施例中由于分发模块的输出为两个,因此与之相接的接口为两个并列的执行流程。即在分发模块之后,处理流程分为两个,一个是“分发——过滤——权重优先级”流程,另一个为“分发——权重优先级”流程,与算术表达式[]算术展开一致。
策略执行引擎按照策略,调用子模块库中模块,对数据进行处理,将最终处理结果发送到数据层接口,再传输到下一设备。至此,原始的一路发布数据已经成为发往不同下一跳设备的两路数据流,其中一路的发布速率为原始速率的二分之一。
需要说明的是,实施例中的模块组合和参数配置只是策略的一种组合形式,其他不同的组合也在本发明的保护范围内。同样,功能模块的种类和数量都可以根据需求进行扩展,并不局限于本实施例中所列举的功能模块。
为了清楚的介绍本发明网络中各种网络设备的策略和功能模块的具体分配和执行以及整体网络功能的实现方法,下面以一个具体的应用场景进行详细的介绍,参见图4。
本实施例为一个支持发布/订阅的回程网络,网络设备根据其角色的不同分为两个层次,位于管理层的管理服务器和位于数据层的发布设备、订阅设备以及路由设备。网络中一共有两个发布设备Pub1设备和Pub2设备,分别以相同发布频率发送发布数据Publication ID1(简写为Pub1)和发布数据Publication ID2(简写为Pub2);有两个订阅设备Sub1设备和Sub2设备。数据在发布/订阅的传输过程中要求以密文形式传输,因此需要在Pub设备端进行数据内容的加密,在Sub设备端进行数据内容的解密。
管理服务器根据发布/订阅数据传输需求以及网络状态,对数据层设备进行策略和参数分配,分配的具体策略构成见图中各设备的模块组合示意图。发布数据在传输过程中的变化见图中方框,其中绿色背景表示未加密数据,红色背景表示加密数据;方框的个数表示发布数据的频率(如两个方框表示2个/s,一个方框表示1个/s);实心方框表示Pub1的发布数据,斜纹方框表示Pub2的发布数据。下面将对两种情景进行分别说明。
在图4a中,Sub1设备订阅了Pub1发布,订阅频率为Pub1发布频率的一半;Sub2没有订阅数据。图4a中的管理服务器已经根据Sub1的订阅请求和网络状态,将各数据层设备的策略分配完成,且数据层设备的功能模块更新完成,发布/订阅传输开始。
依照图4a中所示策略,在Pub1设备中,发布数据Pub1明文经过AES加密模块,生成Pub1的密文,然后传输到路由设备1。在路由设备1中,Pub1的密文经过发布模块(分发参数为一对一,即普通的一对一路由)和过滤模块,发布频率由原来的2个/s变为1个/s,然后在用权重优先级模块进行发送排队,发往路由设备2;路由设备2接收到路由设备1发来的Pub1密文数据后,依照策略,经过分发模块(分发参数为一对一,即普通的一对一路由)使用绝对优先级模块直接将数据发往Sub1设备。Sub1在接收到Pub1密文后,经过AES解密模块,将Pub1密文解密为明文数据,至此Pub1到Sub1的发布/订阅数据传输完成。
在图4b中,Sub2开始提出新的订阅需求,申请订阅Pub1和Pub2,订阅频率为Pub1和Pub2的原发布频率。管理服务器接收到Sub2的订阅申请后,根据网络状态规划数据传输路径和设备的功能,对路径上的数据层设备的策略进行更新。在路由设备1中添加到路由设备3的数据通路,在路由设备2中增加Pub2数据到路由设备3的转发功能,在路由设备3中添加Pub1和Pub2的聚合功能,并在Pub2和Sub2添加加密解密功能,满足Sub2的新的订阅需求。各数据层设备在接收到新的策略分配后,检测各自功能模块是否缺失,如所有模块都具备,则开始Sub2的数据传输。
由于Sub2同时订阅了Pub1和Pub2数据,因此数据传输更为复杂。Pub1数据经过路由设备1时,经过分发模块,分为两个相同的Pub1数据流,一路保持原有策略不变(即经过过滤发往路由设备2),另一个Pub1不用过滤,直接使用权重优先级模块排队,发往路由设备3,在路由设备3中等待与Pub2数据的聚合。Pub2数据在Pub设备2中经过AES加密,变为Pub2的密文,发送到路由设备2,在路由设备2中经过分发模块(一对一转发)和绝对优先级排队,发往路由设备3。在路由设备3中,和Pub1数据经过聚合模块,形成Pub1和Pub2数据的聚合数据后(Pub12),发往Sub2。Sub2经过AES解密,将获得Pub1和Pub2的数据明文,完成数据传输过程。
本发明回程网络实现方法通过策略的分配和功能模块的组合执行,在无需手动配置网络设备的前提下,可以有针对性的实现网络应用特定需求的数据的传输。
对应本发明的方法,参见图5,示出了本发明一种基于软件定义网络的工业回程网系统的一个实施例的结构示意图,该系统包括:管理服务器501和数据层设备502。
在该实施例中管理服务器501,具体包括:
管理服务基本功能单元510,用于基本的中心式网络管理,包括网络拓扑管理,网络设备注册,通讯协议,路由算法,安全算法、Qos保障算法等。属于现有技术,这里不做详细说明。
用户接口单元511,用于管理服务器与用户的交互,将管理服务器的信息以可视化形式显示给本地用户或接收用户指令并将指令转化成网络系统能够解读的形式。
用户配置单元512,用于用户对网络功能、参数、状态等进行手动配置,并将配置结果保存供其他单元使用。
网络状态信息库单元513,用于存储网络状态信息,包括网络拓扑、数据层设备ID、数据层设备类型、发布/订阅内容ID,发布/订阅内容匹配等信息。网络状态信息库单元中内容由管理服务基本功能单元生成和维护,保持与实际网络状态的同步变化。
策略生成引擎单元514,用于综合用户配置单元的具体配置和网络状态信息库单元的网络状态信息,利用管理服务器的管理服务基本功能单元,生成各数据层设备所需的功能方案,并将方案存入总策略库单元中,同时将策略发送给第一策略更新单元。
策略生成引擎单元514,具体的,包括:
发布/订阅策略生成单元,用于生成从发布端到订阅端整条链路的传输各个类别策略,包括路由路径、Qos保障方法和具体参数配置、所需的安全功能等。
策略分解单元,用于将发布/订阅策略生成单元生成的整段链路的各个类别的策略及其参数以设备为单位进行分解,成为对应每个数据层设备的一段一段的子策略。
策略整形单元,用于将分解完成的各个类别的子策略按照设备进行重新组合,并制定各种子策略的执行顺序,生成各个数据层设备的子策略,最后按照策略的标准算术表达形式表示。
策略存储单元,用于将各个设备的子策略存储在总策略库单元中。
策略发送单元,用于将生成的策略内容连同设备ID和策略ID发送给第一策略更新单元。
总策略库单元515,用于存储各个数据层设备对应的策略。存储形式为,设备ID+Publication ID+策略内容。其中,策略内容由一系列有序功能模块信息组成,每个功能模块信息包括功能模块ID、模块版本和模块的配置参数。
总模块库单元516,用于存储网络数据层设备所能支持的所有功能模块。其中,存储形式为,模块ID、模块版本、模块内容。
其中,模块库种类包括:
转发/聚合模块库,用于存储发布/订阅传输过程需特殊数据处理功能模块。具体的,包括:分发功能模块,用于一对多(或一对一)的数据分发;聚合功能模块,用于同一订阅端订阅不同发布数据时,该不同发布数据的聚合;过滤功能模块,用于发布频率大于订阅频率时,根据sub订阅的频率过滤多余的发布数据。
安全模块库,用于存储安全功能相关的模块。具体的,包括:密钥生成功能模块,AES加密功能模块,RSA认证功能模块,DES加密功能模块,CRC校验功能模块,MD5校验功能模块等。
Qos模块库,用于存储Qos保障功能相关的功能模块。具体的,包括:绝对优先级队列模块、先入先出队列模块、权重优先级队列模块、流量限制模块等。
扩展模块库,用于其他功能模块的存储和后续功能模块的扩展。
第一策略更新单元517,用于与数据层设备进行策略更新的交互。一方面接收策略生成引擎单元发送来的策略,将策略及其Publication ID封装在策略更新命令中,发送给第一数据层接口单元;另一方面接收第一数据层接口单元发送来的策略更新应答消息,检测更新是否完成,如果没有完成则要继续发送。
第一模块更新单元518,用于与数据层设备进行模块更新的交互。接收第一数据层接口的模块更新请求,按照请求模块的ID查询总模块库单元,找到对应模块后将模块ID和内容封装成模块更新应答响应,发送给第一数据层接口单元。
第一数据层接口单元519,用于与数据层设备的交互。
对应的,在该实施例中数据层设备502,具体包括:
输入信息提取单元521,用于提取发布数据的Publication ID和数据内容,并将Publication ID作为查找索引,查找子策略库中是否有对应的策略,将查找结果发送给策略执行引擎单元。
子策略库单元522,用于存储本地设备的策略信息,存储形式为Publication ID+策略内容。
策略执行引擎单元523,用于依照策略的具体内容,调用子模块库单元内对应模块,执行策略所表述的功能。
策略执行引擎单元,具体的,包括:
策略解析单元,用于将经过算术表达的策略按照表达方式进行解析,分解成模块流水线的形式。
策略模块提取单元,用于将策略中需要的模块ID和版本信息提取,并查找子模块库单元,将查找到的对应功能模块加载到策略执行单元中。并用于在缺少功能模块时,将缺失模块信息发送给第二模块更新单元。
策略参数提取单元,用于将策略表达式中各个功能模块的配置参数发送到解析完成的模块流水线对应的模块中。
策略执行单元,用于策略的具体执行。按照策略解析完成的模块流水线顺序调用功能模块,同时加载参数,执行策略的具体内容,完成对订阅数据的处理。
子模块库单元524,用于存储本地设备所能支持的功能模块。存储形式与总模块库相同。
第二策略更新单元525,用于本地设备策略更新时与管理服务器的交互。一方面用于接收管理服务器分配的策略,将策略存储在子策略库单元中,并返回策略接收应答信息,同时用于检查本地子模块库中是否具备策略中的所有模块,并在模块缺失时向第二模块更新单元发送缺失模块信息。
第二模块更新单元526,用于与管理服务器进行模块更新的交互。接收第策略执行引擎单元或者第二策略更新单元的模块缺失/更新信息,将缺失信息封装成模块更新请求形式,发送给管理层接口单元。
第二数据层接口单元527,用于与其他数据层设备的数据传输。
管理层接口单元528,用于与管理服务器的管理信息交互。
数据服务基本功能模块单元529,用于数据层设备基本的数据业务和与管理层设备通讯。属于现有技术,这里不做详细说明。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (8)

1.一种基于软件定义网络的工业回程网实现方法,其特征在于,包括以下步骤:
策略分配或更新阶段,管理服务器的策略生成引擎根据网络状态信息和用户配置生成数据层设备的订阅和发布策略并将订阅和发布策略存储在总策略库中,同时发送给所述数据层设备;所述数据层设备接收到服务器分配的策略后,将所述策略保存或更新到本地子策略库中;
模块加载或更新阶段,所述数据层设备根据所述策略的功能模块组成检查所述本地子模块库中是否提供所需的模块,如所需模块缺失或更新,由第二模块更新组件从管理服务器的总模块库下载所需模块,并保存在本地子模块库中;
订阅和发布数据传输阶段,由策略执行引擎依照所述策略的功能模块组成从各个模块库中提取所需模块,执行操作;
所述策略分配或更新阶段包括以下步骤:
策略生成引擎将管理服务器的决策结果以数据层设备为单位分解成一段段的子决策并将所述子决策编号,每段子决策对应一个数据设备的执行过程和功能,将每个所述子决策转化成策略的标准算术表达形式,再将其存储在管理服务器的总策略库中;
数据层设备接收到管理服务器分配的策略后,通过策略更新模块提取策略编号,查找本地子策略库是否存在该编号的策略,如果有则用新的策略替换,如果没有则将新的策略存储到子策略库中。
2.根据权利要求1所述的方法,其特征在于,所述策略是由一系列功能模块、模块版本和参数组成的有序操作链;其标准算术表达形式为:
模块表达式1*或+模块表达式2……*或+模块表达式n;
乘运算*表示上一模块的输出作为下一模块的输入数据,为顺序连接;
加运算+表示两模块为并列关系,模块应并行执行;
每个模块表达式的表达形式为:功能模块编号v模块版本号(模块参数)。
3.根据权利要求1所述的方法,其特征在于,所述模块加载或更新阶段包括以下步骤:
在接收到管理层分配的子策略后,数据层设备解析所分配策略中所包含的功能模块ID和版本信息,一一检查本地子模块库中是否包含了所有子策略需要的功能模块并且查看模块的版本是否符合策略需求:如果所需模块都具备,则进入到下一阶段进行订阅和发布数据的传输;如果所需模块有缺失,或者需要更新,则需要从管理服务器下载所需模块;
需要下载模块时,第二模块更新单元向管理服务器发送模块更新请求,请求中包含设备ID、所需功能模块ID和版本信息;
服务器接收到模块更新请求后,根据请求中的信息,查找总模块库,将符合请求的模块加入到模块请求响应中,然后发送给设备;
数据层设备接收到模块更新响应后,提取模块内容,并将该模块连同功能模块ID和版本信息存储到其子模块库中,并告知子策略更新模块,模块更新完成。
4.根据权利要求1所述的方法,其特征在于,所述订阅和发布数据传输阶段包括以下步骤:
当有订阅数据到来时,数据层设备提取出订阅数据的订阅ID,根据订阅ID查找子策略库与之对应的策略,然后将该策略送入策略执行单元;
策略执行单元提取策略中各组成模块的参数,调用子模块库中的模块,依据执行策略规定的操作,完成对发布数据的处理。
5.一种基于软件定义网络的工业回程网系统,其特征在于,包括:
管理服务器,用于管理域内的数据层设备的管理和决策,根据网络的具体状态和用户的配置,制定所有数据层设备的功能,以策略的形式发送给数据层设备,并对数据层设备提供功能模块的下载支持;
数据层设备,用于根据管理服务器分配的策略进行数据的处理和转发,并且用于在缺少策略指定的功能模块时从管理服务器中下载更新;
所述管理服务器,包括:
管理服务功能单元,用于提供网络拓扑管理,网络设备注册,通讯协议,路由算法,安全算法,Qos保障算法的功能;
用户接口单元,用于管理服务器与用户的交互,将管理服务器的信息以可视化形式显示给本地用户或接收用户指令并将指令转化成网络系统能够解读的形式;
用户配置单元,用于用户对网络功能、参数、状态进行手动配置,并将配置结果保存供其他单元使用;
网络状态信息库单元,用于存储网络状态信息;
策略生成引擎单元,用于综合用户配置单元的具体配置和网络状态信息库单元的网络状态信息,利用管理服务器的管理服务功能单元,生成各数据层设备所需的功能方案,并将方案存入总策略库单元中,同时将策略发送给第一策略更新单元;
总策略库单元,用于存储各个数据层设备对应的策略;
总模块库单元,用于存储网络数据层设备所能支持的所有功能模块;
第一策略更新单元,用于与数据层设备进行策略更新的交互;
第一模块更新单元,用于与数据层设备进行模块更新的交互;
第一数据层接口单元,用于与数据层设备的交互。
6.根据权利要求5所述的系统,其特征在于,所述总模块库单元包括:
转发处理模块库,用于存储发布/订阅传输过程需进行数据处理的功能模块;
安全模块库,用于存储安全功能相关的模块;包括密钥生成功能模块、AES加密功能模块、RSA认证功能模块、DES加密功能模块、CRC校验功能模块、MD5校验功能模块中的一种或几种;
Qos模块库,用于存储Qos保障功能相关的功能模块;包括绝对优先级队列模块、先入先出队列模块、权重优先级队列模块、流量限制模块中的一种或几种;
扩展模块库,用于其他功能模块的存储和后续功能模块的扩展。
7.根据权利要求6所述的系统,其特征在于,所述转发处理模块库包括:
分发功能模块,用于一对多或一对一的数据分发;
聚合功能模块,用于同一订阅端订阅不同发布数据时,所述不同发布数据的聚合;
过滤功能模块,用于发布频率大于订阅频率时,根据sub订阅的频率过滤多余的发布数据。
8.根据权利要求5所述的系统,其特征在于,所述数据层设备,包括:
输入信息提取单元,用于提取发布数据的订阅ID和数据内容,并将订阅ID作为查找索引,查找子策略库中是否有对应的策略,将查找结果发送给策略执行引擎单元;
子策略库单元,用于存储本地设备的策略信息;
策略执行引擎单元,用于依照策略的具体内容,调用子模块库单元内对应模块,执行策略所表述的功能;
子模块库单元,用于存储本地设备所能支持的功能模块;
第二策略更新单元,用于本地设备策略更新时与管理服务器的交互;
第二模块更新单元,用于与管理服务器进行模块更新的交互;
第二数据层接口单元,用于与其他数据层设备的数据传输;
管理层接口单元,用于与管理服务器的管理信息交互;
数据服务现有功能模块单元,用于数据层设备现有数据业务和其与管理层设备之间的通讯。
CN201310711910.6A 2013-12-19 2013-12-19 一种基于软件定义网络的工业回程网实现方法与系统 Active CN104734872B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310711910.6A CN104734872B (zh) 2013-12-19 2013-12-19 一种基于软件定义网络的工业回程网实现方法与系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310711910.6A CN104734872B (zh) 2013-12-19 2013-12-19 一种基于软件定义网络的工业回程网实现方法与系统

Publications (2)

Publication Number Publication Date
CN104734872A CN104734872A (zh) 2015-06-24
CN104734872B true CN104734872B (zh) 2018-02-23

Family

ID=53458329

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310711910.6A Active CN104734872B (zh) 2013-12-19 2013-12-19 一种基于软件定义网络的工业回程网实现方法与系统

Country Status (1)

Country Link
CN (1) CN104734872B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106412880B (zh) * 2015-07-29 2019-09-24 中国科学院沈阳自动化研究所 一种基于SDN的无线mesh安全分级传输方法
CN106888165A (zh) * 2015-12-15 2017-06-23 中国科学院沈阳自动化研究所 一种支持包头压缩的工业sdn网络数据传输方法与系统
WO2017105452A1 (en) 2015-12-17 2017-06-22 Hewlett Packard Enterprise Development Lp Reduced orthogonal network policy set selection
CN105681193A (zh) * 2016-03-02 2016-06-15 付宏伟 一个软件定义网络控制器系统
CN105939349B (zh) * 2016-05-25 2019-03-01 电子科技大学 一种实现用户数据随动安全存取的方法
CN106685832B (zh) * 2016-11-08 2019-09-24 重庆邮电大学 基于SDN的WIA-PA现场网络/IPv6回程网络联合调度方法
CN106604414A (zh) * 2017-02-15 2017-04-26 广东石油化工学院 一种低控制负载的软件定义无线传感网络架构
US10674394B2 (en) * 2017-10-27 2020-06-02 Futurewei Technologies, Inc. Method and apparatus for reducing network latency
CN109412850B (zh) * 2018-10-25 2022-02-11 新华三技术有限公司合肥分公司 消息订阅控制方法及装置
CN110020885A (zh) * 2018-12-25 2019-07-16 阿里巴巴集团控股有限公司 一种业务活动的参与执行方法和装置
CN113658351B (zh) * 2021-08-10 2023-04-28 北京全路通信信号研究设计院集团有限公司 一种产品生产的方法、装置、电子设备及存储介质
CN115729164B (zh) * 2022-11-08 2023-09-15 中国长江三峡集团有限公司 一种工业通信系统管理方法、装置及工业通信系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1829160A (zh) * 2005-03-01 2006-09-06 联想(北京)有限公司 一种混合策略加载系统及实现策略管理的方法
CN101123534A (zh) * 2007-09-29 2008-02-13 华中科技大学 应用于合法监听系统的网络策略架构及其策略处理方法
CN101132391A (zh) * 2006-08-22 2008-02-27 华为技术有限公司 对应用进行控制的系统及方法
CN103457763A (zh) * 2013-08-15 2013-12-18 中电长城网际系统应用有限公司 基于策略的多通道信息分发方法和系统及自动化运维平台

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1829160A (zh) * 2005-03-01 2006-09-06 联想(北京)有限公司 一种混合策略加载系统及实现策略管理的方法
CN101132391A (zh) * 2006-08-22 2008-02-27 华为技术有限公司 对应用进行控制的系统及方法
CN101123534A (zh) * 2007-09-29 2008-02-13 华中科技大学 应用于合法监听系统的网络策略架构及其策略处理方法
CN103457763A (zh) * 2013-08-15 2013-12-18 中电长城网际系统应用有限公司 基于策略的多通道信息分发方法和系统及自动化运维平台

Also Published As

Publication number Publication date
CN104734872A (zh) 2015-06-24

Similar Documents

Publication Publication Date Title
CN104734872B (zh) 一种基于软件定义网络的工业回程网实现方法与系统
CN104685507B (zh) 向虚拟云基础结构提供虚拟安全装置架构
CN104685838B (zh) 利用服务特定拓扑抽象和接口的软件定义网络虚拟化
CN104937572B (zh) 用于业务和/或工作负荷处理的方法和装置
CN103812930B (zh) 一种资源调度的方法及装置
CN104380658B (zh) 流分类器、业务路由触发器、报文处理的方法和系统
CN107872392A (zh) 在网络中分配服务功能链数据和服务功能实例数据
CN107819742B (zh) 一种动态部署网络安全服务的系统架构及其方法
CN106375214A (zh) 一种基于sdn的层次化路由路径确定方法及装置
CN104717098B (zh) 一种数据处理方法及装置
CN103763367A (zh) 一种云计算数据中心分布式虚拟网络设计方法及系统
CN106105115A (zh) 网络环境中由服务节点始发的服务链
CN105282043A (zh) 全局网络负载均衡系统、设备和方法
CN104519125B (zh) 对于拓扑变化有弹性的分布式按次序负载分布
CN106341330A (zh) 一种sdn控制器的拓扑发现方法及系统
CN108881158A (zh) 数据交互系统和方法
CN106559349A (zh) 业务传输速率的控制方法及装置、系统
CN101640825A (zh) 三网融合
CN102377578A (zh) 用于多播虚拟局域网(vlan)注册的基于vlan的成员资格
CN106982149A (zh) 基于sdn的报文镜像方法及网络流量监控管理系统
CN104106244A (zh) 控制装置、通信系统、通信方法和程序
CN106487537A (zh) 业务链实现方法以及策略控制平台
CN104202351B (zh) 分布式虚拟安全装置以及使用虚拟机的基于流的转发系统
CN108566342A (zh) 基于sdn架构的多业务流量分流系统及分流数据处理方法
CN106685903A (zh) 基于sdn的数据传输方法、sdn控制器和sdn系统

Legal Events

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