TSN CB:帧复制和消除可靠性概述

1.概述

1.1协议中的描述

本条款规定的目标和目的FRER通过在源端系统和/或网络中的中继系统中对每个数据包进行序列编号和复制,并消除目标端系统和(或)其他中继系统中的这些复制,为流提供了更高的可靠性(降低了数据包丢失率)。图1-1显示了具有四个组件成员流的复合流的示例。在这个例子中,sequence_number子参数被生成并编码到最左侧框中的每个数据包中。序列恢复功能在两个中间点消除重复数据包,以及作为新成员流复制的非重复数据包(序列号不变)。最后两个成员流被合并在一起,并在右侧的目的地消除重复项。这种配置可以防止所有7种可能的单链路故障,以及21种可能的双链路故障中的16种。

在这里插入图片描述

1.2简单解读

在802.1CB-2017通过一个场景概述了CB的功能及作用,图1-1是由4个成员流构成的复合流,上面提到了流的概念、序列编码、复制、消除等概念,以及可以防止7种单链路故障、21种双链路故障中的16种。
这里先解释一下后者。图1-1中的网络拓扑共有7条链路,单链路故障即任意一条链路失效的情况,总共有7条链路的话,单链路故障的可能性是7种。而双链路故障则是从7条链路中任选两条同时失效的情况,组合数为C(L,2)=L*(L-1)/2。即C(7,2)=21。每个单链路故障都被防护,而双链路故障中,有16种被防护,5种未被防护。这是因为其中5种双链路故障的组合会导致网络无法维持所需性能,破坏了冗余路径,导致关键路径中断。

2.功能

FRER提供了图2-1所示的五个功能。并非每个协议栈都需要所有功能。
在这里插入图片描述

2.1 Sequencing

1)为从上层传递下来的数据包提供sequence_number子参数的顺序值(7.4.1);
2)检查接收到的数据包的序列号(来自多个流),并丢弃那些sequence_number子参数表明它是先前接收到的数据包的副本的数据包(7.4.2);
3)监控计数器变量以检测传递给它的流的潜在错误(7.4.4)。

简单描述:排序

2.2 Stream splitting

1)复制传递给它的每个数据包,为每个副本分配一个不同的stream_handle,其中最多可以有一个与原始相同。
2)在堆栈中不加更改地传递数据包。

简单描述:复制

2.3 Individual recovery

1)检查传递给它的接收到的数据包(属于Member Streams)的序列号,并丢弃那些sequence_number子参数表明它是之前收到的数据包的重复的数据包

简单描述:针对单链路故障,删除重复发送的数据包

2.4 Sequence Encode/Decode

1)将sequence_number子参数编码到数据包中,使其能够通过改变其他数据包参数被其对等测序函数解码,通常是通过某种方式(例如R-TAG)在数据包数据中编sequence_number。
2)从接收到的数据包中提取sequence_number。根据所使用的流识别功能的不同,sequence功能可以将sequence_number封装从报文中移除

简单描述:编码是将2.1中的排序结果作为标签打包到帧中,解码删除帧中的标签

2.5 stream identification

1)将每个数据包传递到堆栈,如果配置的特定封装方法需要,使用stream_handle来改变数据包;
2)从接收到的数据包中派生一个stream_handle,并将其向上传递到堆栈中,如果封装方法需要,则更改数据包

简单描述:根据一定的规则,识别目标流。

3.流识别

3.1流定义

流定义:流是服务质量的实体。它是从一个通话者到一个或多个监听者的单播或多播数据包序列。

3.2 流分类

协议种给出4种流识别功能,其中Null Stream identification是必须要支持的,其它三种为可选项,但是一般Active Destination用的比较多,是要实现的。Active与Null的识别标准一样,通过destination_address与vlan_identifier来标识,区别是Active可以修改destination_address、vlan_identifier、与priority的值。
在这里插入图片描述

3.3 流识别的功能

流识别函数有两个功能:
a.从下层接收数据包
(1)如果数据包属于流识别函数已知流,则结果数据包提取stream_handle等任何其它子参数一起传递到上层
(2)数据包不属于任何已知的流,不加更改地传递给下一层
b.从上层传下来进行传输的数据包,通过使用数据包的stream_handle子参数来确定如何处理该数据包
(1) 如果数据包属于已知的流,则生成的数据包被传递到较低的层。可以通过流识别功能修改参数
(2) 报文不属于任何已知的流,将报文不加修改地传递给下一层,所有参数保持不变。

简单描述:区分是否为目标流,是的话进入FRER处理流程,否则该去哪去哪。

3.4 系统中的流识别

在这里插入图片描述

FRER能力通常需要流识别才能发挥作用。如何安排流识别功能和各种FRER功能来完成给定的任务,以及如何为标准规范的目的对其进行描述,可能会有所不同。图a显示了一个具有两个端口的中继系统,其转发功能中嵌入了FRER功能,图中未明确显示。这个形式是最简单的,但至少在图中没有明确操作的顺序。

图b显示了相同的中继系统,这次FRER功能明确地放置在其一个端口中,其图片得到了极大的扩展。在图b中,转发功能没有FRER功能。流识别功能提取流识别功能子参数,以启用FRER功能。流传输功能充当一个双端口数据包中继,完全位于中继系
统的一个端口内,中继属于流的数据包。非流传输函数(NSTF)也做同样的事情,因此中继未被识别为属于流的数据包。下游识别功能将FRER包与非FRER包分开;后者在NSTF上中继,就像不存在FRER能力一样。上游识别功能识别FRER数据包的流,以便其他FRER功能可以执行其任务。

图c以更简洁的方式展示了图b中的函数。要执行的操作可能比图a更明确,但FRER子层不在正确的对等层。

欢迎大家留言一起讨论

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

洋仔yaanng

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值