Negotiation at Link Initialization
The B2B state change mechanism is an optional feature. It can recover the lost credits only if the neighbors agree on using it during the link initialization phase. Just like the exchange of B2B credits, this capability is agreed upon through the FLOGI phase between a N_Port and F_Port and through the ELP phase between two E_Ports. B2B 状态变化机制是一种可选功能。只有当邻居在链路初始化阶段同意使用该机制时,它才能恢复丢失的信元。与 B2B 点数交换一样,这种功能也是通过 N_Port 和 F_Port 之间的 FLOGI 阶段以及两个 E_Port 之间的 ELP 阶段商定的。
During FLOGI or ELP phase, two neighboring FC ports inform each other of a non-zero B2B state change number (BB_SC_N), as shown in Figure 2-40. The neighbors may inform different values of BB_SC_N to each other. They agree on using the greater of the two numbers. 在 FLOGI 或 ELP 阶段,两个相邻 FC 端口会互相通知对方一个非零的 B2B 状态变化编号 (BB_SC_N),如图 2-40 所示。两个相邻 FC 端口可以相互通知不同的 BB_SC_N 值。它们商定使用两个数值中较大的一个。
Figure 2-40 Initial agreement on using the B2B state change mechanism
The B2B state change mechanism is disabled if either neighbor informs the value of BB_SC_N as zero. 如果任一邻居告知 BB_SC_N 的值为零,B2B 状态更改机制将被禁用。
Periodic Detection and Recovery of Credit Loss
As previously explained, a frame-sender may lose credits because of the corruption of R_RDY or the corruption of frames in a specific manner. These two conditions have different recovery mechanisms. 如前所述,帧发送方可能会因为 R_RDY 损坏或特定方式的帧损坏而丢失信元。这两种情况有不同的恢复机制。
Credit Loss Recovery When R_RDYs Are Corrupted
After agreeing on a BB_SC_N number, each side of the link starts keeping track of the number of frames sent, frames received, R_RDYs sent, and R_RDYs received. A frame-receiver informs the frame-sender that it has sent 2BB_SC_N number of R_RDYs by sending a BB_SCr (B2B State Change R_RDY) primitive signal. This process repeats after every 2BB_SC_N number of R_RDYs are sent. For example, if BB_SC_N is 8, a frame-receiver sends 256 (28) R_RDYs between two consecutive BB_SCr (Figure 2-41). 在商定 BB_SC_N 数字后,链路的每一方都开始跟踪发送的帧数、接收的帧数、发送的 R_RDY 和接收的 R_RDY。帧接收方通过发送 BB_SCr(B2B 状态改变 R_RDY)原语信号通知帧发送方,它已发送了 2BB_SC_N 个 R_RDY