基于以太网的列车通信网络多跳调度方法与流程

文档序号:16633939发布日期:2019-01-16 06:50阅读:1052来源:国知局
基于以太网的列车通信网络多跳调度方法与流程

本发明属于列车车载网络系统控制技术领域,具体涉及一种基于以太网的列车通信网络多跳调度方法。



背景技术:

实时传送控制命令和监测系统状态是列车控制网络的基本任务,列车通信网络中传输的数据种类繁多,其中相当一部分是有关列车行车安全的控制、检测、诊断等数据,列车控制网络必须能提供相应的实时通信,满足信息传输的时限。随着列车网络承载数据的持续增长,传统的列车通信网络如mvb、wtb、arcnet等将难以满足需求。以太网因其传输速率高、兼容性好、成本低等优势已成为未来列车通信网络的主要研究方向之一。目前以太网应用于列车通信网络的实时性问题主要存在于数据链路层,交换机的排队机制带来了数据传输的不确定性。为了满足iec61375-3-4标准中对列车通信网络数据传输的实时性需求,需要特定的实时性改进机制。



技术实现要素:

(一)要解决的技术问题

本发明要解决的技术问题是:如何改进列车以太网通信的实时性。

(二)技术方案

为了解决上述技术问题,本发明提供了一种基于以太网的列车通信网络多跳调度方法,包括以下步骤:

第一步、在每个基本周期的最开始预留一个管理窗口,用于后续数据调度;在管理窗口内,由各从节点以“多端对一端”的形式告知主节点自身节点准备发送的数据,主节点在收到来自从节点的数据之后,将采用“一端对多端”的形式向各从节点广播发送触发消息tm,其中包含当前基本周期的调度信息及时钟同步信息,通过向主节点提供与数据交换相关的各从节点的信息,包括地址、端口以及数据类型,主节点能够计算每条消息的无交叉传输路径;

第二步、将全局数据和本地数据进行优先级排队,并按照周期数据调度算法对优先级队列中的消息进行可调度性分析,确定当前ec可以被调度的所有消息;

第三步、构建列车通信网络拓扑;

第四步、基于所构建的列车通信网络拓扑在主节点与从节点之间,按照第二步的可调度性分析结果进行周期信息的调度。

优选地,该方法还包括第五步、基于所构建的列车通信网络拓扑在主节点与从节点之间进行非周期数据的调度:实时非周期数据及非实时数据均在非周期相窗口内传输,非周期数据具有偶发性,无需被tm消息触发,当实时非周期数据传输结束,且非周期相窗口时间大于预设值时,非实时数据按照先进先出的方式进行传输,非周期数据的传输方式采取轮询的方法,在周期数据的传输过程中,从节点利用反向的传输链路向主节点汇报当前基本周期内发送的非周期信息,由主节点进行统一调度,并在周期相结束,非周期相到来之后传输非周期数据。

优选地,第二步中、所述可调度性分析的原则为:当前ec可被调度传输的消息被编码至tm中,不可被调度的消息则被缓冲至下一个ec中进行处理,在每个ec最开始的管理窗口,主节点通过多播的方式在子网内发送tm,激活待传输的周期信息、更新待转发的消息队列,确定当前ec可以被调度的所有消息之后,主节点构造tm并广播至各从节点。

优选地,第三步具体为:在列车通信网络的每节车辆内,将各电子控制单元设备按星型拓扑结构连接到组网交换机cs,组网交换机cs将列车通信网络划分为几个独立的冲突域;其中头尾两车的车辆控制单元vcu同时连接到cs和列车通信网络的交换机etbn作为中央控制单元ccu1及ccu2,cs和etbn均采用工业以太网交换机,车辆内的设备包括:车辆控制单元vcu和制动控制单元bcu,其中,头尾两车tc1和tc2中的车辆控制单元vcu同时作为整个列车的中央控制单元ccu;

每节车厢中的cs及与其直连的终端设备构成一个子网,etbn1与ccu1构成一个子网,其中每个交换机有一个主节点负责调度,定义etbn1为该列车通信网络的根交换机,ccu1为根主节点,选取每节车厢中的制动控制单元bcu为主节点负责子网的调度,头尾两车的ccu则分别作为etbn1和etbn2的主节点,并将该列车通信网络划分为不同的层次结构,etbn1及ccu1构成多跳网络的第一层;设交换机etbn2和交换机cs5及各自构成的子网为多跳网络的第二层,同时etbn2和cs5作为etbn1的子节点,同理,设cs6为etbn2的子节点,cs2及cs1作为cs5的子节点,cs3及cs4作为cs6的子节点。

优选地,第四步中进行调度时,使得各子网间保持时钟同步,子网间的时钟同步通过各子网的主节点与根主节点ccu1的时钟同步实现,在每个基本周期的管理窗口,根主节点ccu1广播全局触发信息gtm,按照第三步所建立的层次结构,每个主节点负责将gtm转发至子主节点,每个主节点在收到gtm之后,发送tm初始化各子网的基本周期,从节点在收到tm消息之后,按照规定的时间发送被调度的数据,被编码进tm的数据在相应的基本周期内被触发,同一个子网内的各从节点和主节点保持时钟同步,这由tm消息完成。

优选地,第四步中进行调度时,还根据每个主节点bcu及etbn2与根主节点etbn1的相对位置,为每个主节点设置一个固定的截止时间,若主节点在截止时间到来前未收到gtm,则自身生成一个新的gtm发送至子主节点,继续完成整个多跳网络的时钟同步,由于每个组网交换机将每个车厢划分为一个独立的冲突域,tm只在子网内发送,子网之间不会互相干扰;与其他主节点不同的是,根主节点ccu1在每个基本周期的最开始直接发送gtm,不判断是否到达截止时间,且无需接收gtm。

优选地,第四步中进行调度时,在全局数据的传输过程中,经过的所有子网在一个基本周期内对其进行连续调度。

优选地,第四步中进行调度时,对列车通信网络中传递的实时周期信息进行数学描述,假设网络中需要传递的周期信息个数为n,对第i个周期信息mi传输任务描述为

γi={mi(ci,di,ti,oipki,si,dsi,pi,li,ni),i=1…n}(1)

其中,ci表示周期信息mi的传输时间;di和ti分别表示mi的截止时间和周期,oi表示数据的初相即被调度的时刻,pki表示mi数据包的大小;si和dsi分别表示mi的源节点和目的节点;pi表示优先级;li表示mi经过的链路集,ni表示mi经过的链路段数,li={lk|k=1…n}。

优选地,第四步中进行调度时,实时周期数据必须在周期相窗口内完成传输,考虑到交换机的延迟ε,所有链路的工作时间不能超过周期相lsw-ε,其中lsw是周期相窗口的大小,对于发送链路,必须保证数据的传输时间之和不得超过周期相窗口的大小lsw-ε;对于接收链路,则保证最后一条数据传输完成的时刻f小于周期相窗口的大小lsw。

优选地,第四步中进行调度时,设实时周期数据mi到达交换机输出端口的时间为ai,队列中比mi优先级高的数据mj在接收链路rl的接收完成时间为fj;其中,ai=oi+ci,oi为数据的初相,即数据在发送链路的发送开始时间;为保证高优先级数据的接收,mi在接收链路rl接收开始的时间为max{fj,ai},故mi在接收链路传输完成的时刻为max{fj,ai}+ci,故mi在当前基本周期能够被调度还应当满足

max{fj,ai}+ci≤lsw(3)

当不能同时满足式(2)及(3)时,mi将被推迟至下个基本周期调度,当已调度的高优先级数据到达时间晚于mi的到达时间时,允许mi在接收链路rl上优先于这些已调度的高优先级数据接收;

各从节点在收到tm消息之后,对其进行解码,按照tm消息中所包含的信息,准备当前基本周期需要传送的周期数据,当周期相到来时,初始化待发送的数据,同时接收其他节点发来的周期数据。

(三)有益效果

本发明在列车通信网络中引入ftt-se。ftt-se采用时间触发的方式传输周期数据,采用事件触发的方式传输非周期数据,实现了时间触发与事件触发的有机结合;采用主从式的调度方式,带宽效率高,支持在线调度和多主系统,且兼容标准工业以太网交换机,改进了列车以太网通信的实时性。

附图说明

图1是ftt-se通信模型示意图;

图2是本发明实施例中的列车通信网络架构示意图;

图3是本发明的主节点调度流程图;

图4是本发明的从节点调度流程图;

图5是本发明的多跳调度模型示意图。

具体实施方式

为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。

列车通信网络的数据传输存在于车辆内和车辆间,车辆间的数据传输通常需要跨越多个交换机,传输路径复杂,增加了数据传输的不确定性,因此需要有效的调度机制。随着通信量的增加,“多子网”“多交换机”的网络架构被相继提出,需要多个交换机互联而实现通信的网络为“多跳网络”。基于以太网的列车通信网络属于多跳网络的架构,本发明提出一种基于ftt-se的车载以太网多跳调度方法,以期改进列车以太网通信的实时性。

ftt-se机制采用主从式调度方式,如图1所示,网络由一个主节点和其他多个从节点构成,由一个主节点调度从节点。通过交换机将网路分为多个“微网段”,网络中的链路采用“全双工”的工作方式,按照数据的传输方向分为发送链路(sendlink,sl)和接收链路(receivelink,rl);每条链路两端连接的交换机端口固定。主节点按照优先级顺序调度待发送的数据。数据的传输时间划分为固定的时间片,称作基本周期(elementarycycle,ec),每个基本周期分为周期相和非周期相两个窗口,分别负责周期数据和非周期数据的传输。

本发明针对车载以太网中数据传输经过多个交换机的情景提出的一种,基于上述ftt-se机制实现的列车通信网络多跳调度方法,包括以下步骤:

第一步、在每个基本周期的最开始预留一个管理窗口,用于后续数据调度

在管理窗口内,由各从节点以“多端对一端”的形式告知主节点自身节点准备发送的数据,主节点在收到来自从节点的数据之后,将采用“一端对多端”的形式向各从节点广播发送触发消息(triggermessage,tm),其中包含当前基本周期的调度信息及时钟同步信息。通过向主节点提供与数据交换相关的各从节点的信息,包括地址、端口以及数据类型等信息,主节点可以计算每条消息的无交叉传输路径(即源节点和目的节点均与其他消息无重合),并依据每条消息的无交叉传输路径构建并行调度表,进而增加调度的吞吐量。

车载以太网多跳调度机制的目标,是在规定的时间窗口内对全局数据及本地数据进行有效的调度,保证车辆内及车辆间的数据传输的实时性。在列车网络拓扑固定的情况下,数据传输的源节点和目的节点可以唯一的确定数据的传输路径。

第二步、将全局数据和本地数据按照rm算法或者edf算法进行优先级排队,并按照周期数据调度算法对优先级队列中的消息进行可调度性分析,当前ec可以被调度传输的消息被编码至tm中,不可被调度的消息则被缓冲至下一个ec中进行处理。在每个ec最开始的管理窗口,主节点通过多播的方式在子网内发送tm,激活待传输的周期信息、更新待转发的消息队列。最后,确定当前ec可以被调度的所有消息之后,主节点构造tm并广播至各从节点。

第三步、构建列车通信网络拓扑

如图2所示,以某地铁控制网络为原型,在每节车辆内,将各重要电子控制单元设备按星型拓扑结构连接到组网交换机cs,组网交换机cs将列车通信网络划分为几个独立的冲突域;其中头尾两车的车辆控制单元vcu同时连接到cs和etbn作为中央控制单元ccu1及ccu2,cs和etbn均采用工业以太网交换机。车辆内的主要设备包括:车辆控制单元(vcu)和制动控制单元(bcu)等。其中,头尾两车tc1和tc2中的车辆控制单元(vcu)同时作为整个列车的中央控制单元ccu,集成视频监控系统(pis-cctv)也在头尾两车中。

图2所示的列车通信网络是由多个交换机及终端设备组成的一个“多跳网络”。如每节车厢中的cs及与其直连的终端设备构成一个子网,etbn1与ccu1构成一个子网,其中每个交换机需要一个专门的主节点负责调度,选取每节车厢中的制动控制单元bcu为主节点负责子网的调度,头尾两车的ccu则分别作为etbn1和etbn2的主节点。为了方便调度,将该多跳网络划分为不同的层次结构,etbn1及ccu1构成多跳网络的第一层,定义etbn1为该多跳网络的根交换机,ccu1为根主节点;etbn2和cs5及各自构成的子网为多跳网络的第二层,同时etbn2和cs5作为etbn1的子节点,同理,cs6为etbn2的子节点,cs2及cs1作为cs5的子节点,cs3及cs4作为cs6的子节点。

第四步、基于所构建的列车通信网络拓扑在主节点与从节点之间,按照第二步的可调度性分析结果进行周期信息的调度

与车辆内的数据传输相比,车辆间的数据传输路径复杂,除需要子网内部节点的时钟同步之外,还需要各子网间保持时钟同步。子网间的时钟同步通过各子网的主节点与根主节点ccu1的时钟同步实现。在每个基本周期的管理窗口,根主节点ccu1广播全局触发信息(globaltriggermessage,gtm),按照上述层次结构,每个主节点负责将gtm转发至子主节点,每个主节点在收到gtm之后,发送tm初始化各子网的基本周期。从节点在收到tm消息之后,按照规定的时间发送被调度的数据。被编码进tm的数据应当在相应的基本周期内被触发,这就需要同一个子网内的各从节点和主节点保持时钟同步,这将由tm消息完成。

为了防止gtm丢失,根据每个主节点(bcu及etbn2)与根主节点(etbn1)的相对位置,为每个主节点设置一个固定的截止时间,若主节点在截止时间(timeout)到来前未收到gtm,则自身生成一个新的gtm发送至子主节点,继续完成整个多跳网络的时钟同步。由于每个组网交换机将每个车厢划分为一个独立的冲突域,tm只在子网内发送,子网之间不会互相干扰。与其他主节点不同的是,根主节点ccu1在每个基本周期的最开始直接发送gtm,不需要判断是否到达截止时间,且无需接收gtm。

在全局数据的传输过程中,需要经过的所有子网在一个基本周期内对其进行连续调度,当传输路径中的某个子网没有对其进行调度时,可能会造成全局数据错过截止时间。例如,m4中的vcu4向tc1中的bcu5发送消息时,其需要经过交换机cs4、cs6、etbn2、etbn1及cs5,此时,需要主节点bcu4、bcu6、ccu2、ccu1、bcu5在同一个基本周期内进行连续调度。

对列车通信网络中传递的实时周期信息进行数学描述,假设网络中需要传递的周期信息个数为n,对第i个周期信息mi传输任务可以描述为

γi={mi(ci,di,ti,oipki,si,dsi,pi,li,ni),i=1…n}(1)

其中,ci表示周期信息mi的传输时间(数据长度/带宽);di和ti分别表示mi的截止时间和周期,oi表示数据的初相即被调度的时刻,pki表示mi数据包的大小;si和dsi分别表示mi的源节点和目的节点;pi表示优先级;li表示mi经过的链路集,ni表示mi经过的链路段数,li={lk|k=1…n}。

链路工作模式为全双工,发送链路和接收链路同时工作,为了充分利用带宽,每条链路同时考虑其发送链路sl和接收链路rl。在上述列车通信网络中,每条数据传输的路径固定,途中经过的链路也相对固定。由于每条链路连接的交换机端口固定,数据在链路上的传输速度相同,为了避免数据在交换机中排队,应使得在每条链路中,每个传输方向上,只有一条数据传输。

主节点依据rm/edl等调度算法生成一个周期数据的发送队列,该队列被编码至tm消息中,由主节点发送至各从节点。各从节点按照调度表通过从节点的发送链路将数据发送至交换机,数据到达交换机之后,在对应的输出端口排队,准备发往目的节点接收链路。

在当前ec内被传输要求数据在发送链路和接收链路上的传输均能在当前ec的同步窗口内完成。由于交换机采取全双工的工作模式,sl和rl同时工作。构建周期调度表时需注意一下几个问题:

(1)实时周期数据必须在周期相窗口内完成传输,考虑到交换机的延迟ε,所有链路的工作时间不能超过周期相lsw-ε,其中lsw是周期相窗口的大小。因此,对于发送链路,必须保证数据的传输时间之和不得超过周期相窗口的大小lsw-ε;对于接收链路,则应当保证最后一条数据传输完成的时刻f小于周期相窗口的大小lsw。综上可得

(2)为了计算数据在接收链路传输完成的时刻,需要考虑队列中高优先级数据包的接收完成时间。设实时周期数据mi到达交换机输出端口的时间为ai,队列中比mi优先级高的数据mj在接收链路rl的接收完成时间为fj。其中,ai=oi+ci,oi为数据的初相,即数据在发送链路的发送开始时间;为保证高优先级数据的接收,mi在接收链路rl接收开始的时间为max{fj,ai},故mi在接收链路传输完成的时刻为max{fj,ai}+ci。故mi在当前基本周期能够被调度还应当满足

max{fj,ai}+ci≤lsw(3)

当不能同时满足式(2)及(3)时,mi将被推迟至下个基本周期调度,为了提高链路带宽的利用率,在不影响高优先级数据实时性的基础上,当已调度的高优先级数据到达时间晚于mi的到达时间时,允许mi在接收链路rl上优先于这些数据(已调度的高优先级数据)接收。

综合车辆内及车辆间数据的传输过程,主节点对实时周期数据的调度算法流程如图3所示。

各从节点在收到tm消息之后,对其进行解码,按照tm消息中所包含的信息,准备当前基本周期需要传送的周期数据,当周期相到来时,初始化待发送的数据,同时接收其他节点发来的周期数据,从节点的工作流程如图4所示。

第五步、基于所构建的列车通信网络拓扑在主节点与从节点之间进行非周期数据的调度

实时非周期数据及非实时数据均在非周期相窗口内传输,非周期数据具有偶发性,无需被tm消息触发,当实时非周期数据传输结束,且非周期相窗口时间充足时,非实时数据按照先进先出的方式进行传输。非周期数据的传输方式采取轮询的方法。在周期数据的传输过程中,从节点利用反向的传输链路向主节点汇报当前基本周期内发送的非周期信息。由主节点进行统一调度,并在周期相结束,非周期相到来之后传输非周期数据。在这种情况下,主节点可以充分地规划传输时刻,但是同步延迟会增加响应时间,效率较低。

综上所述,基于以太网的列车通信网络多跳调度模型如图5所示。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

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