CN103607321B - 一种FCoE虚链路故障检测方法 - Google Patents

一种FCoE虚链路故障检测方法 Download PDF

Info

Publication number
CN103607321B
CN103607321B CN201310576186.0A CN201310576186A CN103607321B CN 103607321 B CN103607321 B CN 103607321B CN 201310576186 A CN201310576186 A CN 201310576186A CN 103607321 B CN103607321 B CN 103607321B
Authority
CN
China
Prior art keywords
virtual link
time
fcf
enode
fcoe
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201310576186.0A
Other languages
English (en)
Other versions
CN103607321A (zh
Inventor
陈进才
余乐
周功业
周可
张英男
刘玉虎
卢萍
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CN201310576186.0A priority Critical patent/CN103607321B/zh
Publication of CN103607321A publication Critical patent/CN103607321A/zh
Application granted granted Critical
Publication of CN103607321B publication Critical patent/CN103607321B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明公开了一种FCoE虚链路故障检测方法,包括:FCoE设备在虚链路上发送完一个FCoE报文后,设置虚链路空闲定时器;如果在虚链路空闲定时器超时前,FCF或ENode接收到数据,则删除虚链路空闲定时器;反之,如果虚链路空闲定时器超时,FCoE设备设置虚链路失效定时器,并向对端FCoE设备发送维持FCoE虚链路的报文;当所设置的虚链路失效定时器超时时,如果所述FCoE设备尚未收到对端FCoE设备的反馈,则所述FCoE设备检测出与对端FCoE设备之间的FCoE虚链路出现故障。本发明只在虚链路空闲时按照较小的周期发送维持FCoE虚链路的报文,既能够快速检测出FCoE虚链路的失效情况,又不影响网络带宽。

Description

一种FCoE虚链路故障检测方法
技术领域
本发明属于以太网光纤通道(FCoE,Fibre Channel over Ethernet)技术领域,更具体地,涉及一种FCoE虚链路故障检测方法。
背景技术
以太网光纤通道技术是一种在无损以太网上传输FC(Fibre Channel)帧的新协议。FCoE通过将FC帧映射在以太网帧中并通过虚拟链路替换物理光纤通道链路来使光纤通道和以太网的整合得以实现。让存储网络中的数据可轻易跨越光纤和以太网的界限,从而降低用户在存储网络构建和管理方面的成本和复杂性。
支持FCoE协议的设备称为FCoE设备,其中支持FCoE的交换机称为FCoE交换机(FCF,FCoE Forwarder),支持FCoE的通信节点称为E节点(ENode)。在图1所示的FCoE网络中,在FCF102和ENode101之间传输数据之前,需要先建立并维护FCoE虚链路,FCoE初始化协议(FIP,FCoE InitializationProtocol)则是用于初始化FCoE设备(包括FCF与ENode之间、FCF与FCF之间)之间的虚链路协议。
FIP主要功能包括节点设备的发现,虚链路的建立、维持和删除。发现过程如下:ENode发送一个广播发现请求帧,该请求帧包含了ENode的名字标识符等信息。允许与该ENode相连并注册的FCF向它发送一个回复帧,该回复帧包含了FCF的MAC地址信息;完成发现过程之后,ENode根据收到的回复帧决定向FCF发送注册请求(login solicitiation)。该请求帧以单播形式发往各个FCF端口,FCF接收到请求帧后会向ENode回送注册确认帧,FCF根据注册请求帧回复不同的确认帧并建立虚链路;虚链路的维护是指当前FCoE设备定期发送维持报文,维持FCoE虚链路有效,同时通过检测对端发送的维持报文来确定FCoE虚链路状态有效;虚链路的删除则指FCoE设备之间的数据传输任务已经完成,不再需要虚链路,从而撤销虚链路并删除该链路在FCoE设备上的所有相关信息。
在图2中描述了现有技术中FCF和ENode之间维持虚链路的过程。主要过程如下:
1.FCF周期性(周期记为FKA_ADV_PERIOD,默认为8s)地向ENode发送非请求发现通告报文(Un-solicitation Discovery AdvertisementMessage)。如果ENode收到非请求发现通告报文,则继续维持与FCF之间的虚链路;如果在2.5×FKA_ADV_PERIOD=20s时间内没有收到非请求发现通告报文,则认为两者之间出现故障,从而删除与FCF之间的虚链路。
2.ENode周期性(该周期也为FKA_ADV_PERIOD,默认8s)地向FCF发送FIP保活(FKA,FIP Keep Alive)报文。如果FCF收到FKA报文,则继续维持与ENode之间的虚链路;如果在2.5×FKA_ADV_PERIOD=20s时间内没有收到FKA报文,则认为两者之间出现故障,从而删除与ENode之间的虚链路。
通过上面的介绍可知,当虚链路两个节点之一出现故障时,FCoE设备需要2.5×8s=20s才能发现这一情况,这导致FCF与ENode之间常时间处于异常状态。如果缩短FKA_ADV_PERIOD,会减少这段时间,但是网络中的报文数量会急剧增大,影响整个网络的带宽。因此,如果快速检测出FCoE设备之间的虚链路故障而又不影响整个网络的带宽,成为急需解决的问题。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提出一种FCoE虚链路故障检测的方法,其目的在于能够在不影响整个网络带宽的情况下,快速的检测出虚链路出现故障,由此解决现有技术中无法快速检测FCF与ENode之间的故障、虚链路长时间处于异常状态的问题。
为实现以上发明目的,本发明采用以下技术方案:
一种FCoE虚链路故障检测方法,包括以下步骤:
步骤301、ENode或FCF在虚链路上传输完一个FCoE报文后,设置各自相应的一个虚链路空闲定时器,超时时间为AVG_TRAN_TIME;
步骤302、如果在ENode虚链路空闲定时器或FCF虚链路空闲定时器超时前FCoE设备上有数据到达,则删除该虚链路空闲定时器,待数据传输完成后重新设置该虚链路空闲定时器;
步骤303、如果ENode虚链路空闲定时器超时,ENode设置ENode虚链路失效定时器,超时时间设置为2.5×REP_FKA_ADV_PERIOD_0,并向对端发送FIP保活报文;
步骤304、FCF接收到ENode发送的FIP保活报文,向ENode反馈非请求发现通告报文;
步骤305、ENode在上述ENode虚链路失效定时器超时前收到FCF反馈的非请求发现通告报文,因此,ENode检测出与FCF之间的FCoE虚链路没有出现故障,ENode删除ENode虚链路失效定时器,继续维持FCoE虚链路,并重新设置ENode虚链路空闲定时器;
步骤306、如果FCF虚链路空闲定时器超时,FCF设置FCF虚链路失效定时器,超时时间设置为2.5×REP_FKA_ADV_PERIOD_1,并向对端发送FIP非请求发现通告报文;
步骤307、ENode接收到FCF发送的FIP非请求发现通告报文,向FCF反馈FIP保活报文;
步骤308、FCF在上述FCF虚链路失效定时器超时前收到ENode反馈的FIP保活报文,因此,FCF检测出与ENode之间的FCoE虚链路没有出现故障,FCF删除FCF虚链路失效定时器,继续维持FCoE虚链路,并重新设置FCF虚链路空闲定时器。
本发明具有以下有益效果:只在虚链路空闲时按照较小的周期发送维持FCoE虚链路的报文,既能够快速检测出FCoE虚链路的失效情况,又不影响网络带宽。
附图说明
图1是现有技术中FCoE网络结构示意图;
图2是现有技术中FCF和ENode之间FCoE虚链路维持过程流程图;
图3是本发明FCoE虚链路的故障检测方法实施实例的实现流程图;
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
图3为本发明的FCoE虚链路故障检测方法的较优实施例的实现流程图。本实施实例以应用于图1所示的FCoE网络结构为例进行说明。检测方法包含以下步骤:
步骤301、ENode或FCF在虚链路上传输完一个FCoE报文后,设置各自相应的一个虚链路空闲定时器,超时时间为AVG_TRAN_TIME。
在本步骤中,AVG_TRAN_TIME可以按如下方法设置并动态更新:
令AVG_TRAN_TIME=t1×0.4+1.2×t2×0.6,设定t1,t2的初始值,每当虚链路上有报文到达时,计算当前时间与上一报文到达时间的差值,并更新t2的值为该差值,然后更新t1为当前AVG_TRAN_TIME的值,并根据更新后的t1,t2重新计算AVG_TRAN_TIME;如果在空闲定时器超时时仍没有数据到达,则令t2恢复为初始值,更新t1为当前AVG_TRAN_TIME的值,并重新计算AVG_TRAN_TIME,如果AVG_TRAN_TIME大于t1初始值×0.4+1.2×t2初始值×0.6,则令AVG_TRAN_TIME=t1初始值×0.4+1.2×t2初始值×0.6。
在本特定实施例中,设定初始值为t1=1000ms,t2=1000ms。当然,该t1,t2的初始值可以根据实际情况进行设置,也可以设置为其他的不同值。
步骤302、如果在ENode虚链路空闲定时器或FCF虚链路空闲定时器超时前FCoE设备上有数据到达,则删除该虚链路空闲定时器,待数据传输完成后重新设置该虚链路空闲定时器。
步骤303、如果ENode虚链路空闲定时器超时,ENode设置ENode虚链路失效定时器,超时时间设置为2.5×REP_FKA_ADV_PERIOD_0,并向对端发送FIP保活报文。
在本特定实施例中,参数REP_FKA_ADV_PERIOD_0设置为100ms,因此虚链路失效定时器的超时时间为250ms。当然,该参数可以根据实际情况进行设置,也可以设置为其他的不同值。
步骤304、FCF接收到ENode发送的FIP保活报文,向ENode反馈非请求发现通告报文。
步骤305、ENode在上述ENode虚链路失效定时器超时前收到FCF反馈的非请求发现通告报文,因此,ENode检测出与FCF之间的FCoE虚链路没有出现故障,ENode删除ENode虚链路失效定时器,继续维持FCoE虚链路,并重新设置ENode虚链路空闲定时器。
其中,上述步骤303--305是ENode检测FCoE虚链路故障的过程,以下的步骤306--308为FCF检测FCoE虚链路故障的过程,与上述ENode的检测过程类似。应当理解,这两个过程可以同时进行,二者互不影响。
步骤306、如果FCF虚链路空闲定时器超时,FCF设置FCF虚链路失效定时器,超时时间设置为2.5×REP_FKA_ADV_PERIOD_1,并向对端发送FIP非请求发现通告报文。
在本特定实施例中,参数REP_FKA_ADV_PERIOD_1设置为100ms,因此虚链路失效定时器的超时时间为250ms。该参数可以根据实际情况进行设置,也可以设置为其他的不同值。
步骤307、ENode接收到FCF发送的FIP非请求发现通告报文,向FCF反馈FIP保活报文。
步骤308、FCF在上述FCF虚链路失效定时器超时前收到ENode反馈的FIP保活报文,因此,FCF检测出与ENode之间的FCoE虚链路没有出现故障,FCF删除FCF虚链路失效定时器,继续维持FCoE虚链路,并重新设置FCF虚链路空闲定时器。
综上所述,可知本发明相对于现有技术的优点:在现有技术中,FCF和ENode均以FKA_AVD_PERIOD为周期发送维持FCoE虚链路的报文,如果无法及时收到对端的反馈,则检测出FCoE虚链路的故障;虽然现有技术能够检测出FCoE虚链路的故障,但是,由于现有技术中FKA_ADV_PERIOD一般设置为8s,而本发明可以将发送维持FCoE虚链路的报文的周期REP_FKA_ADV_PERIOD设置为较小的值(如100ms--1000ms),这样,本发明就能快速检测到FCoE虚链路的故障。并且只有在虚链路空闲的前提下才会触发本发明的实施,保证了在正常情况下不会增加网络负担,减少网络中维持FCoE虚链路报文对网络带宽的影响。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (5)

1.一种FCoE虚链路故障检测方法,包括以下步骤:
步骤301、ENode或FCF在虚链路上传输完一个FCoE报文后,设置各自相应的一个虚链路空闲定时器,超时时间为AVG_TRAN_TIME;
步骤302、如果在ENode虚链路空闲定时器或FCF虚链路空闲定时器超时前FCoE设备上有数据到达,则删除该虚链路空闲定时器,待数据传输完成后重新设置该虚链路空闲定时器;
步骤303、如果ENode虚链路空闲定时器超时,ENode设置ENode虚链路失效定时器,超时时间设置为2.5×REP_FKA_ADV_PERIOD_0,并向对端发送FIP保活报文;
步骤304、FCF接收到ENode发送的FIP保活报文,向ENode反馈非请求发现通告报文;
步骤305、ENode在上述ENode虚链路失效定时器超时前收到FCF反馈的非请求发现通告报文,因此,ENode检测出与FCF之间的FCoE虚链路没有出现故障,ENode删除ENode虚链路失效定时器,继续维持FCoE虚链路,并重新设置ENode虚链路空闲定时器;
步骤306、如果FCF虚链路空闲定时器超时,FCF设置FCF虚链路失效定时器,超时时间设置为2.5×REP_FKA_ADV_PERIOD_1,并向对端发送FIP非请求发现通告报文;
步骤307、ENode接收到FCF发送的FIP非请求发现通告报文,向FCF反馈FIP保活报文;
步骤308、FCF在上述FCF虚链路失效定时器超时前收到ENode反馈的FIP保活报文,因此,FCF检测出与ENode之间的FCoE虚链路没有出现故障,FCF删除FCF虚链路失效定时器,继续维持FCoE虚链路,并重新设置FCF虚链路空闲定时器;
其中,步骤301中,AVG_TRAN_TIME按如下步骤设置并动态更新:
令AVG_TRAN_TIME=t1×0.4+1.2×t2×0.6,设定t1,t2的初始值,每当虚链路上有报文到达时,计算当前时间与上一报文到达时间的差值,并更新t2的值为该差值,然后更新t1为当前AVG_TRAN_TIME的值,并根据更新后的t1,t2重新计算AVG_TRAN_TIME;如果在空闲定时器超时时仍没有数据到达,则令t2恢复为初始值,更新t1为当前AVG_TRAN_TIME的值,并重新计算AVG_TRAN_TIME,如果AVG_TRAN_TIME大于(t1初始值×0.4+1.2×t2初始值×0.6),则令AVG_TRAN_TIME=(t1初始值×0.4+1.2×t2初始值×0.6)。
2.根据权利要求1所述的检测方法,其中,设定初始值为t1=1000ms,t2=1000ms。
3.根据权利要求1所述的检测方法,步骤303中,参数REP_FKA_ADV_PERIOD_0设置为100ms,ENode虚链路失效定时器的超时时间为250ms。
4.根据权利要求1所述的检测方法,步骤306中,参数REP_FKA_ADV_PERIOD_1设置为100ms,FCF虚链路失效定时器的超时时间为250ms。
5.根据权利要求1所述的检测方法,其中,步骤303至305与步骤306至308同时进行。
CN201310576186.0A 2013-11-18 2013-11-18 一种FCoE虚链路故障检测方法 Expired - Fee Related CN103607321B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310576186.0A CN103607321B (zh) 2013-11-18 2013-11-18 一种FCoE虚链路故障检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310576186.0A CN103607321B (zh) 2013-11-18 2013-11-18 一种FCoE虚链路故障检测方法

Publications (2)

Publication Number Publication Date
CN103607321A CN103607321A (zh) 2014-02-26
CN103607321B true CN103607321B (zh) 2016-08-31

Family

ID=50125522

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310576186.0A Expired - Fee Related CN103607321B (zh) 2013-11-18 2013-11-18 一种FCoE虚链路故障检测方法

Country Status (1)

Country Link
CN (1) CN103607321B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105002519A (zh) * 2014-04-22 2015-10-28 蓝星(北京)化工机械有限公司 一种使大型螯合树脂塔节水的二次盐水精制方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101552740A (zh) * 2009-05-14 2009-10-07 腾讯科技(北京)有限公司 即时通信系统、客户端、服务器及判定在线状态的方法
CN101656721A (zh) * 2009-08-27 2010-02-24 杭州华三通信技术有限公司 虚链路发现控制方法和以太网承载光纤通道协议系统
CN102045248A (zh) * 2009-10-19 2011-05-04 杭州华三通信技术有限公司 虚链路发现控制方法和以太网承载光纤通道协议系统
CN102111306A (zh) * 2009-12-23 2011-06-29 杭州华三通信技术有限公司 基于以太网的光纤通道虚链路故障检测方法、系统和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101552740A (zh) * 2009-05-14 2009-10-07 腾讯科技(北京)有限公司 即时通信系统、客户端、服务器及判定在线状态的方法
CN101656721A (zh) * 2009-08-27 2010-02-24 杭州华三通信技术有限公司 虚链路发现控制方法和以太网承载光纤通道协议系统
CN102045248A (zh) * 2009-10-19 2011-05-04 杭州华三通信技术有限公司 虚链路发现控制方法和以太网承载光纤通道协议系统
CN102111306A (zh) * 2009-12-23 2011-06-29 杭州华三通信技术有限公司 基于以太网的光纤通道虚链路故障检测方法、系统和装置

Also Published As

Publication number Publication date
CN103607321A (zh) 2014-02-26

Similar Documents

Publication Publication Date Title
CN101771618B (zh) 一种分组传送网络接入环中主机路由可达的方法及系统
US7895425B2 (en) Operation, administration and maintenance (OAM) in a service insertion architecture (SIA)
EP2586163B1 (en) Notifying a controller of a change to a packet forwarding configuration of a network element over a communication channel
US8416696B2 (en) CFM for conflicting MAC address notification
KR101548034B1 (ko) 프로바이더 네트워크에서의 cc 메시지 송신의 감소
US8539088B2 (en) Session monitoring method, apparatus, and system based on multicast technologies
US20140254347A1 (en) Ethernet Ring Protection Switching Method, Node, and System
US20180139173A1 (en) Method and apparatus for implementing a fibre channel zone policy
US9167031B2 (en) Distributed processing system and distributed processing method
TW201223205A (en) Communication device, communication system, communication method, and recording medium
CN102624929A (zh) 一种基于虚拟网关的无线传感网网关冗余方法
WO2010143607A1 (ja) 通信ネットワーク管理システム、方法、及び管理計算機
CN103607321B (zh) 一种FCoE虚链路故障检测方法
CN101119275B (zh) 使业务提供商设备获取信息的方法、设备和系统
CN103227733B (zh) 一种拓扑发现方法及系统
WO2015184840A1 (zh) 响应消息的获取、响应消息的路由方法、装置及系统
CN104468158A (zh) 一种节点间状态通告的方法和设备
CN104468386B (zh) 一种以太网虚拟化互联网络中的流量均衡方法和装置
CN106341297B (zh) 一种监控环网的组网方法和装置
KR20160072718A (ko) 소프트웨어 정의 네트워크에서 인접 네트워크 장비 발견 시스템 및 방법
Hirota et al. Experimental demonstration of optical multicast packet transmissions in optical packet/circuit integrated networks
US20160315839A1 (en) Transmission method, transmission system, and transmission device
CN105553864B (zh) 降低lmp中消息数量的方法及装置
CN103595629A (zh) 一种irdp网络中主机网关快速切换的方法和装置
CN104135434A (zh) 以太网虚拟化互联网络中的路径切换方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160831

Termination date: 20181118

CF01 Termination of patent right due to non-payment of annual fee