CN110113242A - 环形通信网络中多节点同步采样和数据传输方法 - Google Patents
环形通信网络中多节点同步采样和数据传输方法 Download PDFInfo
- Publication number
- CN110113242A CN110113242A CN201910375564.6A CN201910375564A CN110113242A CN 110113242 A CN110113242 A CN 110113242A CN 201910375564 A CN201910375564 A CN 201910375564A CN 110113242 A CN110113242 A CN 110113242A
- Authority
- CN
- China
- Prior art keywords
- time
- node
- real
- data
- message
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/42—Loop networks
- H04L12/422—Synchronisation for ring networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0236—Filtering by address, protocol, port number or service, e.g. IP-address or URL
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2212/00—Encapsulation of packets
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种环形通信网络中多节点同步采样和数据传输方法,主节点生成与系统采样间隔Ts一致的同步脉冲AD_CVT和传输触发脉冲TX_SYN,同时主节点在AD_CVT的控制下完成本地实时数据采集并在TX_SYN信号触发下完成数据传输;同时各控制节点将物理信道划分为实时和非实时两个逻辑信道,将实时采样数据业务归入到实时逻辑信道中传输,并将实时采样数据通过交错抽取并从环网的两个不同方向发出,将非实时数据归入非实时逻辑信道传输。本发明方法实现了环网中各控制节点的同步采样和同步数据传输,提高了数据采样的效率和数据传输的实时性。
Description
技术领域
本发明涉及电力系统自动化和工业控制技术领域,具体涉及一种环形通信网络中多节点同步采样和数据传输方法。
背景技术
在电力系统广域保护和广域过程控制领域,为精确地保留信号的相位信息,或对异步发生的事件进行精确时序分析,需要对某一组过程量进行严格异地同步等间隔采集。为了提高系统实时处理能力和异步事件响应速度需要各个过程量采集控制装置的采样数据能够实时上送,并且处理装置的命令设置信息需要实时地发往执行机构或调节机构。
对广域测量和控制系统来说,系统规模大、测控节点物理分布较远、组网成本高,如何保证全系统的严格等间隔同步采样和实时数据的同步低抖动回传就成为难题。当数据采集和传输系统扩展到更远的距离时,和局域网相比意味着数据传输系统的故障概率和维护成本在升高,如何提高传输可靠性和缩短故障恢复时间成为系统设计者另一个难题。另一方面,由于环形拓扑提供低成本的技术方案(特别当交换元件集成在节点内时),由于环网中每个节点具有连接到两个相邻节点的两个通信端口,可以在任一或两个方向上进行数据传输,从而提供抵御链路故障的弹性,而环形拓扑带来的传输延迟不容忽略。
但就广域测量和控制系统来说,系统级同步采样并没有统一的实现方法,现有的系统级同步采样控制方法和传输方法主要包括以下四种方法:
(1)基于卫星时钟同步法:利用GPS或北斗模块为不同物理分布节点提供秒脉冲,各节点采样同步于GPS或北斗模块输出的秒脉冲实现全局同步采样。
(2)基于硬实时级联式多节点同步采样和数据传输方法:确定级联系统的采样间隔T,并将物理信道划分为实时和非实时两个逻辑信道,将具有硬实时要求的业务归入到实时逻辑信道中传输,将通用业务归入非实时逻辑信道传输,由上层的数据通信管理装置控制系统级同步采样和实时数据的同步传输。
(3)基于FDDI(光纤分布式数据接口)、令牌环或环形冗余协议RRP(IEC62439-7Ring-based Redundancy Protocol)等环形网络的技术思路进行数据采集和传输。
(4)依托现场总线思路,利用高度可用无缝冗余HSR(IEC62439-3ParallelRedundancy Protocol(PRP)and High-availability Seamless Redundancy(HSR))的环形通信网络的技术:由系统中的主节点向环网的两个方向发布冗余的实时数据加载帧,由系统中数据源节点将过程数据插入每个帧的预定和专用字段,目的节点最后从该对冗余帧中首先到达的加载冗余帧中提取过程数据。
上述的同步采样控制方法均存在不足之处:
对于方法(1),GPS和北斗(BDS)同步法受捕获卫星数量影响,以及自然环境和社会环境等因素的制约,并且需要相应的硬件支持,对天线的安装位置要求较高,需要额外的数据传输通道,成本较高。
对于方法(2),基于网络级联的方法实现了多节点同步数据采集和传输,由于缺乏冗余链路,在链路故障时将会导致系统功能丧失。
对于方法(3),基于RRP系列的环网网络故障恢复时间较长,即使在1000BASE-X链路上最快也要4ms以上,如果考虑物理链路延迟,恢复时间可能进一步延长,将严重影响实时业务的性能,基于RRP技术的链路冗余的实现是以牺牲实时性为代价的。
对于方法(4),基于HSR技术的实时传输描述的仅仅适合局域网中数据传输,且没有考虑普通IP业务数据和链路延迟对传输的影响,基于HSR技术的链路冗余的实现是以牺牲带宽为代价的。
上述现有技术方法只是部分解决了广域数据同步传输问题,对于具备同步采样要求同时又对传输的实时性和可靠性有严格要求的场合,需要研究新的技术方法。
发明内容
本发明为了克服现有技术中的不足,提出一种环形通信网络中多节点同步采样和数据传输方法,解决了不同物理分布的多个通过环网连接的采集控制节点之间由于物理链路长度和软件协议栈所产生的额外时延的技术问题。
为解决上述技术问题,本发明提供了一种环形通信网络中多节点同步采样和数据传输方法,其特征是,包括以下步骤:
S1,从环形通信网络的各控制节点中选取一个控制节点作为主节点;
S2,主节点在主节点同步信号AD_CVT触发下以采样间隔Ts采样,计算其他控制节点的当前时间点与主节点同步信号AD_CVT之间的全路径延迟;
S3,环网中各控制节点估算采样间隔,并根据其当前时间点与主节点同步信号AD_CVT之间的全路径延迟生成网络同步信号,通过锁相环将本地同步信号AD_CVT渐进同步到网络同步信号,实现和主节点同步信号AD_CVT的间接同步;
S4,主节点在传输触发脉冲TX_SYN触发下以采样间隔Ts传输数据,环网中各控制节点估算采样间隔,并根据主节点同步信号AD_CVT和传输触发脉冲TX_SYN之间的相位差,对本地数据采集同步脉冲AD_CVT移相相同相位差生成本地数据传输触发脉冲TX_SYN;
S5,各控制节点将物理信道划分为实时和非实时两个逻辑信道,将实时采样数据业务归入到实时逻辑信道中传输,将非实时业务归入非实时逻辑信道传输;
S6,各控制节点的实时采样数据交错抽取成奇数次采样数据帧和偶数次采样数据帧,在实时数据发送时隙中将奇数次采样数据帧从环路的顺时针方向发送,偶数次采样数据帧沿逆时针方向传送;
S7,各控制节点在非实时数据发送时隙中根据路径最短原则选择非实时业务帧从源到目标的转发路径。
进一步的,从环形通信网络的各控制节点中选取一个控制节点作为主节点的过程为:
给环网中的各控制节点分配唯一的节点ID;节点ID的值越小,表明在主节点选举中优先权越高;
各节点定时从向两侧相邻节点发送环路检测报文,此环路检测报文中包含各控制节点自身的ID;
环网上的每个节点收到报文后,进行如下判断:如果节点从其中一端口收到的报文中ID比自身ID小,表明此节点自身为传输节点,则此节点从另一端口转发收到的报文,自身不再发送环路检测报文;如果收到报文中ID比自身ID大,就丢弃此报文;如果收到自身的环路检测报文,说明此节点自身为主节点。
进一步的,主节点选举成功后,由主节点定时发送环路检测报文进行环路检测,若主节点能收到自身的环路检测报文,则表明环路是完整的;如果超时收不到环路检测报文,就认为环网发生链路故障。
进一步的,控制节点计算自己的当前时间点与主节点同步信号AD_CVT之间的全路径延迟的过程为:
1)主节点以系统采样间隔Ts,在主节点同步信号AD_CVT触发下进行数据采样同时记录采样时刻tm_adcvt,主节点采样结束后,向环网上其他控制节点发送包含采样数据、采样计数器、延迟修正时间的主节点实时数据报文,延迟修正时间Tpd_correct初始值为0,在实时数据报文离开端口时按下面的公式计算并更新:
Tpd_correct=(tm_xmit-tm_adcvt)
其中:
tm_adcvt--为主节点同步信号AD_CVT的上升沿时刻;
tm_xmit--主节点实时数据报文离开环网端口时刻;
从主节点到目标控制节点之间的控制节点读取主节点实时数据报文中的延迟修正时间字段的值Tpd_correct,转发时累加本节点驻留时间到该字段:
其中:
Tpd_correct_new--累加本地驻留时间后新的延迟修正时间;
--主节点的实时数据报文到达控制节点CNi的环网端口时间;
--实时数据报文转发离开控制节点CNi的环网端口时间;
2)当主节点实时数据报文传递到目标控制节点时,目标控制节点CNn提取实时数据报文中延迟修正时间字段的值Tpd_correct,并结合相邻节点间链路延迟,计算目标控制节点的当前时间点和主节点AD_CVT信号上升沿之间的全路径延迟Tpd_m_n_correct:
其中:
--为控制节点CNi和CNi-1之间的链路延迟;
Tpd_correct--为主节点实时数据报文中的延迟修正时间;
n---主节点和目标控制节点CNn之间转发次数。
进一步的,通过点到点的延迟测量获得环网中相邻节点之间的链路延迟。
进一步的,通过点到点的延迟测量获得环网中相邻节点之间的链路延迟的计算过程为:
环网中各控制节点定时分别向相邻节点发送延迟请求报文,相邻的目标控制节点接收到延迟请求报文后返回延迟响应报文至相邻的请求控制节点,此请求控制节点即发送请求报文的控制节点;
以其中一个控制节点为例来进行描述:
请求控制节点向相邻的目标控制节点发送延迟请求报文,延迟请求报文包含报文离开本地端口时间T1,目标控制节点接收到延迟请求报文后标记报文到达端口的时间T2,随后发送延迟响应报文,该延迟响应报文中标记报文离开端口时间T3,在T4时刻延迟响应报文到达请求控制节点,由于到点到点的物理链路往返长度相等,可以利用下面的公式计算测量请求控制节点到目标控制节点之间链路延迟Tdelay:
Tdelay=[(T4-T1)-(T3-T2)]/2
环网中的各控制节点不转发点到点的延迟测量报文,对于延迟请求报文和延迟响应报文中的时间戳在网络报文离开端口时标记。
进一步的,环网中各控制节点估算采样间隔的过程为:
目标控制节点CNn以主节点实时数据报文到达时间和报文内延迟修正时间Tpd_correct构成二元组序列,k表示多次测量结果构成的时间序列的索引,取序列的M+1个元素,按下面的公式估计系统采样间隔
进一步的,控制节点根据其当前时间点与主节点同步信号AD_CVT之间的全路径延迟生成网络同步信号的过程包括:
目标节点CNn构建一个模为的加定时器,在主节点实时数据报文到达时将定时器的计数值修改为CNn的当前时间点和主节点AD_CVT信号上升沿之间的全路径延迟Tpd_m_n_correct,当定时器在自加到达时自动归0,同时触发生成本节点网络同步信号。
进一步的,控制节点在完成和相邻节点之间的延迟测量以及和主节点同步之前不发送本地实时采样数据帧,也不转发主节点和其他控制节点的实时采样数据帧,但转发环网管理帧和非实时业务帧。
进一步的,环形通信网络中帧封装和转发方法,包括以下过程
S1,控制节点使用采用IEEE802.1D保留的多播组MAC地址封装环网中相邻节点间的点到点管理报文并发送该报文,目标控制节点接收该管理报文但不向相邻环网端口转发。
S2,控制节点使用包含终点节点(Endpoint Node)信息的特定多播MAC地址封装环网中实时数据报文、环网节点状态报告报文、环网环路检测报文和其他多点传送的环网链路管理路报文,环网中其他控制节点根据本地多播过滤器输出决定是否接收并处理该类型报文。
所述包含终点节点信息多播MAC地址由<多播组地址,终点节点设备ID>二元组构成,其中多播组地址位于MAC地址高位,对应一个特定的多播组,而终点节点设备ID位于MAC地址的低位,对于目标MAC地址包含终点节点信息的帧中,控制节点只向相邻环网端口转发其多播MAC地址中终点节点设备ID和本节点设备ID不一致的帧。
所述多播过滤器包含基于多播MAC地址的一个黑名单查找表,包含在黑名单中的帧将被拒绝,查找表由控制节点的配置软件维护,配置软件将拟拒收的帧对应的多播MAC地址添加到的黑名单中实现接收过滤。
S3,控制节点通过为非实时数据报文添加一个环网帧头部的方法封装环网中非实时数据报文并重新计算以太网帧校验,环网中其他控制节点根据本地多播过滤器输出决定是否接收并处理该类型报文。
所述封装非实时数据报文的环网帧头部采用前述的包含终点节点信息的特定多播MAC地址作为目标MAC地址、并包括产生该数据报文的源控制节点的MAC地址和内嵌的非实时数据报文长度组成,而待发送的非实时数据则作为协议数据单元PDU整体封装在环网帧中。
S4,控制节点提取多播地址过滤器匹配通过的环网帧的长度(类型)字段值,若长度(类型)字段值大于0x800则接收该报文,否则提取环网帧中内嵌的完整非实时数据报文。
S5,控制节点检查S4提取出的非实时数据文中的目标MAC字段,若目标MAC地址为广播地址或多播地址则向应用层提交S4提取的非实时数据报文同时向非实时业务端口转发。
进一步地,若提取出的非实时数据报文具有单播目标MAC地址且该地址对应本节点MAC地址,则控制节点向应用层提交该非实时数据报文但不向其非实时端口转发,否则控制节点但根据动态转发路径表的检查结果决定是否向控制节点的非实时业务端口转发该非实时数据报文。
进一步的,非实时数据传送时隙的计算过程为:
1)获取各个控制节点的实时数据带宽需求、点到点的延迟信息和网络拓扑信息;
2)按环网数据传输方向的相反向对各控制节点编号排序,当前节点编号为0,上一跳节点为1以此类推;
3)确定环网上其他控制节点的实时报文到达本节点顺序,按下面的方法计算其他控制节点实时数据到达本地的时隙;
tslot_end_time_lv1(i)=tslot_start_time_lv1(i)+Tpkt(i)
其中:
tslot_start_time_lv1(i)--为控制节点i的LV1数据时隙开始时间,i=0对应当前节点LV2数据时隙开始时间,其值为0;
tslot_end_time_lv1(i)--为控制节点i的LV1数据时隙结束时间,i=0对应当前节点LV2数据时隙结束时间,其值为Tpkt(0);
Tpd(i)--为第i个节点到i-1个节点间链路延迟,Tpd(0)对应当前节点,其值为0;
Tpkt(i)--为第i个节点的实时数据报文的传输占用时间,Tpkt(0)对应本地实时数据报文传输时间;
Tfw--实时报文的转发延时,对于直通转发策略此值相对固定
4),对上述实时报文发送时隙进行合并,以需要合并的时隙0和时隙1为例,其规则如下:
(1),若时隙0和时隙1的间距过小,0<(tslot_start_time_1-tslot_end_time_0)<Tpkt_min,则合并为一个大的时隙,其中Tpkt_min为最短网络报文传输时间:
tslot_start_time=tslot_start_time_0
tslot_end_time=tslot_end_time_1
(2),若时隙0和时隙1的间隙部分重合,则扩展间隙为:
tslot_start_time=min{tslot_start_time_0,tslot_start_time_1}
tslot_end_time=tslot_start_time+Tpkt0+Tpkt1
5),在一个系统采样节拍内的时间段[0,Ts]内扣除上述实时数据报文发送时隙即得到非实时数据报文LV0发送时隙。
进一步的,各控制节点的实时采样数据依据其采样计数器交错抽取成奇数次采样数据帧和偶数次采样数据帧,在实时数据发送时隙中将奇数次采样数据帧从环路的顺时针方向发送,偶数次采样数据帧沿逆时针方向传送;
目标节点若使用高采样率数据,在环网连通时应同时读取奇数次采样数据帧和偶数次采样数据帧,利用采样数据帧中的采样计数器重新排序,当环网出现传输故障时目标节点可以读取未故障的传输方向传输的奇数次采样数据帧或偶数次采样数据帧,通过内插算法实现系统级数据同步;
目标节点若使用低采样率数据,在环网连通时可固定读取奇数次采样数据帧或偶数次采样数据帧,在当前传输方向故障时才读取偶数次采样数据帧或奇数次采样数据帧,通过内插算法实现系统级数据同步。
与现有技术相比,本发明所达到的有益效果是:本发明的环形通信网络中多节点同步采样和数据传输方法,解决了不同物理分布的多个通过环形网络连接的采集控制节点之间由于物理链路长度和软件协议栈所产生的额外时延及为关键业务数据提供硬实时转发能力,在实时业务传输确定性和可靠性以及系统带宽利用率方面取得很好的平衡,具有以下优点,
(1)利用双向环形数据链路实现数据传输和同步采样,每个采样周期内完成数据传输,传输时刻固定,传输时延固定;
(2)各控制节点通过点到点的链路延迟测量并结合延迟测量报告计算自身和主节点之间的延迟,并进一步实现和主节点的同步,保证多个节点之间精确同步,消除了系统各级因传输或晶体老化、频率漂移带来的同步抖动;
(3)实时采样数据通过交错抽取并从环网的两个不同方向发出,结合目标节点的内插技术,在不降低系统可靠性的前提下节约了网络带宽;
(4)同时获取环网两个方向实时采样数据可以在不增加带宽的情况下获得更高采样率的实时数据;
(5)同步精度不受信道物理长度影响,也不受外界条件影响,可达到纳秒级;
(6)在环网上利用带宽保留的方法实现了实时多业务,保证信道占用最小的情况下实时业务延时要求同时在剩余带宽传递非实时业务;
(7)环网上的主节点并不阻塞非实时帧,因而节点在非实时帧转发时可以选取路径最短的端口,非实时帧转发延时优于同类技术;
(8)控制节点采用包含终点节点信息的多播MAC地址封装多点传送数据帧,可以减少帧在环网上的传输路径节约网络带宽;
(9)控制节点采用包含终点节点信息的多播MAC地址的转发控制策略,可以避免帧在环网上循环转发并减少帧的直通转发延时;
(10)采用的环形拓扑结构有效简化通道建设成本和施工工作量。
附图说明
图1是基于环网络多节点同步采样系统实现流程图;
图2是基于线网络多节点同步采样控制系统结构图;
图3是控制节点故障后环网示意图;
图4是本发明基于局域网的简化实时案例;
图5是本发明的同步生成模块示意图;
图6是本发明的环网控制节点逻辑结构示意图;
图7是本发明的环网网关节点逻辑结构示意图;
图8是本发明的点到点链路延迟测量示意图;
图9是本发明基于环网络实时数据报传输示意图;
图10是本发明控制节点实时帧传输延时示意图;
图11是本发明的硬件优先级MAC控制器状态变迁图;
图12是本发明的点对点的管理报文封装示意图;
图13是本发明的实时数据报文封装示意图;
图14是本发明的非实时数据报文封装示意图;
图15是本发明的C语言时隙结构体示意图;
图16是本发明的C语言环网控制节点信息结构示意图。
具体实施方式
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
本发明的一种环形通信网络中多节点同步采样和数据传输方法,包括以下过程:
S1,从环形通信网络的各控制节点中选取一个控制节点作为主节点;
S2,主节点在主节点同步信号AD_CVT触发下以采样间隔Ts采样,计算其他控制节点的当前时间点与主节点同步信号AD_CVT之间的全路径延迟;
S3,环网中各控制节点估算采样间隔,并根据其当前时间点与主节点同步信号AD_CVT之间的全路径延迟生成网络同步信号,通过锁相环将本地同步信号AD_CVT渐进同步到网络同步信号,实现和主节点同步信号AD_CVT的间接同步;
S4,主节点在传输触发脉冲TX_SYN触发下以采样间隔Ts传输数据,环网中各控制节点估算采样间隔,并根据主节点同步信号AD_CVT和传输触发脉冲TX_SYN之间的相位差,对本地数据采集同步脉冲AD_CVT移相相同相位差生成本地数据传输触发脉冲TX_SYN;
S5,各控制节点将物理信道划分为实时和非实时两个逻辑信道,将实时采样数据业务归入到实时逻辑信道中传输,将非实时业务归入非实时逻辑信道传输;
S6,各控制节点的实时采样数据依据其采样计数器交错抽取成奇数次采样数据帧和偶数次采样数据帧,在实时数据发送时隙中将奇数次采样数据帧从环路的顺时针方向发送,偶数次采样数据帧沿逆时针方向传送;
S7,各控制节点在非实时数据发送时隙中根据路径最短原则选择非实时业务帧从源到目标的转发路径。
本发明的一种环形通信网络中多节点同步采样和数据传输方法,实现了环网中各控制节点的同步采样和同步数据传输,提高了数据采样的效率和数据传输的实时性。
实施例1
本发明同步采样的基本技术思路是:首先环形通信网络(简称环网)中的各控制节点通过选举确定主节点,各控制节点之间通过点到点的延迟测量获取相邻节点之间的传输延时,再由主节点在定时器控制下首先启动本地实时数据采集并发布包含延迟修正时间的实时数据报文,系统中其他控制节点提取主节点实时数据报文中的延迟修正时间和延迟测量信息,生成网络同步信号,再利用数字锁相环渐进同步到主节点完成系统同步,并生成本地同步采样参考信号控制数据采集,进一步地,附属于某个节点的独立采集设备也由对应的控制节点控制同步数据采集和实时回传。各控制节点将物理信道划分为实时发送时隙和非实时发送时隙两部分,同时控制节点的实时采样数据依据其采样计数器交错抽取成奇数次采样数据帧和偶数次采样数据帧,并在实时时隙中将奇数次采样数据帧从环路的顺时针方向发送,偶数次采样数据帧沿逆时针方向传送,而在非实时业务数据帧则在非实时时间窗中根据路径最短原则选择从源到目标的进行存储转发。
具体的,本发明的一种环形通信网络中多节点同步采样和数据传输方法,包括以下步骤:
步骤(1),构建多个具有双网口的控制节点,各个控制节点依次连接构成环形通信网络。
附图1展示了本发明完整环形通信网络(简称环网),多个控制节点依次相连成环形通信网络。附图2展示了一种线网络(Line network)结构图,如果将图中位于线网络两端的控制节点1和控制节点6网络端口相连,将得到附图1所示的环网络(Ring network)系统结构。附图3展示了一种环路开断的场景,控制节点4和控制节点5之间的线路出现故障,一个运行中的环网出现网络节点故障后,未故障的控制节点构成的系统结构等价于附图2的线网络。
每个控制节点(以下称控制节点i为:CNi),应至少包含两个独立网络接口A和B,控制节点使用网口A和网口B相互连接成环形通信网络。
对具备非实时数据转发功能的控制节点还应该具备第三个网络接口C,例如图1环网中的控制节点1、控制节点2以及控制节点4-控制节点6,外部非实时数据通信装置经过网口C接入环网。
对具备实时数据转发功能的控制节点还应该具备第四个网络接口D,例如附图1中的网关节点,顶层实时数据处理装置经过网关节点的网口D接入环网。
每个控制节点可以包括本地同步数据采集功能模块,也可以包括附属在该控制节点上的独立采集设备,附属于环网控制节点的数据采集和控制终端设备包括ADC或类似的采集控制器,由控制节点负责本地实时数据采集控制并同步附属的数据采集和控制终端进行实时数据采集和回传。
步骤(2),位于环网中的各控制节点通过选举确定通信系统中主节点,此主节点负责系统级同步脉冲生成及系统同步和通信系统环路检测功能。
为了识别环网中的各控制节点,给环网中的各控制节点分配唯一的节点ID;节点ID主要由以下三部分组成:人工指定位、外同步信号品质和设备识别ID。
所述节点ID的值越小,表明在主节点选举中优先权越高。
本发明实施例中采取如下策略进行主节点选举:
各节点在环路检测定时器的作用下定时从两个级联端口A和B向两侧相邻节点发送环路检测报文,此环路检测报文中包含各控制节点自身的ID;
环网上的每个节点收到报文后,进行如下判断:如果节点从其中一端口收到的报文中ID比自身ID小,表明此节点自身为传输节点,则此节点从另一端口转发收到的报文,自身不再发送环路检测报文;如果收到报文中ID比自身ID大,就丢弃此报文;如果收到自身的报文,说明此节点自身为主节点。
进一步的,主节点选举成功后,由主节点定时发送环路检测报文进行环路检测,若主节点能收到自身的环路检测报文,则表明环路是完整的;如果超时收不到环路检测报文,就认为环网发生链路故障。
进一步地,若主节点发生故障导致环路开断为线网络,各控制节点无法接收到主节点的环路检测报文,则默认线网络的最左边的控制节点为新的主节点,同时通知各控制节点。
进一步地,节点故障后恢复成环网模式后,控制节点阻塞节点ID比自己高的环路检测报文传输,并发送自己的环路检测报文,系统按前述步骤重新进行主节点选举。
步骤(3),主节点在主节点同步信号AD_CVT触发下以采样间隔Ts进行数据采样,采样完成后发送包含采样数据、采样计数器、延迟修正时间的实时数据报文。
进一步的,环网中各控制节点从主节点的实时数据报文中提取延迟修正时间并结合自身的管理信息库(MIB),计算本节点当前时间点与主节点同步信号AD_CVT之间的全路径延迟。
主节点需要协调其他节点实现系统级同步数据采样,并将采样结果实时传输到其他环网节点或经网关节点传输到高层的数据处理装置,实现数据共享。因此需要计算主节点与环网中各控制节点间的延迟,定义环网中除主节点外的任意控制节点作为目标控制节点,以主节点与目标控制节点间的延迟测量为例来详细描述此延迟的计算过程:
1)本发明中主节点以系统采样间隔Ts,在主节点同步信号AD_CVT(也可称为主节点采样同步脉冲)的上升沿时刻进行过程量或状态量采样,这些物理量可以通过传感器直接连接到控制节点,也可以连接到控制节点的附属测量装置。前者通过控制节点的ADC直接采集,后者由附属采集装置采集并上传到控制节点。同时,主节点在传输触发脉冲TX_SYN触发下以采样间隔Ts进行数据传输,上送到高层的数据处理装置。主节点同步信号AD_CVT和传输触发脉冲TX_SYN的周期相同,但存在固定的相位差,本发明中选取相位差为Ts/2。
所述主节点同步信号AD_CVT和传输触发脉冲TX_SYN由主节点的同步脉冲生成器产生,当主节点连接有外同步信号如GPS或北斗(BDS)等信号源时,主节点选择同步到外同步信号,否则主节点的同步脉冲生成器选择同步到自身的同步定时器,该定时器的模为系统采样间隔Ts。
主节点采样结束后,向环网上其他控制节点发送包含采样数据、采样计数器、延迟修正时间的主节点实时数据报文,采样数据即指采样到的过程量或状态量,延迟修正时间Tpd_correct初始值为0,在实时数据报文离开端口时按下面的公式计算并更新:
Tpd_correct=(tm_xmit-tm_adcvt)
其中:
tm_adcvt--为主节点同步信号AD_CVT的上升沿时刻;
tm_xmit--主节点实时数据报文离开环网端口时刻;
所述的采样计数器每个采样间隔自加一次,其值随主节点的实时数据报文传输,各控制节点提取主节点报文中的采样计数器同步自身的采样计数器。
从主节点到目标控制节点之间的控制节点在读取实时数据报文中的延迟修正时间Tpd_correct,转发时由硬件累加本节点驻留时间到该字段:
其中:
Tpd_correct_new--累加本地驻留时间后的延迟修正时间;
--主节点的实时数据帧到达控制节点CNi的环网端口时间;
--实时数据帧转发离开控制节点CNi的环网端口时间;
附图10展示了主节点与其他控制节点之间实时数据报文传输过程中时间戳标记。
2)当主节点实时数据报文传递到目标控制节点时,目标控制节点CNn提取实时数据报文中延迟修正时间字段的值Tpd_correct,并结合自身的管理信息库(MIB)获取传输路径上的相邻节点间链路延迟,计算目标控制节点的当前时间点和主节点AD_CVT信号上升沿之间的全路径延迟Tpd_m_n_correct:
其中:
--为控制节点CNi和CNi-1之间的链路延迟;
Tpd_correct--为主节点实时数据报文中的延迟修正时间;
n---主节点和目标控制节点CNn之间转发次数;
其中,环网中相邻节点之间(即控制节点CNi和CNi-1之间的链路延迟)的链路延迟的计算过程为:
通过点到点(Point-to-Point)的延迟测量获得环网中各个控制节点的端口到端口之间的物理链路的传输延迟,进而通过管理报文向环网上其他节点通报延迟测量结果和本节点的实时数据带宽请求,节点依托自身的管理信息库(Management InformationBase,以下简称MIB)获得整个环网上其他节点的延迟测量信息和带宽需求信息。
在点到点的物理链路上,环网中各控制节点定时分别从两个环网端口向相邻节点发送延迟请求报文,相邻的目标控制节点接收到延迟请求报文后返回延迟响应报文至相邻的请求控制节点,此请求控制节点即发送请求报文的控制节点。环网中各相邻节点之间的链路延迟计算过程相同,本发明实施例中以其中一个控制节点(此节点作为请求控制节点)为例来进行描述:
如附图8所示,请求控制节点向相邻的目标控制节点发送延迟请求报文,延迟请求报文包含报文离开本地端口时间T1,目标控制节点接收到延迟请求报文后标记报文到达端口的时间T2,随后发送延迟响应报文,该延迟响应报文中标记报文离开端口时间T3,在T4时刻延迟响应报文到达请求控制节点,由于到点到点的物理链路往返长度相等,可以利用下面的公式计算测量请求控制节点到目标控制节点之间链路延迟Tdelay:
Tdelay=[(T4-T1)-(T3-T2)]/2
环网中的各控制节点不转发点到点的延迟测量报文,对于延迟请求报文和延迟响应报文中的时间戳均由硬件在网络报文离开端口时标记。
通过这组报文交互计算相邻节点间的链路延迟,并通过节点状态报告向环网上其他控制节点通报链路延迟测量结果。
步骤(4),环网中各控制节点估算采样间隔,并根据其当前时间点与主节点同步信号AD_CVT之间的全路径延迟生成网络同步信号,通过锁相环将本地同步信号AD_CVT渐进同步到网络同步信号,实现和主节点同步信号AD_CVT的间接同步。
1)环网中各控制节点估算采样间隔
各节点利用自己的晶振并根据主节点实时数据报文到达时间和报文内延迟修正时间来估算采样间隔。进一步地,为了克服控制节点的本地晶振频率漂移和网络信号传输过程中的抖动对采样间隔的影响,本发明通过多次测量和估计来减小这些抖动的影响。
目标控制节点CNn以主节点实时数据报文到达时间和报文内延迟修正时间Tpd_correct构成二元组序列,k表示多次测量结果构成的时间序列的索引,取序列的M+1个元素(M为经验值,取决于节点的本地存储空间、抖动抑制能力和同步变化跟踪时间的需求平衡),按下面的公式估计系统采样间隔
2),目标节点CNn构建一个模为的加定时器,在主节点实时数据帧到达时将定时器的计数值修改为CNn的当前时间点和主节点AD_CVT信号上升沿之间的全路径延迟Tpd_m_n_correct,当定时器在自加到达时自动归0,同时触发生成本节点网络同步信号。
3),目标控制节点CNn利用内部的数字锁相环以前述的网络同步信号作为参考,通过相位检测器不断检测输入参考同步脉冲和锁相环输出的同步脉冲AD_CVT之间的相位差,由后续的PI调节器和限幅器进行相位跟踪调节数控振荡器输出本地同步脉冲,直至二者间相位差为0,最后生成本地数据采集同步脉冲AD_CVT,同时并通过锁相环内建的移相器生成与AD_CVT同周期的传输触发信号TX_SYN。也就是说目标控制节点CNn生成的传输触发信号TX_SYN与本地数据采集同步脉冲AD_CVT同周期,此两者之间相位差与主节点同步信号AD_CVT和传输触发脉冲TX_SYN之间的相位差相同。
进一步地,控制节点在本地同步信号AD_CVT的控制下触发连接在本节点的数据采集终端进行同步数据采集和数据回传,随后在TX_SYN信号控制下转发本节点实时采样数据。
进一步地,控制节点采样结束后,也向环网上其他控制节点发送包含采样数据、采样计数器、延迟修正时间的实时数据报文,转发路径上的中间节点对其延迟修正时间计算及更新方法和主节点一致。所述控制节点的采样计数器每个采样间隔自加一次,每当主节点的实时数据报文到达时,控制节点提取主节点报文中的采样计数器同步自身的采样计数器。
进一步地,由于主节点和普通控制节点的实时采样数据报文被封装成多播帧在环网上传输,环网上控制节点都可以获取其他节点的实时采样数据报文,从而实现了实时采样数据的全网共享。
步骤(5),主节点在传输触发脉冲TX_SYN触发下以采样间隔Ts传输数据,环网中各控制节点估算采样间隔,并根据主节点同步信号AD_CVT和传输触发脉冲TX_SYN之间的相位差,对本地数据采集同步脉冲AD_CVT移相相同相位差生成本地数据传输触发脉冲TX_SYN。
步骤(6),系统中控制节点将物理信道划分为实时和非实时两个逻辑信道,将实时采样数据业务归入到实时逻辑信道中传输,将非实时业务归入非实时逻辑信道传输;
步骤(7),系统中控制节点的实时采样数据依据其采样计数器交错抽取成奇数次采样数据帧和偶数次采样数据帧,在实时数据发送时隙中将奇数次采样数据帧从环路的顺时针方向发送,偶数次采样数据帧沿逆时针方向传送。
进一步的,控制节点在完成和相邻节点之间的延迟测量以及和主节点同步之前不发送本地实时采样数据帧,也不转发主节点和其他控制节点的实时采样数据帧,但转发环网管理帧和非实时业务帧。
进一步的,当环网出现如附图3所示的故障时,位于线网络端点的控制节点如控制节点4和控制节点5,分别设置相邻节点间的延迟测量值为无效状态,当环网故障恢复后再次进行相邻节点间延迟测量。
本发明中控制节点启动实时传输的条件是:(1)、主节点选举完成,(2)、各节点的链路延迟测量结束并完成带宽通报,(3)、各控制节点完成和主节点的同步包括采样计数器的同步,系统同步完成之后由主节点的发布系统同步完成的管理报文,随后各控制节点进入实时数据传输模式。
控制节点在本地传输触发信号TX_SYN的控制下首先发送本地采集的实时数据报文,随后在附图11所示的发送状态机的控制下检查并转发其他控制节点的实时数据报文。考虑到各个控制节点之间的链路延迟影响,在实时数据传输间隙开放非实时数据传输,同时在预定的实时数据到达窗口中传递实时数据,可以提高带宽利用率,同时缩短非实时数据的延时。
数据源节点利用本地的同步采样计数器,交错抽取本地采集的实时数据,将采样计数器为奇数时的数据报文称为奇数帧,将采样计数器为偶数的数据报文称为偶数帧,并奇数帧沿环网的顺时针方向发出,偶数帧沿环网的逆时针方向发出。
进一步地,目标节点若使用高采样率过程量/状态量采样数据,在环网连通时应同时读取奇数帧报文和偶数帧报文,利用报文中的采样计数器对数据报文重新排序,当环网出现传输故障时目标节点可以读取未故障的传输方向传输的奇数帧报文或者偶数帧报文,再通过内插算法进行二次同步化来解决系统级数据同步。
进一步地,目标节点若使用低采样率过程量/状态量数据,在环网连通时可以固定读取奇数帧报文(或偶数帧报文),在网络顺时针方向断线时才读取偶数帧报文(或奇数帧报文),再通过内插算法进行二次同步化来解决系统级数据同步。
控制节点的状态量信息和随路带内控制信息由控制节点进行状态保持并复制插入到奇数帧和偶数帧中,目标节点无论是接收奇数帧还是偶数帧,只需要读取其一即可恢复原先状态量信息和随路带内控制信息。
步骤(8),系统中控制节点在非实时数据发送时隙中根据路径最短原则选择非实时业务报文从源到目标的转发路径。
附图6和附图7展示的控制节点和网关节点的简图中,环网的发送部分连接有三个发送队列,分别称为LV2、LV1和LV0,发送队列连接到发送帧选择复用器,由发送触发信号TX_SYN控制。本发明在实现实例中,发送队列和发送帧选择复用器都是基于硬件优先级MAC的一部分,所述的LV2连接到实时通信处理模块的交错实时帧生成器用来插入传送本地实时数据报文,队列LV1则连接到另一环网端口的接收帧分解器,由接收帧分解器提供环网上其他控制节点的实时数据报文,队列LV0则连接到非实时通信处理模块的非实时帧交换转发逻辑,用来发送非实时业务数据报文。
其环网上非实时数据报文发送基于硬件优先级MAC实现,通过如附图11所示的发送状态机实现控制节点本地实时数据(以下简称LV2数据)、其他控制节点的实时数据(以下简称LV1数据)及非实时数据(以下简称LV0数据)传送过程。在每次发送LV0数据之前检查发送窗口,如果没有足够的窗口则暂停发送,确保非实时优先级分组在实时优先级分组的发送间隙发送且不影响实时优先级报文的发送。所述MAC的各状态和转换条件分述如下:
IDLE状态:空闲状态,MAC等待发送的状态,在外部触发信号(TX_SYN)触发下转入PreSendLV2状态准备发送LV2的数据报文;
SendCheckLV1状态:LV1数据队列检查状态,检查LV1发送描述符队列,若有待发送的分组则转PreSendLV1状态准备发送LV1数据报文,否则转SlotLoadLV0状态检查加载LV0数据发送时隙;
SlotLoadLV0状态:LV0发送时隙加载状态,状态机首先检查当前LV0发送时隙是否结束,如果当前发送时隙结束则从LV0时隙配置队列中读取一个新的配置项,重新配置LV0发送时隙定时电路的开始时间和结束时间,配置完成后转SendCheckLV0状态,否则不再读取新的时隙配置直接转SendCheckLV0状态,检查LV0描述符队列;
SendCheckLV0状态:LV0数据队列检查状态,检查LV0描述符队列,若发送队列空则转SendCheckLV1状态检查LV1发送队列,否则进一步检查LV0发送窗口,若发送窗口时间(Tw)不足以发送当前帧(传输时间为Tp),即Tw<Tp时,则转TimeWait状态等待,否则转PreSendLV0状态准备发送LV0数据;
TimeWait状态:时隙超时等待状态,LV0数据窗口长度不足以发送当前LV0数据包,等待目前时隙超时后进入SlotQueueCheck状态检查下一个可用LV0发送时隙;
SlotQueueCheck状态:LV0时隙队列检查状态,检查LV0时隙配置队列,若已无可用时隙说明当前发送节拍内不能再发送非实时数据,转入IDLE状态等待新的传输节拍开始,否则微小时间(例如<500nS)等待后再进入SendCheckLV1状态;
PreSendLV2状态:LV2数据准备状态,根据LV2描述符配置发送逻辑后转SendWait状态;
PreSendLV1状态:LV1数据准备状态,根据LV1描述符配置发送逻辑后转SendWait状态;
PreSendLV0状态:LV0数据准备状态,根据LV0描述符配置发送逻辑后转SendWait状态;
SendWait状态:发送等待状态,在该状态检查PHY的状态,若没有冲突或出错则转发送状态,否则等待。超时以后置出错标记并返回IDLE状态。
Send状态:发送状态,从描述符指定的数据缓冲区中读取数据,并在发送时钟TXCLK驱动下发送当前数据,发送完毕后转SendCheckLV1继续检查LV1描述符队列。
所述的非实时数据(LV0数据)发送时隙是指两个实时数据报文之间的间隙,由二元组<起始时间,结束时间>指定。控制节点通过查询自身的管理信息库(MIB)获得环网上各个控制节点的实时数据带宽需求、点到点的延迟信息和网络拓扑信息构建时隙分配表。
所述的非实时数据(LV0数据)的发送时隙确定方法是,具体通过以下步骤实现。
步骤1,读取节点管理信息库(MIB),获取各个控制节点的实时数据带宽需求、点到点的延迟信息和网络拓扑信息;
步骤2,按环网数据传输方向的相反向对各控制节点编号排序,当前节点编号为0,上一跳节点为1以此类推;
步骤3,确定环网上其他控制节点的实时报文到达本节点顺序,按下面的方法为计算其他控制节点实时数据(以下称实时数据LV1数据报文或LV2数据报文,称非实时数据报文为LV0数据,其中LV2报文特指节点本地采集的实时数据报文)到达本地的时隙;
tslot_end_time_lv1(i)=tslot_start_time_lv1(i)+Tpkt(i)
其中:
tslot_start_time_lv1(i)--为控制节点i的LV1数据时隙开始时间,i=0对应当前节点LV2数据时隙开始时间,其值为0;
tslot_end_time_lv1(i)--为控制节点i的LV1数据时隙结束时间,i=0对应当前节点LV2数据时隙结束时间,其值为Tpkt(0);
Tpd(i)--为第i个节点到i-1个节点间链路延迟,Tpd(0)对应当前节点,其值为0;
Tpkt(i)--为第i个节点的实时数据报文的传输占用时间,Tpkt(0)对应本地实时数据报文传输时间;
Tfw--实时报文的转发延时,对于直通转发策略此值相对固定
步骤4,对上述实时报文发送时隙进行合并,以需要合并的时隙0和时隙1为例,其规则如下:
(1),若时隙0和时隙1的间距过小,0<(tslot_start_time_1-tslot_end_time_0)<Tpkt_min,则合并为一个大的时隙,其中Tpkt_min为最短网络报文传输时间:
tslot_start_time=tslot_start_time_0
tslot_end_time=tslot_end_time_1
(2),若时隙0和时隙1的间隙部分重合,则扩展间隙为:
tslot_start_time=min{tslot_start_time_0,tslot_start_time_1}
tslot_end_time=tslot_start_time+Tpkt0+Tpkt1
步骤5,在一个系统采样节拍内的时间段[0,Ts]内扣除上述实时数据报文发送时隙即得到非实时数据报文LV0发送时隙;
所述的非实时帧交换转发逻辑在接收到来自环网端口或来自非实时端口(以太网口C)的非实时业务报文时先进行缓冲,同步进行地址学习并更新动态转发路径表,再根据转发表选择下一跳转发端口并将报文写入到对应的发送缓冲队列等待发送。
进一步地,发往环网端口的非实时业务报文需要等待前述的非实时业务数据传输窗口,并由前述的发送状态机执行发送,而转发到环网外部的非实时业务报文则相对简单,只要端口空闲就可以启动转发。
附图9展示了以6个控制节点为例的环网完整的条件下,实时数据报文在6个控制节点间传输时序图,图中Ts为传输节拍(等同于系统采样间隔),Tpd_m_n表示控制节点m和控制节点n之间的链路延迟,P1~P6分别指6个控制节点的实时数据报文,分别指6个控制节点的实时数据报文在环网上的传输时间,Tw0、Tw1、Tw2分别指合并后的几个实时数据时隙,Tp0、Tp1、Tp2则分别指几个可以传输非实时数据的窗口,环网各个控制节点在本地发送传输脉冲TX_SYN的上升沿开始传输本节点的实时数据报文。
下面以附图9中控制节点2为例进一步分析实时数据报文在环网中各个节点间的传输过程,由于节点1到节点2的传输延时Tpd_1_2为2个时间单位且节点2本地实时数据报文传输时间Tr2为2个时间单位,因此当节点1的实时数据报文P1到达节点2后,节点2本地报文P2恰好发送完成,节点2将在随后的时间内首先传输报文P1。类似地,节点2到节点3的传输延时Tpd_2_3为2个时间单位且节点3的本地实时数据报文传输时间Tr3为2个时间单位,当节点3发送完本地实时数据报文P3后报文P2和P1顺序到达,节点3将在随后的时间内首先传输实时数据报文P2和P1。而对于节点1,由于节点6到节点1的链路延时Tpd_1_6为5个时间单位,而节点6的本地实时数据报文传输时间Tr6为4个时间单位,节点1的本地实时数据报文传输时间Tr1为3个时间单位,则节点1在发送完本地实时数据报文P1后2个时间单位节点6的报文才到达,那么对节点1来说,报文P1和P6之间出现2个时间单位的间隙,如果节点1上有一个非实时数据报文(LV0数据)等待发送且该报文在环网上的传输时间小于2个时间单位,节点1就可以用来传输非实时报文。
上述方法可以用来分析附图9中实时数据报文P5和实时数据报文P4之间的间隙,更大规模的环形通信网络也是基于上述技术思路进行。对于网络拓扑和各个控制节点的实时数据传输时间不变的情况下,上述个节点的实时数据报文的传输时刻和报文之间的间隙是固定不变的,因而在实时数据报文的传输间隙插入传送非实时数据报文不会影响前者的传输确定性。
实施例2
以下将结合实施实例,从通信系统构成方式、控制节点结构、网关节点结构、系统级同步、帧封装和转发和链路管理方面进一步阐述本发明的具体实施方案。
1.系统结构
附图1展示了本发明所述基于完整环网的数据通信系统结构,整个数据采集和传输系统由位于第一层数据处理装置、位于第二层连接成环形通信网络的控制节点和位于第三层的数据采集控制终端构成。附图2展示了一种线网络(Line network)结构图,如果将图中位于线网络两端的控制节点1和控制节点6网络端口相连,将得到附图1所示的环网络(Ring network)系统结构。附图3展示了一种环路开断的场景,一个运行中的环网出现网络节点故障后,未故障的控制节点构成的系统结构等价于附图2的线网络。
在附图1中位于第一层的数据处理装置主要用来处理实时采样数据业务,该装置通过网关节点从环网中提取实时业务帧,并将处理结果所形成的实时控制报文经网关节点提交到环网。网关节点还可以通过其非实时业务级联端口连接第一层的非实时业务设备,网关节点通过内部的非实时通信处理模块从环网中提取非实时业务数据,并将顶层的非实时业务数据转发到环网。网络中控制节点主要用来控制位于第三层的数据采集和控制终端实现过程量/状态量的同步数据采集和执行应用处理模块的控制输出及在本地的非实时业务设备和环网之间转发数据帧。
所述的网关节点和控制节点就环网通信来说是等价,不同的是网关节点具备实时业务数据导入和导出功能,而普通控制节点具备第三层的数据采集控制终端控制功能。所述的网关节点和控制节点都具备外同步功能,对外连接全局的外同步信号如GPS/BDS、PPS或IRIG-B等同步源,为保证系统级同步稳定性,系统中网关节点和控制节点以及数据采集控制终端都应使用高稳定时基,采用TCXO或OCXO作为系统定时基准。此网关节点不是主节点,但是可以作为主节点,一般来说,在主节点选举过程中会当选为主节点,特殊情况下也可以人工指定网关节点为主节点。
进一步地,为保证同步稳定性,系统中各设备还应该具备数字锁相环和同步保持功能模块。所述数字锁相环用来跟踪主节点的同步信号并保证同步稳定性,而同步保持功能模块用来在主节点选举过程中同步数据采集和传输功能不中断。
2.控制节点结构
附图6展示了本发明实施实例中典型的控制节点内部逻辑结构,包括三个以太网接口,其中网口A和网口B用于环网链接,网口C用于连接本地非实时业务,每个网口的接收端都连接一个接收队列,网口C的发送端连接一个发送队列,而环网口A和B的则经过发送帧选择复用器和三个发送队列相连。其中环网口的一个发送队列连接到另一环网口的接收帧分解器,一个发送队列连接实时通信通信处理模块的交错实时帧生成器,另有一个发送队列连接到非实时通信处理模块的非实时帧交换转发逻辑。环网口的接收帧分解器一端连接环网口的接收队列,输出的两条数据路径中一条连接实时通信处理模块的实时帧选择合并器,另一条连接到非实时通信处理模块的非实时帧交换转发逻辑,而环网口的发送帧选择复用器的三个数据输入分别连接三个发送队列,数据输出部分则连接到环网口的发送端口。
进一步地控制节点的实时通信处理模块包含交错实时帧生成器和实时帧选择合并器,其中交错实时帧生成器又与同步数据采集模块和同步生成模块相连接,交错实时帧生成器的两路输出分别连接两个环网口的两个发送队列,而实时帧选择合并器还和应用处理模块相连接。控制节点的非实时通信处理模块包含逻辑链路管理子模块和非实时帧交换子模块以及一个动态转发路径表,通过非实时业务网口的发送队列和接收队列连接到外部非实时业务,对内接收来自两个环网端口的接收帧分解器的一路输出,与此同时两路输出连接到环网口的两个发送队列。控制节点还包括一个同步生成模块,对外连接全局的外同步信号如GPS/BDS、PPS或IRIG-B等同步源,内部同步源连接到实时帧选择合并器的网络同步输出,同步生成模块的输出连接到同步数据采集模块、实时通信处理模块的交错实时帧生成器和环网口的发送帧选择复用器。
进一步地控制节点还包含一个同步数据采集模块,同步采集模块对外连接数据采集和控制终端,其数据输出连接到实时通信处理模块的交错实时帧生成器和应用业务处理模块。所述控制节点可以包括本地数据采集ADC来实现同步数据采集,也可以利用同步数据采集模块连接外部的独立采集设备,由同步数据采集模块控制外部独立数据采集控制终端实现系统级同步数据采集。控制节点还包含一个应用业务处理模块,该模块的输入连接到同步数据采集模块和实时通信处理模块的实时帧选择合并器,输出连接到控制输出模块执行控制输出。
所述控制节点中的同步生成器结构如附图5所示,主要用来接入全局同步信号和来自实时帧选择合并器派生的网络同步信号。同步生成器通过检查同步源的稳定性品质选择最佳的同步源,并依托内建在同步生成器内部的数字锁相环跟踪同步源并消除同步抖动,当同步源发送变化时完成渐进同步功能。所述同步生成器生成的本地同步脉冲AD_CVT被用来控制本地同步数据采集、环网发送帧选择复用器选择实时发送窗口及控制交错实时帧生成器。
所述控制交错实时帧生成器包含由一个同步脉冲驱动的采样计数器,在同步脉冲的控制下当采样计数器的最低位为1时生成奇数帧,最低位为0时偶数帧,其中奇数帧发往环网端口A的发送队列,偶数帧发往环网端口B的发送队列,形成实时数据的交错发送。
所示实时帧选择合并器同时接受来自环网端口A和环网端口B的实时数据报文并为来自两个方向的各个源节点采样数据提供缓冲队列。进一步地,实时帧选择合并器通过缓冲接收到实时数据后并通过内插完成实时采样数据的二次同步化处理。所述实时帧选择合并器通过提取主节点实时采样数据帧中随路传送的采样计数器来同步本地采样计数器,通过提取主节点实时采样数据帧到达时间再结合本节点到主节点之间的延时测量的结果生成网络同步信号作为同步生成器同步源。
所述发送帧选择复用器在本地发送触发信号TX_SYN的控制下,首先选择发送本地采样数据队列,在剩余的实时数据发送时隙中选择另一环网端口接收实时数据队列,在非实时数据发送时隙中选择非实时队列,进而实现实时数据的选择性发送。
所述的接收帧分解器将环网端口上接收的数据进行分类和过滤,然后将过滤后报文再按实时数据报文和非实时数据报文分类,其中实时数据报文被送往另一环网端口的发送队列,同时也送往实时帧选择合并器,而非实时数据报文则送往非实时帧交换转发逻辑,由非实时帧交换转发逻辑根据动态转发路径表选择下一跳转发端口进行转发。
所述非实时帧交换逻辑动态学习来自网口C的非实时报文的源MAC地址以及环网端口A和环网端口B中非实时报文中源MAC地址,根据学习结果更新动态转发路径表,指导非实时报文转发。所述的动态转发路径表还根据环网上各控制节点的链路状态报告(LinkUp/LinkDown)动态更新,根据状态报告中的转发计数器(hop count)配置下一跳端口。
3.网关节点结构
附图7展示了本发明实施实例中典型的网关节点内部逻辑结构,网关节点逻辑结构和附图6展示的控制节点逻辑结构类似,不同的是网关节点包含一个实时数据输入和输出通道即网口D,网关节点不包含本地数据采集控制和本地应用处理模块,其中网口A和网口B用于环网链接,网口C用于连接本地非实时业务,节点内部环网通信和管理功能等同于控制节点。
所述的网关节点主要用来连接外部的系统级实时数据处理装置,同时网关节点还负责将顶层实时数据处理装置发布的控制报文转化为环网上实时数据报文格式并交错发往环网的两个方向的物理链路,实现系统级的实时控制。
4.系统级同步
主节点维持一个采样计数器,该计数器每个采样间隔自加一次,主节点的采样计数器随主节点的实时数据传输,各控制节点提取主节点实时采样数据报文中的采样计数器进一步同步自身的采样计数器。控制节点从管理信息库MIB中获取当前主节点的MAC地址,再根据环网帧的多播目标MAC地址和源MAC地址来识别主节点的实时采样数据报文。
所述控制节点中的同步生成器结构如附图5所示,同步源选择器在控制节点连接有外部同步源时会自动选用外部同步源作为同步参考信号,在没有检测到外同步信号时,主节点选择本地同步定时器输出信号而其他控制节点则选择网络同步信号作为外同步参考脉冲生成器的输入,而外同步参考脉冲生成器生成一个快速跟踪外部同步源的参考同步脉冲。同步生成器内部的数字锁相环通过相位检测器、PI调节器和限幅器控制数控振荡器输出本地同步脉冲AD_CVT和传输触发信号TX_SYN。
简单来说,数字锁相环通过相位检测器不断检测输入参考同步脉冲和锁相环输出的同步脉冲AD_CVT之间的相位差,由后续的PI调节器进和限幅器进行相位跟踪并调节数控振荡器输出本地同步脉冲,该同步脉冲用作本地同步数据采集触发信号,并通过锁相环内建的移相器生成与AD_CVT同周期的传输触发信号TX_SYN。进一步地,控制节点在本地同步信号AD_CVT的控制下触发连接在本节点的数据采集终端进行同步数据采集和数据回传,随后在TX_SYN信号控制下转发本节点实时采样数据。
所述的数字锁相环将估计出参考脉冲的周期前馈到数控振荡器的输入,进一步提高锁相环的响应速度,通过同步脉冲周期预测器和限幅器可以将锁相环输出脉冲周期限制在系统采样间隔附近,进一步限制锁相环每个脉冲间相位变化幅度,保证在数字锁相环以渐进同步的方式逐步锁定到新的同步源。
进一步地,环网中控制节点和主节点的同步顺序是沿着主节点实时数据帧的传输方向逐个完成的,当控制节点完成相邻节点间的延迟测量以及和主节点的同步过程后允许本节点向下一节点转发主节点的实时数据帧,后续的控制节点按同样的方法完成和主节点的同步。
进一步地,主节点在所有控制节点同步结束后发布系统同步完成通报,随后各节点就可以进入实时数据传输状态;
所述本地同步脉冲周期预测器在外同步信号存续期间以外同步信号为参考,跟踪学习本地时基的老化模型,当外同步信号消失后根据学习到本地时基老化模型预测未来一段时间同步脉冲周期。
当网络拓扑发生变化时,环网中主节点可能丢失导致外同步参考信号丢失,此时相位检测器数据置零,后续的PI调节器停止调节维持以前的值,锁相环进入同步保持状态,维持同步输出及同步数据采集和传输。主节点选举结束后,由于数字锁相环中限幅器的作用,锁相环按照渐进同步的技术思路,逐步过渡到新的同步源。
5.帧封装和转发
本发明通过对不同业务报文采用不同的链路层封装方式使得环网中只传送多播帧,进一步的帧封装和转发方法如下:
(1),控制节点采用IEEE802.1D保留的多播组MAC地址封装环网中相邻节点间的点到点管理报文并发送该报文,目标控制节点接收并处理该管理报文但不转发该点到点的管理报文。
所述点到点的管理报文封装方法如附图12所示,主要用来实现点到点的链路延迟测量,目标控制节点从点到点的链路延迟测量中提取时标信息、相邻节点端口信息和节点设备ID信息。
(2),控制节点使用包含终点节点(Endpoint Node)信息的特定多播MAC地址封装环网中实时数据报文、环网节点状态报告报文、环网环路检测报文和其他多点传送的环网链路管理路报文,其封装格式如附图13所示,环网中其他控制节点根据本地多播过滤器输出决定是否接收并处理该类型报文。
(3),控制节点通过为非实时数据报文添加一个环网帧头部的方法封装环网中非实时数据报文并重新计算以太网帧校验,其封装格式如附图14所示,环网中其他控制节点根据本地多播过滤器输出决定是否接收并处理该类型报文。
所述包含终点节点(Endpoint Node)信息的特定多播MAC地址(以下简称:终点节点多播MAC),如附图13和附图14所示,其高位定义为一个特定的多播组(如:实时采样数据可以采用IEC61850-9-2为多点采样值保留的多播地址段:01-0C-CD-04-xx-xx),其低位对应于该数据报文的终点节点(Endpoint Node)的设备ID,当报文到达终点节点后将不再转发。进一步地,环网中控制节点接收到数据报文后提取报文中多播MAC地址的终点节点的设备ID,若控制节点设备ID和数据报文中多播MAC地址的终点节点的设备ID一致则不转发该报文,否则控制节点向相邻节点转发该数据报文。
所述封装非实时数据报文的环网帧头部采用前述的包含终点节点(EndpointNode)信息的特定多播MAC地址作为目标地址,如附图14所示,所述环网帧头部中还包含产生该数据报文的源控制节点的MAC地址和内嵌的非实时数据报文长度,而待发送的非实时数据则作为协议数据单元PDU(Protocol data Unit)整体封装在环网帧中。
进一步地,控制节点确定非实时数据帧的终点节点的方法是查找其动态转发路径表,根据转发路径最短的原则选择目标控制节点,并采用选中的设备ID组成包含终点节点信息多播MAC地址来封装非实时数据报文。进一步地,对于目标MAC地址不包含在控制节点的动态转发路径表中的非实时数据报文,控制节点也通过选择和网络报文传输方向相反的相邻节点作为该报文的终点节点进行封装和传送,如附图1中控制节点3逆时针方向传送的非实时数据报文可以选择相邻控制节点2作为其报文的终点节点,而控制节点3沿环网顺时针方向传送的非实时数据报文可以选择控制节点4作为终点节点。
进一步地,控制节点接收到来自非实时业务端口的非实时数据报文时根据报文的目标MAC地址查找控制节点的动态转发路径表,决定提交该报文到控制节点的应用层还是封装该帧并转发到控制节点的环网端口,同时根据非实时业务报文源MAC地址和端口信息更新动态转发路径表。
进一步地,环网中控制节点所封装的以太网帧其头部14个字节具有类似地结构,如附图12、附图13和附图14,不同类型报文头部封装中的帧类型字段和长度字段其值并不重叠,环网中控制节点提取环网帧长度(类型)字段值来识别不同的帧封装方式,若该字段值小于0x800则判断该帧内嵌非实时数据报文,并提取环网帧中内嵌的完整非实时数据报文。进一步地,控制节点检查提取出的非实时数据文中的目标MAC字段,若该MAC地址为广播地址或多播地址则向应用层提交提取的非实时数据报文同时向控制节点的非实时业务端口转发提取出来的非实时数据报文。若提取出的非实时数据报文具有单播目标MAC地址且该地址对应本节点MAC地址,则节点接收该非实时数据报文,否则检查控制节点的动态转发路径表,并根据检查结果决定是否向控制节点的非实时业务端口转发该报文。
所述多播过滤器包含基于多播MAC地址的一个黑名单查找表,如果帧的目标MAC地址包含在黑名单中则拒绝接收该帧,查找表由控制节点的配置软件维护,配置软件将控制节点拒绝接收的多播MAC添加到黑名单查找表。
进一步地,若一个环网帧被识别为内嵌非实时数据报文(对应的环网帧类型/长度字段值小于0x800),则控制节点提取环网帧头部封装中的源节点MAC和环网帧内嵌的非实时数据报文中的源MAC地址以及帧的来源端口信息更新动态转发路径表。
进一步地,对实时业务数据和非实时业务采取不同的转发策略,控制节点对于实时数据报文采用直通转发策略,实时数据报文到达时,若转发端口空闲会立即转发,否则先缓存随后根据优先级继续尝试发送,对于非实时数据报文总是先进行存储,再等待LV0转发窗口到达时才进行转发。
每当环网中节点的端口Link状态发生变化时,由该节点发布Link变化通告,各相关节点更新自己的非实时数据报文转发路径表,转发时节点选取到目标节点最近的端口进行转发。
当环网出现如附图3所示的故障时,故障位置的控制节点不再向故障端口转发实时数据业务同时清除故障端口的发送缓冲,同时该节点立即发布节点状态报告更新网络上其他节点的动态转发路径表。
6.链路管理
本发明所述的控制节点的管理软件基于C语言定义了TimeSlot_t和ring_node_t如下两个结构体(struct)分别如附图15和附图16所示。其中结构体ring_node_t包含控制节点的相关属性以及环网A端口和环网B端口连接到上一跳节点和下一跳节点结构体指针、MAC地址、点到点的链路延迟、控制节点逻辑地址和设备ID等信息,而结构体TimeSlot_t描述了时隙的开始时间和结束时间以及其绑定的控制节点逻辑地址等信息。所述的控制节点通过管理帧获得节点的相关信息并填充到上述结构体中。
本发明所述的控制节点定时从两个环网端口发布自己节点状态报告,所述状态报告包括相邻节点设备ID、本节点和相邻节点间延时测量结果、本节点实时数据(LV1数据)带宽需求、本节点两个环网端口连接状态、主节点标记、本节点的其他相关信息和初值为0的中继计数(hop count)等内容,环网上的各控制节点从该报文中提取源节点ID信息和中继计数(hop count)等信息更新上述环网节点信息结构体,并将中继计数加1后转发到下一个环网端口。进一步地,控制节点利用从其他节点的状态报告中获取的端口连接信息和中继计数等信息构建本节点到其他节点的路径信息表(Path table),控制节点同时为路径信息表每一项配置一个生存时间(Time to Live)计数,以便在超时后删除该信息。
当网络拓扑发生变化时由环网(Ring network)退变成线网络(Line network)时,最邻近网络拓扑变化点的两个相邻控制节点在硬件检测到网络连接变化后应该立即发布的前述的节点状态报告通知其他控制节点。
进一步地,控制节点维护一个管理信息库(MIB,Management Information Base),利用接收到的各节点的状态报告对信息库进行更新,生成网络拓扑和各控制节点的实时数据报文LV1和非实时数据报文LV0发送时隙以及动态转发路径表。
实施例3
附图4为本发明用于局域网的一种简化实施案例,在简化案例中网关节点被裁剪,附属第三层的数据采集控制终端被裁剪。进一步地,由于节点间传输时间较短,点到点的延迟测量可以被裁剪,在人工指定主节点的应用场景,甚至前述的主节点选举过程也可被裁剪。
在本发明的简化实施案例中本地的实时数据采集由控制节点内置的同步数据采集模块完成,由内部的应用业务处理模块合并处理网络上实时数据和本地采集实时数据,并实施相关控制输出。
所述的简化环形通信网络中多节点同步采样和数据传输方法其实施方法如下:
步骤1,构建前述控制节点,利用控制节点的两个环网端口组建环形通信系统;
步骤2,通过人工指定主节点或者通过前述的主节点选举方法确定主节点;
步骤3,主节点利用外同步信号或者利用本地同步定时器生成与系统采样间隔Ts一致的同步脉冲(AD_CVT)和传输触发脉冲(TX_SYN),同时主节点在AD_CVT的控制下完成本地实时数据采集并在TX_SYN信号触发下完成数据传输;
所述主节点维持一个采样计数器,采样计数器在每个AD_CVT上升沿加1,主节点的实时通信处理模块根据采样计数器并利用交错实时帧生成器完成同步采集的数据的交错抽取。
步骤4,所述控制节点在接收到来自主节点实时数据报文后提取其中的延迟修正时间和主节点实时数据报文到达本地时间,利用内置于同步生成模块中的数字锁相环完成本节点和主节点之间的同步,重建本地的同步脉冲AD_CVT和传输触发脉冲(TX_SYN)。
所述控制节点也维持一个采样计数器,该采样计数器同步于主节点,同时采样计数器在控制节点本地AD_CVT上升沿加1,控制节点的实时通信处理模块根据采样计数器并利用交错实时帧生成器完成同步采集的数据的交错抽取。
进一步地,控制节点在实时数据发送时隙中将奇数次采样数据从环路的顺时针方向发送,偶数次采样数据沿逆时针方向传送。
进一步地,目标节点同时接收环网两个方向的数据,并按采样计数器进行排序,当某一方向数据出现断帧时由目标节点取另一个方向的相邻近的采样数据进行内插获得。
进一步地,目标节点可以根据实时数据报文中的延迟修正时间并结合硬件标记的报文到达时间推断源节点的数据采集时间,进而通过内插对来自各个源节点实时采样数据的二次同步。
进一步地,利用各控制节点通告的节点状态报告,忽略局域网传输时延,结合前述的实时发送时隙计算和合并规则,得到简化实施案例中控制节点实时数据发送时隙分配公式如下:
tslot_start_time_lv1=0
其中:
N--为环网中控制节点数量;
tslot_start_time_lv1--为合并后控制节点实时数据LV1时隙开始时间;
tslot_end_time_lv1--为合并后控制节点实时数据LV1时隙结束时间;
Tpkt(i)--为第i个节点的实时数据报文的传输占用时间;
Tfw--实时数据报文的转发延时,对于直通转发策略此值相对固定
进一步地,每个控制节点在本地传输触发信号TX_SYN控制下首先启动本节点的LV2的实时数据报文传送,在随后的时间内转发来自其他控制节点的LV1实时数据报文,在剩余的时间段内转发非实时业务数据报文。
步骤5,所述的控制节点,利用实时通信处理模块中的实时帧选择合并器从环网端口的接收帧分解器中获得到达本节点的环网上其他控制节点的同步数据,通过合并环网两个方向的数据并结合本地采集的同步数据提交到应用业务处理模块完成数据处理和执行必要的控制输出。
进一步地,局域网条件下由于组网成本较低,控制节点的非实时业务端口端口可以被裁剪。所述的简化版的控制节点其环网端口的结构和数据读写方法和前述的控制节点一致。所述的简化实施案例中控制节点的非实时通信处理模块非实时业务转发功能可以被裁剪,只负责简单网络拓扑信息管理和本节点部分非实时业务。进一步地由于环网中没有大量的非实时业务数据,控制节点间的点到点的链路延迟可以忽略,控制节点的实时时隙计算简化,简单的排队策略就可以保证实时数据确定性传输,直通转发将使转发延时进一步缩小,系统成为一个基于环网的具有同步和时延确定特征的就地化实时应用解决方案。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变型,这些改进和变型也应视为本发明的保护范围。
Claims (10)
1.环形通信网络中多节点同步采样和数据传输方法,其特征在于:包括以下步骤:
S1,从环形通信网络的各控制节点中选取一个控制节点作为主节点;
S2,主节点在主节点同步信号AD_CVT触发下以采样间隔Ts采样,计算其他控制节点的当前时间点与主节点同步信号AD_CVT之间的全路径延迟;
S3,环网中各控制节点估算采样间隔,并根据其当前时间点与主节点同步信号AD_CVT之间的全路径延迟生成网络同步信号,通过锁相环将本地同步信号AD_CVT渐进同步到网络同步信号,实现和主节点同步信号AD_CVT的间接同步;
S4,主节点在传输触发脉冲TX_SYN触发下以采样间隔Ts传输数据,环网中各控制节点估算采样间隔,并根据主节点同步信号AD_CVT和传输触发脉冲TX_SYN之间的相位差,对本地数据采集同步脉冲AD_CVT移相相同相位差生成本地数据传输触发脉冲TX_SYN;
S5,各控制节点将物理信道划分为实时和非实时两个逻辑信道,将实时采样数据业务归入到实时逻辑信道中传输,将非实时业务归入非实时逻辑信道传输;
S6,各控制节点的实时采样数据交错抽取成奇数次采样数据帧和偶数次采样数据帧,在实时数据发送时隙中将奇数次采样数据帧从环路的顺时针方向发送,偶数次采样数据帧沿逆时针方向传送;
S7,各控制节点在非实时数据发送时隙中根据路径最短原则选择非实时业务帧从源到目标的转发路径。
2.根据权利要求1所述的环形通信网络中多节点同步采样和数据传输方法,其特征是,从环形通信网络的各控制节点中选取一个控制节点作为主节点的过程为:
给环网中的各控制节点分配唯一的节点ID;节点ID的值越小,表明在主节点选举中优先权越高;
各节点定时从向两侧相邻节点发送环路检测报文,此环路检测报文中包含各控制节点自身的节点ID;
环网上的每个节点收到报文后,进行如下判断:如果节点从其中一端口收到的报文中ID比自身节点ID小,表明此节点自身为传输节点,则此节点从另一端口转发收到的报文,自身不再发送环路检测报文;如果收到报文中ID比自身ID大,就丢弃此报文;如果收到自身的报文,说明此节点自身为主节点。
3.根据权利要求1所述的环形通信网络中多节点同步采样和数据传输方法,其特征是,环网中相邻节点间传送的管理帧采用IEEE802.1D保留的多播MAC地址作为帧目标MAC地址,而点到多点传送帧则采用包含终点节点信息的特定多播MAC地址作为帧目标MAC地址;
所述包含终点节点信息多播MAC地址由<多播组地址,终点节点设备ID>二元组构成,其中多播组地址位于MAC地址高位,对应一个特定的多播组,而终点节点设备ID位于MAC地址的低位;
控制节点不转发目标MAC地址为IEEE802.1D的帧,对于目标MAC地址包含终点节点信息的帧,控制节点只转发其中节点信息和本节点设备ID不一致的帧。
4.根据权利要求3所述的环形通信网络中多节点同步采样和数据传输方法,其特征是,环网中控制节点传送非实时数据报文的过程是,先对该报文封装环网帧头部再提交到控制环网端口传送;
所述封装非实时数据报文的环网帧头部由包含终点节点信息的特定多播目标MAC地址、产生该数据报文的源控制节点的MAC地址和内嵌的非实时数据报文长度组成,而待发送的非实时数据报文整体作为协议数据单元PDU封装在环网帧中。
5.根据权利要求3所述的环形通信网络中多节点同步采样和数据传输方法,其特征是,环网中控制节点确定是否接收环网上多点传送帧的步骤如下:
步骤(1),提取环网帧的目标MAC地址,匹配控制节点的多播地址过滤器,如果匹配不通过则拒绝接收该帧;
所述多播过滤器包含基于多播MAC地址的一个黑名单查找表,包含在黑名单中帧将被拒绝;
步骤(2),提取环网帧的源节点MAC地址和长度字段值,若长度字段值大于0x800则接收该帧,否则提取环网帧中内嵌的完整非实时数据报文;
步骤(3),控制节点检查步骤2提取出的非实时数据文中的目标MAC字段,若目标MAC地址为广播地址或多播地址则向应用层提交步骤2提取的非实时数据报文同时向控制节点的非实时业务端口转发;
若提取出的非实时数据报文具有单播目标MAC地址且该地址对应本节点MAC地址,则控制节点向应用层提交该非实时数据报文但不其非实时端口转发,否则控制节点但根据动态转发路径表的检查结果决定是否向控制节点的非实时业务端口转发该非实时数据报文;
步骤(4),提取非实时数据文中的源MAC地址,利用非实时数据的源MAC地址以及步骤2得到的环网帧的源节点MAC地址和该报文来源端口信息,更新控制节点的动态转发路径表。
6.根据权利要求1所述的环形通信网络中多节点同步采样和数据传输方法,其特征是,计算其他控制节点的当前时间点与主节点同步信号AD_CVT之间的全路径延迟的过程为:
主节点以系统采样间隔Ts,在主节点同步信号AD_CVT触发下进行实时数据采样同时记录采样时刻tm_adcvt,主节点采样结束后,向环网上其他控制节点发送包含采样数据、采样计数器和延迟修正时间主节点实时数据报文,其中延迟修正时间Tpd_correct初值为0,在实时数据报文离开端口时按下面的公式计算并更新到报文中指定位置:
Tpd_correct=(tm_xmit-tm_adcvt)
其中:
tm_adcvt--为主节点同步信号AD_CVT的上升沿时刻;
tm_xmit--主节点实时数据报文离开环网端口时刻;
从主节点到目标控制节点之间的控制节点在读取实时数据报文中的延迟修正时间Tpd_correct,转发时累加本节点驻留时间到该字段:
其中:
Tpd_correct_new--累加本地驻留时间后的延迟修正时间;
--主节点的实时数据报文到达控制节点CNi的环网端口时间;
--实时数据报文转发离开控制节点CNi的环网端口时间;
步骤(3),当实时数据报文传递到目标控制节点时,目标控制节点CNn提取实时数据报文中的延迟修正时间Tpd_correct,并结合相邻节点间链路延迟,计算目标控制节点的当前时间点和主节点AD_CVT信号上升沿之间的全路径延迟Tpd_m_n_correct:
其中:
--为控制节点CNi和CNi-1之间的链路延迟;
Tpd_correct--为主节点实时数据报文中的延迟修正时间;
n---主节点和目标控制节点CNn之间转发次数。
7.根据权利要求6所述的环形通信网络中多节点同步采样和数据传输方法,其特征是,环网中各控制节点估算采样间隔的过程为:
目标控制节点CNn以主节点实时数据报文到达时间和报文内延迟修正时间Tpd_correct构成二元组序列,k表示多次测量结果构成的时间序列的索引,取序列的M+1个元素,按下面的公式估计系统采样间隔
8.根据权利要求7所述的环形通信网络中多节点同步采样和数据传输方法,其特征是,目标节点CNn根据其当前时间点与主节点同步信号AD_CVT之间的全路径延迟生成网络同步信号方法如下:
目标节点CNn构建一个模为的加定时器,在主节点实时数据帧到达时将定时器的计数值修改为CNn的当前时间点和主节点AD_CVT信号上升沿之间的全路径延迟Tpd_m_n_correct,当定时器在自加到达时自动归0,同时触发生成本节点网络同步信号。
9.根据权利要求1所述的环形通信网络中多节点同步采样和数据传输方法,其特征是,非实时数据传送时隙的计算过程为:
1)获取各个控制节点的实时数据带宽需求、点到点的延迟信息和网络拓扑信息;
2)按环网数据传输方向的相反向对各控制节点编号排序,当前节点编号为0,上一跳节点为1以此类推;
3)确定环网上其他控制节点的实时报文到达本节点顺序,按下面的方法计算其他控制节点实时数据到达本地的时隙;
tslot_end_time_lv1(i)=tslot_start_time_lv1(i)+Tpkt(i)
其中:
tslot_start_time_lv1(i)--为控制节点i的LV1数据时隙开始时间,i=0对应当前节点LV2数据时隙开始时间,其值为0;
tslot_end_time_lv1(i)--为控制节点i的LV1数据时隙结束时间,i=0对应当前节点LV2数据时隙结束时间,其值为Tpkt(0);
Tpd(i)--为第i个节点到i-1个节点间链路延迟,Tpd(0)对应当前节点,其值为0;
Tpkt(i)--为第i个节点的实时数据报文的传输占用时间,Tpkt(0)对应本地实时数据报文传输时间;
Tfw--实时报文的转发延时,对于直通转发策略此值相对固定
4),对上述实时报文发送时隙进行合并,以需要合并的时隙0和时隙1为例,其规则如下:
(1),若时隙0和时隙1的间距过小,0<(tslot_start_time_1-tslot_end_time_0)<Tpkt_min,则合并为一个大的时隙,其中Tpkt_min为最短网络报文传输时间:
tslot_start_time=tslot_start_time_0
tslot_end_time=tslot_end_time_1
(2),若时隙0和时隙1的间隙部分重合,则扩展间隙为:
tslot_start_time=min{tslot_start_time_0,tslot_start_time_1}
tslot_end_time=tslot_start_time+Tpkt0+Tpkt1
5),在一个系统采样节拍内的时间段[0,Ts]内扣除上述实时数据报文发送时隙即得到非实时数据报文LV0发送时隙。
10.根据权利要求1所述的环形通信网络中多节点同步采样和数据传输方法,其特征是:各控制节点的实时采样数据依据其采样计数器交错抽取成奇数次采样数据帧和偶数次采样数据帧,在实时数据发送时隙中将奇数次采样数据帧从环路的顺时针方向发送,偶数次采样数据帧沿逆时针方向传送;
目标节点若使用高采样率数据,在环网连通时应同时读取奇数次采样数据帧和偶数次采样数据帧,利用采样数据帧中的采样计数器重新排序,当环网出现传输故障时目标节点可以读取未故障的传输方向传输的奇数次采样数据帧或偶数次采样数据帧,通过内插算法实现系统级数据同步;
目标节点若使用低采样率数据,在环网连通时可固定读取奇数次采样数据帧或偶数次采样数据帧,在当前传输方向故障时才读取偶数次采样数据帧或奇数次采样数据帧,通过内插算法实现系统级数据同步。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910375564.6A CN110113242B (zh) | 2019-05-07 | 2019-05-07 | 环形通信网络中多节点同步采样和数据传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910375564.6A CN110113242B (zh) | 2019-05-07 | 2019-05-07 | 环形通信网络中多节点同步采样和数据传输方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110113242A true CN110113242A (zh) | 2019-08-09 |
CN110113242B CN110113242B (zh) | 2021-07-30 |
Family
ID=67488499
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910375564.6A Active CN110113242B (zh) | 2019-05-07 | 2019-05-07 | 环形通信网络中多节点同步采样和数据传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110113242B (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110557315A (zh) * | 2019-09-02 | 2019-12-10 | 积成电子股份有限公司 | 一种基于环网的就地化保护装置有主模式的数据传输方法 |
CN110954741A (zh) * | 2019-10-21 | 2020-04-03 | 国网上海市电力公司 | 一种电压交互同步采样方法 |
CN111049926A (zh) * | 2019-12-24 | 2020-04-21 | 浙江中控技术股份有限公司 | 一种数据传输方法及相关设备 |
CN111064646A (zh) * | 2019-12-03 | 2020-04-24 | 北京东土科技股份有限公司 | 基于宽带现场总线的环网冗余方法、装置及存储介质 |
CN111682994A (zh) * | 2020-04-29 | 2020-09-18 | 浙江杰芯科技有限公司 | 基于epa协议的环形或线形网络系统和非实时数据的传输方法 |
CN111698140A (zh) * | 2020-06-24 | 2020-09-22 | 成都天奥电子股份有限公司 | 一种适用于环形组网系统的高精度时间同步方法 |
CN111800324A (zh) * | 2020-06-23 | 2020-10-20 | 广西电网有限责任公司电力科学研究院 | 智能变电站hsr节点转发方法及装置 |
CN111860408A (zh) * | 2020-07-29 | 2020-10-30 | 山东大学 | 一种基于记忆组的采样方法、系统及电子设备 |
CN111901148A (zh) * | 2020-06-29 | 2020-11-06 | 飞诺门阵(北京)科技有限公司 | 网络拓扑结构的管理方法、装置、电子设备及存储介质 |
CN112242942A (zh) * | 2020-08-10 | 2021-01-19 | 上海交通大学 | 多通道辐射计成像系统双层拓扑架构的信息传输方法 |
CN113037685A (zh) * | 2019-12-24 | 2021-06-25 | 中国移动通信集团四川有限公司 | 数据传输方法和电子设备 |
CN113259218A (zh) * | 2021-06-14 | 2021-08-13 | 深圳前海翼联科技有限公司 | 一种环形区域网拓扑结构的物联网传输方法及装置 |
CN113972959A (zh) * | 2021-11-01 | 2022-01-25 | 合肥国科天迅科技有限公司 | 一种多节点通信网络的脉冲同步方法 |
CN114189306A (zh) * | 2021-12-03 | 2022-03-15 | 中国国家铁路集团有限公司 | 数据同步系统、方法和装置 |
CN114401067A (zh) * | 2021-12-24 | 2022-04-26 | 浙江中控技术股份有限公司 | 环网通讯的时间同步方法、可编程门阵列及环网通讯系统 |
CN114500117A (zh) * | 2022-04-15 | 2022-05-13 | 北京全路通信信号研究设计院集团有限公司 | 基于环网风暴流量特征的环网Master配置错误判断方法及装置 |
CN114826821A (zh) * | 2022-03-25 | 2022-07-29 | 西安奇点能源技术有限公司 | 一种通信方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101222403A (zh) * | 2008-01-29 | 2008-07-16 | 杭州华三通信技术有限公司 | 在任意拓扑的相交环网上实现时间同步的方法和节点 |
CN101636972A (zh) * | 2007-04-04 | 2010-01-27 | 三菱电机株式会社 | 通信系统、管理装置、通信装置以及计算机程序 |
CN101789892A (zh) * | 2010-03-11 | 2010-07-28 | 浙江大学 | 全节点虚通道的片上网络环形拓扑数据交换方法及其系统 |
EP2530880A1 (en) * | 2011-06-03 | 2012-12-05 | SMSC Europe GmbH | Synchronous network switch |
CN104135359A (zh) * | 2014-07-22 | 2014-11-05 | 南京磐能电力科技股份有限公司 | 一种硬实时级联式多节点同步采样和数据传输方法 |
CN105162726A (zh) * | 2015-09-02 | 2015-12-16 | 南京磐能电力科技股份有限公司 | 基于e1链路的远程sv数据传输和延时补偿方法 |
-
2019
- 2019-05-07 CN CN201910375564.6A patent/CN110113242B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101636972A (zh) * | 2007-04-04 | 2010-01-27 | 三菱电机株式会社 | 通信系统、管理装置、通信装置以及计算机程序 |
CN101222403A (zh) * | 2008-01-29 | 2008-07-16 | 杭州华三通信技术有限公司 | 在任意拓扑的相交环网上实现时间同步的方法和节点 |
CN101789892A (zh) * | 2010-03-11 | 2010-07-28 | 浙江大学 | 全节点虚通道的片上网络环形拓扑数据交换方法及其系统 |
EP2530880A1 (en) * | 2011-06-03 | 2012-12-05 | SMSC Europe GmbH | Synchronous network switch |
CN104135359A (zh) * | 2014-07-22 | 2014-11-05 | 南京磐能电力科技股份有限公司 | 一种硬实时级联式多节点同步采样和数据传输方法 |
CN105162726A (zh) * | 2015-09-02 | 2015-12-16 | 南京磐能电力科技股份有限公司 | 基于e1链路的远程sv数据传输和延时补偿方法 |
Non-Patent Citations (1)
Title |
---|
庞吉耀: "基于E1链路的远程SV数据传输技术探讨", 《工业控制计算机》 * |
Cited By (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110557315A (zh) * | 2019-09-02 | 2019-12-10 | 积成电子股份有限公司 | 一种基于环网的就地化保护装置有主模式的数据传输方法 |
CN110557315B (zh) * | 2019-09-02 | 2021-07-23 | 积成电子股份有限公司 | 一种基于环网的就地化保护装置有主模式的数据传输方法 |
CN110954741A (zh) * | 2019-10-21 | 2020-04-03 | 国网上海市电力公司 | 一种电压交互同步采样方法 |
CN110954741B (zh) * | 2019-10-21 | 2022-03-15 | 国网上海市电力公司 | 一种电压交互同步采样方法 |
CN111064646A (zh) * | 2019-12-03 | 2020-04-24 | 北京东土科技股份有限公司 | 基于宽带现场总线的环网冗余方法、装置及存储介质 |
CN111064646B (zh) * | 2019-12-03 | 2022-01-11 | 北京东土科技股份有限公司 | 基于宽带现场总线的环网冗余方法、装置及存储介质 |
CN113037685A (zh) * | 2019-12-24 | 2021-06-25 | 中国移动通信集团四川有限公司 | 数据传输方法和电子设备 |
CN111049926A (zh) * | 2019-12-24 | 2020-04-21 | 浙江中控技术股份有限公司 | 一种数据传输方法及相关设备 |
CN113037685B (zh) * | 2019-12-24 | 2022-08-30 | 中国移动通信集团四川有限公司 | 数据传输方法和电子设备 |
CN111049926B (zh) * | 2019-12-24 | 2022-09-20 | 浙江中控技术股份有限公司 | 一种数据传输方法及相关设备 |
CN111682994A (zh) * | 2020-04-29 | 2020-09-18 | 浙江杰芯科技有限公司 | 基于epa协议的环形或线形网络系统和非实时数据的传输方法 |
CN111800324A (zh) * | 2020-06-23 | 2020-10-20 | 广西电网有限责任公司电力科学研究院 | 智能变电站hsr节点转发方法及装置 |
CN111800324B (zh) * | 2020-06-23 | 2022-03-11 | 广西电网有限责任公司电力科学研究院 | 智能变电站hsr节点转发方法及装置 |
CN111698140A (zh) * | 2020-06-24 | 2020-09-22 | 成都天奥电子股份有限公司 | 一种适用于环形组网系统的高精度时间同步方法 |
CN111901148A (zh) * | 2020-06-29 | 2020-11-06 | 飞诺门阵(北京)科技有限公司 | 网络拓扑结构的管理方法、装置、电子设备及存储介质 |
CN111860408B (zh) * | 2020-07-29 | 2023-08-08 | 山东大学 | 一种基于记忆组的采样方法、系统及电子设备 |
CN111860408A (zh) * | 2020-07-29 | 2020-10-30 | 山东大学 | 一种基于记忆组的采样方法、系统及电子设备 |
CN112242942B (zh) * | 2020-08-10 | 2021-07-06 | 上海交通大学 | 多通道辐射计成像系统双层拓扑架构的信息传输方法 |
CN112242942A (zh) * | 2020-08-10 | 2021-01-19 | 上海交通大学 | 多通道辐射计成像系统双层拓扑架构的信息传输方法 |
CN113259218B (zh) * | 2021-06-14 | 2021-09-17 | 深圳前海翼联科技有限公司 | 一种环形区域网拓扑结构的物联网传输方法及装置 |
CN113259218A (zh) * | 2021-06-14 | 2021-08-13 | 深圳前海翼联科技有限公司 | 一种环形区域网拓扑结构的物联网传输方法及装置 |
CN113972959A (zh) * | 2021-11-01 | 2022-01-25 | 合肥国科天迅科技有限公司 | 一种多节点通信网络的脉冲同步方法 |
CN113972959B (zh) * | 2021-11-01 | 2024-04-19 | 合肥华控天芯科技有限公司 | 一种多节点通信网络的脉冲同步方法 |
CN114189306A (zh) * | 2021-12-03 | 2022-03-15 | 中国国家铁路集团有限公司 | 数据同步系统、方法和装置 |
CN114189306B (zh) * | 2021-12-03 | 2024-03-12 | 中国国家铁路集团有限公司 | 数据同步系统、方法和装置 |
CN114401067A (zh) * | 2021-12-24 | 2022-04-26 | 浙江中控技术股份有限公司 | 环网通讯的时间同步方法、可编程门阵列及环网通讯系统 |
CN114401067B (zh) * | 2021-12-24 | 2024-06-11 | 浙江中控技术股份有限公司 | 环网通讯的时间同步方法、可编程门阵列及环网通讯系统 |
CN114826821A (zh) * | 2022-03-25 | 2022-07-29 | 西安奇点能源技术有限公司 | 一种通信方法及系统 |
CN114826821B (zh) * | 2022-03-25 | 2023-10-13 | 西安奇点能源股份有限公司 | 一种通信方法及系统 |
CN114500117A (zh) * | 2022-04-15 | 2022-05-13 | 北京全路通信信号研究设计院集团有限公司 | 基于环网风暴流量特征的环网Master配置错误判断方法及装置 |
CN114500117B (zh) * | 2022-04-15 | 2022-07-05 | 北京全路通信信号研究设计院集团有限公司 | 基于环网风暴流量特征的环网Master配置错误判断方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110113242B (zh) | 2021-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110113242A (zh) | 环形通信网络中多节点同步采样和数据传输方法 | |
CN104135359B (zh) | 一种硬实时级联式多节点同步采样和数据传输方法 | |
US20240214260A1 (en) | System and method for resilient wireless packet communications | |
CN111585683B (zh) | 一种面向时间敏感网络的高可靠时钟同步系统及方法 | |
US6973090B2 (en) | Switching with multiple time references | |
US6982979B2 (en) | Time frame switching method using time frame labels and a common time reference | |
US7251256B1 (en) | Synchronization of asynchronous networks using media access control (MAC) layer synchronization symbols | |
CN101977104B (zh) | 基于ieee1588精确时钟同步协议系统及其同步方法 | |
US20020080829A1 (en) | Link transmission control with common time reference | |
Kerö et al. | Performance and reliability aspects of clock synchronization techniques for industrial automation | |
CN109150559B (zh) | 时间触发以太网仿真系统 | |
CN102792658A (zh) | 在通信网络中进行时间测量 | |
WO2022095669A1 (zh) | 一种通信调度方法、装置和存储介质 | |
Pahlevan et al. | Evaluation of tsn dynamic configuration model for safety-critical applications | |
Simanic et al. | Compensation of asymmetrical latency for ethernet clock synchronization | |
CN107508648A (zh) | 基于设备功能分类的时间触发以太网分步时间同步策略 | |
CN104618057A (zh) | 一种分组传送网无损伤保护倒换方法及系统 | |
Moreira et al. | IEEE 1588 Transparent Clock architecture for FPGA-based network devices | |
CN105530065B (zh) | 用于prp/hsr的ieee1588对时系统及方法 | |
Liu et al. | Highly reliable clock synchronization based on port redundancy in time-sensitive networking | |
US20070058564A1 (en) | Method and device for managing data flow in a synchronous network | |
CN102404066A (zh) | 一种自适应时钟恢复方法 | |
Abdul et al. | Integration of HSR and IEEE1588 over Ethernet networks | |
CN109831246A (zh) | 一种基于hsr的线路光差同步方法 | |
Wei et al. | Development of data bus technology in next generation spacecraft |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |