CN101395853A - 有效地动态维护一束链路上的双向转发检测的技术 - Google Patents

有效地动态维护一束链路上的双向转发检测的技术 Download PDF

Info

Publication number
CN101395853A
CN101395853A CNA2007800075383A CN200780007538A CN101395853A CN 101395853 A CN101395853 A CN 101395853A CN A2007800075383 A CNA2007800075383 A CN A2007800075383A CN 200780007538 A CN200780007538 A CN 200780007538A CN 101395853 A CN101395853 A CN 101395853A
Authority
CN
China
Prior art keywords
bfd
bundle
link
session
movable
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.)
Granted
Application number
CNA2007800075383A
Other languages
English (en)
Other versions
CN101395853B (zh
Inventor
拉沙德·A·拉赫曼
大卫·P·托斯卡诺
斯尔万恩·玛斯
戴维·D·沃德
尼尔·R·凯特利
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.)
Cisco Technology Inc
Original Assignee
Cisco Technology Inc
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 Cisco Technology Inc filed Critical Cisco Technology Inc
Publication of CN101395853A publication Critical patent/CN101395853A/zh
Application granted granted Critical
Publication of CN101395853B publication Critical patent/CN101395853B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • H04L45/245Link aggregation, e.g. trunking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • H04L45/247Multipath using M:N active or standby paths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/60Router architectures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/0001Selecting arrangements for multiplex systems using optical switching
    • H04Q11/0062Network aspects
    • H04Q2011/0079Operation or maintenance aspects
    • H04Q2011/0081Fault tolerance; Redundancy; Recovery; Reconfigurability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13162Fault indication and localisation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种在计算机网络中有效地动态维护一束链路上的双向转发检测(BFD)的技术。根据本新颖技术,可在一个或多个对应的线卡(LC)上建立一个或多个“待命”BFD会话,所述LC具有所述束的一个或多个链路(束链路)。一旦建立,就可根据对应的LC的束链路的活动性,将所述待命BFD会话中的一个选作活动BFD会话。并且,可从活动BFD会话的束链路(例如,接收BFD消息的链路)中的一个发送BFD消息。响应于发送链路的不活动(例如,失效、移除等),活动BFD会话可切换到另一个可用的活动束链路,并且,如果对所述活动BFD会话,没有其它可用的活动束链路,则将待命BFD会话中的一个选作新的活动BFD会话,如果不存在其它待命BFD会话,则确定所述链路束已经失效。

Description

有效地动态维护一束链路上的双向转发检测的技术
技术领域
本发明涉及计算机网络技术,以及具体涉及在计算机网络中维护一束链路(a bundle of links)上的双向转发检测(Bidirectional ForwardingDetection,BFD)。
背景技术
计算机网络是互连子网在地理上的分布式集合,所述子网例如是在网络节点之间传送数据的局域网(LAN)。在此使用的网络节点是适于在计算机网络中发送和/或接收数据的任何装置。因此,在本文中,可以交换使用“节点”和“装置”。由网络节点的排列定义网络拓扑,所述网络节点通常经由一个或者多个例如路由器和交换机之类的中间节点彼此进行通信。除了网内通信以外,还可在相邻的(即,邻近的)网络之间交换数据。为此,位于计算机网络的逻辑外围(logic outer-bound)的“边界装置”(edge device)可适于发送和接收网间通信。网内通信和网间通信两者通常都通过根据预定协议交换分散的数据分组而实现。在此语境中,协议由定义网络节点彼此如何交互的一组规则构成。
每个数据分组通常包括“有效载荷”数据,所述“有效载荷”数据前置(“封装”)了至少一个根据网络通信协议格式化的网络报头。网络报头包括使网络节点能够有效地将分组路由经过计算机网络的信息。如传输控制协议/网际协议(TCP/IP)参考模型所定义的,分组的网络报头常常包括数据链路层(层2)报头、网络层(层3)报头、传输层(层4)报头。TCP/IP参考模型在参考书《计算机网络》(Computer Networks,第四版,Andrew Tanenbaum著,2003年出版)中的1.4.2节进行了更详细的一般描述,通过引用将该参考书结合进来,如同在本文中做了完全阐述那样。数据分组可在源节点产生,并且随后沿着逻辑数据路径从一个节点“跳”向另一个节点,直到其到达其寻址目的节点。定义数据流的逻辑数据路径的网络地址常常作为网际协议(IP)地址存储在分组的网络报头中。
计算机网络可能包含多个由一个或者多个子网组成的较小的群,所述群可以作为分离的路由选择域(routing domain)进行管理。在此使用的路由选择域广泛解释为公共管理下的互连网络节点的集合。通常,例如是公司、学术机构或政府部门之类的单个管理实体管理路由选择域。有时也将这样的集中管理路由选择域称为“自治系统”。一般而言,路由选择域可以作为企业网、服务提供商或者任何其它类型的网络或者子网进行操作。此外,路由选择域可能包含一个或多个边界装置,所述边界装置具有到邻近路由域中的边界装置的“对等”连接。
路由选择域内的网络节点通常设置为使用来自“内部网关”路由协议的预定路径来转发数据,所述“内部网关”路由协议例如是传统的链路状态协议和距离矢量协议。这些内部网关协议(IGP)定义在路由选择域中交换和处理路由信息和网络拓扑信息的方式。(例如,通过IGP消息)交换的路由信息通常包括目的地址前缀,即被路由选择协议用来提交(render)路由(“下一跳”)决定的目的地址部分。这种目的地址的示例包括IP Version 4(IPv4)和IP Version 6(Ipv6)地址。如此,每个中间节点接收一致的域拓扑的“视图”。在参考书《互连》(Inter-connections,第二版,Radia Perlman著,2000年1月出版)的12.1到12.3节中描述了现有技术中已知的链路状态和距离矢量协议的示例,例如优先开放最短路径(OSPF)协议和路由信息协议(RIP),通过引用将该参考书结合进来,如同在本文中做了完全阐述那样。
通常采用边界网关协议(BGP)作为“外部网关”路由协议,以在自治系统之间路由数据。BGP是众所周知的,并且在请求注解(Request forComments,RFC)1771的《边界网关协议4》(A Border Gateway Protocol4(BGP-4),Y.Rekhter等著,1995年3月出版)中进行了一般描述,此文可通过互联网工程任务组(Internet Engineering Task Force,IETF)公开获得,并且在此通过引用全部结合进来。通常,BGP在例如TCP之类的可靠传输协议上进行操作,以建立TCP连接/BGP会话。还可扩展BGP以兼容除标准互联网连接以外的服务。例如,多协议BGP(MP-BGP)支持允许BGP消息传送多协议信息的各种地址家族标识符(AFI)域。
路由选择域内的网络节点可检测域拓扑中的变化。例如,由于节点之间的链路失效或者相邻节点失效,例如变成“离线”等等,节点可能变得不能与其相邻节点中的一个通信。如果已检测到的节点失效或链路失效发生在路由选择域内,则检测节点可能使用IGP消息将域内拓扑变化公告给域内其它节点。类似地,如果边界装置检测到阻止与相邻路由选择域进行通信的节点失效或链路失效,则边界装置可能将域间拓扑变化传播给在其路由选择域内的其它边界装置(例如,使用BGP消息)。在任一种情况中,网络拓扑变化的传播都发生在路由选择域中,并且因此,域中节点收敛到新的网络拓扑的一致视图上,即没有失效节点或链路。
本技术领域的技术人员可以理解,期望迅速检测到节点或链路的失效以丢失最少的流量。传统上,因为通常在两个域间装置之间采用BGP会话,所以,可采用BGP KEEPALIVE消息来确定是否可达到对等方(例如,对于链路失效或节点失效)。例如,BGP可能定义Hold Time(保持时间)间隔,该间隔的到期指示已经在BGP会话中发生错误(例如,至少3秒)。在装置处接收到的每一个BGP消息重置Hold Time。可在BGP会话装置之间交换BGP KEEPALIVE消息以重置Hold Time。如此,交换的KEEPALIVE消息之间的间隔必须足够频繁,使得不会造成Hold Time到期。传统上,KEEPALIVE消息之间合理的最大时间应该是Hold Time间隔的三分之一。然而,根据在RFC 1771中阐述的BGP标准,例如,不能以比一秒一次更频繁地发送KEEPALIVE消息,以使BGP装置之间的流量最小。注意,倘若Hold Time已经终止,则装置可能“中断”(即,拆除或关闭)BGP会话。类似地,本领域技术人员可以理解,网络内的IGP节点可交换IGP HELLO消息来确定是否可达到内部对等方(域内节点)。
因为对更快的网络响应时间和收敛的需求增加,管理者常常要求各个网络装置快速检测失效的能力。双向转发检测(BFD)在装置之间提供快速的失效检测时间,同时维持较小的开销。例如,BFD失效检测可能快至50毫秒(ms),而上述BGP(和IGP)方法是秒级的(例如,3秒)。BFD根据两个装置之间BFD控制分组的快速传输(例如,本领域技术人员可以理解,几乎没有直到完全没有BFD保持时间)验证两个装置之间的连接。注意,BFD还在任何协议层和任何介质上提供单个的、标准化的链路/装置/协议失效检测方法。除了快速的失效检测以外,BFD另一益处在于,其向网络管理者提供了检测失效的一致方法。因此,可使用一种可用性方法,而不考虑网络的协议(例如,BGP、IGP等)或拓扑。在《双向链路转发》(Bidirectional Forwarding Detection<draft-ietf-bfd-base-04.txt>,Katz等著,互联网草案,2005年10月)中进一步描述了BFD,通过引用将该文献的内容结合进来,如同在此做了完全阐述那样。一般而言,在网络节点(例如,路由器)之间建立BFD会话,以在节点之间的特定链路上监控节点的连接。
出于本领域技术人员可以理解的各种原因,用户经常将链路组织为群或“束”。例如,链路群可以用于冗余、负载均衡,和/或增加网络中两点间的可用带宽,这例如是通过将多个较小的/较慢的链路组合成单个链路群来实现的,所述单个链路群产生比各个较小的/较慢的链路更大的带宽。链路束的各种形式包括链路捆绑/聚合、以太信道(EtherChannel)和多链路点对点协议(PPP),在RFC 1990的《PPP多链路协议》(The PPPMultilink Protocol(MP),1996年8月出版)中描述了多链路点对点协议。本领域技术人员可以理解链路束的其它示例,在此描述的那些只是示例。例如,VLAN(虚拟LAN,或在不同物理LAN网段上如同在相同物理LAN段上一样进行操作的网络装置/元件群)的链路也可以成束。
就如同BFD可用来非常快速地确定两个节点之间的连接一样,也可能期望快速地确定两节点(或更多,本技术领域的技术人员可以理解)之间的链路束所维护的操作(即,连接)。在链路束是活动的(active),即仍然能够发送流量的同时,该束上的BFD会话应该保持活动。换而言之,只要该束的一个或多个(可配置)链路(“束链路”)可操作,该束就应当还是活动的,并且因此该BFD会话应该仍是活动的。因此,如果该束的其它链路仍然可操作,则以下任何事件都不应造成该束上的BFD会话失效:束链路的失效;容宿(host)一个或多个束链路的线卡(line card,LC)的在线插入和移除(OIR);链路添加到该束;束链路的移除;束链路的关断;节点的集中路由处理器(RP)或控制卡失效(RP失效备援(failover))等等。
将BFD提供给链路束的一种技术方案是集中BFD会话,例如基于RP的BFD会话。在集中BFD会话中,RP(或控制卡)监控BFD会话和每一个束链路的状态。可能在每一个束链路上发送BFD消息,使得在至少一个束链路可操作时,该束也可操作,并且因此集中BFD会话也可操作。然而,在许多情况中,在节点之间发送的大量BFD消息会违反各种BFD参数,所述各种BFD参数例如是在BFD会话初始化(协商)期间取得一致的分组之间的最大分组传输量或时间。此外,位于链路束任一端的两个例如路由器(层3)之类的节点还可能通过一个或多个中间交换机(层2)分开。所述一个或多个交换机可从一个路由器接收多个BFD消息,但是,根据交换机处的路由/转发决定(例如,层2哈希算法),交换机可能只继续单个束链路上的BFD消息的传输,而另一个束链路不被监控。此外,还可通过不同数量的链路将两个路由器连接到交换机(例如,来自每个路由器的链路束在交换机处终结),使得BFD消息不可能一对一映射到各个链路。
或者,集中BFD会话可能改为在单个链路上发送和接收BFD消息,以应对在所有束链路上发送BFD消息的一些限制。当经由单个链路接收到BFD消息时,所述链路束仍然是可操作的。当在所述链路上不再接收BFD消息时,集中BFD会话必须选择所述束的不同的链路来发送和接收BFD消息。
操作用于链路束的集中BFD会话的主要缺点是:如果RP(控制卡)失效,则集中BFD会话也会失效,在至少还有一个容宿链路束的LC仍然是可操作的地方,导致链路束失效的错误指示。显而易见,对于很多应用,集中BFD会话是不可靠的。其它的缺点包括:对于多链路束不足的可扩展性,和降低的性能。例如,本领域技术人员可以理解,RP常常担负节点的许多不同操作的任务,例如更新路由表、产生广播消息等。如此,专用于BFD会话的时间会比维持BFD协议的高要求反应时间(即,亚秒失效检测)所需的时间更少。为了补偿集中BFD会话潜在的较慢的反应时间(例如,用于在单个链路BFD会话期间选择新链路),可能有必要使用更长的超时值(保持定时器),以使RP根据网络中的变化调整。因此,仍需要在一束链路上有效地维护BFD以应对上述问题的技术。
发明内容
本发明涉及一种技术,该技术用于在计算机网络中有效地和动态地维护一束链路上的双向转发检测(BFD)。根据本新颖技术,可能在一个或多个对应的线卡(LC)上建立一个或多个“待命”(standby)BFD会话,所述LC具有所述束的一个或多个链路(束链路)。一旦建立,根据对应的LC的束链路中的一个链路的活动性,将待命BFD会话中的一个选作“活动”BFD会话。例如,可响应于在对应的LC的束链路上接收BFD消息,选择活动BFD会话。并且,可从活动BFD会话的束链路中的一个,例如接收BFD消息的链路,发送BFD消息。响应于发送链路的不活动(例如,失效、移除等),活动BFD会话可切换到另一个可用活动束链路,并且,如果对于活动BFD会话,没有其它活动束链路可用,则将待命BFD会话中的一个选作新的活动BFD会话。倘若不存在其它待命BFD会话,则确定该链路束已经失效。
本新颖技术有利地在计算机网络中有效地和动态地维护一束链路上的BFD会话。通过在对应的LC上的一个或多个待命BFD会话交替作为用于一束链路的活动BFD会话,本新颖技术提供了比集中BFD会话更好的性能、可扩展性和可靠性。例如,LC上的BFD会话可继续操作,而与管理LC的集中处理(例如,路由处理器,RP)的失效无关。并且,通过维护待命BFD会话,可能更快地处理链路和/或LC的失效,因此,可能使用更主动的BFD超时。此外,本新颖技术(例如,选择活动BFD会话)的动态特性减轻了麻烦的手动配置的需要。
附图说明
联系附图,参考以下描述可以更好地理解本发明的上述和其它优点,在附图中,相似的参考标号指示相同的或功能类似的元件,其中:
图1是可有利地与本发明一起使用的示例性计算机网络的示意性框图;
图2是可有利地与本发明一起使用的示例性节点的示意性框图;
图3是可根据本发明使用的示例性BFD消息的示意性框图;
图4是举例说明根据本发明建立用于一束链路的BFD会话的过程的流程图;
图5是举例说明根据本发明用于传(punt)接收到的BFD消息的过程的流程图;
图6是举例说明根据本发明基于接收到的BFD消息切换活动BFD会话的过程的流程图;
图7举例说明根据本发明响应已确定的可能的束链路失效的过程的流程图;和
图8是可有利地与本发明一起使用的具有三个节点之间的链路束的示例性计算机网络的示意性框图。
具体实施方式
图1是示例性计算机网络100的示意性框图,计算机网络100包括如图所示互连的多个节点A-C,节点A-C例如是路由器、交换机或者其它网络装置。例如,节点A可经由设置为第一束接口(链路束)的多个链路连接到节点C,并且节点B可经由设置为第二链路束的多个链路连接到节点C。举例说明,节点A和节点B可实现为路由器(层3),同时节点C可实现为交换机(层2)。如此,本技术领域的技术人员可以理解:对路由器A和B中的每一个,看起来链路束都是从A到B的单个链路束(层3)。节点可能是一个或者多个自治系统、路由选择域、或者其它网络或子网的一部分。这些示例仅仅是代表性的。本技术领域的技术人员可以理解:任何数量的路由器、交换机、节点、链路等都可用在计算机网络100中,并且可以以各种方式连接,并且在此所示的视图是为简单起见。例如,本技术领域的技术人员可以理解,节点可包括实现为虚拟局域网(VLAN)的连接。
数据分组可以通过节点A-C使用预定的网络通信协议进行传送,所述网络通信协议例如是传输控制协议/网际协议(TCP/IP)、用户数据报协议(UDP)、异步传输模式(ATM)协议、帧中继协议、互联网分组交换(IPX)协议等。具体网络内的路由决定可能依赖于预定的“内部”网关协议(IGP),例如传统的链路状态或距离矢量协议。此外,使用例如边界网关协议(BGP)之类的“外部”网关协议,还可在网络间交换包含网络拓扑信息的数据分组。本技术领域的技术人员可以理解:还可在网络内或者网络间使用其它通信协议,并且上面提及的那些只是代表性的。
图2是示例性节点200的示意性框图,节点200可有利地与本发明一起使用,节点200例如是路由器。该节点包括经由系统总线250互连的多个网络接口210(例如,线卡,LC)、处理器220和存储器240。网络接口210包括机械的、电的、信号的电路,用于在耦合到网络100的一个或多个物理链路上传输数据。网络接口还可配置为使用各种不同的通信协议发送和/或接收数据,所述通信协议主要包括TCP/IP、UDP、ATM、同步光网络(SONET)、无线协议、帧中继、以太网、光纤分布式数据接口(FDDI)等。注意,本领域技术人员可以了解,物理网络接口210还可用于实现一个或多个例如用于VPN访问的虚拟网络接口。
存储器240包括可由处理器220(例如,路由处理器,RP)和网络接口210寻址的多个存储位置,用于存储与本发明有关的软件程序和数据结构。处理器220包括适于执行所述软件程序并操控所述数据结构(例如路由表或者虚拟路由表(未示出))必需的元件或者逻辑。路由器操作系统242(例如,思科系统公司的Internetworking Operating System或IOSTM)主要通过调用支持在路由器上执行的软件处理和/或服务的网络操作而在功能上组织路由器,路由器操作系统242的部分通常位于存储器240中并且由处理器执行。这些软件处理和/或服务可能包括路由服务247、双向转发检测(BFD)服务244(例如,集中BFD服务),和接口间关系(IIR)模块249。对本领域技术人员而言显而易见:包括各种计算机可读介质的其它处理器和存储装置都可用于存储和执行与在此描述的本发明有关的程序指令。
路由服务247包含计算机可执行的指令,所述指令由处理器220执行,以实现由一个或多个诸如OSPF、IS-IS、BGP等的路由协议提供的功能。这些功能可能配置为管理转发信息数据库(未示出),所述数据库例如包含用于作出转发决定的数据。本技术领域的技术人员可以理解,路由服务247还可执行与虚拟路由协议相关的功能,例如维护虚拟路由/转发(VRF)实例(未示出)等。
IIR模块249(或“束成员服务”)包含计算机可执行指令,处理器220执行所述指令来交换和解释关于束的信息,对于所述的束,节点200容宿一个或多个束链路。例如,路由器A和B可能交换IIR通知以分别告知彼此与束有关的事件,例如束内的链路创建、链路删除以及链路状态变化(例如,活动、不活动)(即,链路完整性控制消息)。本技术领域的技术人员可以理解,容宿一个或多个束链路的节点可以通过交换通知(与IGP和/或BGP通知类似)来同步其信息,所述通知例如可能包括接口句柄(interface handle)、接口状态、接口类型、成员带宽、成员标识符(ID)等。本领域技术人员还可以理解,在此,IIR模块的使用只是代表性的,并且根据本发明,还可使用本领域技术人员已知的用于获取链路束信息的其它装置。
BFD服务(或处理)244包含计算机可执行的指令,根据两个系统/装置之间的BFD控制分组(“BFD消息”)的传输,处理器220执行所述指令以验证两个系统/装置之间的连接。例如,假设路由器A希望使用BFD验证其到路由器B(即经由交换机C)的连接。路由器A可发送BFD消息给路由器B,并且路由器A根据例如在特定时间段内来自路由器B的响应/无响应验证连接。如果路由器A在该时间段内没有接收到来自路由器B的响应,则因此路由器A确定BFD会话已经失效或者“超时”(或者“down”)。(注意,以下提供对根据本发明用于链路束的这个处理更详细的描述。)
图3举例说明可由BFD节点/路由器200发送的示例性BFD消息300。举例说明,BFD消息300是普通的BFD消息,并且因此,本技术领域的技术人员可以理解,其它BFD消息可能相应地包括其它域。消息300包括封装协议报头310、可选BFD报头域315、鉴别符值(例如,“我的鉴别符”和/或“你的鉴别符”)域320和用于其它BFD信息的域325。本技术领域的技术人员可以理解,BFD消息300在适合环境(例如,TCP/IP、MPLS等)的封装中发送。因此,封装协议报头310包含对于特定封装类型而言标准的信息。报头内的源地址312和目的地址313可以是分别用于发送装置和接收装置的网络地址。
BFD报头域315可包括标准BFD报头信息,例如BFD版本号、消息长度、某些标记等或者由发送装置配置的其它信息(更多或者更少)。例如,状态域316可包括在报头315中,状态域316指示发送节点处的BFD会话的状态(例如由BFD服务244的BFD状态机维护的UP、DOWN、INIT或者ADMINDOWN),然后,接收节点可使用状态域316相应地更新其BFD会话状态。因为发送装置一次可能建立多于一个BFD会话(例如,与同样的接收装置,或者其它接收装置),因此,鉴别符域320包含足够的信息以在接收装置接收到了BFD消息之后将BFD消息300解复用到正确的BFD会话。示例鉴别符可能是标识每个BFD会话的不透明值,并且在每个装置处的所有BFD会话中是唯一的。例如,“我的鉴别符”值在发送装置处必须是唯一的,而“你的鉴别符”值在接收装置处必须是唯一的。此外,可根据BFD协议使用其它BFD信息域325,例如时间间隔值、认证等。注意,本技术领域的技术人员可以理解,BFD可跨越任何数量的链路并且在例如物理的、数据链路的、网络的、虚拟的等的任何层进行操作。如上所述,在以上结合的题为《双向转发检测》(BidirectionalForwarding Detection<draft-ietf-bfd-base-04.txt>)的互联网草案中进一步描述了BFD协议。
本发明涉及一种技术,所述技术用于在计算机网络中有效地和动态地维护一束链路上的BFD。根据本新颖技术,在一个或多个对应的LC上建立一个或多个“待命”BFD会话,所述LC具有一个或多个所述束的链路(束链路)。一旦建立“待命”BFD会话,则根据对应的LC的束链路中的一个链路的活动性将待命BFD会话中的一个选作“活动”BFD会话。例如,可响应于在对应的LC的束链路上接收BFD消息,选择活动BFD会话。此外,BFD消息还可从活动BFD会话的束链路中的一个发送,例如接收BFD消息的链路。响应于传输链路的不活动(例如,失效、移除等),活动BFD会话会切换到另一个可用的活动束链路,并且如果对活动BFD会话,没有可用的其它活动束链路,则将待命BFD会话中的一个选作新的活动BFD会话。倘若不存在其它待命BFD会话,则确定链路束已经失效。
根据本发明,BFD服务244,例如在节点200的RP 220上执行的“主”BFD处理,通过创建一个或者多个“代理”BFD会话来发起链路束BFD会话,所述“代理”BFD会话在每个容宿束的链路的LC 210a-n的BFD服务212a-n上执行。例如,图1中的路由器A可能希望监控到路由器B的连接(例如,通过链路束或者通过束VLAN)。如此,路由器A的容宿连接到路由器B(本技术领域的技术人员可以理解,例如,经由交换机C)的束的链路的每个LC 210建立代理BFD会话。一旦建立了代理BFD会话,就可将BFD责任给予那些会话,使得代理BFD会话从主BFD会话完全(100%)自治。因此,倘若RP(或控制卡)失效、变更、重启等(即,主BFD服务244变为“离线”),则链路束BFD会话仍然可在LC 210的BFD服务212上操作。
此外,根据本发明,将新状态“STANDBY”添加到BFD协议的状态(即,UP、DOWN、INIT和ADMINDOWN)。新的STANDBY状态是BFD会话212a-n的BFD状态机的内部状态,即,该状态不会发送到BFD会话的接收节点(例如,在BFD消息300的状态域316中)。在代理BFD会话的建立期间,每个代理BFD会话置于STANDBY状态,即,建立为待命BFD会话。
一旦建立,每一个待命BFD会话确定是否应该根据所有待命BFD会话所使用的算法将其指定为活动BFD会话。通过使用相同的算法,可基本确保只有一个待命BFD会话会确定其是活动BFD会话。例如,简单的算法可包括选择具有最低标识符值(例如,“1”)的LC上的BFD会话。本技术领域的技术人员可以理解,根据本发明可使用其它算法来初始选择活动BFD会话。而且,初始选择算法可能是比通常在BFD的高速要求中必需的算法更慢的算法,这是因为BFD会话(和BFD消息的发送)尚待激活(即,有待变成“UP”)。确定其应该是活动BFD会话之后,指定的活动BFD会话就可将其活动状态通知给其余的待命BFD会话,从而防止任何不一致(注意,本技术领域的技术人员可以理解,例如最坏的情况“竞争情况”)。可由活动和待命BFD会话的“通知”处理213a-n执行活动和待命BFD会话之间的通信,例如以上活动状态通知。(主BFD会话244还可具有通知处理245来与代理(活动的和/或待命的)BFD会话通信。)注意,倘若将新的链路添加到新LC上的链路束上,则新LC相应地建立待命BFD会话。
选择活动BFD会话(例如,在路由器A的LC 210上)之后,活动BFD会话可根据BFD协议将BFD消息300发送给接收节点(例如,路由器B)。倘若活动BFD会话容宿多于一个束链路,则选择单个链路作为发送链路。本技术领域的技术人员可以理解,BFD会话可使用活动(分发)束链路,除非没有活动链路,在没有活动链路的情况下,BFD会话可配置为使用不活动(收集)链路(本技术领域的技术人员还可以理解,例如使用短的一段时间直到活动链路变得可用)。如上所述,BFD消息300的状态域316只包含UP、DOWN、INIT和ADMINDOWN状态中的一个。注意,活动BFD会话的状态可与待命BFD会话共享(例如,通过通知处理213)。
本技术领域的技术人员可以理解,由于链路束的特性(例如,尤其是如图1那样,两个节点之间的层2交换机的任一侧的两个链路束),在BFD消息的发送期间会产生不对称路径。换而言之,节点的活动BFD会话可能已经选择发送链路来发送BFD消息,但是,节点可能在另一个链路上接收返回的BFD消息,所述另一个链路可能在另一个LC上。响应于此,本发明可以将接收到的BFD消息从接收LC“传”(转发)到活动(发送)LC,或者将接收LC的活动BFD会话切换到待命BFD会话。
为了传接收到的BFD消息,接收BFD会话可以快速将接收到的BFD消息转发给活动BFD会话以用于处理。更优化的方法可能是在链路束BFD会话初始建立期间传接收到的BFD消息,但是,然后只在BFD事件发生时,从接收待命BFD会话发送通知。例如,一旦待命BFD会话开始接收BFD消息,该待命BFD会话就可通知活动BFD会话(例如,经由通知处理213)其正在接收BFD消息。随后,如果接收到的BFD消息停止到达(即,BFD会话超时),则接收待命BFD消息可能只将另外的通知发送给活动BFD会话。
或者,接收返回的BFD消息的待命BFD会话可选择其自身作为活动BFD会话,然后,活动BFD会话可在接收返回消息的相同链路上开始发送BFD消息。通过此,原来不对称的路径可能变成对称路径(至少由节点看起来),在相同束链路上发送和接收BFD消息。并且,通过维护单个活动BFD会话(用于发送和接收两者),不需要多个LC与其它LC共享信息和资源。新的活动BFD会话可能通知其它BFD会话(即,待命BFD会话和之前的活动BFD会话):其已经承担活动BFD会话的角色。并且,当待命BFD会话承担活动BFD会话的角色时,之前的BFD活动会话可配置为在之前的束链路上继续发送BFD消息,直到确认新的活动BFD会话的新链路在发送消息(例如,通过来自通知处理213的通知了解到)。这有助于防止因涉及切换到新的活动BFD会话的任何延迟而引起的链路束的错误失效通告。此外,接收到已经选择新的活动BFD会话的通知,之前的活动BFD会话就进入STANDBY状态,从而变成待命BFD会话。
注意,当根据接收的BFD消息切换活动BFD会话时,例如由于接收BFD节点一般未知的问题或者其它原因,对等BFD节点(即,发送接收到的BFD消息的节点)可能频繁改变链路。如果这发生,则接收BFD节点可能会定期地将BFD会话重新容宿到新的活动BFD会话,这是不期望的。此外,假设两个BFD节点都以这种方式振荡,则BFD会话可能永远不会同步,并且永远不会起作用(即,UP)。为防止这样,可引入可选的定时器,因此在响应于接收BFD消息而切换活动会话之前必须经过一最小量的时间。
在活动BFD会话已被选择且发送BFD消息300的情况下,可以在没接收到返回的BFD消息时,或者通过一些其它内部检测机制(即,当链路在内部失效时),检测到可能的链路失效。注意,在另一个链路上接收到的返回BFD消息也可指示可能的链路失效,并且可以以上述方式对其响应。如果可能的链路失效发生,则活动BFD会话快速选择另一个可用的束链路,在其上开始发送BFD消息。如果活动BFD会话不容宿其它束链路,则另一个待命BFD会话快速承担起活动BFD会话的角色,这例如是由之前活动BFD会话通知的,或者响应于待命会话自身的选择算法(例如,从活动BFD会话获知可能的链路失效之后)进行的。在这种情况下,如上所述,新的活动BFD会话可将其状态变化通知其它BFD会话(例如,以确保活动BFD会话之间没有不一致)。此外,因为具有之前活动BFD会话212的LC 210不再容宿该束的任何链路,所以,该LC可能随后移除之前的活动BFD会话。本技术领域的技术人员可以理解,活动链路变成不活动可以以与链路失效相同的方式对待,只不过不活动链路仍然与束有关(即,未删除)。
容宿用于一个或多个束链路的活动BFD会话的LC的移除可以以与可能的链路失效相同的方式对待。例如,一般可将LC已经被移除(例如,在线插入和移除,OIR移除)的通知发送到容宿束链路的其它LC,以将那些移除的链路标记为已删除(即,不再是束的一部分)。如果被移除的LC原本容宿活动BFD会话,则剩下的待命BFD会话必须就其中哪一个要变成新的活动BFD会话进行选择。通常,LC的移除可能是“适度的”(graceful)事件,其中,或者是被移除的LC自己或者是RP(控制卡)会在移除之前或者快速地在移除之后发送通知给剩下的LC。另一方面,LC失效要求RP快速将其失效告知其它LC,否则可能造成对等BFD节点的错误失效检测。例如,当LC“脑死亡”(无响应)时,这可能会更频繁地发生,这是因为RP和/或其它LC可能经过比高速BFD超时时段还长的一段时间才意识到其失效。
一旦活动BFD会话切换到新的LC(例如,响应于链路失效,LC移除/失效等),活动BFD会话就在其可用束链路中的一个链路上开始发送BFD消息。响应于此,接收到的BFD消息不再利用之前的LC。如果在新的活动BFD会话的LC上接收已接收到的消息,则实现了对称路径。另外,在待命BFD会话处接收到BFD消息,则产生非对称路径,这可以如上所述进行调节(例如,传消息或者切换活动会话)。
重要的是,对等BFD节点也快速适应链路/LC失效或移除。例如,如果对等BFD节点继续发送BFD消息给失效的LC,则当活动BFD会话没有接收到返回的BFD消息(或者关于在待命BFD会话处接收到的BFD消息的通知)时,可能产生错误失效检测。并且,例如,如果LC失效,则多个束链路会对应地变得不可用。因为定时对BFD如此重要,以致非常期望在每个BFD会话处存在链路束的最新拓扑。否则,当从一个链路/LC切换到另一个链路/LC时,在找到一个存在的并且可以适当地使用的链路/LC之前可能尝试不存在的链路/LC。可使用IIR模块249(如上所述)在对等BFD节点之间尽可能快地传递更新的束信息。此外,因为BFD的高速要求,在响应接收到的IIR消息而根据上述本发明调整任何东西(例如,切换链路或者活动BFD会话)之前,接收IIR消息的BFD节点处理所述消息的所有信息,即,以保证在计算期间考虑多个事件(例如,多个链路失效)。
根据本发明,倘若没有剩下可承担活动BFD会话角色的链路束的BFD会话(例如,没有LC容宿束链路),或没有BFD会话(活动的或待命的)在可配置的超时时段中已接收到返回的BFD消息,则活动BFD会话(例如,最后剩下的活动BFD会话)可确定:该链路束已经失效(即,是“down”)。本技术领域的技术人员可以理解,响应于快速的链路束BFD失效检测,然后可应用各种束/节点保护技术,更新路由器,产生错误消息等。
图4是举例说明根据本发明建立用于一束链路的BFD会话的过程的流程图。过程400在步骤405开始,并且继续到步骤410,其中在例如路由器A和B的对等BFD节点上配置链路束。在步骤415,在至少容宿束中一个链路的LC上建立一个或多个待命BFD会话(例如,通过路由器A的RP或控制卡)。随后,如上所述,例如根据算法,将待命BFD会话中的一个选作活动BFD会话。注意,活动BFD会话可能将其是活动BFD会话通知待命BFD会话。在步骤425,活动BFD会话开始从束的特定链路发送BFD消息,例如,与对等BFD路由器(例如,路由器B)交换BFD初始化消息和BFD消息。然后,建立BFD会话的过程400在步骤430结束。如上所述,根据BFD节点(路由器A)的配置,或者传接收到的BFD消息(图5)或者使用接收到的BFD消息来切换活动BFD会话(图6)。
图5是举例说明根据本发明用于传接收到的BFD消息的过程的流程图。过程500在步骤505开始,继续到步骤510,其中,活动BFD会话(例如,路由器A的)从束的特定链路发送BFD消息。如果在步骤515,从对等BFD节点(例如,路由器B)返回BFD消息,并且在步骤520中,在活动BFD会话处(例如,在发送链路上或其它链路上)接收到所述BFD消息,则该过程继续在步骤510中从活动BFD会话发送BFD消息。然而,在步骤520,倘若没有在活动BFD会话处接收到返回的BFD消息,即,在另一个(待命)BFD会话处接收到返回的BFD消息,则接收待命BFD会话可将该BFD消息传到活动BFD会话(未示出)。如上所述,传的优化在步骤525开始,其中,如果在待命BFD会话处接收到的BFD消息是在待命BFD会话处接收的第一BFD消息(例如,总的第一个或者超时后的第一个),或者,如果该BFD消息是BFD初始化消息交换的部分,则在步骤530,待命BFD会话将接收到的BFD消息通知给活动BFD会话(或者将该消息传给活动BFD会话,例如用于初始化消息)。如果在步骤525,待命BFD会话处的接收到的BFD消息不是在待命BFD会话处接收到的第一BFD消息,则过程500继续到步骤510,从活动BFD会话(即,还未超时的会话)发送BFD消息。
对传BFD消息进一步优化,如果在步骤515,未接收到返回的BFD消息,并且在步骤535,该BFD会话(例如,待命BFD会话)之前一直在接收BFD消息,则在步骤540,该BFD会话将该BFD超时通知活动BFD会话。注意,在步骤540,如果活动BFD会话之前一直在接收BFD消息,则活动BFD会话也可以确定该BFD会话已经超时。此外,如果在步骤535,BFD会话之前并没有一直在接收BFD消息,则该BFD会话不采取任何动作,并且过程500继续在步骤510从活动BFD会话发送BFD消息。在步骤540的超时通知后,如果在步骤545,另一个BFD会话已经及时接收到返回的BFD消息,则过程500继续在步骤510从活动BFD会话发送BFD消息。否则,在步骤545,没有BFD会话(活动或者待命)已经接收到返回的BFD消息,则,在步骤550,活动BFD会话可以确定(至少)发送链路可能的失效。过程500在步骤555结束,例如,以如下文的图7所示对可能的失效的链路作出响应。
图6是举例说明根据本发明基于接收到的BFD消息切换活动BFD会话的过程的流程图。过程600在步骤605开始,并且继续到步骤610,其中,活动BFD会话(例如,路由器A的)从束的特定链路发送BFD消息。如果在步骤615,BFD消息从对等BFD节点(例如,路由器B)返回,并且在步骤620,在发送链路上(即,活动BFD会话处)接收到该BFD消息,那么,过程继续在步骤610从活动BFD会话发送BFD消息。如果在步骤620,在该发送链路上未接收到该BFD消息,但是在步骤625,在活动BFD会话的LC上接收到该BFD消息,那么,在步骤630,活动BFD会话将其本身配置为在接收链路上发送将来的BFD消息,并且继续在步骤610中发送BFD消息。然而,如果在步骤625,在待命BFD会话的LC上接收到BFD消息,则在步骤635中活动BFD会话变成待命BFD会话,并且在步骤640,接收待命BFD会话变成活动BFD会话。新的活动BFD会话在步骤630将其本身配置为在接收链路上发送将来的BFD消息,并且继续在步骤610发送BFD消息。如果在步骤615没有BFD会话(活动的或者待命的)及时接收到了返回的BFD消息,则在步骤645,活动BFD会话可以确定(至少)发送链路的可能的失效。过程600在步骤650结束,例如,以如图7所示对可能的失效的链路作出响应。
图7是举例说明根据本发明响应已确定的可能的束链路失效的过程的流程图。过程700在步骤705开始,并且继续到步骤710,其中,例如,已如以上图5或图6(或通过其它内部链路失效检测机制)确定可能的链路失效。如果在步骤715,在活动BFD会话处有其它可用的链路,则在步骤630,活动BFD会话将其本身配置为在另一个可用链路上发送将来的BFD消息,并且过程700在步骤750结束(例如,回到图5或图6来发送/处理BFD消息)。如果在步骤715,在活动BFD会话处没有其它可用的链路,则在步骤725,对应的LC移除活动BFD会话(即,因为LC不再容宿该束的可操作的链路)。如果在步骤730,还有可用的待命BFD会话,则在步骤735,将待命会话中的一个选作新的活动BFD会话。然后,在步骤740中,新的活动BFD会话发送BFD消息,并且过程700在步骤750结束(例如,返回到图5或图6来发送/处理BFD消息)。另一方面,如果在步骤730,没有剩下的待命BFD会话,则在步骤745中,或者最后的活动BFD会话(在移除之前)或者主BFD会话(例如,在RP上)确定链路束已经失效,并且,过程700在步骤750结束,例如,用于BFD节点执行节点保护技术等。
注意,本技术领域的技术人员可以理解:虽然以上描述使用传统的BFD消息,但是,在此描述的技术还可以应用到BFD Echo消息(未经对等节点处理/使用而返回到发送BFD节点)。然而,如上所述,Echo消息可能不会返回到发送该消息的相同LC(或BFD会话),并且,需要相应地进行处理。
此外,在本发明的一个可替换实施例中,在RP(控制卡)上执行的主BFD会话可作为活动BFD会话,与至少一个在容宿束链路的LC上执行的其它待命BFD会话进行操作。以这种方式,RP失效备援可以就视作如上所述的活动BFD会话失效/移除。然而,该可替换实施例仍然利用宝贵的RP资源,并且在性能和/或可扩展性方面可能不是最优的。然而,本技术领域的技术人员可以理解,在各种情况和配置中,这可以提供有益的方法。
有利地,该新颖技术在计算机网络中有效地和动态地维护在一束链路上的BFD。通过在一个或多个在对应的LC上的待命BFD会话之间交替作为一束链路的活动BFD会话,该新颖技术提供了比集中BFD会话更好的性能、可扩展性和可靠性。例如,LC上的BFD会话可继续操作,而与管理该LC的集中处理(例如,路由处理器,RP)的失效无关。此外,通过维护待命BFD会话,链路和/或LC失效的处理可能更快,因此,可能使用更主动的BFD超时。此外,该新颖技术(例如,选择活动BFD会话)的动态特性减轻了麻烦的手动配置的需要。
虽然已经示出和描述在计算机网络中有效地和动态地维护在一束链路上的BFD的说明性实施例,但可以理解,在本发明的精神和范围以内可以做出各种其它适应和修改。例如,在此已经示出和描述的发明用于维护两个节点之间的一束链路上的BFD。然而,在更广泛的意义上,本发明并不局限于此,并且,事实上,还可以应用到多个节点之间的链路束。图8示出在三个节点之间具有链路束的示例性计算机网络800,其中,如图所示,节点X具有到节点Y和Z两者的链路束。根据本发明,例如经由两个节点中的通知处理245之间的通信协议,在节点Y和Z两者上的线卡必须如上所述地快速传输待命和活动BFD会话的状态。本技术领域的技术人员可以理解,图8只是三个或更多节点之间的链路束的示例,并且本发明可使用其它配置。
此外,虽然,参考图1的以上描述提到BFD对等方之间的交换机(交换机C),但对于本发明,交换机不是必须的,并且只是一个示例。本技术领域的技术人员可以理解:本发明可用于共享同等数量束链路的背对背节点(路由器)(即,一对一链路映射)。本技术领域的技术人员还可以理解,虽然上面给出的示例一般地提到接口和链路,但是如上所述,根据本发明,可使用物理的和虚拟的接口和/或链路两者,例如包括,用于对VLAN成束的链路。此外,虽然上述示例将路由器作为对等BFD节点提到,但是,根据本发明,可以使用能够执行BFD服务的任何网络节点。
前面的描述涉及了本发明的特定实施例。然而,显而易见,可以对所述实施例做出其它变化和修改,而保留其一些或全部优点。例如,可以清楚地设想:本发明的教导可以实现为软件,所述软件包括具有可在计算机、硬件、固件,或其结合上执行的程序指令的计算机可读介质。此外,还可以产生电磁信号来携带计算机可执行指令,所述指令例如在无线数据链路或诸如互联网之类的数据网络上实现本发明的技术方案。因此,此描述仅仅作为示例的方式并且不限制本发明的范围。因此,所附权利要求的目标是覆盖所有在本发明真正精神和范围以内的所有这样的变化和修改。

Claims (19)

1.一种方法,用于在计算机网络中有效地动态维护一束链路上的双向转发检测(BFD),所述方法包括:
在一个或多个对应的线卡(LC)上建立一个或多个待命BFD会话,所述一个或多个LC具有所述束中的一个或多个链路(束链路);以及
根据所述对应LC上的所述一个或多个束链路中的一个链路的活动性,将所述一个或多个待命BFD会话中的一个选作活动BFD会话。
2.根据权利要求1的方法,还包括:
从具有活动束链路的任何待命BFD会话中初始选择活动BFD会话。
3.根据权利要求1的方法,还包括:
响应于在所述对应LC的束链路上接收BFD消息,选择所述活动BFD会话。
4.根据权利要求1的方法,还包括:
从所述活动BFD会话中的一个或多个束链路发送BFD消息。
5.根据权利要求4的方法,还包括:
响应于在所述对应LC的束链路上接收BFD消息,选择所述活动BFD会话;以及
从接收BFD消息的束链路发送BFD消息。
6.根据权利要求4的方法,还包括:
响应于所述发送束链路的不活动,其中,所述活动BFD会话具有一个或多个其它活动束链路,从所述一个或多个其它活动束链路中的一个链路发送BFD消息。
7.根据权利要求4的方法,还包括:
响应于所述发送束链路的不活动,其中,所述活动BFD会话没有其它活动束链路,将所述一个或多个待命BFD会话中的一个选作活动BFD会话。
8.根据权利要求1的方法,还包括:
在待命BFD会话的束链路上接收BFD消息;以及
将所述BFD消息从所述待命BFD会话传给所述活动BFD会话。
9.根据权利要求1的方法,还包括:
响应于选择新的活动BFD会话,将所述活动BFD会话配置为待命BFD会话。
10.根据权利要求1的方法,还包括:
响应于LC没有用于所述束的活动链路,从该LC移除BFD会话。
11.根据权利要求10的方法,还包括:
倘若不存在活动BFD会话和待命BFD会话,则确定所述链路束已经失效。
12.根据权利要求1的方法,还包括:
倘若没有活动BFD会话和待命BFD会话在束链路上接收BFD消息,则确定所述链路束已经失效。
13.根据权利要求1的方法,还包括:
将新的LC的新链路关联到所述束;以及
在所述新的LC上建立新的待命BFD会话。
14.根据权利要求1的方法,还包括:
通过将BFD会话置于STANDBY状态,将所述BFD会话配置为待命BFD会话。
15.根据权利要求1的方法,还包括:
响应于从以下一组事件中选出的事件,将束链路认为是不活动的,所述一组事件包括以下事件:束链路失效、束链路移除、对应的LC的失效和对应的LC的移除。
16.根据权利要求1的方法,其中,所述链路束是网际协议(IP)束或者是虚拟专用网(VPN)束。
17.一种用于在计算机网络中有效地动态维护一束链路上的双向转发检测(BFD)的设备,所述设备包括:
用于在一个或多个对应的线卡(LC)上建立一个或多个待命BFD会话的装置,所述一个或多个LC具有所述束的一个或多个链路(束链路);以及
用于根据所述对应LC上的所述一个或多个束链路中的一个链路的活动性,将所述一个或多个待命BFD会话中的一个选作活动BFD会话的装置。
18.一种计算机可读介质,包括用于在计算机网络中有效地动态维护一束链路上的双向转发检测(BFD)的可执行程序指令,所述可执行程序指令包括以下程序指令:
用于在一个或多个对应的线卡(LC)上建立一个或多个待命BFD会话的程序指令,所述一个或多个LC具有所述束的一个或多个链路(束链路);以及
用于根据对应LC上的所述一个或多个束链路中的一个链路的活动性,将所述一个或多个待命BFD会话中的一个选作活动BFD会话的程序指令。
19.一种节点,用于在计算机网络中有效地动态维护一束链路上的双向转发检测(BFD),所述节点包括:
一个或多个线卡(LC),所述线卡具有所述束的一个或多个链路(束链路);以及
一个或多个处理器,每个处理器耦合到所述一个或多个LC中的一个并且适于执行软件处理;以及
适于存储可由每个所述处理器执行的BFD处理的存储器,所述处理器的所述BFD处理共同配置为:i)在一个或多个对应的LC上建立一个或多个待命BFD会话;以及ii)根据所述对应LC上的所述一个或多个束链路中的一个链路的活动性,将所述一个或多个待命BFD会话中的一个选作活动BFD会话。
CN2007800075383A 2006-03-02 2007-02-06 有效地动态维护一束链路上的双向转发检测的技术 Active CN101395853B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/366,732 2006-03-02
US11/366,732 US8543718B2 (en) 2006-03-02 2006-03-02 Technique for efficiently and dynamically maintaining bidirectional forwarding detection on a bundle of links
PCT/US2007/003075 WO2007106258A2 (en) 2006-03-02 2007-02-06 A technique for efficiently and dynamically maintaining bidirectional forwarding detection on a bundle of links

Publications (2)

Publication Number Publication Date
CN101395853A true CN101395853A (zh) 2009-03-25
CN101395853B CN101395853B (zh) 2012-08-15

Family

ID=38471957

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007800075383A Active CN101395853B (zh) 2006-03-02 2007-02-06 有效地动态维护一束链路上的双向转发检测的技术

Country Status (4)

Country Link
US (2) US8543718B2 (zh)
EP (1) EP1989835B1 (zh)
CN (1) CN101395853B (zh)
WO (1) WO2007106258A2 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101860491A (zh) * 2010-06-23 2010-10-13 迈普通信技术股份有限公司 聚合类链路双向转发检测方法及其设备
CN101989953A (zh) * 2010-11-09 2011-03-23 中兴通讯股份有限公司 双向转发检测报文的发送方法及设备
CN102223241A (zh) * 2010-04-15 2011-10-19 杭州华三通信技术有限公司 网络变化通知方法和设备
CN102932318A (zh) * 2011-08-10 2013-02-13 华为技术有限公司 一种双向转发检测会话的验证方法及节点
CN110535760A (zh) * 2018-05-25 2019-12-03 丛林网络公司 聚合接口的转发检测
CN111447101A (zh) * 2020-02-27 2020-07-24 平安科技(深圳)有限公司 链路检测方法、装置、计算机设备及存储介质
CN111654407A (zh) * 2020-04-14 2020-09-11 新华三信息安全技术有限公司 一种堆叠系统及其双向转发检测方法

Families Citing this family (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006114809A1 (ja) * 2005-03-31 2006-11-02 Fujitsu Limited 伝送装置、および伝送装置とレイヤ2スイッチ間の冗長方法
US7852778B1 (en) 2006-01-30 2010-12-14 Juniper Networks, Inc. Verification of network paths using two or more connectivity protocols
US7782790B1 (en) * 2006-06-16 2010-08-24 Cisco Technology, Inc. Extensions to the path verification protocol to support link bundling constructs
US7738367B1 (en) * 2006-08-29 2010-06-15 Juniper Networks, Inc. Performing non-revertive failover with network devices
CN101136789A (zh) * 2006-08-30 2008-03-05 华为技术有限公司 一种实现端到端的链路检测、路由策略倒换的方法及装置
US7860981B1 (en) * 2006-09-29 2010-12-28 Juniper Networks, Inc. Systems and methods for IP session keepalive using BFD protocols
US8705344B2 (en) * 2006-11-14 2014-04-22 Cisco Technology, Inc. Graceful failover of a principal link in a fiber-channel fabric
JP4840236B2 (ja) * 2007-04-12 2011-12-21 株式会社日立製作所 ネットワークシステム及びノード装置
US7928394B1 (en) 2007-08-21 2011-04-19 Fluke Corporation Testing device containing a gas sensor
US7830880B2 (en) * 2007-08-21 2010-11-09 Cisco Technology, Inc. Selective build fabric (BF) and reconfigure fabric (RCF) flooding
CN101150587B (zh) * 2007-10-24 2010-07-07 华为技术有限公司 一种多协议标签交换流量工程流量切换的方法、设备及系统
US7957330B1 (en) * 2007-11-27 2011-06-07 Juniper Networks, Inc. Failsafe management of periodic communications during system upgrade for a network device
CN101459594B (zh) * 2007-12-14 2011-04-13 华为技术有限公司 Bfd报文的发送方法、链路故障的探测方法及装置
CN101483558B (zh) * 2008-01-10 2012-07-04 华为技术有限公司 网络设备接入分组交换网络的方法、系统及装置
WO2009155996A1 (en) 2008-06-27 2009-12-30 Telefonaktiebolaget L M Ericsson (Publ) Method and system for link aggregation
US8111611B2 (en) * 2008-06-30 2012-02-07 Cisco Technology, Inc. Bidirectional forwarding detection on multilink bundled interfaces
CN101309185B (zh) * 2008-07-16 2010-12-08 杭州华三通信技术有限公司 堆叠系统中多主用设备的处理方法和堆叠成员设备
US20100030911A1 (en) * 2008-07-30 2010-02-04 Voyant International Corporation Data transfer acceleration system and associated methods
US7894461B2 (en) * 2008-11-20 2011-02-22 At&T Intellectual Property I, L.P. Methods and apparatus to infer the status of border gateway protocol sessions
CN101800673B (zh) * 2010-02-03 2014-04-30 中兴通讯股份有限公司 一种双向转发检测振荡阻尼的方法及装置
CN101800676A (zh) * 2010-02-20 2010-08-11 中兴通讯股份有限公司 链路检测方法、装置和系统
CN102195861B (zh) * 2010-03-19 2015-04-08 杭州华三通信技术有限公司 一种路由切换过程中建立bfd会话的方法和装置
WO2011144495A1 (en) * 2010-05-19 2011-11-24 Telefonaktiebolaget L M Ericsson (Publ) Methods and apparatus for use in an openflow network
US8817594B2 (en) 2010-07-13 2014-08-26 Telefonaktiebolaget L M Ericsson (Publ) Technique establishing a forwarding path in a network system
US8477598B2 (en) * 2010-08-03 2013-07-02 Fujitsu Limited Method and system for implementing network element-level redundancy
US8850062B2 (en) * 2010-08-09 2014-09-30 Cisco Technology, Inc. Distributed connectivity verification protocol redundancy
US20120281541A1 (en) * 2011-05-04 2012-11-08 Cisco Technology, Inc., A Corporation Of California Signaling Describing the Operation of a Link Bundle
US8868731B1 (en) 2011-06-06 2014-10-21 Cisco Technology, Inc. Technique for false positives prevention in high availability network
CN102780635B (zh) * 2012-08-09 2015-09-09 华为技术有限公司 基于trill网络实现保护倒换的方法、tor交换机及系统
US8902780B1 (en) 2012-09-26 2014-12-02 Juniper Networks, Inc. Forwarding detection for point-to-multipoint label switched paths
US9013985B2 (en) 2012-10-19 2015-04-21 Cisco Technology, Inc. Protection of a bidirectional label switched path
WO2014075213A1 (zh) * 2012-11-13 2014-05-22 华为技术有限公司 双向转发检测bfd会话协商方法、设备及系统
CN103067220B (zh) * 2012-12-19 2016-02-10 中兴通讯股份有限公司 参数更新情况下双向链路转发检测方法及装置
US9258234B1 (en) 2012-12-28 2016-02-09 Juniper Networks, Inc. Dynamically adjusting liveliness detection intervals for periodic network communications
US8953460B1 (en) * 2012-12-31 2015-02-10 Juniper Networks, Inc. Network liveliness detection using session-external communications
US9497107B1 (en) * 2013-06-06 2016-11-15 Cisco Technology, Inc. Seamless path monitoring and rapid fault isolation using bidirectional forwarding detection in a network environment
CN104253745B (zh) * 2013-06-29 2018-05-29 华为技术有限公司 一种路由撤销方法和网络设备
CN104579945B (zh) * 2013-10-18 2019-07-02 中兴通讯股份有限公司 一种冗余保护方法及装置
US9509599B2 (en) * 2014-08-04 2016-11-29 Telefonaktiebolaget L M Ericsson (Publ) Self-bootstrapping BFD session over MPLS LSP
US9485175B2 (en) 2014-08-04 2016-11-01 Ciena Corporation Continuity check protocol optimization systems and methods
US9769017B1 (en) 2014-09-26 2017-09-19 Juniper Networks, Inc. Impending control plane disruption indication using forwarding plane liveliness detection protocols
US9832115B2 (en) * 2014-10-29 2017-11-28 Cisco Technology, Inc. Label-switched packets with device-independent labels
CN104506546B (zh) * 2014-12-30 2018-06-15 新华三技术有限公司 一种聚合链路的双向转发检测方法和装置
EP3232611B1 (en) * 2014-12-31 2018-09-19 Huawei Technologies Co., Ltd. Method, device and system for performing bidirectional forwarding detection on an aggregated link
CN106301840B (zh) * 2015-05-27 2020-09-15 中兴通讯股份有限公司 双向转发检测bfd报文的发送方法及装置
CN106375208B (zh) * 2015-07-20 2020-09-15 南京中兴新软件有限责任公司 网络路径切换方法和装置
DE112015007093B4 (de) * 2015-11-05 2022-02-17 Mitsubishi Electric Corporation Kommunikationsvorrichtung und kommunikationsverfahren
US10374936B2 (en) 2015-12-30 2019-08-06 Juniper Networks, Inc. Reducing false alarms when using network keep-alive messages
CN106059791B (zh) * 2016-05-13 2020-04-14 华为技术有限公司 一种存储系统中业务的链路切换方法和存储设备
US10397085B1 (en) 2016-06-30 2019-08-27 Juniper Networks, Inc. Offloading heartbeat responses message processing to a kernel of a network device
US11032197B2 (en) 2016-09-15 2021-06-08 Cisco Technology, Inc. Reroute detection in segment routing data plane
US10541904B2 (en) * 2016-12-14 2020-01-21 Hewlett Packard Enterprise Development Lp Establishing a network fault detection session
KR101892272B1 (ko) * 2016-12-15 2018-08-27 고려대학교 산학협력단 Bfd 프로토콜 기반의 결함 분류 장치 및 방법
US10608957B2 (en) * 2017-06-29 2020-03-31 Cisco Technology, Inc. Method and apparatus to optimize multi-destination traffic over etherchannel in stackwise virtual topology
US10530634B1 (en) * 2018-07-27 2020-01-07 Vmware, Inc. Two-channel-based high-availability
CN110875880B (zh) * 2018-08-29 2022-03-25 北京华为数字技术有限公司 一种数据传输方法、相关设备、系统及计算机存储介质
US11750441B1 (en) 2018-09-07 2023-09-05 Juniper Networks, Inc. Propagating node failure errors to TCP sockets
CN111614505B (zh) * 2019-02-25 2022-02-25 华为技术有限公司 报文处理的方法和网关设备
US11032181B2 (en) * 2019-06-07 2021-06-08 Cisco Technology, Inc. Machine learning approach for dynamic adjustment of BFD timers in SD-WAN networks
US11290319B2 (en) 2019-06-24 2022-03-29 Hewlett Packard Enterprise Development Lp Dynamic distribution of bidirectional forwarding detection echo sessions across a multi-processor system
US11646956B2 (en) 2019-07-24 2023-05-09 Cisco Technology, Inc. Systems and methods for providing bidirectional forwarding detection with performance routing measurements
US11863631B1 (en) * 2023-02-23 2024-01-02 Cisco Technology, Inc. Secure access App Connectors

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6678241B1 (en) * 1999-11-30 2004-01-13 Cisc Technology, Inc. Fast convergence with topology switching
US6856600B1 (en) 2000-01-04 2005-02-15 Cisco Technology, Inc. Method and apparatus for isolating faults in a switching matrix
US6963575B1 (en) * 2000-06-07 2005-11-08 Yipes Enterprise Services, Inc. Enhanced data switching/routing for multi-regional IP over fiber network
US6804712B1 (en) 2000-06-30 2004-10-12 Cisco Technology, Inc. Identifying link failures in a network
US6950865B1 (en) 2001-03-26 2005-09-27 Cisco Technology, Inc. Network audit tool
US7428209B1 (en) * 2001-06-12 2008-09-23 Roberts Lawrence G Network failure recovery mechanism
US6978394B1 (en) 2002-02-22 2005-12-20 Cisco Technology, Inc. Linear program-based technique for placing FRR TE tunnels with bandwidth guarantee
US7286468B2 (en) 2002-11-12 2007-10-23 Cisco Technology, Inc. Routing system and method for synchronizing a routing system with peers after failover
US7343423B2 (en) 2003-10-07 2008-03-11 Cisco Technology, Inc. Enhanced switchover for MPLS fast reroute
US7345994B2 (en) * 2003-10-20 2008-03-18 Cisco Technology, Inc. Transparent re-routing of MPLS traffic engineering LSPs within a link bundle
US8054751B2 (en) * 2004-05-10 2011-11-08 Alcatel Lucent Remote access link fault indication mechanism
US7499395B2 (en) * 2005-03-18 2009-03-03 Cisco Technology, Inc. BFD rate-limiting and automatic session activation
US20060291378A1 (en) * 2005-06-28 2006-12-28 Alcatel Communication path redundancy protection systems and methods

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102223241A (zh) * 2010-04-15 2011-10-19 杭州华三通信技术有限公司 网络变化通知方法和设备
CN102223241B (zh) * 2010-04-15 2013-09-11 杭州华三通信技术有限公司 网络变化通知方法和设备
CN101860491A (zh) * 2010-06-23 2010-10-13 迈普通信技术股份有限公司 聚合类链路双向转发检测方法及其设备
CN101989953A (zh) * 2010-11-09 2011-03-23 中兴通讯股份有限公司 双向转发检测报文的发送方法及设备
WO2012062069A1 (zh) * 2010-11-09 2012-05-18 中兴通讯股份有限公司 双向转发检测报文的发送方法及设备
CN102932318A (zh) * 2011-08-10 2013-02-13 华为技术有限公司 一种双向转发检测会话的验证方法及节点
WO2013020437A1 (zh) * 2011-08-10 2013-02-14 华为技术有限公司 一种双向转发检测会话的验证方法及节点
CN110535760A (zh) * 2018-05-25 2019-12-03 丛林网络公司 聚合接口的转发检测
CN111447101A (zh) * 2020-02-27 2020-07-24 平安科技(深圳)有限公司 链路检测方法、装置、计算机设备及存储介质
WO2021169276A1 (zh) * 2020-02-27 2021-09-02 平安科技(深圳)有限公司 链路检测方法、装置、计算机设备及存储介质
CN111447101B (zh) * 2020-02-27 2023-05-02 平安科技(深圳)有限公司 链路检测方法、装置、计算机设备及存储介质
CN111654407A (zh) * 2020-04-14 2020-09-11 新华三信息安全技术有限公司 一种堆叠系统及其双向转发检测方法

Also Published As

Publication number Publication date
US20140019614A1 (en) 2014-01-16
CN101395853B (zh) 2012-08-15
US8543718B2 (en) 2013-09-24
WO2007106258A2 (en) 2007-09-20
EP1989835B1 (en) 2014-01-01
EP1989835A2 (en) 2008-11-12
EP1989835A4 (en) 2011-04-13
US9300563B2 (en) 2016-03-29
WO2007106258A3 (en) 2008-01-03
US20070207591A1 (en) 2007-09-06

Similar Documents

Publication Publication Date Title
CN101395853B (zh) 有效地动态维护一束链路上的双向转发检测的技术
CN113765829B (zh) 软件定义联网分布式系统中的活性检测和路由收敛
CN113765782B (zh) 使用前缀独立收敛对底层故障的局部修复
US9166877B2 (en) Distinguishing between connectivity verification availability and forwarding protocol functionality in a computer network
US8082340B2 (en) Technique for distinguishing between link and node failure using bidirectional forwarding detection (BFD)
CN1969492B (zh) 动态转发邻接关系
JP4711411B2 (ja) SoftRouterプロトコルのフェイルオーバー
CN107005481B (zh) 用于网络中数据平面故障检测的装置及其中的方法
US7765306B2 (en) Technique for enabling bidirectional forwarding detection between edge devices in a computer network
US10148554B2 (en) System and methods for load placement in data centers
CN102598599B (zh) 快速重新路由条件下的rsvp-te完美重启
US20040136371A1 (en) Distributed implementation of control protocols in routers and switches
JP2006135970A (ja) SoftRouter動的バインディング・プロトコル
US9948722B2 (en) Path computation element communication protocol session establishment method and device
CN103026663A (zh) 分布式连通性验证协议冗余
CN103490951A (zh) 基于bfd的多跳链路中双向转发检测方法
JP5965335B2 (ja) 通信システム、及び経路制御方法
Vaghani et al. A comparison of data forwarding schemes for network resiliency in software defined networking
CN113037622B (zh) 一种防止bfd震荡的系统及方法
Sahoo et al. Redundancy Protocols for Campous Network
Abdallah et al. A round robin load balancing and redundancy protocol for network routers
JP2003258877A (ja) ルータ装置及びルーティング方法
Garg Label Distribution Protocol & Loop Free Alternative
JP2006287434A (ja) 接続管理装置、接続管理装置の制御方法および制御プログラム
JP2004349881A (ja) フラッディング量削減方法および通信装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant