Some content of this application is unavailable at the moment.
If this situation persist, please contact us atFeedback&Contact
1. (WO2018224052) REAL-TIME DATA SCHEDULING METHOD HAVING FAULT TOLERANCE FUNCTION FOR USE IN FIELD OF RAIL TRANSPORTATION
Document

说明书

发明名称 0001   0002   0003   0004   0005   0006   0007   0008   0009   0010   0011   0012   0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053   0054   0055   0056   0057   0058   0059   0060  

权利要求书

1   2   3   4   5   6  

附图

1   2   3   4  

说明书

发明名称 : 一种轨道交通领域的具有容错功能的实时数据调度方法

[0001]
相关申请
[0002]
本申请主张于2017年6月6日提交的、名称为“一种轨道交通领域的具有容错功能的实时数据调度方法”的中国发明专利申请:201710417001.X的优先权。

技术领域

[0003]
本发明涉及一种轨道交通领域的基于以太网技术的实时数据调度方法,尤其涉及一种轨道交通领域的具有容错能力的实时数据调度方法。

背景技术

[0004]
工业以太网是指在工业环境的自动化控制及程序控制中应用以太网的相关元件及技术,为工业网络提供确定性和实时性。工业以太网与IEEE 802.3标准兼容,并且具有通信速度快、应用广泛、开发和生产成本低、易于集成的特点,被广泛应用于航空、铁路交通、工业制造等领域。
[0005]
实时以太网交换机是基于以太网的实时通信网络的骨架,其与终端设备的相互连接构成了整个以太网拓扑结构。实时数据调度方法负责对网络中的由终端产生的数据进行转发,并且保证实时数据的实时性。数据的实时性是指确保数据需要在规定的时间内到达目的终端,具有实时性要求的数据称为实时数据。实时数据调度方法是保证工业以太网实时性的关键。
[0006]
国内现有的实时数据调度方法主要集中在保障实时功能上,并不能容忍交换机发生故障。在列车网络中,发生故障的交换机被短接,导致原本经过该故障交换机的实时数据提早到达下一个交换机,从而造成数据与其对应的接收时间窗口不匹配,进而导致网络丢包问题。列车上,实时数据的丢失会导致例如刹车失灵等问题,进而造成严重的后果。因此,发明一种轨道交通领域的具有容错功能的实时数据调度方法十分必要。
[0007]
发明内容
[0008]
本发明的目的是提供一种能够容忍交换机发生故障的实时数据调度方法。
[0009]
本发明的技术方案在于提供了一种轨道交通领域的具有容错功能的实时数据调 度方法,其特征在于:其特征在于包括以下步骤:
[0010]
步骤1、对具有容错功能的实时以太网交换机系统进行初始化;硬件启动后,对容错模块进行初始化,清空存储资源池中的数据,将地址列表的值都置为1;
[0011]
步骤2、监测交换机故障;CPU板上搭载的Linux系统,通过心跳数据包监测周围交换机是否发生故障,当交换机的某端口接收不到指定的心跳数据包时,CPU判定对应端口连接的交换机发生故障;当没有检测到交换机故障时,仲裁模块直接将数据帧传输到实时调度模块中;
[0012]
步骤3、响应交换机故障,当CPU板检测到周围交换机故障时,CPU向交换板发送打开容错功能的指令,从而打开连接故障交换机端口的容错功能;
[0013]
步骤4、判断仲裁模块根据各端口的容错功能是否打开,决定来自各端口数据包的流向;如果端口的容错功能处于关闭状态,仲裁模块将来自该端口的数据包转发到实时调度模块;如果端口的容错功能处于开启状态,仲裁模块将来自该端口的数据包转发到存储资源分配模块;
[0014]
步骤5、当到达数据包的接收窗口时,控制逻辑模块根据数据流标识字段,确定该数据包的地址空间;如果该地址空间为空,控制逻辑模块切换到下一个数据包的取回操作;否则,控制逻辑模块取回改地址空间中的数据,然后将该地址空间对应的地址列表的值设置为0。
[0015]
本发明还提了一种用轨道交通的具有容错功能的实时数据调度方法的实时以太网交换机系统,包括CPU板、交换板和PHY板;其特征在于:
[0016]
CPU板通过PCI-e接口与交换板进行控制信息和数据信息的交互,交换板通过接口与PHY版进行数据信息的交互;
[0017]
CPU板包括中央处理器、存储单元和PCI-e接口;
[0018]
CPU板上运行实时Linux系统,并且通过PCI-e接口与交换板进行数据的交换;
[0019]
交换板是实现具有容错功能的实时调度算法的硬件板;
[0020]
PHY板上包含PHY ASIC芯片,是物理接口收发器,负责实现物理层。
[0021]
本发明的有益效果在于:本发明使得在列车发生故障的交换机被短接时,有效防 止原本经过该故障交换机的实时数据提早到达下一个交换机,从而造成数据与其对应的接收时间窗口不匹配,进而导致网络丢包的问题。

附图说明

[0022]
图1是本发明所述的轨道交通领域的具有容错功能的实时数据调度系统的原理图;
[0023]
图2本发明所述的两口交换卡内部结构示例图;
[0024]
图3本发明所述的四路容错模块结构示例图;
[0025]
图4本发明本发明所述的轨道交通领域的具有容错功能的实时数据调度方法的容错模块程序流程图;

具体实施方式

[0026]
下面结合附图1-4对本发明的技术方案进行进一步描述。
[0027]
如图4所示,该实施例提供了一种轨道交通领域的具有容错功能的实时数据调度方法,其具体包括以下步骤:
[0028]
步骤1、对具有容错功能的实时以太网交换机系统进行初始化;
[0029]
硬件启动后,对容错模块进行初始化,清空存储资源池中的数据,将地址列表的值都置为1;
[0030]
步骤2、监测交换机故障;
[0031]
CPU板上搭载的Linux系统,通过心跳数据包监测周围交换机是否发生故障,当交换机的某端口接收不到指定的心跳数据包时,CPU判定对应端口连接的交换机发生故障;当没有检测到交换机故障时,仲裁模块直接将数据帧传输到实时调度模块中;
[0032]
步骤3、响应交换机故障,当CPU板检测到周围交换机故障时,CPU向交换板发送打开容错功能的指令,从而打开连接故障交换机端口的容错功能。
[0033]
该指令包含一个32位的值,从低位到高位分别对应1-32个端口。当端口打开容错功能时,该端口对应的指令值的位置设为1;当端口关闭容错功能时,该端口对应的指令值的位置设为0。
[0034]
步骤4、仲裁模块根据各端口的容错功能是否打开,决定来自各端口数据包的流 向。如果端口的容错功能处于关闭状态,仲裁模块将来自该端口的数据包转发到实时调度模块;如果端口的容错功能处于开启状态,仲裁模块将来自该端口的数据包转发到存储资源分配模块。
[0035]
存储资源分配模块根据数据流标识字段,为实时数据包分配存储资源池地址空间。如果该数据流标志字段对应的地址空间中已经存储数据,存储资源分配模块清空该地址空间的数据,并将其对应的地址列表中的值设置为0,然后重新对该实时数据进行地址空间的分配;如果该数据流标志字段对应的地址空间为空,存储资源分配模块将数据存储在该地址空间中,并且将其对应的地址列表的值设置为1。
[0036]
步骤5、当到达数据包的接收窗口时,控制逻辑模块根据数据流标识字段,确定该数据包的地址空间。如果该地址空间为空,控制逻辑模块切换到下一个数据包的取回操作;否则,控制逻辑模块取回改地址空间中的数据,然后将该地址空间对应的地址列表的值设置为0。
[0037]
为了减少串行访问存储资源池导致的数据竞争为题,控制逻辑模块对数据包进行预取,即提前于给定的接收时间窗口一定时间将数据取出。
[0038]
该实施例还提供了一种用轨道交通的具有容错功能的实时数据调度方法,该方法通过具有容错功能的实时以太网交换机系统来实现,其中,具有容错功能的实时以太网交换机系统包括CPU板、交换板和PHY板。
[0039]
如图1所示,其中:CPU板通过PCI-e接口与交换板进行控制信息和数据信息的交互,交换板通过S3MII接口与PHY版进行数据信息的交互。
[0040]
CPU板包括PowerPC架构的中央处理器(CPU)、存储单元和PCI-e接口。CPU板上运行实时Linux系统,并且通过PCI-e接口与交换板进行数据的交换。
[0041]
交换板是实现具有容错功能的实时调度算法的核心硬件板卡,包括物理器件和数字电路。交换板的物理器件包括Xilinx vertex 7芯片、Flash Rom、QDR外接存储器等;交换板的数字电路由FPGA设计,烧录到Xilinx芯片中。
[0042]
PHY板上包含Broadcom的PHY ASIC芯片,是物理接口收发器,负责实现物理层。
[0043]
图2是本发明的交换板内部结构图,控制物理设备实现普通数据帧的转发,保障实时数据帧的实时性传输,并且提供容错功能。
[0044]
交换卡的内部结构包括MAC、分类器、普通数据缓存、时钟数据缓存、实时数据通道、普通数据通道、多路选择器和PCI-E接口,其中:
[0045]
MAC是数据的接口,负责发送和接收以太网中的数据帧。
[0046]
分类器根据以太网帧数据的EtherType字段,区分以太网数据帧的类型。0x88D7为实时数据类型,0x8801是时钟数据类型。
[0047]
数据帧的类型为普通数据帧、实时数据帧和时统数据帧。实时数据帧被直接传输到实时数据通道;普通数据帧存储在普通数据缓存中;时统数据存储在时钟数据缓存中。
[0048]
普通数据缓存负责存储分类器传入的普通数据帧。
[0049]
时钟数据缓存负责存储分类器传入的时统数据帧。
[0050]
实时数据通道负责转发实时数据,并且提供容错功能。
[0051]
其包括容错模块、实时调度模块和时间同步模块。容错模块负责实现交换机容错功能;实时调度模块负责调度实时数据帧,以保障数据帧的实时性传输;时钟同步模块负责为整个网络的设备提供同步的全局时钟。
[0052]
普通数据通道负责实现普通数据帧的转发功能。
[0053]
多路选择器负责根据优先级,选择应该发送的数据帧。其中实时数据帧的优先级最高,普通数据帧的优先级最低。
[0054]
图3是本发明的容错模块结构图,其中实现容错功能的模块包括仲裁模块、存储资源分配逻辑模块、存储资源池和控制逻辑模块。
[0055]
仲裁模块的功能是决定进入容错模块数据的流向。仲裁模块响应中央处理器的命令,打开或者关闭容错功能。当容错功能开启时,仲裁模块将数据传输到存储资源分配模块。当容错功能关闭时,仲裁模块将数据直接传输到实时数据调度模块。
[0056]
存储资源分配模块负责为数据分配其在存储资源池中的位置。在实时数据中,每个数据流具有一个特定的字段进行标识,字段取值为1-4096。该模块通过解析标识字段来决定数据流在存储资源池中的存储位置。
[0057]
存储资源池负责缓存需要进行容错的实时数据。本发明中的存储资源池通过外接 存储设备QDR实现。存储池中的地址空间为1-4096,每一个空间能且仅能存储一个以太网的最长帧。存储地址空间与数据流标识字段一一对应。存储资源池中维护一个4096位的地址列表,用于记录1-4096地址空间中是否已经存储了数据。如果地址空间存储了数据,在列表中该地址位标识为1,否则标识为0;
[0058]
控制逻辑模块负责在规定的时间从存储资源池中取回数据。每个实时数据对应一个时间表的条目,条目中记录该数据的接收时间窗口和发送时间。每个实时数据应该在规定的时间窗口中到达,并且在规定的时间点发送出去。当到达数据的接收时间窗口时,该模块获取数据流标识字段,从存储资源池中获取该数据。在获取过程中,该模块首先查询地址列表,如果数据流字段对应地址的地址列表值为1,该模块从存储资源池中获取数据,之后将数据传输到实时调度模块。否则,该模块不响应该数据的取回请求。
[0059]
数据通过mac模块的接收,到达分类器。分类器通过解析以太网数据的EtherType字段,将字段值为0x88D7的实时数据转发到容错模块。实时数据首先通过仲裁模块,如果该实时数据对应的输入端口容错功能关闭,则被仲裁模块转发到实时调度模块;如果该实时数据对应的输入端口容错功能打开,则被仲裁模块转发到存储资源分配模块中。存储资源分配模块根据数据标识字段为该实时数据在存储资源池中分配存储空间。当控制逻辑模块判定该实时数据的接收时间到达时,从存储资源池中将该实时数据取出,并发送到实时调度模块。打开端口的容错功能时,因数据提前到达实时数据缓存在资源存储池中,并在规定的接收时间被取出,所以实时数据不会因为提前到达实时调度模块而被丢弃,从而实现了容错功能。
[0060]
虽然上面结合本发明的优选实施例对本发明的原理进行了详细的描述,本领域技术人员应该理解,上述实施例仅仅是对本发明的示意性实现方式的解释,并非对本发明包含范围的限定。实施例中的细节并不构成对本发明范围的限制,在不背离本发明的精神和范围的情况下,任何基于本发明技术方案的等效变换、简单替换等显而易见的改变,均落在本发明保护范围之内。

权利要求书

[权利要求 1]
一种轨道交通领域的具有容错功能的实时数据调度方法,其特征在于:其特征在于包括以下步骤: 步骤1、对具有容错功能的实时以太网交换机系统进行初始化;硬件启动后,对容错模块进行初始化,清空存储资源池中的数据,将地址列表的值都置为1; 步骤2、监测交换机故障;CPU板上搭载的Linux系统,通过心跳数据包监测周围交换机是否发生故障,当交换机的某端口接收不到指定的心跳数据包时,CPU判定对应端口连接的交换机发生故障;当没有检测到交换机故障时,仲裁模块直接将数据帧传输到实时调度模块中; 步骤3、响应交换机故障,当CPU板检测到周围交换机故障时,CPU向交换板发送打开容错功能的指令,从而打开连接故障交换机端口的容错功能; 步骤4、判断仲裁模块根据各端口的容错功能是否打开,决定来自各端口数据包的流向;如果端口的容错功能处于关闭状态,仲裁模块将来自该端口的数据包转发到实时调度模块;如果端口的容错功能处于开启状态,仲裁模块将来自该端口的数据包转发到存储资源分配模块; 步骤5、当到达数据包的接收窗口时,控制逻辑模块根据数据流标识字段,确定该数据包的地址空间;如果该地址空间为空,控制逻辑模块切换到下一个数据包的取回操作;否则,控制逻辑模块取回改地址空间中的数据,然后将该地址空间对应的地址列表的值设置为0。
[权利要求 2]
根据权利要求1所述的轨道交通领域的具有容错功能的实时数据调度方法,其特征在于,步骤4中,存储资源分配模块根据数据流标识字段,为实时数据包分配存储资源池地址空间; 如果该数据流标志字段对应的地址空间中已经存储数据,存储资源分配模块清空该地址空间的数据,并将其对应的地址列表中的值设置为0,然后重新对该实时数据进行地址空间的分配; 如果该数据流标志字段对应的地址空间为空,存储资源分配模块将数据存储在该地址空间中,并且将其对应的地址列表的值设置为1。
[权利要求 3]
一种实现权利要求1所述的用轨道交通的具有容错功能的实时数据调度方法的实时以太网交换机系统,包括CPU板、交换板和PHY板;其特征在于: CPU板通过PCI-e接口与交换板进行控制信息和数据信息的交互,交换板通过接口与PHY版进行数据信息的交互; CPU板包括中央处理器、存储单元和PCI-e接口; CPU板上运行实时Linux系统,并且通过PCI-e接口与交换板进行数据的交换; 交换板是实现具有容错功能的实时调度算法的硬件板; PHY板上包含PHY ASIC芯片,是物理接口收发器,负责实现物理层。
[权利要求 4]
根据权利要求3所述的实时以太网交换机系统,其特征在于:交换卡的内部结构包括MAC、分类器、普通数据缓存、时钟数据缓存、实时数据通道、普通数据通道、多路选择器,其中: MAC是数据的接口,负责发送和接收以太网中的数据帧; 分类器根据以太网帧数据的EtherType字段,区分以太网数据帧的类型; 数据帧的类型为普通数据帧、实时数据帧和时统数据帧;实时数据帧被直接传输到实时数据通道;普通数据帧存储在普通数据缓存中;时统数据存储在时钟数据缓存中; 普通数据缓存负责存储分类器传入的普通数据帧; 时钟数据缓存负责存储分类器传入的时统数据帧; 实时数据通道负责转发实时数据,并且提供容错功能; 多路选择器负责根据优先级,选择应该发送的数据帧;其中实时数据帧的优先级最高,普通数据帧的优先级最低。
[权利要求 5]
根据权利要求4所述的实时以太网交换机系统,其特征在于:实现容错功能的模块包括仲裁模块、存储资源分配逻辑模块、存储资源池和控制逻辑模块; 其中,仲裁模块的功能是决定进入容错模块数据的流向;仲裁模块响应中央处理器的命令,打开或者关闭容错功能;当容错功能开启时,仲裁模块将数据传输到存储资源分配模块;当容错功能关闭时,仲裁模块将数据直接传输到实时数据调度模块; 存储资源分配模块负责为数据分配其在存储资源池中的位置; 存储资源池负责缓存需要进行容错的实时数据;控制逻辑模块负责在规定的时间从存储资源池中取回数据; 每个实时数据对应一个时间表的条目,条目中记录该实时数据的接收时间窗口和发送时间;每个实时数据应该在规定的时间窗口中到达,并且在规定的时间点发送出去。
[权利要求 6]
根据权利要求5所述的实时以太网交换机系统,其特征在于:实时数据首先通过仲裁模块,如果该实时数据对应的输入端口容错功能关闭,则被仲裁模块转发到实时调度模块; 如果该实时数据对应的输入端口容错功能打开,则被仲裁模块转发到存储资源分配模块中; 存储资源分配模块根据数据标识字段为该实时数据在存储资源池中分配存储空间; 当控制逻辑模块判定该实时数据的接收时间到达时,从存储资源池中将该实时数据取出,并发送到实时调度模块; 打开端口的容错功能时,因数据提前到达实时数据缓存在资源存储池中,并在规定的接收时间被取出,所以实时数据不会因为提前到达实时调度模块而被丢弃,从而实现了容错功能。

附图

[ 图 1]  
[ 图 2]  
[ 图 3]  
[ 图 4]