本发明属于时间敏感网络,尤其涉及一种基于fpga的时间敏感网络异步流量调度方法及系统。
背景技术:
1、随着物联网、5g、工业互联网等新一代信息通信技术的发展,传统行业迎来快速发展与转型升级的时刻,物物互联的通信需求也随之增加,基于各类时延敏感应用对数据传输的实时性与确定性要求越来越高,现有的以太网技术难以满足各类新型产业大流量高速率的数据传输与广泛的网络分布需求,时间敏感网络(tsn)技术应运而生,时间敏感网络是ieee 802.1任务组开发的一套数据链路层协议规范,用于构建一种更可靠的、低延迟、低抖动的以太网,包括多种流量整形调度机制,其中异步流量整形(asynchronous trafficshaping,ats)调度机制相比其它流量整形调度方案具有更高的带宽利用率且易于部署,由ieee802.1qcr标准定义的异步流量整形算法,其针对非周期性的时间敏感数据流为其分配预定带宽,根据报文长度及数据流的预定带宽计算出报文发送的时间,从而为数据的传输提供确定性延迟保障。但在现有技术下,针对异步流量整形算法的整体实现方案较少,尤其是利用硬件电路实现异步流量整形算法部署以及实现非周期性流调控,弱化时间同步要求,进一步降低对网络节点与延时要求,提高带宽利用率等技术问题是通信行业目前发展的一大难点。
技术实现思路
1、本发明要解决的技术问题是提供一种基于fpga的时间敏感网络异步流量调度方法及系统,以解决现有时间敏感网络异步流量调度方法中无法基于现场可编程逻辑门阵列fpga硬件模块实现数据流高效稳定传输的技术问题。
2、为解决上述问题,本发明的技术方案为:一种基于fpga的时间敏感网络异步流量调度方法,包括如下步骤:s1:接收数据帧缓存至fifo缓存模块;s2:通过流过滤器模块读取所述fifo缓存模块中数据帧,添加封装信息后输出至服务数据单元过滤器模块;s3:根据所述封装信息将数据帧经对应流门控模块透传至ats算法调度模块;s4:通过ats算法调度模块计算数据帧合规时间点;s5:将数据帧根据优先级信息写入共享队列;s6:根据所述数据帧合规时间点判断数据帧合法性并输出数据帧。
3、优选的,接收数据帧缓存至fifo缓存模块进一步包括:对数据帧进行解析,解析内容包括数据帧vlan帧头的优先级、流输入端口号、源mac地址、目的mac地址与vlan id信息。
4、优选的,所述封装信息包括流门控id与整形器id。
5、优选的,数据帧输出至所述服务数据单元过滤器模块进一步包括:判断数据帧大小若超过所述服务数据单元过滤器模块限制,则将该数据帧丢弃;判断数据帧大小若小于所述服务数据单元过滤器模块限制,则将数据帧保留。
6、优选的,所述ats算法调度模块计算数据帧传输合规时间进一步包括:读取数据帧长度与令牌增长速率,计算令牌恢复时间,所述令牌恢复时间计算公式为:
7、lengthrecoveryduration=length(frame)/committedinformationrate
8、其中,lengthrecoveryduration为令牌恢复时间,length(frame)为数据帧长度,committedinformationrate为令牌增长速率;
9、读取令牌桶容量,根据所述令牌增长速率,计算令牌桶由空到满所需的令牌桶填充时间,所述令牌桶填充时间计算公式为:
10、emptytofullduration=committedburstsize/committedinformationrate
11、其中,emptytofullduration为令牌桶填充时间,committedburstsize为令牌桶容量;
12、读取上一次令牌桶为空时间点,分别根据所述令牌恢复时间与所述令牌桶填充时间,计算整形器合规时间点与令牌桶充满时间点,所述整形器合规时间点计算公式为:
13、shapereligibilitytime=bucketemptytime+lengthrecoveryduration
14、其中,shapereligibilitytime为整形器合规时间点,bucketemptytime为令牌桶为空时间点;
15、所述令牌桶充满时间点计算公式为:
16、bucketfulltime=bucketemptytime+emptytofullduration
17、其中,bucketfulltime为令牌桶充满时间点;
18、读取数据帧到达时间点、整形器组合规时间点与所述整形器合规时间点中最大值作为数据帧合规时间点,所述数据帧合规时间点计算公式为:
19、eligibilitytime=max{arrivaltime(frame),groupeligibilitytime,
20、shapereligibilitytime}
21、其中,eligibilitytime为数据帧合规时间点,arrivaltime(frame)为数据帧到达时间点,groupeligibilitytime为整形器组合规时间点。
22、优选的,所述ats算法调度模块计算数据帧合规时间点进一步包括:判断所述数据帧到达时间点加最大驻留时间若小于所述数据帧合规时间点,则将数据帧丢弃;判断所述数据帧到达时间点加最大驻留时间若大于所述数据帧合规时间点,则将所述整形器组合规时间点设置为所述数据帧合规时间点。
23、优选的,所述ats算法调度模块计算数据帧合规时间点进一步还包括:判断所述数据帧合规时间点若小于所述令牌桶充满时间点,则将所述令牌桶为空时间点信息更新为所述整形器合规时间点;判断所述数据帧合规时间点若大于所述令牌桶充满时间点,则将所述令牌桶为空时间点信息更新为所述整形器合规时间点加上所述数据帧合规时间点再减去所述令牌桶充满时间点。
24、优选的,根据所述数据帧合规时间点判断数据帧合法性进一步包括:判断所述数据帧合规时间点若小于当前时间点,则将当前共享队列中数据帧输出;判断所述数据帧合规时间点若大于当前时间点,则跳过当前优先级共享队列的数据帧输出操作。
25、一种基于fpga的时间敏感网络异步流量调度系统,基于现场可编程逻辑门阵列fpga搭建,包括:数据接口模块,通过以太网接口用于接收与发送数据流;fifo缓存模块,用于数据帧存储与传输;流过滤器模块,用于使能并分流所述fifo缓存模块中数据帧;服务数据单元过滤模块,用于限制数据帧大小;流门控模块,用于数据流量控制与数据帧优先级管理;ats算法调度模块,用于计算数据帧合规时间点;共享队列模块,根据数据帧优先级用于存储与传输数据帧。
26、优选的,所述ats算法调度模块包括基于fpga的内置晶振,所述内置晶振用于输出与计算各模块中时间信息;所述ats算法调度模块还采用基于fpga双端口ram代替令牌桶,并预先配置所述双端口ram的大小及对数据帧的读写速率。
27、本发明由于采用以上技术方案,使其与现有技术相比具有以下的优点和积极效果:
28、本发明提供的一种基于fpga的时间敏感网络异步流量调度方法及系统,基于现场可编程逻辑门阵列fpga搭建异步流量调度方法中所涉及的各个功能子模块,构建异步流量调度系统,通过现场可编程逻辑门阵列fpga硬件模块实现ats调度算法软硬件融合,借助硬件模块高效稳定的性能,实现异步流量调度系统支持非周期性流、无需时间同步、对网络节点要求较低以及低延时、高带宽利用率的显著优点,且为后续异步流量调度方法改进与应用提供一种新的硬件适配方案。
1.一种基于fpga的时间敏感网络异步流量调度方法,其特征在于,包括如下步骤:
2.如权利要求1所述的一种基于fpga的时间敏感网络异步流量调度方法,其特征在于,接收数据帧缓存至fifo缓存模块进一步包括:
3.如权利要求1所述的一种基于fpga的时间敏感网络异步流量调度方法,其特征在于,所述封装信息包括流门控id与整形器id。
4.如权利要求1所述的一种基于fpga的时间敏感网络异步流量调度方法,其特征在于,数据帧输出至所述服务数据单元过滤器模块进一步包括:
5.如权利要求1所述的一种基于fpga的时间敏感网络异步流量调度方法,其特征在于,所述ats算法调度模块计算数据帧传输合规时间进一步包括:
6.如权利要求5所述的一种基于fpga的时间敏感网络异步流量调度方法,其特征在于,所述ats算法调度模块计算数据帧合规时间点进一步包括:
7.如权利要求5所述的一种基于fpga的时间敏感网络异步流量调度方法,其特征在于,所述ats算法调度模块计算数据帧合规时间点进一步还包括:
8.如权利要求1所述的一种基于fpga的时间敏感网络异步流量调度方法,其特征在于,根据所述数据帧合规时间点判断数据帧合法性进一步包括:
9.一种基于fpga的时间敏感网络异步流量调度系统,其特征在于,基于现场可编程逻辑门阵列fpga搭建,包括:
10.如权利要求9所述的一种基于fpga的时间敏感网络异步流量调度系统,其特征在于,所述ats算法调度模块包括基于fpga的内置晶振,所述内置晶振用于输出与计算各模块中时间信息;