CN115733759A - Ttfc消息调度的仿真模型系统 - Google Patents
Ttfc消息调度的仿真模型系统 Download PDFInfo
- Publication number
- CN115733759A CN115733759A CN202211129636.7A CN202211129636A CN115733759A CN 115733759 A CN115733759 A CN 115733759A CN 202211129636 A CN202211129636 A CN 202211129636A CN 115733759 A CN115733759 A CN 115733759A
- Authority
- CN
- China
- Prior art keywords
- model
- data frame
- sending
- receiving
- data
- 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
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种TTFC消息调度的仿真模型系统,包括交换机模型、终端模型和链路模型,输入文件包括网络仿真拓扑文件和仿真配置文件,运行仿真前,根据导入的仿真拓扑文件,采用链路模型将终端模型和交换机模型连接,从而构建出TTFC网络仿真模型拓扑结构;运行仿真模型时,交换机模型通过读入仿真配置文件仿真各种类型数据帧的转发行为,终端模型通过读入仿真配置文件仿真各种类型数据帧的发送、接收行为。本发明可以用于评估各类型数据帧的性能特性,填补了该TTFC网络仿真的空白。
Description
技术领域
本发明涉及网络仿真领域,尤其涉及航空网络的仿真研究,是一种TTFC 消息调度的仿真模型系统。
背景技术
目前,网络通信技术在航空电子系统、制造业等领域得到了快速发展。在 FC网络中,端系统通过交换数据帧进行通信,数据帧在交换机的输入端口队列进行排队会导致传输延迟,而且传输延迟又进一步依赖于拓扑结构。这种不确定性的时间行为使传统的FC网络不具有严格时序要求的安全关键性。为了保障强实时性,将时间触发机制引入FC网络协议,提升网络的性能。时间触发光纤通道网(TTFC)是一种改进时间关键性和安全关键性的应用于航空航天领域的网络,是指在光纤通道FC网络中加入时间触发机制。TTFC网络仿真是了解该网络性能的有效手段,通过对TTFC网络不同类型的数据帧进行仿真模型的构建,可以得到各类型数据帧的网络性能,对TTFC的应用起到了帮助作用。
发明内容
本发明的发明目的在于提供一种TTFC消息调度的仿真模型系统,通过构建网络终端模型和交换机模型,用以解决TTFC网络中不同类型的数据帧的仿真调度问题。基于对终端模型的数据调度设计,实现数据帧生成后按高低优先级顺序调度发送和接收;基于对交换机模型的数据帧调度设计,实现数据帧从接收端口接收到发送端口的高低优先级顺序调度转发。通过仿真结果查看TTFC 网络不同数据帧的延迟特性。
本发明的发明目的通过以下技术方案实现:
一种TTFC消息调度的仿真模型系统,包括交换机模型、终端模型和链路模型,输入文件包括网络仿真拓扑文件和仿真配置文件,运行仿真前,根据导入的仿真拓扑文件,采用链路模型将终端模型和交换机模型连接,从而构建出 TTFC网络仿真模型拓扑结构;运行仿真模型时,交换机模型通过读入仿真配置文件仿真各种类型数据帧的转发行为,终端模型通过读入仿真配置文件仿真各种类型数据帧的发送、接收行为。
本发明的有益效果在于:
1、首次提出了基于TTFC网络数据调度的仿真模型系统,该系统可以有效的仿真TTFC不同消息类型数据的发送、转发、接收行为,评估各类型数据帧的性能特性,填补了该TTFC网络仿真的空白。
2、终端模型和交换机模型分别设计了MAC层模型和转发调度模型,对不同数据类型的数据帧的发送、转发、接收进行仿真,同时仿真了网络时钟同步策略,确保了网络时间的统一性,使TT数据帧按照时间窗口仿真发送和接收行为,RC数据帧按尽力发送和接收行为仿真,BE数据帧按照普通发送和接收行为仿真,提高了网络仿真的准确性。
3、仿真模型根据加载的配置表进行数据生成和仿真,增加了网络仿真的灵活性和多样性,可对不同配置表下不同的网络拓扑结构及消息配置进行仿真建模分析。
4、该仿真模型可有效降低硬件仿真成本。对当前网络配置结果和TTFC网络产品的设计及验证工作起到至关重要的作用
附图说明
图1为TTFC基本周期与矩阵周期示意图。
图2为TTFC网络拓扑结构示意图图。
图3为交换机模型示意图。
图4为链路模型配置信息示意图。
图5为终端模型示意图。
图6为交换机转发调度模型的状态机实现过程示意图。
图7为终端MAC层模型的状态机实现过程示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。
为了支持不同实时性和安全性需求的应用,TTFC协议将流量划分为4类:协议控制帧(PCF)、时间触发(TT)流量、速率约束(RC)流量和尽力传输(BE) 流量。PCF数据帧用于网络的时间同步,TT流量用于对延迟、抖动等确定性要求高的应用,RC流量用于对确定性要求稍弱一些的应用,它与虚拟链路(VL) 的传输模式兼容,BE流量为传统以太网通信方式,具有最低优先级且无需服务质量(QoS)保证。
如图1所示,TTFC网络中的每个节点(终端/交换机)端口会有一张TT调度表,其中各TT流量的数据帧严格按照周期性从终端发送,调度表的时间轴以矩阵周期(MatrixCycle)为单位进行循环,一个矩阵周期又划分为若干个基本周期(Basic Cycle)。为保证实时性要求,网络中会使用PCF帧对网络中各节点进行时间同步,为保证全域时间同步后各流量以PCF帧作为相对时间开始一个周期的消息传输。
本实施例提供的一种TTFC消息调度的仿真模型系统,由OPNET软件实现,可以有效仿真TTFC不同消息类型数据的发送、转发、接收行为,评估各类型数据帧的性能特性,包括交换机模型、终端模型和链路模型。TTFC网络仿真模型的输入文件包括:网络仿真拓扑文件和仿真配置文件。运行仿真前,OPNET 软件根据导入的仿真拓扑文件,采用链路模型将终端模型和交换机模型连接,从而构建出TTFC网络仿真模型拓扑结构,如图2所示。运行仿真模型时,交换机模型通过读入仿真配置文件仿真各种类型数据帧的转发行为,终端模型通过读入仿真配置文件仿真各种类型数据帧的发送、接收行为。
其中,网络仿真拓扑文件和仿真配置文件是根据真实的TTFC网络进行配置,仿真拓扑文件包含TTFC网络中终端和交换机信息以及终端与交换机的链接关系;仿真配置文件包含终端生成的消息属性、终端端口属性、数据帧在交换机的路由信息、时钟同步属性等。网络仿真拓扑文件和仿真配置文件均要与交换机模型、终端模型和链路模型进行匹配,从而实现数据生成、调度转发和接收,及网络的时钟同步策略。
通过设置终端模型和交换机模型中的发送/接收端口的数据帧类型,将其与链路模型中设置的数据帧类型一致,实现数据帧在终端模型和交换机模型之间的传递。
下面对交换机模型和终端模型进行详细说明。
一、交换机模型
TTFC网络交换机为了避免对头阻塞现象(HOL,head of line),会采用基于虚拟输入队列(VOQ,virtual output queue)缓存的Crossbar交换结构设计,在采用该策略的交换机中每个接收端口会为所有发送端口分配虚拟输出队列。
如图3所示,TTFC网络包含四种消息类型(PCF、TT、RC、BE),因此假设一个全双工2口交换机,可以为每个接收端口分配8个VOQ,每个VOQ对应一个发送端口。交换机中交叉开关会对VOQ的分组缓存进行调度,目前交换机的调度算法为iSLIP。iSLIP算法是一种迭代的SLIP算法,是一种易于硬件实现的迭代匹配算法。iSLIP在每个时隙,采用多次迭代快速匹配一个接收队列中到达数据的接收端口和发送端口,在匹配时会校验接收端口和发送端口是否空闲,在同时空闲时才会进行数据的发送。
交换机模型包括交换机接收端口模型、交换机MAC层模型、交换机转发调度模型和交换机发送端口模型。
在交换机接收端口模型中设置交换机的接收端口数目为48个,实现数据帧的接收,其端口速率设置为2.125Gbps,支持4.25Gbps可配置。通过对链路模型的配置,使终端模型中的终端发送端口模型与交换机的交换机接收端口模型连接,如图4所示对transmittera、receiver a、transmitter b和receiver b的配置。当接收端口接收到数据帧后,会给交换机MAC层模型发送接收数据流中断信息。
在交换机发送端口模型中设置交换机的发送端口数目为48个,实现数据帧的发送,其端口速率为2.125Gbps,支持4.25Gbps可配置。通过对链路模型的配置,使终端模型中的终端发送端口模型与交换机的交换机接收端口模型连接,如图4所示对transmitter a、receiver a、transmitter b和receiver b的配置。各接收队列中的数据帧通过发送端口模型传递至链路模型。
交换机MAC层模型先读入仿真配置文件,获取该交换机模型接收的VLID信息和数据帧类型信息。当交换机MAC层模型接收到“交换机接收端口模型”给的数据流中断信息后,接收数据帧并获取数据帧的VLID,判断该VLID是否在获取的该交换机接收的VLID中,若不在则告警并丢弃数据帧;若在则接收数据帧,再根据各类数据帧在MAC层的传输要求发送该数据帧去“交换机转发调度模型”,并给“交换机转发调度模型”发送接收数据流中断信息。
对于RC数据帧,需要增加判断帧间隔时间的操作,即提取该VLID对应的 BAG参数,计算相同VLID的两个相邻数据帧的到达时间差值,若该差值大于等于该VLID的BAG参数值,则接收并发送该数据帧去“交换机转发调度模型”,并给“转发调度模型”发送接收数据流中断信息;若该差值小于该VLID的BAG 参数值,则告警并丢弃数据帧。如果该数据帧是对应VLID接收的第一个数据帧,则直接接收数据帧并发送该数据帧去“交换机转发调度模型”,并给“交换机转发调度模型”发送接收数据流中断信息。
对于TT、PCF和BE数据帧,在判断其VLID在该交换机接收的VLID信息中,则不需进行帧间隔判断,直接接收数据帧并发送该数据帧去“交换机转发调度模型”,并给“交换机转发调度模型”发送接收数据流中断信息。
该交换机转发调度模型为每个接收端口设置1个PCF接收队列、M*N个TT接收队列、M个RC接收队列、M个BE接收队列,M为交换机发送端口数目,N为 TT数据帧的个数。该设计按照交换机交叉开关中VOQ的分组缓存调度进行设计,有效的实现了不同发送端口对不同接收端口的调度。对于设计M*N个TT接收队列,保证了交换机中TT发送窗口和TT接收窗口设置的独立性,在模型中避免了不同VLID的TT数据帧相互影响。
PCF帧:经过时钟同步压缩后生成压缩PCF帧,按配置时间发送。
TT帧:判断TT帧的接收时间是否在交换机的接收窗口内,若在则根据VLID 号和发送端口号,存入相应的TT接收队列中;若不在则告警并丢弃。
TT帧的接收队列序号计算过程为:先读入仿真配置文件,提取该交换机接收的所有VLID号并进行排序,排序号为q,若该TT数据帧所需的发送端口号为m,则q*m为该VLID存储的TT接收队列序号。
RC帧和BE帧:根据RC帧优先级大于BE帧优先级,对其进行数据帧的转发调度。
交换机转发调度模型实现各类数据帧的转发调度功能和交换机时钟同步功能。
交换机转发调度模型是基于状态机的状态转换实现,如图6所示。具体流程如下:
状态1、首先,进入初始化状态:进行时钟同步参数读入、初始化数据调度所需参数、读取仿真配置文件中数据的路由信息。根据计算机系统时间,初始化local_clock本地时钟参数,初始化完成后进入等待状态。
状态2、当接收到“交换机MAC层模型”发送的“接收数据流中断”后,从“等待”状态进入“接收数据帧”状态,执行后回到“等待”状态。“接收数据帧”状态实现功能如下:
1)判断“数据流中断”,根据中断信息,在接收流中获取数据帧。并判断数据帧类型。
2)若接收为TT数据帧,判断TT数据帧是否在交换机的接收窗口,若在接收窗口则计算接收队列序号,在该TT接收队列中放入TT数据帧,若不在接收窗口则删除数据帧并生成报错信息。
3)若接收为RC/BE数据帧,则在路由信息中查找该数据帧的发送端口,放入发送端口对应的RC/BE接收队列。
4)若接收为PCF数据帧,进行时序保持算法,放入PCF接收队列,在时刻cm_permanence_pit(配置表读入)启动压缩算法,计算得到压缩时间点,计算时钟校正值存入全局变量。
5)设置压缩后的PCF数据帧发送中断,设置时刻为“压缩时间点+延迟时间” (TTFC协议中规定)。
状态3、周期性中断触发从“等待”状态进入“更新本地时钟”状态。执行后回到“等待”状态。“更新本地时钟”状态实现的功能如下:
1)根据触发周期和全局变量存储的本地时间与时钟校正值,更新local_clock 本地时钟。
2)判断当前时刻是否存在TT发送窗口,查询该数据帧的VLID和发送端口,在对应的TT接收队列中查看是否有数据帧,若有数据帧则设置“TT数据帧中断”并在中断中记录该TT接收队列编号。如果没有数据帧,则查看RC/BE 接收队列是否有数据帧需要发送。
RC/BE数据帧发送过程如下:
在转发调度模型中,对应每个接收端口设计48个RC接收队列、48个BE 接收队列,48为交换机发送端口数目,即交换机共有48*48个RC接收队列、 48*48个BE接收队列,如图3所示。按照发送端口数目1至48的顺序和接收端口数目1至48的顺序,依次查看r*m(r∈{1,2,…48},m∈{1,2,…48})的RC 接收队列中是否有数据帧,若有数据帧则发送到对应的发送端口模型,并设置对应发送端口标志sw_s_idle_flag为1,设置对应接收端口标志sw_r_idle_flag 为1。计算该数据帧所需的发送时间,发送时间为帧长/发送速率。经过发送时间后将该发送端口标志sw_s_idle_flag和对应接收端口标志sw_r_idle_flag设置为0。
发送完一个RC数据帧后,结束RC数据帧发送,查找BE接收队列。查找BE接收队列的数据帧方法与查看RC数据帧相似,即依次查看r*m(r∈{1,2,…48}, m∈{1,2,…48})的BE接收队列中是否有数据帧,若有数据帧则发送到对应的发送端口模型,并设置对应发送端口标志sw_s_idle_flag为1,设置对应接收端口标志sw_r_idle_flag为1。计算该数据帧所需的发送时间,发送时间为帧长/发送速率。经过发送时间后将该发送端口标志sw_s_idle_flag和对应接收端口标志 sw_r_idle_flag设置为0。
发送完一个BE数据帧后,结束BE数据帧发送。状态机由“更新本地时钟”跳转入“等待”状态。
状态4、当接收到“发送压缩后PCF中断”,从“等待”状态进入“发送PCF 数据帧”状态。根据PCF数据帧的路由信息新生成压缩的PCF帧,并发送至各发送端口。执行后回到“等待”状态。
状态5、当接收到“发送TT数据帧中断”,从等待状态进入“发送TT数据帧”状态。获取“发送TT数据帧中断”中存入的TT接收队列编号。将该TT接收队列中的数据帧按照路由信息,发送至对应端口。
二、终端模型
终端模型包括应用层模型、COM口模型、终端MAC层模型、终端发送端口模型和终端接收端口模型,如图5所示。
在发送过程:应用层模型生成数据帧,发送至COM口模型,COM口模型对数据帧进行采样/排队和流量管制功能,发送至终端MAC层模型,终端MAC 层模型实现数据帧VL配置及时钟同步功能,发送数据帧至终端发送端口,并通过链路送至交换机模型。
在接收过程:终端接收端口模型接收链路数据帧,发送至终端MAC层模型进行数据帧校验、发送至COM口模型进行数据帧延迟等统计、发送至应用层模型进行数据帧销毁。
生成数据帧:因为是TTFC网络的仿真模型,所以数据帧格式是按照TTFC 协议规定生成。应用层模型获取本终端节点的终端ID号,通过该终端ID查找该终端发送消息帧的ID号、消息帧的长度和周期、发送应用、接收终端的配置信息,按照泊松分布生成发送时间,生成并发送消息帧。在消息帧中存放消息ID 号、发送时刻、接收终端信息。应用层模型支持协议规定的生成消息帧的最大长度为2096字节。
销毁数据帧:当应用层模型接收到COM口模型发送的接收数据帧中断信息后,应用层模型接收数据帧并用函数方式进行数据帧销毁,释放该帧的内存空间。
COM口模型实现数据帧整形及延迟统计功能。COM口模型读取该终端节点的终端ID号,获取COM口编号及端口类型的配置信息。
数据帧整形:对于发送消息帧,根据端口配置信息,按照采样或者队列两种队列模式,对消息帧进行分片,生成对应的数据帧。通过消息ID及终端ID,查找仿真配置文件找到该数据帧的VL配置信息,获取BAG参数周期,若当前数据帧与前一发送的数据帧时刻大于等于BAG则发送该帧到终端MAC层,若小于 BAG则等待至BAG时刻再发送至MAC层。在将数据帧发送到终端MAC层模型的同时发送“应用层数据流中断”至终端MAC层模型。
延迟统计:对于接收到的数据帧,统计接收数据帧时刻。提取数据帧中发送时刻,对接收时间和发送时间做差值,将数据帧与消息帧进行匹配,得到每个消息帧的延迟统计。
终端MAC层模型实现MAC层数据帧的发送和接收功能,以及时钟同步管理功能。
同步时钟管理:根据矩阵周期,生成、发送并接收PCF帧,根据同步机制对本地时钟更新。
MAC层消息发送:
1)PCF消息发送:周期性生成PCF帧并存入队列,按周期发送PCF帧,若当前正在发送TT帧,则报警。在当前链路空闲时,直接发送。
2)TT消息发送:接收COM口数据帧,判断是否在该TT帧配置的发送窗口内,若在则发送,不在则存入TT帧发送队列,当发送窗口到来发送数据帧。
3)RC消息:在链路没有PCF、TT消息发送时直接从RC队列取数据发送。
4)BE消息:在PCF/TT/RC队列都空闲时,连续发送。
MAC层消息接收:
1)PCF帧:当接收PCF帧后,判断当前时刻是否在PCF帧的接收窗口中,若不再,则报警并丢弃,否则参与时间同步过程处理。不参与冗余管理。
2)TT帧:参与冗余管理和接收窗口判断,根据先到先得策略,接收先到的数据帧,对后到的数据帧进行丢弃。当接收TT帧后,判断是否在配置的接收窗口,不再接收窗口内的数据帧需要报警并丢弃。正常数据帧发送至COM口模型。
3)RC、BE:参与冗余管理,根据先到先得策略,接收先到的数据帧,对后到的数据帧进行丢弃。对于接收的数据帧,判断当前是否有TT帧发送至COM口模型,若有则存入相应RC/BE接收队列,没有则直接发送至COM口模型。
终端MAC层模型的OPNET软件实现是基于状态机的状态转换实现,如图7 所示。具体流程如下:
状态1、首先,进入初始化状态:进行时钟同步参数读入、初始化MAC层数据发送和数据接收的参数。根据计算机系统时间,初始化local_clock本地时钟参数,初始化完成后进入等待状态。
状态2、MAC层模型设计PCF、TT、RC和BE四类发送队列。其中PCF、RC 和BE发送队列各一个,TT发送队列数目为N(N为TT发送数据帧个数)。执行后回到“等待”状态。当接收到COM口模型给出的“应用层数据流中断”后,从“等待”状态进入“接收应用层数据帧”状态。该状态先执行数据帧判断,然后将不同类型的数据帧放入各消息类型的发送队列。当接收到PCF、RC和BE数据帧,则直接放入对应类型的发送队列中,若接收到TT数据帧,则获取该VLID,并存入对应的TT帧发送队列中。
所述设计一个PCF发送队列、一个RC发送队列、一个BE发送队列、N个 TT发送队列(N为TT帧个数),有效的实现了优先级PCF>TT>RC>BE数据帧的发送。设计了N个TT发送队列,实现了不同VLID的TT数据帧在不同发送时间窗口中独立发送,互补干扰。
状态3、当接收到终端接收端口模型发送的“链路数据流中断”后,从“等待”状态进入“接收链路数据帧”状态,执行后回到“等待”状态。“接收链路数据帧”状态实现功能如下:
1)判断TT数据帧是否在接收窗口,若在接收窗口则放入TT接收队列,若不在接收窗口则删除数据帧并生成报错信息。
2)执行将RC/BE类型的数据帧放入各消息类型的接收队列。
3)终端MAC层模型接收PCF帧,进行时序保持算法,在时刻 smc_permanence_pit(配置表读入)完成PCF帧收集,根据PCF数据帧的 membership_new(配置表读入)字段,选择时钟同步PCF帧。计算时钟同步偏差值,存入全局变量smc_clock_corr_value中。
状态4、周期性中断触发从“等待”状态进入“更新本地时钟”状态。执行后回到“等待”状态。“更新本地时钟”状态实现的功能如下:
1)根据中断触发的周期和全局变量存储的本地时间与同步时间的偏差,更新local_clock本地时钟。
2)在时刻sm_dispatch_pit、sm_send_pit(配置表读入),完成PCF帧的发送,该参数由配置文件读取得到。
3)在时刻smc_clock_corr_pit(配置表读入),将local_clock本地时钟与 smc_clock_corr_value相加,完成时钟校正。
4)进入该状态,均要根据优先级PCF>TT>RC>BE,执行发送/接收各类数据帧。首先,判断当前时刻是否为TT发送窗口,并且该TT发送窗口对应的VLID 的TT发送队列是否有数据帧,如果两者同时具备,则将队列中的数据帧发送至发送端口模型,同时发送数据流中断信息;之后,判断当前时刻是否为TT接收窗口,并且该TT接收窗口对应的VLID的TT接收队列是否有数据帧,如果两者同时具备,则将队列中的数据帧发送至COM口模型,同时发送数据流中断信息。如果没有可调度的TT发送/接收数据帧,则调度RC/BE发送或接收队列的数据帧。
模型提供2个互为冗余的通信端口,每个端口速率为2.125Gbps;支持可扩展为4.25Gbps。
可以理解的是,对本领域普通技术人员来说,可以根据本发明的技术方案及其发明构思加以等同替换或改变,而所有这些改变或替换都应属于本发明所附的权利要求的保护范围。
Claims (9)
1.一种TTFC消息调度的仿真模型系统,包括交换机模型、终端模型和链路模型,输入文件包括网络仿真拓扑文件和仿真配置文件,其特征在于运行仿真前,根据导入的仿真拓扑文件,采用链路模型将终端模型和交换机模型连接,从而构建出TTFC网络仿真模型拓扑结构;运行仿真模型时,交换机模型通过读入仿真配置文件仿真各种类型数据帧的转发行为,终端模型通过读入仿真配置文件仿真各种类型数据帧的发送、接收行为。
2.根据权利要求1所述的一种TTFC消息调度的仿真模型系统,其特征在于通过将终端模型和交换机模型中的发送/接收端口的数据帧类型与链路模型中的数据帧类型设置一致,实现数据帧在终端模型和交换机模型之间的传递。
3.根据权利要求1所述的一种TTFC消息调度的仿真模型系统,其特征在于交换机模型包括交换机接收端口模型、交换机MAC层模型、交换机转发调度模型和交换机发送端口模型;
在交换机接收端口模型中设置交换机的接收端口数目,当接收端口接收到数据帧后,给交换机MAC层模型发送接收数据流中断信息;
交换机MAC层模型先读入仿真配置文件,获取该交换机模型接收的VLID信息和帧类型信息;当交换机MAC层模型接收到“交换机接收端口模型”给的数据流中断信息后,接收数据帧并获取数据帧的VLID,判断该VLID是否在获取的该交换机接收的VLID中,若不在则告警并丢弃数据帧;若在则接收数据帧,再根据各类数据帧在MAC层的传输要求发送该数据帧去“转发调度模型”,并给“交换机转发调度模型”发送接收数据流中断信息;
交换机转发调度模型为每个接收端口设置1个PCF接收队列、M*N个TT接收队列、M个RC接收队列、M个BE接收队列,M为交换机发送端口数目,N为TT数据帧的个数;在接收到“交换机转发调度模型”的接收数据流中断信息后将数据帧放入对应的接收队列中;
在交换机发送端口模型中设置交换机的发送端口数目,各接收队列中的数据帧通过发送端口模型传递至链路模型。
4.根据权利要求3所述的一种TTFC消息调度的仿真模型系统,其特征在于交换机MAC层模型中,对于RC数据帧,提取该RC数据帧的VLID对应的BAG参数,计算相同VLID的两个相邻数据帧的到达时间差值,若该差值大于等于该VLID的BAG参数值,则接收并发送该数据帧去“交换机转发调度模型”,并给“交换机转发调度模型”发送接收数据流中断信息;若该差值小于该VLID的BAG参数值,则告警并丢弃数据帧;如果该数据帧是对应VLID接收的第一个数据帧,则直接接收数据帧并发送该数据帧去“交换机转发调度模型”,并给“交换机转发调度模型”发送接收数据流中断信息。
5.根据权利要求3所述的一种TTFC消息调度的仿真模型系统,其特征在于交换机转发调度模型是基于状态机的状态转换实现,具体流程如下:
状态1、首先,进入初始化状态:进行时钟同步参数读入、初始化数据调度所需参数、读取仿真配置文件中数据的路由信息,根据计算机系统时间,初始化local_clock本地时钟参数,初始化完成后进入等待状态;
状态2、当接收到“交换机MAC层模型”发送的“接收数据流中断”后,从“等待”状态进入“接收数据帧”状态,执行后回到“等待”状态;“接收数据帧”状态实现功能如下:
判断“数据流中断”,根据中断信息,在接收流中获取数据帧,并判断数据帧类型:
若接收为TT数据帧,判断TT数据帧是否在交换机的接收窗口,若在接收窗口则计算接收队列序号,在该TT接收队列中放入TT数据帧,若不在接收窗口则删除数据帧并生成报错信息;
若接收为RC/BE数据帧,则在路由信息中查找该数据帧的发送端口,放入发送端口对应的RC/BE接收队列;
若接收为PCF数据帧,进行时序保持算法,放入PCF接收队列,在时刻cm_permanence_pit启动压缩算法,计算得到压缩时间点,计算时钟校正值存入全局变量;设置压缩后的PCF数据帧发送中断,设置时刻为“压缩时间点+延迟时间”;
状态3、周期性中断触发从“等待”状态进入“更新本地时钟”状态,执行后回到“等待”状态;“更新本地时钟”状态实现的功能如下:
1)根据触发周期和全局变量存储的本地时间与时钟校正值,更新local_clock本地时钟;
2)判断当前时刻是否存在TT发送窗口,查询该数据帧的VLID和发送端口,在对应的TT接收队列中查看是否有数据帧,若有数据帧则设置“TT数据帧中断”并在中断中记录该TT接收队列编号;如果没有数据帧,则查看RC/BE接收队列是否有数据帧需要发送;
RC/BE数据帧发送过程如下:
查找各RC接收队列中是否有数据帧,若有数据帧则发送到对应的发送端口模型,并设置对应发送端口标志sw_s_idle_flag为1,设置对应接收端口标志sw_r_idle_flag为1;计算该数据帧所需的发送时间,经过发送时间后将该发送端口标志sw_s_idle_flag和对应接收端口标志sw_r_idle_flag设置为0;
发送完一个RC数据帧后,结束RC数据帧发送,查找各BE接收队列中是否有数据帧,若有数据帧则发送到对应的发送端口模型,并设置对应发送端口标志sw_s_idle_flag为1,设置对应接收端口标志sw_r_idle_flag为1;计算该数据帧所需的发送时间,经过发送时间后将该发送端口标志sw_s_idle_flag和对应接收端口标志sw_r_idle_flag设置为0;
发送完一个BE数据帧后,结束BE数据帧发送,状态机由“更新本地时钟”跳转入“等待”状态;
状态4、当接收到“发送压缩后PCF中断”,从“等待”状态进入“发送PCF数据帧”状态;根据PCF数据帧的路由信息新生成压缩的PCF帧,并发送至各发送端口,执行后回到“等待”状态;
状态5、当接收到“发送TT数据帧中断”,从等待状态进入“发送TT数据帧”状态;获取“发送TT数据帧中断”中存入的TT接收队列编号;将该TT接收队列中的数据帧按照路由信息,发送至对应端口。
6.根据权利要求1所述的一种TTFC消息调度的仿真模型系统,其特征在于终端模型包括应用层模型、COM口模型、终端MAC层模型、终端发送端口模型和终端接收端口模型;
在发送过程:应用层模型生成数据帧,发送至COM口模型,COM口模型对数据帧进行采样/排队和流量管制功能,发送至终端MAC层模型,终端MAC层模型实现数据帧VL配置及时钟同步功能,发送数据帧至终端发送端口,并通过链路送至交换机模型。
在接收过程:终端接收端口模型接收链路数据帧,发送至终端MAC层模型进行数据帧校验、发送至COM口模型进行数据帧延迟统计、发送至应用层模型进行数据帧销毁。
7.根据权利要求6所述的一种TTFC消息调度的仿真模型系统,其特征在于应用层模型在生成数据帧时,应用层模型获取本终端节点的终端ID号,通过该终端ID查找该终端发送消息帧的ID号、消息帧的长度和周期、发送应用、接收终端的配置信息,按照泊松分布生成发送时间,生成并发送消息帧;在消息帧中存放消息ID号、发送时刻、接收终端信息;
销毁数据帧时,应用层模型接收到COM口模型发送的接收数据帧中断信息后,应用层模型接收数据帧并用函数方式进行数据帧销毁,释放该帧的内存空间。
8.根据权利要求6所述的一种TTFC消息调度的仿真模型系统,其特征在于COM口模型读取该终端节点的终端ID号,获取COM口编号及端口类型的配置信息;
在进行数据帧整形时,对于发送消息帧,根据端口配置信息,按照采样或者队列两种队列模式,对消息帧进行分片,生成对应的数据帧;通过消息ID及终端ID,查找仿真配置文件找到该数据帧的VL配置信息,获取BAG参数周期,若当前数据帧与前一发送的数据帧时刻大于等于BAG则发送该帧到终端MAC层模型,若小于BAG则等待至BAG时刻再发送至MAC层模型;在将数据帧发送到终端MAC层模型的同时发送“应用层数据流中断”至终端MAC层模型;
在延迟统计时,对于接收到的数据帧,统计接收数据帧时刻,提取数据帧中发送时刻,对接收时间和发送时间做差值,将数据帧与消息帧进行匹配,得到每个消息帧的延迟统计。
9.根据权利要求6所述的一种TTFC消息调度的仿真模型系统,其特征在于终端MAC层模型基于状态机的状态转换实现,具体流程如下:
状态1、首先,进入初始化状态:进行时钟同步参数读入、初始化MAC层数据发送和数据接收的参数;根据计算机系统时间,初始化local_clock本地时钟参数,初始化完成后进入等待状态;
状态2、设计PCF、RC和BE发送队列各一个,TT发送队列数目为N个,N为TT发送数据帧个数;当接收到COM口模型给出的“应用层数据流中断”后,从“等待”状态进入“接收应用层数据帧”状态,该状态先执行数据帧判断,然后将不同类型的数据帧放入各消息类型的发送队列;其中当接收到PCF、RC和BE数据帧,则直接放入对应类型的发送队列中,若接收到TT数据帧,则获取该TT数据帧的VLID,并存入对应的TT帧发送队列中;
状态3、当接收到终端接收端口模型发送的“链路数据流中断”后,从“等待”状态进入“接收链路数据帧”状态,执行后回到“等待”状态;“接收链路数据帧”状态实现功能如下:
1)判断TT数据帧是否在接收窗口,若在接收窗口则放入TT接收队列,若不在接收窗口则删除数据帧并生成报错信息。
2)执行将RC/BE类型的数据帧放入各消息类型的接收队列;
3)终端MAC层模型接收PCF帧,进行时序保持算法,在时刻smc_permanence_pit完成PCF帧收集,根据PCF数据帧的membership_new字段,选择时钟同步PCF帧;计算时钟同步偏差值,存入全局变量smc_clock_corr_value中;
状态4、周期性中断触发从“等待”状态进入“更新本地时钟”状态,执行后回到“等待”状态;“更新本地时钟”状态实现的功能如下:
1)根据中断触发的周期和全局变量存储的本地时间与同步时间的偏差,更新local_clock本地时钟;
2)在时刻sm_dispatch_pit、sm_send_pit,完成PCF帧的发送,该参数由仿真配置文件读取得到;
3)在时刻smc_clock_corr_pit,将local_clock本地时钟与smc_clock_corr_value相加,完成时钟校正;
4)根据优先级PCF>TT>RC>BE,执行发送/接收各类数据帧;首先,判断当前时刻是否为TT发送窗口,并且该TT发送窗口对应的VLID的TT发送队列是否有数据帧,如果两者同时具备,则将队列中的数据帧发送至发送端口模型,同时发送数据流中断信息;之后,判断当前时刻是否为TT接收窗口,并且该TT接收窗口对应的VLID的TT接收队列是否有数据帧,如果两者同时具备,则将队列中的数据帧发送至COM口模型,同时发送数据流中断信息,如果没有可调度的TT发送/接收数据帧,则调度RC/BE发送或接收队列的数据帧。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211129636.7A CN115733759B (zh) | 2022-09-16 | 2022-09-16 | Ttfc消息调度的仿真模型系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211129636.7A CN115733759B (zh) | 2022-09-16 | 2022-09-16 | Ttfc消息调度的仿真模型系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115733759A true CN115733759A (zh) | 2023-03-03 |
CN115733759B CN115733759B (zh) | 2025-05-23 |
Family
ID=85293227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211129636.7A Active CN115733759B (zh) | 2022-09-16 | 2022-09-16 | Ttfc消息调度的仿真模型系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115733759B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116633808A (zh) * | 2023-07-19 | 2023-08-22 | 成都成电光信科技股份有限公司 | 一种时间触发光纤通道网络下的数据监控系统及其方法 |
CN117811937A (zh) * | 2023-12-29 | 2024-04-02 | 深空探测实验室(天都实验室) | 一种tte网络调度规划配置仿真方法及系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000074434A1 (en) * | 1999-05-28 | 2000-12-07 | Duet Technologies, Inc. | Atm metwork emulator |
US20110299413A1 (en) * | 2010-06-02 | 2011-12-08 | Brocade Communications Systems, Inc. | Port profile management for virtual cluster switching |
CN104660477A (zh) * | 2015-03-02 | 2015-05-27 | 中国航空无线电电子研究所 | 一种基于时间触发总线的星型拓扑网络搭建方法 |
CN105245301A (zh) * | 2015-10-16 | 2016-01-13 | 北京航空航天大学 | 一种基于时间触发的机载光网络仿真系统 |
CN109150559A (zh) * | 2017-06-15 | 2019-01-04 | 中国航空工业集团公司洛阳电光设备研究所 | 时间触发以太网仿真系统 |
CN110971543A (zh) * | 2019-12-02 | 2020-04-07 | 成都成电光信科技股份有限公司 | 一种ttfc网络的发送调度方法及系统 |
CN111030835A (zh) * | 2019-10-23 | 2020-04-17 | 东南大学 | 一种ttfc网络的任务调度模型及消息调度表生成方法 |
CN113849983A (zh) * | 2021-09-29 | 2021-12-28 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于网络配置文件的fc网络时延特性模拟方法 |
CN114978926A (zh) * | 2022-05-17 | 2022-08-30 | 电子科技大学 | 一种适用于确定性网络协议的仿真方法及设备 |
-
2022
- 2022-09-16 CN CN202211129636.7A patent/CN115733759B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000074434A1 (en) * | 1999-05-28 | 2000-12-07 | Duet Technologies, Inc. | Atm metwork emulator |
US20110299413A1 (en) * | 2010-06-02 | 2011-12-08 | Brocade Communications Systems, Inc. | Port profile management for virtual cluster switching |
CN104660477A (zh) * | 2015-03-02 | 2015-05-27 | 中国航空无线电电子研究所 | 一种基于时间触发总线的星型拓扑网络搭建方法 |
CN105245301A (zh) * | 2015-10-16 | 2016-01-13 | 北京航空航天大学 | 一种基于时间触发的机载光网络仿真系统 |
CN109150559A (zh) * | 2017-06-15 | 2019-01-04 | 中国航空工业集团公司洛阳电光设备研究所 | 时间触发以太网仿真系统 |
CN111030835A (zh) * | 2019-10-23 | 2020-04-17 | 东南大学 | 一种ttfc网络的任务调度模型及消息调度表生成方法 |
CN110971543A (zh) * | 2019-12-02 | 2020-04-07 | 成都成电光信科技股份有限公司 | 一种ttfc网络的发送调度方法及系统 |
CN113849983A (zh) * | 2021-09-29 | 2021-12-28 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于网络配置文件的fc网络时延特性模拟方法 |
CN114978926A (zh) * | 2022-05-17 | 2022-08-30 | 电子科技大学 | 一种适用于确定性网络协议的仿真方法及设备 |
Non-Patent Citations (2)
Title |
---|
白焱: "一种基于时间触发光纤通信网络时钟同步设计", 《飞机设计》, 15 April 2022 (2022-04-15) * |
谭小虎王勇褚文奎刘安: "时间触发光纤通道调度算法确定性分析", 《计算机工程与应用》, 14 June 2017 (2017-06-14) * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116633808A (zh) * | 2023-07-19 | 2023-08-22 | 成都成电光信科技股份有限公司 | 一种时间触发光纤通道网络下的数据监控系统及其方法 |
CN116633808B (zh) * | 2023-07-19 | 2023-10-03 | 成都成电光信科技股份有限公司 | 一种时间触发光纤通道网络下的数据监控系统及其方法 |
CN117811937A (zh) * | 2023-12-29 | 2024-04-02 | 深空探测实验室(天都实验室) | 一种tte网络调度规划配置仿真方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN115733759B (zh) | 2025-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9313115B2 (en) | Traffic generator with priority flow control | |
CN106850466A (zh) | 一种时间触发网络中数据包的转发方法及装置 | |
CN103647682B (zh) | 一种模拟交换式以太网时钟同步的仿真系统 | |
CN105337883B (zh) | 一种支持多业务的网络交换装置及其实现方法 | |
CN105991384B (zh) | 兼容时间触发以太网与1553b的航天以太网通信方法 | |
CN103716248B (zh) | 一种基于以太网交换芯片的以太网流量生成和分析的方法 | |
CN101834751B (zh) | 航空全双工交换以太网监测处理系统及方法 | |
US20110280137A1 (en) | Packet Rate Detection Apparatus and Method | |
CN115733759A (zh) | Ttfc消息调度的仿真模型系统 | |
CN109194433B (zh) | 基于千兆afdx网络的高精度授时方法 | |
CN113141279B (zh) | 一种交换机网状测试系统及方法 | |
Hu et al. | Adjusting switching granularity of load balancing for heterogeneous datacenter traffic | |
CN113472697A (zh) | 网络信息传输系统 | |
CN102045256B (zh) | 一种基于cots的带宽预分配保证网络功能演示系统 | |
CN103746878B (zh) | 一种测定SpaceWire数据包的传输时间的仿真系统 | |
CN115022208B (zh) | 一种tte网络流量监控设备及方法 | |
Wang et al. | A switch design for real-time industrial networks | |
CN116319607B (zh) | 一种基于sms架构时间敏感网络交换机及方法 | |
US7289503B1 (en) | Systems and methods for efficient multicast handling | |
CN116647581A (zh) | 一种时间触发afdx网络系统及其可靠性评估验证方法 | |
CN107018095B (zh) | 基于离散事件的交换单元仿真系统及方法 | |
CN113422741B (zh) | 一种时间触发以太网交换机结构 | |
CN119544563B (zh) | 一种tte融合以太网的测试数据时延确定性传输方法 | |
CN114785396B (zh) | 逻辑端口配置、查找映射及流量管理方法、系统及终端 | |
Duan et al. | Design and Performance Testing of a Simulation Model for Time-Triggered Ethernet |
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 |