CN104378186A - 一种网络冗余数据处理的方法、装置和系统 - Google Patents
一种网络冗余数据处理的方法、装置和系统 Download PDFInfo
- Publication number
- CN104378186A CN104378186A CN201410607218.3A CN201410607218A CN104378186A CN 104378186 A CN104378186 A CN 104378186A CN 201410607218 A CN201410607218 A CN 201410607218A CN 104378186 A CN104378186 A CN 104378186A
- Authority
- CN
- China
- Prior art keywords
- data frame
- characteristic value
- pool
- data
- network
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title abstract description 11
- 238000012545 processing Methods 0.000 claims abstract description 135
- 238000000034 method Methods 0.000 claims abstract description 42
- 238000004364 calculation method Methods 0.000 claims abstract description 8
- 238000004422 calculation algorithm Methods 0.000 claims description 62
- 125000004122 cyclic group Chemical group 0.000 claims description 26
- 230000032683 aging Effects 0.000 claims description 23
- 238000012544 monitoring process Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 15
- 238000004891 communication Methods 0.000 description 14
- 230000005540 biological transmission Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 11
- 238000004590 computer program Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 230000006378 damage Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 229910000831 Steel Inorganic materials 0.000 description 1
- 230000007488 abnormal function Effects 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000009776 industrial production Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000003208 petroleum Substances 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000010959 steel Substances 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/22—Arrangements for detecting or preventing errors in the information received using redundant apparatus to increase reliability
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种接收端的网络冗余数据处理方法,接收端通过至少一个备份网络接收数据帧,该方法包括:在接收到数据帧时,根据数据帧的内容计算获得相应的特征值;根据计算所得的特征值查询维护的特征值池,当查询结果表明特征值池中存在计算所得的特征值时,确定所接收的数据帧为冗余数据;当查询结果表明特征值池中不存在计算所得的特征值时,确定所接收的数据帧为非冗余数据;在确定所接收的数据帧为冗余数据时,丢弃该数据帧;在确定所接收的数据帧为非冗余数据时,保留该数据帧,并将该数据帧对应的特征值存入特征值池。本发明还公开了一种发送端的网络冗余数据处理方法,发送端和接收端的网络冗余数据处理装置,以及网络冗余数据处理系统。
Description
技术领域
本发明属于工业控制及工业通信领域,如数字化变电站、直流输电控制与保护系统等,尤其涉及一种网络冗余数据处理方法、装置和系统。
背景技术
随着我国工业技术的发展进步,自动化程度不断提高,使工业生产工艺复杂程度显著提高。随着工业控制水平的提高,对工业通信技术提出了更高的要求,目前,复杂拓扑结构,多网路通信节点的复杂工业通信网络在电力、石油、钢铁等工业控制领域屡见不鲜,网络安全已经成为工业领域的核心问题。一个安全可靠的工业通信网络,是提升工业控制系统效率与安全的必要条件。
工业控制领域对通信安全有极高要求,一般都采取多个备份网络实现通信数据安全。相同的数据信息分别在各个备份网络中传递,在某一个备份网络失效时,网络中的设备可以自动采用其他正常工作的备份网络中的数据,从而实现网络数据安全,降低通信故障对整个系统的危害。目前工业控制领域中的网络数据备份一般有以下几种方案:
1、通过高级网络层协议实现网络数据备份功能。如TCP/IP协议,该协议支持对网络包排序并进行错误检查,同时实现虚电路间的连接。传输控制协议(TCP,Transmission Control Protocol)数据包中包括序号和确认,所有未按照顺序收到的包可以被排序,而损坏的包可以被重传。这种保护方式通过软件实现,无法抵抗物理链路的损坏;而且采用重传机制也可能导致数据的传递延迟增加,增加了系统风险。这种方法需要依靠处理器对数据有效性进行判断,占用了处理器资源,对于通信带宽较高的场合,对硬件性能的要求较高。此外,工业控制领域的具体通信应用,网络数据可能使用的是行业自定义的应用协议,这些协议一般与TCP/IP不兼容。
2、通过在网络数据通信协议中增加专用的字段来识别是否为网络冗余报文。此类方法均需要在网络发送数据帧内容中增加特殊字段,特殊字段需要包含报文的可识别的冗余标识符信息,接收端识别并根据冗余标识符判断选择丢弃/接收的策略。这种方式需要修改原始报文内容,经过修改后的数据帧不仅内容与原始数据帧不同,也增加了长度,对于网络中其他设备提出了额外的兼容性要求。网络中的任意接收设备不能识别冗余标识符时,去除冗余数据的机制就无法起效。
3、处理器接收冗余网络数据,通过软件方式比较确认接收数据帧是否为冗余数据。这种方法的缺陷在于数据选择算法需要消耗大量的处理器资源,在网络流量很大,或者冗余网络数量较多的情况下,会造成处理器资源紧张,影响设备性能。此外,由于所有的网络数据帧均需要通过处理器来处理判断,处理器的负载率随备份网络数量的增加而增加。
综上所述,现有技术进行备份网络冗余数据处理时,存在着占用处理器资源多,网络协议不透明,不支持三网及更多备份网络数量的问题。
发明内容
为解决现有存在的技术问题,本发明实施例提供一种网络冗余数据处理方法、装置和系统。
本发明实施例提供了一种网络冗余数据处理方法,所述方法应用于数据帧的接收端,所述接收端通过至少一个备份网络接收数据帧,所述方法包括:
在接收到数据帧时,根据所述数据帧的内容计算获得相应的特征值;
根据计算所得的特征值查询维护的特征值池,当所述查询结果表明所述特征值池中存在所述计算所得的特征值时,确定所接收的数据帧为冗余数据;当所述查询结果表明所述特征值池中不存在所述计算所得的特征值时,确定所接收的数据帧为非冗余数据;
在确定所接收的数据帧为冗余数据时,丢弃所述数据帧;在确定所接收的数据帧为非冗余数据时,保留所述数据帧,并将所述数据帧对应的特征值存入所述特征值池。
上述方案中,所述根据数据帧的内容计算获得相应的特征值,包括:
对所接收数据帧的内容执行循环冗余校验算法或循环冗余校验组合算法的运算,将运算结果作为相应的特征值。
上述方案中,所述循环冗余校验算法为CRC32算法,所述循环冗余校验组合算法为CRC32算法和CRC32_SCTP算法的组合。
上述方案中,所述特征值池设有元素数量上限Nmax,
所述方法进一步包括:在有新的特征值待存入所述特征值池时,判断所述特征值池中的已存特征值数量是否达到Nmax,如果达到,则按先进先出的策略将所述特征值池中最早存入的特征值移出所述特征值池,并将所述新的特征值存入所述特征值池;如果没有达到,则将所述新的特征值存入所述特征值池。
上述方案中,所述特征值池设有最长老化时间Tmax,
所述方法进一步包括:监测所述特征值池中保存的每个特征值的老化时间,并将老化时间达到Tmax的特征值移出所述特征值池、或将老化时间达到Tmax的特征值设为失效。
本发明实施例还提供了一种网络冗余数据处理方法,所述方法应用于数据帧的发送端,所述发送端通过至少一个备份网络发送数据帧,所述方法包括:
在有待发的数据帧时,获得所述发送端的所有备份网络信息;
根据获得的备份网络信息,向所述发送端的所有备份网络发送所述数据帧;其中,所发送的数据帧不做格式和内容修改。
本发明实施例还提供了一种网络冗余数据处理装置,所述装置应用于数据帧的接收端,所述装置包括:第一冗余数据处理单元和第一中央处理单元,其中,
第一冗余数据处理单元,用于在接收到数据帧时,根据所述数据帧的内容计算获得相应的特征值;根据计算所得的特征值查询维护的特征值池,当所述查询结果表明所述特征值池中存在所述计算所得的特征值时,确定所接收的数据帧为冗余数据;当所述查询结果表明所述特征值池中不存在所述计算所得的特征值时,确定所接收的数据帧为非冗余数据;在确定所接收的数据帧为冗余数据时,丢弃所述数据帧;在确定所接收的数据帧为非冗余数据时,将所述数据帧提供给所述第一中央处理单元,并将所述数据帧对应的特征值存入所述特征值池;
第一中央处理单元,用于在获得所述第一冗余数据处理单元提供的数据帧时,采用所述数据帧完整相应的应用功能。
上述方案中,所述第一冗余数据处理单元进一步用于,通过以下方式计算特征值:
对所接收数据帧的内容执行循环冗余校验算法或循环冗余校验组合算法的运算,将运算结果作为相应的特征值。
上述方案中,所述循环冗余校验算法为CRC32算法,所述循环冗余校验组合算法为CRC32算法和CRC32_SCTP算法的组合。
上述方案中,所述特征值池设有元素数量上限Nmax,
所述第一冗余数据处理单元进一步用于,在有新的特征值待存入所述特征值池时,判断所述特征值池中的已存特征值数量是否达到Nmax,如果达到,则按先进先出的策略将所述特征值池中最早存入的特征值移出所述特征值池,并将所述新的特征值存入所述特征值池;如果没有达到,则将所述新的特征值存入所述特征值池。
上述方案中,所述特征值池设有最长老化时间Tmax,
所述第一冗余数据处理单元进一步用于,监测所述特征值池中保存的每个特征值的老化时间,并将老化时间达到Tmax的特征值移出所述特征值池、或将老化时间达到Tmax的特征值设为失效。
本发明实施例还提供了一种网络冗余数据处理装置,所述装置应用于数据帧的发送端,所述装置包括:第二冗余数据处理单元和第二中央处理单元,其中,
所述第二中央处理单元,用于在有待发的数据帧时,将所述数据帧提供给所述第二冗余数据处理单元;
所述第二冗余数据处理单元,用于在获得待发的数据帧时,获得所述发送端的所有备份网络信息;根据获得的备份网络信息,向所述发送端的所有备份网络发送所述数据帧;其中,所述第二冗余数据处理单元对所发送的数据帧不做格式和内容修改。
本发明实施例还提供了一种网络冗余数据处理系统,所述系统包括数据帧的发送端和接收端,所述发送端通过至少一个备份网络向接收端发送数据帧。
本发明提供的一种网络冗余数据处理方法、装置和系统,使终端设备可以通过专用的冗余数据处理单元处理网络数据,在接收数据帧时,通过计算以及比较特征值的方法识别并丢弃冗余数据帧;发送数据帧时,冗余数据处理单元对待发送数据帧复制后向所有备份网络中发送。
通过实施本发明,在实现备份网络的保护功能的同时,不需要对网络数据内容做任何修改,可以适应所有基于网络通信的具体应用,本发明相对于现有技术在网络数据帧中增加特殊字段实现冗余数据识别的方法,开放性更好,兼容性更强,易于部署实现。
另外,通过实施本发明,在接收链路上,终端设备的中央处理器不会接收到冗余数据,可以显著降低对处理器的性能要求,简化了硬件设计;在发送链路上,终端设备的中央处理器仅需发送单网数据,由冗余数据处理单元将数据帧向多个备份网络中发送。因此无论终端设备接入到多少个备份网络中,其中央处理器仅需处理单网数据,不仅降低了中央处理器的性能要求,也维持了中央处理器负载率的稳定,提高了系统可靠性。
再有,通过实施本发明,可以显著提高通信系统组网的灵活程度。本发明所述备份网络冗余数据处理方法不限制备份网络的数目,因此可以根据网络数据的重要等级,灵活设置备份网络数目。重要等级较低的数据,备份网络数目可以很少甚至是单网传输;重要等级较高的数据可以多个备份网络同时传输。
附图说明
图1为本发明实施例中接收端的网络冗余数据处理方法流程图;
图2为本发明实施例中发送端的网络冗余数据处理方法流程图;
图3为本发明一应用实施例的系统结构示意图;
图4为本发明实施例中冗余数据处理单元的功能模块示意图;
图5为本发明实施例中处理冗余数据的状态转换图;
图6为本发明实施例中特征值列表更新的示意图;
图7为本发明实施例中接收端的网络冗余数据处理装置结构示意图;
图8为本发明实施例中发送端的网络冗余数据处理装置结构示意图。
具体实施方式
下面结合附图和具体实施例对本发明的技术方案进一步详细阐述。
本发明实施例提供的一种网络冗余数据处理方法,应用于数据帧的接收端,所述接收端通过至少一个备份网络接收数据帧,如图1所示,该方法包括:
步骤101,在接收到数据帧时,根据数据帧的内容计算获得相应的特征值。
实施时,可以对所接收数据帧的内容执行循环冗余校验(CRC,CyclicRedundancy Check)算法或循环冗余校验组合算法的运算,将运算结果作为相应的特征值。例如:所述循环冗余校验算法可以选择CRC32算法,所述循环冗余校验组合算法可以选择CRC32算法和循环冗余校验流控制传输协议(CRC32_SCTP)算法的组合。
具体的,可以对所接收数据帧的内容执行CRC32算法运算,将运算结果作为相应的特征值;或者,
对所接收数据帧的内容执行循环冗余校验流控制传输协议(CRC32_SCTP)算法运算,将运算结果作为相应的特征值;或者,
对所述接收数据帧的内容分别执行CRC32算法和CRC32_SCTP算法运算,将所述CRC32算法运算结果和所述CRC32_SCTP算法运算结果组合作为相应的特征值。
步骤102,根据计算所得的特征值查询维护的特征值池,当查询结果表明所述特征值池中存在计算所得的特征值时,确定所接收的数据帧为冗余数据;当查询结果表明所述特征值池中不存在计算所得的特征值时,确定所接收的数据帧为非冗余数据。
步骤103,在确定所接收的数据帧为冗余数据时,丢弃所述数据帧;在确定所接收的数据帧为非冗余数据时,保留所述数据帧,并将所述数据帧对应的特征值存入所述特征值池。
在一实施方式中,特征值池可以设有元素数量上限Nmax,
那么,在有新的特征值待存入所述特征值池时,判断所述特征值池中的已存特征值数量是否达到Nmax,如果达到,则按先进先出的策略将所述特征值池中最早存入的特征值移出所述特征值池,并将所述新的特征值存入所述特征值池;如果没有达到,则将所述新的特征值存入所述特征值池。
在一实施方式中,特征值池设有最长老化时间Tmax,
那么,可以监测所述特征值池中保存的每个特征值的老化时间,并将老化时间达到Tmax的特征值移出所述特征值池、或将老化时间达到Tmax的特征值设为失效。
本发明实施例提供的另一种网络冗余数据处理方法,应用于数据帧的发送端,所述发送端通过至少一个备份网络发送数据帧,如图2所示,该方法包括:
步骤201,在有待发的数据帧时,获得所述发送端的所有备份网络信息。
步骤202,根据获得的备份网络信息,向发送端的所有备份网络发送所述数据帧;其中,所发送的数据帧不做格式和内容修改。
通过实施本发明的上述实施例,在实现备份网络的保护功能的同时,不需要对网络数据内容做任何修改,可以适应所有基于网络通信的具体应用,本发明相对于现有技术在网络数据帧中增加特殊字段实现冗余数据识别的方法,开放性更好,兼容性更强,易于部署实现。
下面以一个具体实例来说明本发明的具体实施方式,本实例中,实现冗余数据处理单元的硬件采用了现场可编程门阵列(FPGA,Field Programmable GateArray)。
整个系统的拓扑结构如图3所示,系统由网络设备与终端设备组成。网络设备硬件为通用100M以太网交换机,三个独立的交换机形成了3组备份网络,分别为A网(NET_A),B网(NET_B),C网(NET_C)。本实例中,终端设备的主处理器采用ADI公司的BF548型数字信号处理(DSP,Digital SignalProcess)芯片,以XLINX公司的SP6LX25F256型FPGA芯片构成备份网络冗余数据处理单元(RNPU)。所有的终端设备均可以通过网络接收/发送数据,为了更直观的说明本方法的实施方式,本实例中仅以单向数据链路为例(发送设备仅发送数据,接收设备仅接收数据)。
根据数据的重要性等级,本实例中的各发送设备的备份网络数量不同。发送设备1(TX_DEV1)发送的数据(图1中以实心三角箭头表示)重要等级最高,其发送的数据同时发送至三组备份网络中。发送设备2(TX_DEV2)发送的数据(图1中空心三角箭头表示)重要等级较高,其发送的数据同时发送至B网与C网中。发送设备3(TX_DEV3)发送的数据(图1中普通箭头表示)重要等级较低,其发送的数据仅发送至A网中。发送设备的处理器仅发送单网数据,由该设备的备份网络冗余数据处理单元将数据按需要复制至各个备份网络中。本实例中发送数据内容为IEC61850-9-2协议所述模拟量数据。
系统包含一个数据接收设备(RX_DEV),接收设备同时从A、B、C三组备份网络接收数据。冗余数据处理单元负责过滤备份网络中的冗余数据,将过滤后的数据传递给中央处理器。
冗余数据处理单元是本应用实例的核心部分。其功能模块示意图如图4所示。在发送链路上,备份网络冗余数据处理单元需要从CPU接收待发送数据,根据预设的备份需求,由冗余数据处理单元将待发送数据直接复制至所有备份网络中,冗余数据到达各备份网络的时间是相同的。在接收链路上,备份网络冗余数据处理单元从各个备份网络接收数据,接收数据通过数据链路层的有效性检验之后汇聚到一个总的缓存空间中;冗余数据处理单元顺序从缓存区取出数据帧,遍历特征值池中是否有与当前数据帧重复的元素,如果有重复元素,表明当前数据帧为冗余帧,直接被冗余数据处理单元丢弃;如没有重复元素,表明当前数据为各备份网络中冗余数据最先到达接收设备的数据帧,由冗余数据处理单元将其传递给CPU。
本实施实例中,冗余数据处理单元采用了CRC算法作为特征值计算方法,FPGA可以很方便的实现该算法。本实例采用CRC32(多项式为:X32+X26+X23+X22+X16+X12+X11+X10+X8+X7+X5+X4+X2+X1+1)以及另一种CRC32_SCTP(多项式为:X32+X28+X27+X26+X25+X23+X22+X20+X19+X18+X14+X13+X11+X10++X9+X8+X6+1)计算得到的值的组合作为数据帧特征值。根据理论研究,对于32阶的CRC算法,内容不相同但计算结果相同的算法漏检统计概率为1/232,两种32阶CRC算法组合后,漏检概率大约为1/264。一个最小的以太网数据帧长度为64Byte,在100M网络中的传输时间至少需要5.12us。按照平均概率估算,内容不同的帧计算得到相同特征值的情况约5.12(us)*264=2994905(年)才会发生一次。这个漏检概率极低,在实践中完全可以忽略。
在全双工以太网中,同一网络端口接收和发送不会发生影响。发送设备将冗余数据同时发送至多个备份网络中,但由于交换机的存储转发机制,数据帧传输延迟存在一定不确定性,因此冗余数据帧到达接收设备必然是有先后顺序的,以一个帧序号来表示这个顺序,数据帧之间序号的差表示了冗余数据帧传输路径延迟的不确定性。本实例中,三个发送设备均周期性的发送数据,发送周期为250us。对于接收设备而言,如果网络没有发生异常,在每个250us中最多可能收到6个数据帧(发送设备1的数据帧3个,发送设备2的数据帧2个,发送设备3的数据帧1个)。因此理论上冗余数据帧之间的序号差最大为6。考虑到复杂网络环境下的实用性,本实例中的特征值池深度设置为256,即冗余数据帧到达接收设备顺序号相差小于256的情况下,冗余数据过滤机制即能正常工作,显然本实例的应用环境能满足这个要求,且留有足够的裕量。
本实施实例中,冗余数据处理单元自动维护一个深度为256的特征值表,每个特征值为64bit。如图5所示,冗余数据处理单元的工作流程如下:在接收到新的网络数据之后,首先校验网络报文的完整性;通过完整性报文检测的数据,经特征值算法计算得到数据帧的64bit特征值,并将所有网口接收到的数据暂时存放在一个总的接收缓存区中;冗余数据处理单元计算得到新到达帧的特征值,在特征值池中查看是否有重复的元素;如果没有重复的元素,则认为当前数据帧是从各备份网络中最先达到接收端的数据帧,这个数据帧将被正常传递给CPU,并根据该特征值更新特征值池;如果特征值池中有重复的元素,说明在此前某时刻,已经从备份网络中接收到此数据帧了,当前数据帧为后到达的冗余数据帧,冗余数据处理单元直接将其丢弃。
本实施实例中,冗余数据处理单元设置元素数量上限,先进先出的方式管理特征值池。如图6所示,冗余数据处理单元将最新接收到数据帧的特征值填入特征值池,将特征值池中最旧一帧的数据帧特征值移出特征值池,保持特征值池中的特征值始终对应于最近的一组接收数据帧。
在本实例中检验备份网络的冗余保护功能,对于重要等级最高的发送设备1发送的数据,数据传输的物理链路有3条(在附图1中以不同的箭头形状来表示),仅当此3条链路均发生故障的情况下,接收设备才有可能无法接收到发送设备1的发送数据,导致接收设备的功能异常。实际应用中,多个网络同时发生故障的可能性极低,应用本方法可以有效增强网络中重要数据的安全性。
本发明实施例还提供了一种网络冗余数据处理装置,所述装置应用于数据帧的接收端,如图7所示,该装置包括:第一冗余数据处理单元10和第一中央处理单元20,其中,
第一冗余数据处理单元10,用于在接收到数据帧时,根据所述数据帧的内容计算获得相应的特征值;根据计算所得的特征值查询维护的特征值池,当所述查询结果表明所述特征值池中存在所述计算所得的特征值时,确定所接收的数据帧为冗余数据;当所述查询结果表明所述特征值池中不存在所述计算所得的特征值时,确定所接收的数据帧为非冗余数据;在确定所接收的数据帧为冗余数据时,丢弃所述数据帧;在确定所接收的数据帧为非冗余数据时,将所述数据帧提供给所述第一中央处理单元20,并将所述数据帧对应的特征值存入所述特征值池;
第一中央处理单元20,用于在获得所述第一冗余数据处理单元10提供的数据帧时,采用所述数据帧完整相应的应用功能。
在一实施方式中,第一冗余数据处理单元10进一步用于,通过以下方式计算特征值:
对所接收数据帧的内容执行循环冗余校验算法或循环冗余校验组合算法的运算,将运算结果作为相应的特征值。
所述循环冗余校验算法可以选择CRC32算法,所述循环冗余校验组合算法可以选择CRC32算法和CRC32_SCTP算法的组合。
具体的,第一冗余数据处理单元10可以对所接收数据帧的内容执行循环冗余校验CRC32算法运算,将运算结果作为相应的特征值;
对所接收数据帧的内容执行CRC32_SCTP算法运算,将运算结果作为相应的特征值;
对所述接收数据帧的内容分别执行CRC32算法和CRC32_SCTP算法运算,将所述CRC32算法运算结果和所述CRC32_SCTP算法运算结果组合作为相应的特征值。
在一实施方式中,所述特征值池设有元素数量上限Nmax,
所述第一冗余数据处理单元10进一步用于,在有新的特征值待存入所述特征值池时,判断所述特征值池中的已存特征值数量是否达到Nmax,如果达到,则按先进先出的策略将所述特征值池中最早存入的特征值移出所述特征值池,并将所述新的特征值存入所述特征值池;如果没有达到,则将所述新的特征值存入所述特征值池。
在一实施方式中,所述特征值池设有最长老化时间Tmax,
第一冗余数据处理单元10进一步用于,监测所述特征值池中保存的每个特征值的老化时间,并将老化时间达到Tmax的特征值移出所述特征值池、或将老化时间达到Tmax的特征值设为失效。
本发明实施例还提供了一种网络冗余数据处理装置,所述装置应用于数据帧的发送端,如图8所示,该装置包括:第二冗余数据处理单元30和第二中央处理单元40,其中,
所述第二中央处理单元30,用于在有待发的数据帧时,将所述数据帧提供给所述第二冗余数据处理单元;
所述第二冗余数据处理单元40,用于在获得待发的数据帧时,获得所述发送端的所有备份网络信息;根据获得的备份网络信息,向所述发送端的所有备份网络发送所述数据帧;其中,所述第二冗余数据处理单元40对所发送的数据帧不做格式和内容修改。
实际应用中的一台终端设备可以同时包括发送端的网络冗余数据处理装置和接收端的网络冗余数据处理装置。需要说明的是,当一台终端设备同时包括发送端的网络冗余数据处理装置和接收端的网络冗余数据处理装置时,所述第一冗余数据处理单元10和第二冗余数据处理单元30可以合设于同一芯片中,即接收链路的第一冗余数据处理单元10和发送链路的第二冗余数据处理单元30可以在同一芯片中实现;所述第一中央处理单元20和第二中央处理单元40也可以合设于同一芯片中,即接收链路的第一中央处理单元20和发送链路的第二中央处理单元40可以在同一芯片(如CPU)中实现。
本发明实施例还提供了一种网络冗余数据处理系统,包括本发明前述实施例所述的数据帧的发送端和接收端,所述发送端通过至少一个备份网络向接收端发送数据帧。
综上所述,本发明的冗余数据处理单元可以识别并处理从各个备份网络到达接收端的数据帧,除保留最先到达的某一网络的数据之外,冗余数据处理单元将此后从其他备份网络接收到的冗余数据帧全部丢弃;也就是说,冗余数据处理单元传递给处理器的,仅是总接收数据流量的1/N,其中N为备份网络的数量。
冗余数据处理单元不解析接收数据帧的具体内容,也不指定接收数据帧任意字段的定义;冗余数据处理单元根据预设的算法,对接收的数据帧内容进行计算得到特征值,以特征值作为识别接收数据帧是否为冗余数据的唯一标识;如特征值在特征值池有重复的元素,则当前接收数据帧为冗余数据,反之当前数据帧为非冗余数据,需要传递给高级应用层。
冗余数据处理单元维护一个具有最大深度Nmax的特征值池,将最新接收到的数据帧特征值加入特征值池,将池中最早到达接收设备的帧所对应的特征值移出特征值池。特征值池的最大深度Nmax,表示了相同数据帧通过不同的备份网络到达接收设备的路径延迟不确定度的最大容忍度。这个值可以通过网络速度,预期的数据帧流量以及具体的应用需求来确定。
冗余数据处理单元可以同时向多个备份网络发送相同的数据,以实现网络数据的备份保护的功能。由于向备份网络复制数据的工作由冗余数据处理单元来完成,因此处理器每次发送仅需要发送一次数据,即能实现发送数据的多网备份功能。
冗余数据处理单元可以同时连接到多个备份网络中,备份网络的数量可以根据数据安全性要求的高低以及实际的硬件设备情况而定。如安全性要求很低的数据,应用上没有进行网络备份的需求,发送设备的冗余数据处理单元可以仅将这类数据发送至一个网络中,接收设备的冗余数据处理单元也仅从连接到此网络的网口接收此数据。对于要求性很高的数据,可以选择用两个甚至更多数量的备份网络进行数据安全性保护。发送设备的冗余数据处理单元将这类数据发送至所有备份网络中,接收设备的冗余数据处理单元从所有连接到网络的网口接收数据,判别并丢弃冗余数据帧,将非冗余数据传递给高级应用层。
通过实施本发明实施例,使终端设备可以通过专用的冗余数据处理单元处理网络数据,在接收数据帧时,通过计算以及比较特征值的方法识别并丢弃冗余数据帧;发送数据帧时,冗余数据处理单元对待发送数据帧复制后向所有备份网络中发送。
在实现备份网络的保护功能的同时,不需要对网络数据内容做任何修改,可以适应所有基于网络通信的具体应用,本发明相对于现有技术在网络数据帧中增加特殊字段实现冗余数据识别的方法,开放性更好,兼容性更强,易于部署实现。
在接收链路上,终端设备的中央处理器不会接收到冗余数据,可以显著降低对处理器的性能要求,简化了硬件设计;在发送链路上,终端设备的中央处理器仅需发送单网数据,由冗余数据处理单元将数据帧向多个备份网络中发送。因此无论终端设备接入到多少个备份网络中,其中央处理器仅需处理单网数据,不仅降低了中央处理器的性能要求,也维持了中央处理器负载率的稳定,提高了系统可靠性。
通过实施本发明,可以显著提高通信系统组网的灵活程度。本发明所述备份网络冗余数据处理方法不限制备份网络的数目,因此可以根据网络数据的重要等级,灵活设置备份网络数目。重要等级较低的数据,备份网络数目可以很少甚至是单网传输;重要等级较高的数据可以多个备份网络同时传输。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (13)
1.一种网络冗余数据处理方法,其特征在于,所述方法应用于数据帧的接收端,所述接收端通过至少一个备份网络接收数据帧,所述方法包括:
在接收到数据帧时,根据所述数据帧的内容计算获得相应的特征值;
根据计算所得的特征值查询维护的特征值池,当所述查询结果表明所述特征值池中存在所述计算所得的特征值时,确定所接收的数据帧为冗余数据;当所述查询结果表明所述特征值池中不存在所述计算所得的特征值时,确定所接收的数据帧为非冗余数据;
在确定所接收的数据帧为冗余数据时,丢弃所述数据帧;在确定所接收的数据帧为非冗余数据时,保留所述数据帧,并将所述数据帧对应的特征值存入所述特征值池。
2.根据权利要求1所述网络冗余数据处理方法,其特征在于,所述根据数据帧的内容计算获得相应的特征值,包括:
对所接收数据帧的内容执行循环冗余校验算法或循环冗余校验组合算法的运算,将运算结果作为相应的特征值。
3.根据权利要求2所述网络冗余数据处理方法,其特征在于,所述循环冗余校验算法为CRC32算法,所述循环冗余校验组合算法为CRC32算法和CRC32_SCTP算法的组合。
4.根据权利要求1所述网络冗余数据处理方法,其特征在于,所述特征值池设有元素数量上限Nmax,
所述方法进一步包括:在有新的特征值待存入所述特征值池时,判断所述特征值池中的已存特征值数量是否达到Nmax,如果达到,则按先进先出的策略将所述特征值池中最早存入的特征值移出所述特征值池,并将所述新的特征值存入所述特征值池;如果没有达到,则将所述新的特征值存入所述特征值池。
5.根据权利要求1或4所述网络冗余数据处理方法,其特征在于,所述特征值池设有最长老化时间Tmax,
所述方法进一步包括:监测所述特征值池中保存的每个特征值的老化时间,并将老化时间达到Tmax的特征值移出所述特征值池、或将老化时间达到Tmax的特征值设为失效。
6.一种网络冗余数据处理方法,其特征在于,所述方法应用于数据帧的发送端,所述发送端通过至少一个备份网络发送数据帧,所述方法包括:
在有待发的数据帧时,获得所述发送端的所有备份网络信息;
根据获得的备份网络信息,向所述发送端的所有备份网络发送所述数据帧;其中,所发送的数据帧不做格式和内容修改。
7.一种网络冗余数据处理装置,其特征在于,所述装置应用于数据帧的接收端,所述装置包括:第一冗余数据处理单元和第一中央处理单元,其中,
第一冗余数据处理单元,用于在接收到数据帧时,根据所述数据帧的内容计算获得相应的特征值;根据计算所得的特征值查询维护的特征值池,当所述查询结果表明所述特征值池中存在所述计算所得的特征值时,确定所接收的数据帧为冗余数据;当所述查询结果表明所述特征值池中不存在所述计算所得的特征值时,确定所接收的数据帧为非冗余数据;在确定所接收的数据帧为冗余数据时,丢弃所述数据帧;在确定所接收的数据帧为非冗余数据时,将所述数据帧提供给所述第一中央处理单元,并将所述数据帧对应的特征值存入所述特征值池;
第一中央处理单元,用于在获得所述第一冗余数据处理单元提供的数据帧时,采用所述数据帧完整相应的应用功能。
8.根据权利要求7所述网络冗余数据处理装置,其特征在于,所述第一冗余数据处理单元进一步用于,通过以下方式计算特征值:
对所接收数据帧的内容执行循环冗余校验算法或循环冗余校验组合算法的运算,将运算结果作为相应的特征值。
9.根据权利要求8所述网络冗余数据处理装置,其特征在于,所述循环冗余校验算法为CRC32算法,所述循环冗余校验组合算法为CRC32算法和CRC32_SCTP算法的组合。
10.根据权利要求7所述网络冗余数据处理装置,其特征在于,所述特征值池设有元素数量上限Nmax,
所述第一冗余数据处理单元进一步用于,在有新的特征值待存入所述特征值池时,判断所述特征值池中的已存特征值数量是否达到Nmax,如果达到,则按先进先出的策略将所述特征值池中最早存入的特征值移出所述特征值池,并将所述新的特征值存入所述特征值池;如果没有达到,则将所述新的特征值存入所述特征值池。
11.根据权利要求7或10所述网络冗余数据处理装置,其特征在于,所述特征值池设有最长老化时间Tmax,
所述第一冗余数据处理单元进一步用于,监测所述特征值池中保存的每个特征值的老化时间,并将老化时间达到Tmax的特征值移出所述特征值池、或将老化时间达到Tmax的特征值设为失效。
12.一种网络冗余数据处理装置,其特征在于,所述装置应用于数据帧的发送端,所述装置包括:第二冗余数据处理单元和第二中央处理单元,其中,
所述第二中央处理单元,用于在有待发的数据帧时,将所述数据帧提供给所述第二冗余数据处理单元;
所述第二冗余数据处理单元,用于在获得待发的数据帧时,获得所述发送端的所有备份网络信息;根据获得的备份网络信息,向所述发送端的所有备份网络发送所述数据帧;其中,所述第二冗余数据处理单元对所发送的数据帧不做格式和内容修改。
13.一种网络冗余数据处理系统,其特征在于,所述系统包括数据帧的发送端和接收端,所述发送端通过至少一个备份网络向接收端发送数据帧;
其中,所述发送端包括权利要求12所述的网络冗余数据处理装置,所述接收端包括权利要求7-11任一项所述的网络冗余数据处理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410607218.3A CN104378186A (zh) | 2014-10-31 | 2014-10-31 | 一种网络冗余数据处理的方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410607218.3A CN104378186A (zh) | 2014-10-31 | 2014-10-31 | 一种网络冗余数据处理的方法、装置和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104378186A true CN104378186A (zh) | 2015-02-25 |
Family
ID=52556870
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410607218.3A Pending CN104378186A (zh) | 2014-10-31 | 2014-10-31 | 一种网络冗余数据处理的方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104378186A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105978762A (zh) * | 2016-04-27 | 2016-09-28 | 刘巍 | 冗余以太网数据传输设备、系统及方法 |
CN107276787A (zh) * | 2017-05-05 | 2017-10-20 | 广东网金控股股份有限公司 | 一种数据通信方法及系统 |
CN108228763A (zh) * | 2017-12-25 | 2018-06-29 | 深圳市海派通讯科技有限公司 | 一种基于智能终端自媒体冗余数据处理的方法 |
CN109981479A (zh) * | 2019-02-27 | 2019-07-05 | 西安微电子技术研究所 | 一种面向prp网络的单窗口动态滑动与冗余管理系统和方法 |
CN110402840A (zh) * | 2019-07-25 | 2019-11-05 | 深圳市阿龙电子有限公司 | 一种基于图像识别的生猪监测终端及生猪监测系统 |
CN113556290A (zh) * | 2021-07-15 | 2021-10-26 | 西安微电子技术研究所 | 基于帧特征符的fc帧冗余接收方法、系统、设备及介质 |
CN114868347A (zh) * | 2019-11-06 | 2022-08-05 | 瑞典爱立信有限公司 | 对通过无线链路的数据业务的冗余控制 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1561062A (zh) * | 2004-03-09 | 2005-01-05 | �㽭�пؼ����ɷ�����˾ | 实现网络数据多路传输的方法 |
CN101630290A (zh) * | 2009-08-17 | 2010-01-20 | 成都市华为赛门铁克科技有限公司 | 重复数据处理方法和装置 |
CN103095603A (zh) * | 2013-02-21 | 2013-05-08 | 南京磐能电力科技股份有限公司 | 一种以太网风暴抑制方法 |
-
2014
- 2014-10-31 CN CN201410607218.3A patent/CN104378186A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1561062A (zh) * | 2004-03-09 | 2005-01-05 | �㽭�пؼ����ɷ�����˾ | 实现网络数据多路传输的方法 |
CN101630290A (zh) * | 2009-08-17 | 2010-01-20 | 成都市华为赛门铁克科技有限公司 | 重复数据处理方法和装置 |
CN103095603A (zh) * | 2013-02-21 | 2013-05-08 | 南京磐能电力科技股份有限公司 | 一种以太网风暴抑制方法 |
Non-Patent Citations (1)
Title |
---|
EVA GUSTAFSSON: "A Literature Survey on traffic Dispersion", 《IEEE JOURNALS & MAGAZINE》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105978762A (zh) * | 2016-04-27 | 2016-09-28 | 刘巍 | 冗余以太网数据传输设备、系统及方法 |
CN105978762B (zh) * | 2016-04-27 | 2019-02-01 | 刘巍 | 冗余以太网数据传输设备、系统及方法 |
CN107276787A (zh) * | 2017-05-05 | 2017-10-20 | 广东网金控股股份有限公司 | 一种数据通信方法及系统 |
CN108228763A (zh) * | 2017-12-25 | 2018-06-29 | 深圳市海派通讯科技有限公司 | 一种基于智能终端自媒体冗余数据处理的方法 |
CN109981479A (zh) * | 2019-02-27 | 2019-07-05 | 西安微电子技术研究所 | 一种面向prp网络的单窗口动态滑动与冗余管理系统和方法 |
CN109981479B (zh) * | 2019-02-27 | 2022-06-28 | 西安微电子技术研究所 | 一种面向prp网络的单窗口动态滑动与冗余管理系统和方法 |
CN110402840A (zh) * | 2019-07-25 | 2019-11-05 | 深圳市阿龙电子有限公司 | 一种基于图像识别的生猪监测终端及生猪监测系统 |
CN110402840B (zh) * | 2019-07-25 | 2021-12-17 | 深圳市阿龙电子有限公司 | 一种基于图像识别的生猪监测终端及生猪监测系统 |
CN114868347A (zh) * | 2019-11-06 | 2022-08-05 | 瑞典爱立信有限公司 | 对通过无线链路的数据业务的冗余控制 |
US11968046B2 (en) | 2019-11-06 | 2024-04-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Redundancy control for data traffic through a wireless link |
CN114868347B (zh) * | 2019-11-06 | 2024-09-17 | 瑞典爱立信有限公司 | 对通过无线链路的数据业务的冗余控制 |
CN113556290A (zh) * | 2021-07-15 | 2021-10-26 | 西安微电子技术研究所 | 基于帧特征符的fc帧冗余接收方法、系统、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104378186A (zh) | 一种网络冗余数据处理的方法、装置和系统 | |
CN105827419B (zh) | 一种转发设备故障处理的方法、设备和控制器 | |
US9407582B2 (en) | Redundantly operable industrial communication system and method for operation thereof | |
KR100839881B1 (ko) | 패킷 전송방법 및 패킷 전송장치 | |
US9356830B2 (en) | Communication device for a redundantly operable industrial communication network and method for operating the communication device | |
US10182015B2 (en) | Redundant transmission of data frames in communication networks having a ring topology | |
US9218230B2 (en) | Method for transmitting messages in a redundantly operable industrial communication network and communication device for the redundantly operable industrial communication network | |
US10484199B2 (en) | Redundantly operable industrial communication system, method for operating the communication system, and radio transceiver station | |
CN103404100B (zh) | 中继装置、中继装置的控制方法以及网络系统 | |
US8804491B2 (en) | Recovery method for ring-based network | |
US7660239B2 (en) | Network data re-routing | |
CN109076635B (zh) | 可冗余运行的工业通信系统、方法和无线电-用户站 | |
US10484238B2 (en) | Radio communication system for an industrial automation system, method for operating said radio communication system, and radio transceiver station | |
CN104283780A (zh) | 建立数据传输路径的方法和装置 | |
CN107896141B (zh) | 一种fc-ae-asm网络数据冗余方法 | |
CN103916318A (zh) | 一种单环网实现方法 | |
CN110994565A (zh) | 一种继电保护方法及装置 | |
US8854949B2 (en) | Network relay device and network relay method | |
CN101232508A (zh) | 加速多生成树协议网络拓扑收敛的方法及设备 | |
CN112995002A (zh) | 一种交换机环网的设计方法、交换机及存储介质 | |
CN103684719A (zh) | 一种与平台无关的网络双冗余热切换方法 | |
CN103457795B (zh) | Vcf网络中的mad方法及设备 | |
CN115514593A (zh) | 工业控制环网链路中断快速获取链路节点数据的方法 | |
RU2651186C1 (ru) | Способ обмена данными и устройство управляющего узла сети | |
CN105812160B (zh) | 一种无缝冗余网络模式自适应方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20150225 |