本公开涉及时间敏感网络(time-sensitive networking,tsn)中的数据智能化传输,具体涉及一种数据传输优化方法、tsn通信装置及芯片。
背景技术:
1、ieee 802.1cb协议是时间敏感网络协议族中的一个重要子协议,全称为framereplication and elimination for reliability(frer,用于可靠性的帧复制与消除)。在现有的ieee 802.1cb协议中,定义了成员流(member stream)和复合流(compoundstream),通过对复合流将进行复制操作生成多个成员流,这些成员流在网络中并行传输,最终在接收端通过帧消除机制被恢复成单一的数据流,从而提高数据传输的可靠性,特别是在需要冗余传输的以太网拓扑结构中。
2、当前的协议标准在恢复数据流时,主要利用了向量恢复算法(vector recoveryalgorithm,vra)。其中,vra算法虽然通过构建历史缓存向量来记录最近一段时间内已转发的帧的序列号,从而能够处理更复杂的帧消除和恢复场景,但是也存在着不容忽视的问题:所构建的历史缓存向量长度的设置和如何管理这些序列号将影响算法能够容忍的序列号间隔大小。如果向量的长度不足以容纳由于数据丢失而导致的序列号间隔,那么算法可能会错误地删除或忽略某些有效的数据单元。
技术实现思路
1、为了解决相关技术中的问题,本公开实施例提供一种数据传输优化方法、tsn通信装置及芯片。
2、第一方面,本公开实施例中提供了一种数据传输优化方法,所述方法应用于tsn通信节点,所述方法包括:
3、基于冗余传输协议从多条传输路径分别接收指定周期性业务的业务数据帧,其中,在所述业务数据帧的冗余标记字段的保留子字段中携带有传输所述业务数据帧的传输路径的路径id;
4、基于所述多条传输路径的路径id定位每条传输路径,针对所述每条传输路径,根据接收到的业务数据帧的当前接收时间和在历史时间所接收到的多个业务数据帧的历史平均接收时间,计算帧到达频率,从而获取所述多条传输路径的帧到达频率;
5、根据所述多条传输路径的帧到达频率,计算所述多条传输路径中每个传输路径对的帧到达频率差值,所述传输路径对包括两条不同的传输路径;
6、根据所述多条传输路径中每个传输路径对的帧到达频率差值,确定平均帧到达频率差值和最大帧到达频率差值;
7、根据所述平均帧到达频率差值和所述最大帧到达频率差值,确定指定时间段内的平均帧到达数量差值navr和最大帧到达数量差值nmax;
8、将所述冗余传输协议的历史缓存向量长度w设置为navr≤w≤nmax;
9、在所述指定时间段内从所述多条传输路径接收所述指定周期性业务的业务数据帧,并使用长度为w的历史缓存向量对从所述多条传输路径接收的业务数据帧进行帧消除。
10、根据本公开的实施例,所述方法还包括:
11、在所述指定时间段内的任一时刻,基于所述多条传输路径的路径id定位每条传输路径,针对所述每条传输路径,监测所述每条传输路径是否异常。
12、根据本公开的实施例,所述针对所述每条传输路径,监测所述每条传输路径是否异常,包括:
13、针对所述每条传输路径,计算实时帧到达频率m1;在m1≥n1时,判断传输路径处于异常状态,其中,n1为第一设定频率阈值,所述第一设定频率阈值基于所述传输路径的帧到达频率进行设定。
14、根据本公开的实施例,所述判断传输路径处于异常状态之后,还包括:
15、监测传输路径是否恢复正常。
16、根据本公开的实施例,所述监测传输路径是否恢复正常,包括:
17、计算传输路径的实时帧到达频率m2;在n2<m2<n1时,判断传输路径处于异常恢复状态;在所述m2≤n2时,判断传输路径处于正常状态,其中,n2为第二设定频率阈值,所述第二设定频率阈值基于传输路径的帧到达频率进行设定,且所述第二设定频率阈值不同于所述第一设定频率阈值。
18、根据本公开的实施例:
19、在传输路径处于异常恢复状态时,重新设置所述历史缓存向量的长度为m,其中,m≥2w;
20、在传输路径处于正常状态时,将所述历史缓存向量的长度n恢复为长度为w的设置。
21、根据本公开的实施例,所述基于冗余传输协议从多条传输路径分别接收指定周期性业务的业务数据帧,包括:
22、针对所述多条传输路径中每条传输路径,利用冗余传输协议中的匹配恢复算法接收所述业务数据帧。
23、根据本公开的实施例,所述利用冗余传输协议中的匹配恢复算法接收所述业务数据帧,包括:
24、判断所述业务数据帧中所携带的序列号与在上一历史时刻所接收的业务数据帧中所携带的序列号是否相同;
25、若是,则丢弃所述业务数据帧,否则,接收所述业务数据帧。
26、根据本公开的实施例,所述上一历史时刻所接收的业务数据帧的序列号存储在所述tsn通信节点的存储装置中。
27、根据本公开的实施例,所述tsn通信节点为tsn目的节点和/或tsn中继节点。
28、根据本公开的实施例,所述根据所述平均帧到达频率差值和所述最大帧到达频率差值,确定指定时间段内的平均帧到达数量差值navr和最大帧到达数量差值nmax,包括:
29、设置所述指定时间段的时间长度;
30、将所述时间长度乘以所述平均帧到达频率差值、所述最大帧到达频率差值,从而得到所述平均帧到达数量差值navr、所述最大帧到达数量差值nmax。
31、根据本公开的实施例,所述方法还包括:
32、针对所述指定时间段内的任一时刻,判断从所述多条传输路径接收的业务数据帧与进行帧消除的业务数据帧之间的差值;
33、在所述差值为所述多条传输路径的路径数量减一时,统计从所述多条传输路径接收的业务数据帧中的路径id,在所述路径id的数量超过2时,判断帧消除错误。
34、第二方面,本公开实施例中提供了一种tsn通信装置,包括:
35、接收模块,被配置为基于冗余传输协议从多条传输路径分别接收指定周期性业务的业务数据帧,其中,在所述业务数据帧的冗余标记字段的保留子字段中携带有传输所述业务数据帧的传输路径的路径id;
36、第一计算模块,被配置为基于所述多条传输路径的路径id定位每条传输路径,针对所述每条传输路径,根据接收到的业务数据帧的当前接收时间和在历史时间所接收到的多个业务数据帧的历史平均接收时间,计算帧到达频率,从而获取所述多条传输路径的帧到达频率;
37、第二计算模块,被配置为根据所述多条传输路径的帧到达频率,计算所述多条传输路径中每个传输路径对的帧到达频率差值,所述传输路径对包括两条不同的传输路径;
38、第三计算模块,被配置为根据所述多条传输路径中每个传输路径对的帧到达频率差值,确定平均帧到达频率差值和最大帧到达频率差值;
39、第四计算模块,被配置为根据所述平均帧到达频率差值和所述最大帧到达频率差值,确定指定时间段内的平均帧到达数量差值navr和最大帧到达数量差值nmax;
40、动态设置模块,被配置为将所述冗余传输协议的历史缓存向量长度w设置为navr≤w≤nmax;
41、数据帧消除模块,被配置为在所述指定时间段内从所述多条传输路径接收所述指定周期性业务的业务数据帧,并使用长度为w的历史缓存向量对从所述多条传输路径接收的业务数据帧进行帧消除。
42、根据本公开的实施例,还包括异常监测与恢复模块;所述异常监测与恢复模块,被配置为:
43、在所述指定时间段内的任一时刻,基于所述多条传输路径的路径id定位每条传输路径,针对所述每条传输路径,监测所述每条传输路径是否异常。
44、根据本公开的实施例,所述针对所述每条传输路径,监测所述每条传输路径是否异常,包括:
45、针对所述每条传输路径,计算实时帧到达频率m1;在m1≥n1时,判断传输路径处于异常状态,其中,n1为第一设定频率阈值,所述第一设定频率阈值基于传输路径的帧到达频率进行设定。
46、根据本公开的实施例,所述异常监测与恢复模块,还被配置为:
47、所述判断传输路径处于异常状态之后,监测传输路径是否恢复正常。
48、根据本公开的实施例,所述监测传输路径是否恢复正常,包括:
49、计算传输路径的实时帧到达频率m2;在n2<m2<n1时,判断传输路径处于异常恢复状态;在所述m2≤n2时,判断传输路径处于正常状态,其中,n2为第二设定频率阈值,所述第二设定频率阈值基于传输路径的帧到达频率进行设定,且所述第二设定频率阈值不同于所述第一设定频率阈值。
50、根据本公开的实施例,所述动态设置模块,还被配置为:
51、在传输路径处于异常恢复状态时,重新设置所述历史缓存向量的长度为m,其中,m≥2w;
52、在传输路径处于正常状态时,将所述历史缓存向量的长度n恢复为长度为w的设置。
53、根据本公开的实施例,所述接收模块,还被配置为针对所述多条传输路径中每条传输路径,利用冗余传输协议中的匹配恢复算法接收所述业务数据帧。
54、根据本公开的实施例,所述利用冗余传输协议中的匹配恢复算法接收所述业务数据帧,包括:
55、判断所述业务数据帧中所携带的序列号与在上一历史时刻所接收的业务数据帧中所携带的序列号是否相同;
56、若是,则丢弃所述业务数据帧,否则,接收所述业务数据帧。
57、根据本公开的实施例,还包括存储装置;所述存储装置,被配置为:
58、存储所述上一历史时刻所接收的业务数据帧的序列号。
59、根据本公开的实施例,所述第四计算模块,还被配置为:
60、设置所述指定时间段的时间长度;
61、将所述时间长度乘以所述平均帧到达频率差值、所述最大帧到达频率差值,从而得到所述平均帧到达数量差值navr、所述最大帧到达数量差值nmax。
62、根据本公开的实施例,所述异常监测与恢复模块,还被配置为:
63、针对所述指定时间段内的任一时刻,判断从所述多条传输路径接收的业务数据帧与进行帧消除的业务数据帧之间的差值;
64、在所述差值为所述多条传输路径的路径数量减一时,统计从所述多条传输路径接收的业务数据帧中的路径id,在所述路径id的数量超过2时,判断帧消除错误。
65、第三方面,本公开实施例中提供了一种tsn芯片,包括如第二方面中任一项所述的tsn通信装置。
66、第四方面,本公开实施例中提供了一种计算机可读存储介质,其上存储有计算机指令,该计算机指令被处理器执行时实现如第一方面任一项所述的方法。
67、第五方面,本公开实施例中提供了一种计算机程序产品,包括计算机指令,该计算机指令被处理器执行时实现如第一方面任一项所述的方法。
68、根据本公开实施例提供的技术方案,基于冗余传输协议从多条传输路径分别接收的指定周期性业务的业务数据帧,在所述业务数据帧的冗余标记字段的保留子字段中携带有传输所述业务数据帧的传输路径的路径id,从而在冗余传输协议中根据路径id定位每条传输路径,以针对每条传输路径来计算帧到达频率,再根据每个传输路径对(包括两条不同的传输路径)的帧到达频率差值,确定平均帧到达频率差值和最大帧到达频率差值,进而确定指定时间段内的平均帧到达数量差值navr和最大帧到达数量差值nmax;将所述冗余传输协议的历史缓存向量长度w设置为navr≤w≤nmax,以在指定时间段使用长度为w的历史缓存向量对接收的业务数据帧进行帧消除。
69、本公开解决了现有技术中在实现帧消除的过程中仅仅依赖人为设定的历史缓存向量管理已转发的数据帧的序列号,导致错误删除数据帧的技术问题。本公开创新性地利用了所定位的传输路径的帧到达频率,来合理地设置指定时间段内的历史缓存向量的长度范围,以尽量避免错误地删除或忽略某些有效的数据帧,其中本公开开创性地在冗余传输协议的保留子字段中携带路径id,从而实现了对传输路径的精确定位。且本公开中的历史缓存向量的长度是根据传输路径的帧到达频率进行动态设置的,随着tsn通信节点所接收的数据帧越来越多,对应传输路径的帧到达频率的计算会越来越准确,从而可以针对指定时间段,来动态调整历史缓存向量的长度,以基于本公开的冗余通信协议实现一个自适应的数据传输过程,达到数据传输优化的目的。
70、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。