IEEE 802.1CB帧复制和帧消除技术简介

帧复制和帧消除技术简介

802.1CB主要定义了帧复制和帧消除机制(frame replication and elimination for reliability (FRER)),用来提高业务的可靠性。简单总结了其中比较关键的几个概念

  • 成员流(member stream)和复合流(compound stream):一个compound stream通过复制,形成若干member stream。
  • 帧复制:通过sequence generation function 函数,如图所示。该函数会为每个帧生成一个Sequence ID,用来在终端或中继设备上来消除帧,同时,也用来判别帧的丢失。

在这里插入图片描述

  • flexible positioning: 任何复制的流,无论是成员流(member stream)或复合流(compound stream),可以在网络中的任意节点(包括终端和中间转发设备)开始或结束。
  • 帧消除/恢复:通过 recovery function,包含两个版本:1) individual recovery function (IRF) and 2) *sequence recovery function (SRF).*其中,IRF用于单条路径,用以消除路径上错误的重复信息,SRF是在所有复制路径的汇聚节点进行帧消除和恢复(如上图所示)
  • recovery algorithm: 所有回复函数都用了该恢复算法,该恢复算法主要用以决定是否转发一个帧或者消除(丢弃)。该算法包含两种:match recovery algorithm (MRA)vector recovery algorithm (VRA)。其中,MRA存储了最有一个访问的sequence number,只有到新到的帧的sequence number不同时,才进行转发,否则进行丢弃(sequence number相同表示该帧为副本);而VRA则是通过构建向量来存储最大可以转发的sequence number,并且保存了一个已经转发的number的历史记录(记录的长度需要配置,标准上并未给出具体配置值的建议说明)。所有帧的sequence number如果不在这个向量维护的范围内,则认为该帧过旧或过于超前,应当丢弃。
  • 错误侦测机制(error detection function):标准还定义了一个SRF的错误侦测机制,主要是通过侦测函数(*detection function: TRIGGER_LATENT_ERROR_TEST (TEST))进行。TEST函数通过周期性的比较期待转发的冗余帧和实际消除的帧之间的差值,来查看这个差值是否已经超过了预设阈值(理想情况下,两者应该相等,否则意味着不该消除的消除了,或者应该消除的却没有消除)。如果达到阈值,则触发SIGNAL_LATENT_ERROR (SIGNAL)事件。同时这个差异计数器进行复位(且与这个侦测过程是独立的!),复位使用RESET_LATENT_ERROR (RESET)*函数
  • 报文顺序:802.1CB不提供报文保序机制,如果多条路径的报文在同一节点汇聚,由于路径长度不一致等原因,可能会导致报文的乱序。通常乱序问题可以用buffer解决,但是标准不提供具体的方法,从而也不对报文顺序做限制。

当前标准存在的问题

  • VRA算法历史buffer大小设置不合理导致错误的帧消除:对于VRA算法,向量长度的设置会极大影响网络的可靠性。如下图,如果短路径的编号n的帧丢失,后续的n+1到达并且被转发(标准不进行保序),同时,短路径的n+2~n+5都到达并被转发,此时VRA算法的历史记录buffer会右移,从而将编号为n的位置移出窗外,此时冗余路径的n帧到达,却被认为too old二被丢弃,从而导致错误的帧消除。因此,需要合理设置VRA算法离是buffer的长度

在这里插入图片描述

  • 传输错误反馈:如前所述,SRF函数配置了TEST函数和触发机制,当发生错误帧消除的帧数量达到一定阈值时会进行相应处理。但是该机制存在一些问题:

    • 如图所示,TEST函数只有在RESET函数最近的一次执行后才进行帧错误的监测( β \beta β ),而发生在此时刻之前的事件发生的帧错误( α \alpha α),不会被监测到

在这里插入图片描述

  • 侦测函数和触发处理函数都是周期性进行执行的,一个周期内的帧错误无法被及时反馈!

  • 乱序问题:前面已经叙述,此外,导致乱序的原因,不仅仅是由于路径的跳数不一样导致,节点的负载率、端口带宽都有可能导致乱序问题

    • 此外,乱序问题极有可能导致突发,如下图所示,短路径上的1帧丢失,2、3帧到达后,冗余的1帧到达,此时,1和3由于时多个端口进来的数据而同时发送出去,会形成突发。而突发是确定性网络中应该避免的问题
      在这里插入图片描述

总结

802.1CB是TSN关于可靠性的主要标准,但是还有很多细节和问题在实现的时候需要优化或解决,比如路径的计算问题(冗余路径之间的时延、抖动、长度等约束条件需要明确);汇聚节点如何进行保序(通常通过设置buffer,但buffer设置多大由于多个冗余路径之间的时延差、数据量有关);VRA算法中的buffer设置;长短路径到达的报文相差时间差异过大时,如何进行高效率的消除……

参考:

[1] “Robin Hofmann, et al., Challenges and Limitations of IEEE 802.1CB-2017”

[2] “IEEE Standard for Local and metropolitan area networks—Frame Replication and Elimination for Reliability”

  • 7
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值