专利名称:虚链路发现控制方法和以太网承载光纤通道协议系统的制作方法
技术领域:
本发明涉及以太网承载光纤通道协议(FCoE)的控制技术,特别涉及 一种FCoE系统中的虚链路发现控制方法、 一种FCoE系统。
背景技术:
随着Intemet应用的不断发展,网络服务器需要存储的信息和数据越来 越多,进而就导致网络服务器所需的存储容量不断增长。当网络服务器的内 部存储容量无法满足信息增长的需求,就需要将网络服务器的存储"外部 化,,。
为了解决这一问题,现有技术中提出了存储局域网络(Storage Area Networks, SAN),并由SAN为网络服务器提供专用的外部存储环境,充 分利用新的存储硬件技术和网络技术,满足对大容量高可靠数据的存储、访 问和备份等需求。
光纤通道(Fibre Channel, FC )是SAN中应用最为广泛的一种协议, 即SAN中基于FC网络传输数据。但是,实现FC网络需使用的交换机、网 卡、以及线缆的数量较大,因而使得FC网络的设备成本高、维护难度大、 可扩展性差。
为解决上述问题,现有技术利用FCoE协议在以太网的基础上承载FC 协议,以将SAN和局域网(LAN)整合,同时还在服务器、存储设备内增 i殳有支持FCoE的以太网卡。
参见图1,例如服务器、存储设备等以太网节点(ENode),通过增设 的以太网卡的以太网接接口连接至支持FCoE的交换机(FCF)的以太网接 口 , FCF还具有连接至LAN的以太网接口 ,而FCF的FC接口则通过FC网络连接至SAN。
参见图2, ENode和FCF之间,不但具有以太层中的以太网接口间的物 理链路,还具有FC层中的虚拟以太网(VN)接口与VFC (虚拟FC )接口 之间的虛拟逻辑链路、简称虚链路,即VN接口 ->ENode以太网接口 ->FCF 以太网接口VFC 口所形成的逻辑连接,虚拟逻辑链路的发现和维护可通过 FCoE初始化协议(FCoE Initialization Protocol, FIP )报文来实现。
图3为现有虚链路发现和维护过程的流程示意图。如图3所示
步骤301 , ENode向FCF发送FIP协议的发现请求报文(FIP Discovery Solicitation)。
步骤302, FCF对ENode地址才莫式进行^r查。
步骤303, FCF对ENode地址模式检查通过后,向ENode返回FIP协 i义的发现通告4艮文(FIP Discovery Advertisements )。
步骤304, ENode对发现通告报文进行最大长度(MAX size )检查、并 获取FCF的物理(MAC )地址。
步骤305, ENode在MAX size检查通过后,向FCF发送承载有光线通 道登录(FLOGI)报文的虚链路实例化请求报文(Virtual Link Instantiation R叫uest)。其中,FLOGI报文属于FC协议的报文,而虛链路实例化请求报 文则属于FIP协议的报文,且FLOGI报文作为FIP协议报文的描述符承载 于虚链路实例化请求报文中。
步骤306, FCF根据虚链路实例化请求报文中承载的FLOGI报文创建 VFC 口 。
步骤307, FCF判断是否允许ENode登录,并在允许ENode的VN 口 登录的情况下,向ENode回复承载有登录响应(LS—ACC)报文的虚链路应 答报文(Virtual Link Instantiation Reply )。其中,LS—ACC报文属于FC协 议的报文,而虚链路应答报文则属于FIP协议的报文,且LS—ACC报文作为 FIP报文的描述符承载于虚链路应答报文中。
步骤308, ENode根据虚链路应答报文中承载的LS_ACC报文创建已向FCF登录的VN接口 ,从而构成该VN 口与FCF的VFC 口之间的虚链路。 经上述步骤301-308,虚链路发现过程结束。
步骤309, FCF按照预设间隔,周期性地向已向该FCF登录的所有ENode 发送FIP协议的非发现通告报文,以供各ENode获知该FCF仍然有效、并 分别维护其VN 口与FCF的VFC 口之间虚链^各的物理层状态。
步骤310, ENode及其已向FCF登录的各VN 口按照预设间隔,周期性 地向所有已登录的FCF发送FIP协议的FIP保活(FKA )报文,ENode发送 的FKA报文表示该ENode仍然有效、VN 口发送的FKA报文则表示该VN 口仍然有步文。
如果FCF对ENode发送的FKA报文4企查失败,则向ENode发送清除 虚链路(FIP Clear Virtual Links )报文、供ENode删除其所有VN 口与FCF 的VFC 口之间的虚链路;如果FCF对VN 口发送的FKA报文检查失败,则 向该VN 口所在ENode发送清除虚链路报文、供ENode删除该VN 口与FCF 的VFC 口之间的虚链路。
上述步骤308-309为虛链路维护的过程。
至此,本流程结束。
然而,现有的上述流程虽然能够实现虚链路的发现和维护,但却存在如 下问题
1、 在虚链路发现过程中,FIP协议的虚链路实例化请求报文和虚链路 应答报文中承载FC协议报文,故需要FIP协议具备解析和构造FC协议报 文的能力。且FIP协议报文与FC协议报文存在功能上的重叠,因而使得报 文交互过程冗余。
2、 在虚链路维护过程中,FIP协议报文对虚链路维护的层次关系混乱。 具体说,ENode在收到FIP协议的非请求通告报文后,会启动一用于维护虚 链路物理层状态的虚链路超时定时器,因此,FIP协议的非请求通告报文就 是用来维护虚链路的物理层状态;而FCF在接收到ENode的FLOGI报文后, 会启动一用于维护VN 口登录状态的虚链^各定时器,VN 口发送的FIP协议的FKA报文则是针对用于维护VN 口登录状态的虚链路定时器,即该FKA 报文是用来维护虚链路的链路层状态。
可见,现有FCoE系统中虚链路发现的实现过程复杂、虚链路維护过程 的层次关系混乱。
发明内容
有鉴于此,本发明提供了一种FCoE系统中的虚链路发现控制方法、以 及一种FCoE系统,能够简化虚链路发现过程的实现,并进一步可选地统一 FIP协议报文对虚链路维护的层次关系。
本发明提供的一种FCoE系统中的虚链路发现控制方法,该方法应用于 以太网节点ENode与FCoE交换机FCF之间,
该方法包^^舌如下步骤
al 、 FCF接收ENode的发现请求报文;
a2、 FCF依据ENode的发现请求报文创建VFC 口 、并对ENode地址模 式进行检查;
a3、 FCF在4企查通过后向该ENode返回发现通告寺艮文、以供该ENode 对发现通告4艮文4企查通过后创建VN 口 。
所述步骤a3之后,该控制方法进一步包括FCF接收ENode周期性地 发送的FCoE初始化协议保活FKA报文,并依据接收到的FKA报文维护 VFC 口与该ENode的VN 口之间的虛链i 各物理层状态。
所述步骤a3之后,该控制方法进一步包括FCF在预定周期内未收到 任意ENode发送的FKA报文时,向该ENode发送清除虚链路报文、以供该 ENode删除其所有VN 口与FCF的与VFC 口之间的虚链路。
所述步骤a3之后,该控制方法进一步包括FCF周期性地向ENode发 送非请求通告报文、以供ENode维护其VN 口与FCF的VFC 口之间的虚链 路物理层状态。
本发明提供的另一种FCoE系统中的虚链路发现控制方法,该方法应用于以太网节点ENode与FCoE交换机FCF之间, 该方法包括如下步骤 bl、 ENode向FCF发送发现请求报文;
b2、 ENode接收FCF在创建VFC 口 、并对该ENode地址才莫式检查通过 后返回的发现通告报文;
b3、 ENode对发现通告报文4全查通过后创建VN 口。
所述步骤b3之后,该控制方法进一步包括ENode周期性地向FCF发 送FCoE初始化协议保活FKA报文、以供FCF维护其VFC 口与该ENode 的VN 口之间的虚链路物理层状态。
所述步骤b3之后,该控制方法进一步包括ENode接收FCF由于未在 预定周期内未收到该ENode发送的FKA报文而返回的清除虚链路报文、并 才艮据清除虚链路报文删除其所有VN 口与FCF的VFC 口之间的虛链路。
所述步骤b3之后,该控制方法进一步包括ENode接收FCF周期性地 发送的非请求通告报文、并依据非请求通告报文维护其VN 口与FCF的VFC 口之间的虚链路物理层状态。
本发明提供的一种FCoE系统,包括以太网节点ENode、 FCoE交换 机FCF,
ENode,用于向FCF发送发现请求才艮文,并在对FCF返回的发现通告 才艮文4全查通过后创建VN 口 ;
FCF,用于依据ENode的发现请求报文创建VFC 口 、并对ENode地址 模式进行4企查,在4企查通过后向该ENode返回发现通告报文。
ENode进一步周期性地向FCF发送FCoE初始化协议保活FKA报文;
FCF进一步依据FKA才艮文维护其VFC 口与该ENode的VN 口之间的虛 链路物理层状态。
FCF进一步在预定周期内未收到任意ENode发送的FKA净艮文时,向该 ENode发送清除虚链路报文;
ENode进一步依据清除虚链路报文删除其所有VN 口与FCF的与VFC
9口之间的虚链路。
FCF进一步周期性地向ENode发送非请求通告才艮文;
ENode进一步依据非请求通告报文维护其VN 口与FCF的VFC 口之间 的虚链路物理层状态。
由上述技术方案可见,本发明去除了虚链路发现过程的虚链路实例化请 求报文和虚链路应答报文、并将其承载的FC协议报文所涉及的处理过程归 还给FC协议执行,因而既能够避免报文交互的冗余、又无需FIP协议具备 解析和构造FC协议报文的能力、还可节省FIP协议报文的描述符,从而能 够简化虚链路发现过程的实现。
进一步地,本发明还在虚链路维护过程中,使所有FIP协议报文均实现 对虚链路物理层状态的维护,从而能够统一 FIP协议报文对虚链路维护的层 次关系、并进一步简化虛链路发现过程的实现。
图1为现有FCoE系统的结构示意图2为如图1所示FCoE系统中的虚链路示意图3为现有虛链路发现和维护过程的流程示意图4为本发明实施例中虚链路发现和维护过程的流程示意图。
具体实施例方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举 实施例,对本发明进一步详细说明。
本实施例中,将虚链路发现过程中的虚链路实例化请求报文和虚链路应 答报文、并将虚链路实例化请求报文和虚链路应答报文中承载的FC协议报 文所涉及的处理过程归还给FC协议执行。这样,既能够避免报文交互的冗 余、又无需FIP协议具备解析和构造FC协议净艮文的能力、还可节省FIP协 议报文的描述符,从而能够简化虚链路发现过程的实现。相应地,虚链路实例化请求报文和虚链路应答报文被去除,因而ENode 创建VN口、以及FCF创建VFC 口的时机需要做相应调整。对此,本实施 例为了避免VN 口和VFC 口创建时机过晚而导致FIP协议报文丢失,因而 在FCF接收ENode的请求发现报文并检验通过后创建VFC 口 、在ENode 4妄收并^r-睑通过FCF发送的发现通告报文后创建VN 口 ,也即将ENode创 建VN 口 、以及FCF创建VFC 口的时机提前。
进一步地,由于虚链路实例化请求报文和虛链路应答报文中承载的FC 协议报文所涉及的例如登录等处理过程归还给FC协议执行,因而本实施例 在虚链5^维护过程中,可以使所有FIP协议报文均实现对虚链^^物理层状态 的维护,而去除现有VN 口发送的用于维护虚链路的链路层状态的FKA报 文,从而能够统一FIP协议报文对虛链路维护的层次关系、并进一步简化虚 链路发现过程的实现。
图4为本发明实施例中虚链路发现和维护过程的流程示意图。如图4所
示
步骤401, ENode向FCF发送FIP协议的发现请求报文。
步骤402, FCF依据ENode的发现请求报文创建VFC 口 、并对ENode
地址模式进行检查。
步骤403, FCF在ENode地址模式检查通过后,向该ENode返回发现
通告报文。
步骤404, ENode对接收自FCF的发现通告报文进行MAX size检验, 并在MAX size检验通过后创建与该FCF的VFC 口连接的至少一个VN 口。
上述步骤401-404为本实施例中虚链i 各发现过程,虚链^各发现过程中的 登录过程可以由FC协议来完成,如何利用FC协议实现VN 口的登录为本 领域技术人员所能够实现,在此不再赘述。
步骤405, ENode 4姿照预定间隔,周期性地向FCF发送4又表示ENode
仍然有效的FKA报文、而不再发送表示VN 口有效的FKA报文。这样,FCF
即可按照现有针对ENode的FKA维护虚链路物理层状态的方式,维护其VFC 口与该ENode各VN 口之间的虚链路物理层状态,而现有对虚链路的 链路层状态的维护则可以归还给FC协议来执行,如何利用FC协议实现虛 链路的链路层状态为本领域技术人员所能够实现,在此不再赘述。
当然,如果FCF在预定周期内未收到任意ENode发送的FKA报文时, 则可向该ENode发送清除虚链路才艮文、以供该ENode删除其所有VN 口与 FCF的与VFC 口之间的虚链路。
步骤406, FCF按照预i殳间隔,周期性地向ENode发送表示该FCF仍 然有效的非请求通告报文。这样,ENode即可维护其各VN 口与FCF的VFC 口之间的虚链路物理层状态。
上述步骤405-406为虚链路维护过程,且步骤405与406可以周期性地 按照任意顺序交替执行、而不是405必须在406之前执行。
至此,本流程结束。
可见,上述虚链路发现流程中省略了虛链路实例化请求报文和虚链路应 答报文、并将其承载的FC协议报文所涉及的处理过程归还给FC协议执行, 因而既能够避免报文交互的冗余、又无需FIP协议具备解析和构造FC协议 报文的能力,还可节省FIP协议报文中为具备解析和构造FC协议报文、而 设置的与FC协议功能重叠的如下现有描述符FLOGI、发现F端口服务参 数及N端口虛拟化(Discover F—Port Service Parameters N—Port—ID Virtualization, FDISC—NPIV )、退出登录(LOGO )、交换链路参数(ELP )、 VN 口标识(VN—Port—Identification )
从而,上述虚链路发现流程能够简化虚链路发现过程的实现。
进一步地,上述虚链路维护流程中,使所有FIP协议报文均实现对虚链 路物理层状态的维护,从而能够统一FIP协议报文对虚链路维护的层次关系、 并进一步简化虚链路发现过程的实现。
基于上述方法,本实施例还提供了一种FCoE系统,该FCoE系统仍包 括ENode和FCF,其中,为了实现虚链路的发现
ENode,用于向FCF发送发现请求报文,并在对FCF返回的发现通告才艮文进4亍MAX size -险查通过后创建VN 口 ;
FCF,用于依据ENode的发现请求报文创建VFC 口 、并对ENode地址 模式进行检查,在ENode地址模式检查通过后向该ENode返回发现通告报 文。
进一步地为了实现虚链路的维护
ENode进一步周期性地向FCF发送仅表示该ENode仍然有效的FKA报 文,而不再发送表示VN 口仍然有效的FKA报文;相应地,FCF进一步依 据FKA报文维护其VFC 口与该ENode的VN 口之间的虚链路物理层状态, 当然,如果FCF在预定周期内未收到任意ENode发送的FKA报文,则向该 ENode发送清除虚链路报文,那么ENode则进一步依据清除虚链路报文删 除其所有VN 口与FCF的与VFC 口之间的虚链路;
此外,FCF还可进一步周期性地向ENode发送非请求通告报文;相应 地,ENode进一步依据非请求通告报文维护其各VN 口与FCF的VFC 口之 间的虚链路物理层状态。
可见,上述FCoE系统省略了虚链路发现过程的虚链路实例化请求报文 和虚链路应答报文、并将其承载的FC协议报文所涉及的处理过程归还给FC 协议执行,因而既能够避免报文交互的冗余、又无需FIP协议具备解析和构 造FC协议报文的能力、还可节省FIP协议报文的描述符,从而能够简化虛 链路发现过程的实现。进一步地,该FCoE系统还在虚链路维护过程中使所 有FIP协议报文均实现对虚链路物理层状态的维护,从而能够统一FIP协议 报文对虚链路维护的层次关系、并进一步简化虚链路发现过程的实现。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范 围。凡在本发明的精神和原则之内,所作的任何修改、等同替换以及改进等, 均应包含在本发明的保护范围之内。
1权利要求
1、一种以太网承载光纤通道协议FCoE系统中的虚链路发现控制方法,该方法应用于以太网节点ENode与FCoE交换机FCF之间,其特征在于,该方法包括如下步骤a1、FCF接收ENode的发现请求报文;a2、FCF依据ENode的发现请求报文创建VFC口、并对ENode地址模式进行检查;a3、FCF在检查通过后向该ENode返回发现通告报文、以供该ENode对发现通告报文检查通过后创建VN口。
2、 如权利要求1所述的控制方法,其特征在于,所述步骤a3之后,该 控制方法进一步包括FCF接收ENode周期性地发送的FCoE初始化协议保 活FKA报文,并依据接收到的FKA报文维护VFC 口与该ENode的VN 口 之间的虚链路物理层状态。
3、 如权利要求2所述的控制方法,其特征在于,所述步骤a3之后,该 控制方法进一步包括FCF在预定周期内未收到任意ENode发送的FKA报 文时,向该ENode发送清除虚链路才艮文、以供该ENode删除其所有VN 口 与FCF的与VFC 口之间的虚链路。
4、 如权利要求1至3中任一项所述的控制方法,其特征在于,所述步 骤a3之后,该控制方法进一步包括FCF周期性地向ENode发送非请求通 告才艮文、以供ENode维护其VN 口与FCF的VFC 口之间的虚链路物理层状 态。
5、 一种以太网承载光纤通道协议FCoE系统中的虚链路发现控制方法, 该方法应用于以太网节点ENode与FCoE交换机FCF之间,其特征在于,该方法包括如下步骤 bl 、 ENode向FCF发送发现请求报文;b2、 ENode接收FCF在创建VFC 口 、并对该ENode地址模式检查通过后返回的发现通告报文;b3、 ENode对发现通告纟艮文4企查通过后创建VN 口 。
6、 如权利要求5所述的控制方法,其特征在于,所述步骤b3之后,该 控制方法进一步包括ENode周期性地向FCF发送FCoE初始化协议保活 FKA报文、以供FCF维护其VFC 口与该ENode的VN 口之间的虚链路物理 层状态。
7、 如权利要求6所述的控制方法,其特征在于,所述步骤b3之后,该 控制方法进一步包括ENode接收FCF由于未在预定周期内未收到该ENode 发送的FKA报文而返回的清除虚链路报文、并根据清除虚链路报文删除其 所有VN 口与FCF的VFC 口之间的虚链路。
8、 如权利要求5至7中任一项所述的控制方法,其特征在于,所述步 骤b3之后,该控制方法进一步包括ENode接收FCF周期性地发送的非请 求通告报文、并依据非请求通告报文维护其VN 口与FCF的VFC 口之间的 虚链路物理层状态。
9、 一种以太网岸义载光纤通道FCoE系统,包括以太网节点ENode、 FCoE交换机FCF,其特征在于,ENode,用于向FCF发送发现请求才艮文,并在对FCF返回的发现通告 净艮文4企查通过后创建VN 口 ;FCF,用于依据ENode的发现请求报文创建VFC 口 、并对ENode地址 才莫式进行4企查,在4企查通过后向该ENode返回发现通告报文。
10、 如权利要求9所述的系统,其特征在于,ENode进一步周期性地向FCF发送FCoE初始化协议保活FKA报文; FCF进一步依据FKA报文维护其VFC 口与该ENode的VN 口之间的虚 链路物理层状态。
11、 如权利要求IO所述的系统,其特征在于,FCF进一步在预定周期内未收到任意ENode发送的FKA才艮文时,向该 ENode发送清除虚链路报文;ENode进一步依据清除虚链路报文删除其所有VN 口与FCF的与VFC口之间的虚链^各。
12、如权利要求9至11中任一项所述的系统,其特征在于,FCF进一步周期性地向ENode发送非请求通告净艮文;ENode进一步依据非请求通告报文维护其VN 口与FCF的VFC 口之间的虚链路物理层状态。
全文摘要
本发明公开了一种虚链路发现控制方法以及以太网承载光纤通道协议(FCoE)系统。本发明去除了虚链路发现过程的虚链路实例化请求报文和虚链路应答报文、并将其承载的FC协议报文所涉及的处理过程归还给FC协议执行,因而既能够避免报文交互的冗余、又无需FIP协议具备解析和构造FC协议报文的能力、还可节省FIP协议报文的描述符,从而能够简化虚链路发现过程的实现。进一步地,本发明还在虚链路维护过程中,使所有FIP协议报文均实现对虚链路物理层状态的维护,从而能够统一FIP协议报文对虚链路维护的层次关系、并进一步简化虚链路发现过程的实现。
文档编号H04L29/06GK101656721SQ20091009056
公开日2010年2月24日 申请日期2009年8月27日 优先权日2009年8月27日
发明者张长君 申请人:杭州华三通信技术有限公司