协议报文:
NR,RB:No Request,RPL Block,链路恢复,RPL阻塞报文,由主节点在idle状态下发送,通知其他节点RPL端口被阻塞。其他节点收到该报文后放开自身的无故障端口,更新各自MAC地址表项。链路稳定在idle状态下时,主节点定时周期性发送该报文。
NR:No Request,链路恢复报文,当链路故障恢复后,由恢复端口所在节点发送,主节点收到NR报文后启动WTR定时器,在恢复端口所在节点收到(NR,RB)报文后(即进入idle状态后)停止发送NR报文。
SF:Signal Fail,信号失败报文,当链路出现信号收发失败时,由故障端口所在节点发送,Owner和Neighbor节点收到SF报文后,放开各自的RPL端口,并刷新MAC 地址表项。故障未消除前,故障端口所在节点周期性发送SF报文
MS:Manual Switch,手工倒换报文,由配置MS模式的节点发送,配置MS模式的端口被阻塞,其它节点收到MS报文后放开自身无故障端口,更新各自MAC地址表项。链路在MS状态下,MS报文周期性发送。
FS:Forced Switch,强制倒换报文由配置FS模式的节点发送,配置FS模式的端口被阻塞,其它节点收到FS报文后放开自身所有端口,更新各自MAC地址表项。链路在FS状态下,FS报文周期性发送。
初始化状态:(设备上电后)
主节点和邻居节点会block自己的RPL端口,普通节点会block一个端口,然后设备相互发送NR报文,当收到的NR报文的NODE ID比自己的大,就将block端口变为forward
链路故障情况:
当链路中的节点发现自己任何一个属于 ERPS 环的端口 down 时,都会阻塞故障端口并立刻发送
SF 报文通知链路上其它节点发生了故障,其它节点在收到此报文后放开非故障阻塞端口,并刷新
MAC 地址表项。
链路恢复情况:
当故障链路恢复后,先阻塞之前处于故障状态的端口,启动Guard定时器并发送NR报文通知Owner
节点故障链路已恢复。Owner 节点在收到 NR 报文后,启动 WTR 定时器,如果定时器在超时前,
没有收到 SF 报文,则当定时器超时后,Owner 节点阻塞 RPL 端口,并向外周期性的发送(NR, RB)
报文;故障恢复节点在收到(NR, RB)报文后放开临时阻塞的故障恢复端口;Neighbor 节点收到(NR,
RB)报文后阻塞 RPL 端口,链路恢复。
清除MAC地址表的情况:
1、idle状态下设备未阻塞的端口执行FS操作,进入FS状态时,会清除MAC地址表;
2、idle状态下设备down掉未阻塞的端口,进入protection状态时,会清除MAC地址表;
3、idle状态下设备未阻塞端口执行MS操作,进入MS状态时,会清除MAC地址表;
4、protection状态下未阻塞端口执行FS操作,进入FS状态时,会清除MAC地址表;
5、protection状态下down掉未阻塞的端口,设备仍处于protection状态,会清除MAC地址表;
6、MS状态下设备未阻塞端口执行FS操作,进入FS状态时,会清除MAC地址表;
7、MS状态下设备down掉未阻塞的端口,进入protection状态,会清除MAC地址表;
8、FS状态下设备端口执行FS操作,设备仍处于FS状态,会清除MAC地址表;
9、pending状态下,主节点的RPL端口未阻塞,执行clear操作,主节点立即进入idle状态时,会清除MAC地址表;
10、pending状态下未阻塞端口执行FS操作,进入FS状态时,会清除MAC地址表;
11、pending状态下设备down掉未阻塞的端口,进行protection状态时,会清除MAC地址表;
12、pending状态下未阻塞端口执行MS操作,进入MS状态时,会清除MAC地址表;
13、pending状态下,主节点的RPL端口未阻塞,WTR超时后,主节点进入idle状态时,会清除MAC地址表;
14、主节点从MS/FS进入到pending状态时,WTB开始计时,RPL端口未阻塞,当WTB超时后,会清除MAC地址表;
子环R-APS报文传输方式
ERPSv2版本除了支持单环组网,还支持相交环等多环组网方式。在相交环组网中,子环R-APS报文传输方式分为虚通道VC(Virtual-Channel)和非虚通道NVC(Non-Virtual-Channel)两种方式。
虚通道方式:子环的R-APS协议报文会通过相交节点在主环内运行。即相交节点不终结子环的协议报文。子环的阻塞端口会同时阻塞子环的R-APS协议报文和数据流量。该方式下,阻塞节点数据报文和协议报文均阻塞。非虚通道方式:子环的R-APS协议报文会在相交节点上终结,子环的阻塞端口仅阻塞数据流量,不阻塞子环的R-APS协议报文。该方式下,阻塞节点只阻塞数据报文,不阻塞协议报文。