4.1.7 网络管理
一个节点的两个端口具有相同的MAC地址,并且只分配了一个IP地址给这个MAC地址。这使得冗余对于上层协议是透明的。特别地,这使得地址解析协议(ARP)处理DANP节点与SAN节点一样。局域网中的网桥不是双连接设备,所以被管理的网桥的IP地址(及MAC地址)都不相同。网络管理工具最好取一个DANP节点,这样它能访问两个局域网中的节点和网桥。 4.1.8 配置含义
同一个数据帧从两个不同端口发出后,到达目的节点的时刻可能差别很大,在异常的情况下,这个帧数据将被作为复制帧错误丢弃。所以存在帧数据的过期机制,这样很少会导致两个帧数据都被接收(在容忍情况下)。最大的数据流可能来自采样数据,它的时间选取应该考虑最坏情况下的传播延迟差异。 4.1.9 PRP网络与非冗余网络的连接
重复数据帧的阻挡任务可以在RedBox(冗余盒)里面实现,这样RedBox可以连接SAN节点和双重局域网络,如图5所示。RedBox代理了其后连接的SAN节点(被称为VDANP 或者 虚拟DANP),并且代表这些SAN节点多路广播监测数据帧。RedBox本身是一个DANP节点,为了网络管理的方便,有其自己的IP地址,但是RedBox也能完成应用功能。
图5 PRP RedBox——从单局域网到双重局域网的连接
4.1.10 重复帧报文的处理
4.1.10.1 重复帧接收模式(仅于测试情况)
重复数据接收模式用于测试目的,用来验证重复帧确实是链路层丢弃的,而不是更高层协议丢弃的。
在这种模式下,被配置的发送数据端发送的两份数据帧均无RCT。
在这种模式下,被配置的接收端接收两份帧数据,并将它们都传给上层(如果这两份复制的帧数据都到达的话)。 一个节点通过监测帧标示它的工作模式(重复数据帧接收/重复数据帧丢弃)。 Note: 上层也会丢弃重复数据帧,但是效率比链路层低。 4.1.10.2重复帧丢弃模式
4.1.10.2.1 原理
为了让接收端检测重复数据帧,发送端的LRE附加六字节的内容到它发送的双份数据帧上,这六字节包括序列号,冗余控制标记。如图6所示。
接收端的LRE使用序列号和源MAC地址来检测重复帧。它仅允许这一对数据帧中第一个到达的数据帧传送到上层。为了减轻处理器的负担,LRE可以通过采用一个独立的前置处理器、智能以太网控制器或在硬件里执行。
在保持跟踪重复帧的同时,允许提高冗余监测。作为可选项,接收端可能会在传送(第一个)数据帧到上层之前去掉RCT。 RCT由如下字段构成: a) 16比特的序列号(SeqNr); b) 4比特的LAN标示符(LanId); c) 12比特的数据帧长度(LSDU_size); d)16比特后缀(PRP后缀)
图6 扩展有RCT的PRP数据帧
LRE通过两个局域网发送一对帧(几乎是相同的)。
接收端的LRE然后能够基于RCT检测重复帧。
Note1: 这个方法也考虑到SANs存在于此网络上的情况,通过SANs发送的帧数据,可能会被当做重复帧被错误的丢弃,因为帧数据恰好有一个跟踪区域,此区域有正确的PRP后缀、相同的序列号和相同的大小。然而,SANs仅仅在一个局域网上传送数据,并且一个帧数据不可能和另一个帧数据有相同的源,所以一个来自一个SAN发送的数据帧将不会被丢弃。 Note2: 接收一个成形的RCT并不能证明源节点是一个DANP。即使路径错误,这个DANP仍然接收这个帧。
4.1.10.2.2 PRP后缀的使用
PRP后缀标示PRP帧,并且能够区别出PRP帧和其他协议的帧(这个帧也加了标记到他们有用的数据当中)
4.1.10.2.3 LSDUsize的使用
12位LSDU大小区域包含了链路服务数据单元长度。作为一个额外的检测,这个区域使接收端能够区别出PRP帧数据和随机的、无冗余的帧数据。
在VLANs中,当数据帧通过网桥的时候,VLAN帧标记被添加或移除。为了使LSDUsize与VLAN标记无关,仅仅将LSDU和RCT考虑在LSDUsize之内,如图7所示。
图7 PRP VLAN标记帧扩展RCT
如果接收端接收到的帧数据和正确的PRP后缀不符,即使PRP后缀前面的12位和LSDU大小相适应,LAN标记和接收端口的LAN标记相符,这个帧数据将作为丢弃帧候选项。 因为短帧需要填充字段来实现最小64字节的帧,这个发送端已经包含了填充字段,避免扫描帧返回,如图8所示。最小帧大小被扩展到70个字节,因为LRE或RedBox能移除RCT。
图8 PRP 填充字节以RCT标记结束
当VLAN标记被使用的话,这个填充字节的大小将增加到74个字节。
Note: 一个具有VLAN标记的帧能够通过若干个网桥,这个网桥可能会移除或插入VLAN标
记。如果发送端遵守ISO/IEC 8802-3规则,发送一个最小68字节的帧用于一个VLAN标记的帧以及64字节的无VLAN的帧,不可能出现在RCT前面或后面具有填充字节的情况。 4.1.10.2.4 LanId的使用
4比特RCT LanId区域为LAN_A或LAN_B载有严格的标示,就是编码1010(”A”)和1011(”B”)。因此,A帧数据和B帧数据有一位不同(并且在FCS里面)。接收端检测帧来自那个正确的LAN。它并不丢弃来自不正确的LAN的帧,,因为它可能是一个合理的帧数据,恰好有PRP后缀以及最后28位中包含长度信息,但是错误计数器CntErrWrongLanA或CntErrWrongLanB会增加,因为这个暗示着配置错误。当这种错误固定了,它将被快速的检测到。 4.1.10.2.5 SeqNr的使用
DANP每发送一对帧数据,16比特的序列号递增1。一对{源MAC地址,序列号}能唯一的区别出这是一对相同的复制帧。
数据帧丢弃算法并没有被规定。例如,节点表、哈希表、FIFO或序列号跟踪都能被使用。不管是哪一种算法,它都不会丢弃一个合法的帧数据,即使偶然接收一个复制帧也是可以接受的。16比特的序列号在递增完65536后又溢出返回,序列号并不一定需要连续,比EntryForgetTime这个规定时间还要长的结构体将被清除。 这允许节点重启在任意一个序列号的位置。
图9所示为丢弃帧数据的情况。
图9 重复帧丢弃算法界限
时间twrapMin是合法帧数据在递增65536之后序列号相同的两个复制帧的最小可能时间差(由应用及网络规定参数规定)
在一个100Mbit/s的网络中,从同一个源在理论最大帧数据复制速度时,twrapMin大概为400ms。

