基于通道的fc网络余度设计方法

文档序号:9754325阅读:502来源:国知局
基于通道的fc网络余度设计方法
【技术领域】
[0001]本发明属于计算机通信技术,涉及FC通信网络中的一种基于通道的余度设计方法。
【背景技术】
[0002]在当前FC网络余度设计中,采用双发双收机制,在接收端基于“先到先有效”策略,通过解析消息ID信息和对应的SN号信息作为接收帧余度控制的依据;由于逻辑资源限制,单节点最大支持的消息数量有限实现,而通信消息Msg_ID个数的限制势必会对主机上层应用产生影响。因此需要提出一种基于通道的FC网络余度设计方法,在保证网络消息余度收发的同时,消除FC网络单节点对于通信消息数量的限制问题。

【发明内容】

[0003]本发明提出一种基于通道的FC网络余度设计方法,满足FC网络消息余度收发控制的要求,在保证消息通信正确性的同时,能够解决网络节点对于通信消息的数量限制问题。
[0004]本发明采用“通道”替代Msg_ID,作为FC节点发送与接收消息SN号的维护依据。结合FC逻辑发送控制流程与接收控制流程的控制,单节点可以支持实现的通道数量能够满足系统中所需要连接的节点数需求,且每个“通道”上的消息ID个数将不再受限。接收缓冲区内不同Msg_ID的消息提供上层处理。通过维护发送缓冲至接收缓冲基于“通道”的数据队列的连续性,保证接收端余度判断与控制的正确性。实现原理如图1、图2、图3、图4和图5所示。
[0005]本发明的第一种技术方案如下:
[0006]基于通道的FC网络余度设计方法,包括以下步骤:
[0007]—)定义并标识FC网络的3种通道
[0008]通道代表从当前FC节点到一个或多个目的节点的单向虚拟通路;
[0009]3种通道分别是点对点通道、组播通道和广播通道;
[0010]点对点通道为2个FC节点之间的单向虚拟通道;组播通道为I个FC节点至多个FC节点的单向虚拟通道;广播通道为I个FC节点至除其他所有FC节点的单向虚拟通道;
[0011]通过3_10和0_10对所有通道进行唯一标识,基于唯一标识实现FC节点发送端与接收端CAM表的信息查找与维护,点对点通道port_id的取值范围为0x010000-0xER)0FF;组播通道port_id的取值范围为OxFFFBOO-OxFFFBFF;广播通道的port_id为OxFFFFFF;
[0012]二)定义FC接口余度发送控制流程
[0013]基于D_ID划分点对点通道、组播通道和广播通道,在发送CAM表中存放本FC节点所连接的所有FC通道对应的D_ID信息,D_ID信息数据长度为3Byte,发送CAM表中每一个通道信息对应记录一个SN号信息;
[0014]在发送前通过判断当前发送数据所对应的通道信息以及发送CAM表,获取并更新当前发送数据帧的SN信息,并将FC消息从余度通道中发送;
[0015]三)定义FC接口余度接收控制流程
[0016]接收CAM表中存放3_10字段及D_ID字段,在接收到FC数据帧后,首先对D_ID字段进行解析,根据首字节判断接收到的数据帧是从单播通道、组播通道还是广播通道而来;若为单播通道,则根据S_ID字段进行接收CAM查找;若为组播或广播通道,则根据D_ID字段进行接收CAM查找,从而获取到当前通道中所接收消息的期望SN号,进而基于“先到先有效”原则对余度通道中的数据进行处理。
[0017]其中,步骤二)中定义FC接口余度发送的控制流程具体如下:
[0018]I)处理器对FC节点进行初始化操作;
[0019]2)根据配置信息,在发送CAM表中存放本FC节点所连接的所有FC通道对应的D_ID信息;
[0020]3)判断发送缓冲区是否有新的待发送FC消息;
[0021 ] 4)若有待发送FC消息,则转步骤5);若没有,则重复步骤3);
[0022]5)解析待发送消息对应的0_10信息;
[0023]6)判断当前消息所在发送通道对应的D_ID信息是否在步骤2所述的发送CAM表中;
[0024]7)gD_ID信息在发送CAM表中,则转步骤8);若没有,则转步骤3);
[0025]8)获取对应的SN号信息,并对SN号进行更新后,完成FC发送数据组帧;
[0026]9)判断余度通道对应的MAC缓冲区状态;
[0027]10)若余度通道对应的任一MAC有缓冲,则转步骤11);若双MAC均没有缓冲,则转步骤9);
[0028]11)将待发送FC数据帧写入余度通道对应的发送MAC缓冲区。
[0029]步骤三)中定义FC接口余度接收的控制流程具体如下:
[0030]I)处理器对FC接口和主机接口进行初始化操作;
[0031]2)在接收CAM表中存放本FC节点所连接的所有FC通道对应的S_ID信息和D_ID信息;
[0032 ] 3)判断是否有新的接收到的FC信息
[0033]4)若有,则转步骤5);若没有则转步骤3);
[0034]5)解析收到的FC消息对应的D_ID信息的首字节;
[0035]6)若为OxFF,则转步骤7);若不为OxFF,则转步骤8);
[0036]7)根据D_ID字段进行接收CAM查找;
[0037]8)根据S_ID字段进行接收CAM查找;
[0038]9)判断字段是否在接收CAM表中;
[0039]10)若查找字段在接收CAM表中,则转步骤11;若不在接收CAM表中,则转步骤3;
[0040]11)获取对应的SN号信息,基于“先到先有效”原则对余度通道中的数据进行处理。
[0041]FC接口余度发送控制流程所对应的逻辑实现状态机的工作流程为:
[0042]I)状态O:该状态为状态机的初始状态,初始化上电或复位时,状态机进入该状态,在该状态下,FC节点完成初始化配置,对发送CAM表进行基于发送通道的信息填充,发送CAM表中存放本FC节点所连接的所有FC通道对应的D_ID信息,状态机进入状态I;
[0043]2)状态1:该状态为发送消息判断状态,在该状态下,判断发送缓冲区是否有新的待发送FC信息,若无新消息,则状态机重复状态I;若有新的待发送消息,则状态机进入状态2;
[0044]3)状态2:该状态为通道符合性判断状态,在该状态下,通过查找发送CAM表信息判断当前发送消息所对SD_ID信息是否在发送CAM表中,若不在,则状态机返回状态I;若发送CAM表中存在该D_ID信息,则状态机进入状态3;
[0045]4)状态3:该状态为余度SN号维护状态,在该状态下获取对应的SN号信息,并对SN号进行更新后,完成FC发送数据组帧,状态机进入状态4。
[0046]5)状态4:该状态为MAC缓冲判断状态,在该状态下判断余度通道对应的MAC缓冲区状态,若余度MAC没有空余缓冲,则重复状态4,若余度MAC有空余缓冲,则状态机进入状态5;
[0047]6)状态5:该状态为MAC缓冲写入状态,在该状态下,将组帧完成的待发送FC数据帧写入余度通道对应的发送MAC缓冲区,状态机返回状态I。
[0048]FC接口余度接收控制流程所对应的逻辑实现状态机的工作流程为:
[0049]I)状态O:该状态为状态机的初始状态,初始化上电或复位时,状态机进入该状态,在该状态下,FC节点完成初始化配置,对接收CAM表进行基于接收通道的信息填充,接收CAM表中存放本FC节点所连接的所有FC通道对应的S_I D信息和D_I D信息,状态机进入状态I;
[0050]2)状态1:该状态为接收消息判断状态,在该状态下,判断是否有新的接收到的FC信息,若无新消息,则状态机重复状态I;若有新的接收到的FC消息,则状态机进入状态2;[0051 ] 3)状态2:该状态为接收消息对应通道解析状态,在该状态下,解析收到的FC消息对应的D_ID信息的首字节,若首字节为OxFF,则状态机进入状态3;若首字节不为OxFF,则状态机进入状态4;
[0052]4)状态3:该状态为非单播通道接收CAM表查找状态。在该状态下,接收消息对应通道为组播或广播通道,根据D_ID字段进行接收CAM表
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1