CN113765797A - 一种消息处理方法及装置 - Google Patents
一种消息处理方法及装置 Download PDFInfo
- Publication number
- CN113765797A CN113765797A CN202111118594.2A CN202111118594A CN113765797A CN 113765797 A CN113765797 A CN 113765797A CN 202111118594 A CN202111118594 A CN 202111118594A CN 113765797 A CN113765797 A CN 113765797A
- Authority
- CN
- China
- Prior art keywords
- forwarding
- forwarding chip
- bfd
- line card
- message
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/302—Route determination based on requested QoS
- H04L45/304—Route determination for signalling traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0631—Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种消息处理方法及装置,该方法应用于路由设备中的任一线卡板中的CPU,且包括:接收路由设备中的主控板发送的会话通知消息;若相关出接口信息对应的第一转发芯片所属的线卡板为该线卡板且最近一次更新的发送BFD报文的第二转发芯片不为该线卡板中的转发芯片,将第二转发芯片更新为第一转发芯片,生成转发表项,将其和BFD报文下发给第一转发芯片,将第一转发芯片的BFD报文发送状态更改为预设状态,向更新前的第二转发芯片所属的线卡板中的CPU发送相关通知消息,由相应CPU通知相关转发芯片停止发送BFD报文并删除相关转发表项,将BFD报文发送状态由预设状态更改为初始状态。本申请避免了BFD会话的误震荡。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种消息处理方法及装置。
背景技术
双向转发检测(Bidirectional Forwarding Detection,BFD)是一种通用的、标准化的、与介质无关和协议无关的快速故障检测机制,用于检测转发路径的连通状况,可以提供毫秒级的检测,以快速地检测到通信故障,以便于网络设备(例如,路由设备)切换到备用链路,从而保证业务持续运行。
目前,随着高性能路由设备的发展,支持的单板数量和链路数量越来越多,两台路由设备之间会存在多条链路和大量的BFD会话,这样一来,当链路不稳定时,例如,在主备链路倒换需要刷新路由时,或者在带配置信息启动时,又或者在配置回滚等操作时,路由设备中的主控板可能会多次刷新相关BFD会话的会话信息中的出接口信息,每刷新一次,就需要以组播方式向该路由设备中所有的线卡板发送携带有相关BFD会话的会话信息的会话通知消息。在这里,该会话信息至少包括BFD报文和出接口信息。
对于任一线卡板而言,一旦该线卡板中的中央处理器(Central ProcessingUnit,CPU)接收到该会话通知消息,会在本地存储的出接口信息、转发芯片与线卡板的对应关系中,查找该出接口信息对应的转发芯片(例如,网络处理器(Network Processors,NP芯片)等)和线卡板;如果查找到的线卡板为该线卡板、且最近一次更新的发送BFD报文的转发芯片不为该线卡板中的转发芯片,则将发送BFD报文的转发芯片更新为查找到的转发芯片,并生成用于转发该BFD报文的转发表项,将此转发表项和该BFD报文下发给查找到的转发芯片,由查找到的转发芯片基于此转发表项发送该BFD报文。
如果查找到的线卡板既不为该线卡板又不为最近一次更新的发送BFD报文的转发芯片所属的线卡板,则发送BFD报文的转发芯片更新为查找到的转发芯片。
如果查找到的线卡板为该线卡板、且最近一次更新的发送BFD报文的转发芯片为该线卡板中除查找到的转发芯片之外的其他转发芯片,则将发送BFD报文的转发芯片更新为查找到的转发芯片,并生成用于转发该BFD报文的转发表项,将生成的转发表项和该BFD报文下发给查找到的转发芯片,以由查找到的转发芯片基于生成的转发表项发送该BFD报文;然后,通知该其他转发芯片停止发送该BFD报文以及删除其存储的转发表项。
可见,在整个线卡板对会话通知消息的处理过程中,每个线卡板均单独地处理会话通知消息,这样一来,因不同的线卡板中的CPU的繁忙程度和处理速度不同,无法保证相同的处理时长,就容易出现某个线卡板中的转发芯片已停止发送BFD报文但其他线卡板还未同步发送BFD报文的问题,进而导致相关BFD会话因检测超时引起的误震荡问题。
发明内容
为克服相关技术中存在的问题,本申请提供了一种消息处理方法及装置。
根据本申请实施例的第一方面,提供一种消息处理方法,所述方法应用于路由设备中的任一线卡板中的CPU,所述方法包括:
接收所述路由设备中的主控板发送的携带有BFD会话的会话信息的会话通知消息,其中,所述会话信息中至少包括BFD报文及其对应的出接口信息;
若确定出所述出接口信息对应的第一转发芯片所属的线卡板为该线卡板、且最近一次更新的发送BFD报文的第二转发芯片不为该线卡板中的转发芯片,则将发送BFD报文的第二转发芯片更新为所述第一转发芯片,并生成用于转发所述BFD报文的转发表项,将所述转发表项和所述BFD报文下发给所述第一转发芯片,以使所述第一转发芯片基于所述转发表项发送所述BFD报文;
将所述第一转发芯片的BFD报文发送状态由初始状态更改为预设状态,并向更新前的第二转发芯片所属的线卡板中的CPU发送携带有所述目标BFD会话的会话标识符的停止消息,以使对应的CPU在接收到所述停止消息后,查找BFD报文发送状态为所述预设状态、且不为最近一次更新的第二转发芯片,并通知查找到的转发芯片停止发送所述BFD报文以及删除其存储的转发表项,将查找到的转发芯片的BFD报文发送状态由所述预设状态更改为所述初始状态。
根据本申请实施例的第二方面,提供一种消息处理装置,所述装置应用于路由设备中的任一线卡板中的CPU,所述装置包括:
接收模块,用于接收所述路由设备中的主控板发送的携带有BFD会话的会话信息的会话通知消息,其中,所述会话信息中至少包括BFD报文及其对应的出接口信息;
第一处理模块,用于若确定出所述出接口信息对应的第一转发芯片所属的线卡板为该线卡板、且最近一次更新的发送BFD报文的第二转发芯片不为该线卡板中的转发芯片,则将发送BFD报文的第二转发芯片更新为所述第一转发芯片,并生成用于转发所述BFD报文的转发表项,将所述转发表项和所述BFD报文下发给所述第一转发芯片,以使所述第一转发芯片基于所述转发表项发送所述BFD报文;
第二处理模块,用于将所述第一转发芯片的BFD报文发送状态由初始状态更改为预设状态,并向更新前的第二转发芯片所属的线卡板中的CPU发送携带有所述目标BFD会话的会话标识符的停止消息,以使对应的CPU在接收到所述停止消息后,查找BFD报文发送状态为所述预设状态、且不为最近一次更新的第二转发芯片,并通知查找到的转发芯片停止发送所述BFD报文以及删除其存储的转发表项,将查找到的转发芯片的BFD报文发送状态由所述预设状态更改为所述初始状态。
本申请的实施例提供的技术方案可以包括以下有益效果:
在本申请实施例中,对于路由设备中的任一线卡板而言,在该线卡板中的CPU接收到该路由设备中的主控板发送的携带有BFD会话的会话信息(至少包括BFD报文及其对应的出接口信息)的会话通知消息时,一旦确定出该出接口信息对应的第一转发芯片所属的线卡板为该线卡板、且最近一次更新的发送BFD报文的第二转发芯片不为该线卡板中的转发芯片,则将发送BFD报文的第二转发芯片更新为该第一转发芯片,并生成用于转发该BFD报文的转发表项,将该转发表项和该BFD报文下发给该第一转发芯片,以使该第一转发芯片基于该转发表项发送该BFD报文;将该第一转发芯片的BFD报文发送状态由初始状态更改为预设状态,并向该第二转发芯片所属的线卡板中的CPU发送携带有该目标会话的会话标识符的停止消息,以使对应的CPU在接收到该停止消息后,查找BFD报文发送状态为该预设状态、且不为最近一次更新的转发芯片,并通知查找到的转发芯片停止发送该BFD报文以及删除其存储的转发表项,将查找到的转发芯片的BFD报文发送状态由该预设状态更改为该初始状态。
可见,在整个线卡板对会话通知消息的处理过程中,通过增设BFD报文发送状态、和接收到会话通知消息时需要发送BFD报文的线卡板与接收到会话通知消息时需要停止发送BFD报文的线卡板之间交互的停止消息,实现了在线卡板之间同步发送BFD报文,从而避免了相关BFD会话因检测超时引起的误震荡问题。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本申请的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请实施例提供的一种消息处理方法的流程示意图;
图2为本申请实施例提供的一种消息处理方法所适用的组网示意图;
图3为本申请实施例提供的一种消息处理装置的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
接下来对本申请实施例进行详细说明。
本申请实施例提供了一种消息处理方法,该方法应用于路由设备中的任一线卡板中的CPU,如图1所示,该方法可以包括如下步骤:
S11、接收路由设备中的主控板发送的携带有BFD会话的会话信息的会话通知消息。
在本步骤中,该会话信息中至少包括BFD报文及其对应的出接口信息。
S12、若确定出出接口信息对应的第一转发芯片所属的线卡板为该线卡板、且最近一次更新的发送BFD报文的第二转发芯片不为该线卡板中的转发芯片,则将发送BFD报文的第二转发芯片更新为第一转发芯片,并生成用于转发BFD报文的转发表项,将转发表项和BFD报文下发给第一转发芯片,以使第一转发芯片基于转发表项发送BFD报文。
在本步骤中,第一转发芯片可以是NP芯片等。
另外,在本步骤中,该CPU具体可以通过以下方式确定出接口信息对应的第一转发芯片所属的线卡板是否为该线卡板:
在本地存储的出接口信息、转发芯片与线卡板的对应关系中,查找出接口信息对应的第一转发芯片和线卡板;
判断查找到的线卡板是否为该线卡板;
在判断结果为是时,确定出接口信息对应的第一转发芯片所属的线卡板为该线卡板;
在判断结果为否时,确定出接口信息对应的第一转发芯片所属的线卡板不为该线卡板。
S13、将第一转发芯片的BFD报文发送状态由初始状态更改为预设状态,并向更新前的第二转发芯片所属的线卡板中的CPU发送携带有目标会话的会话标识符的停止消息,以使对应的CPU在接收到停止消息后,查找BFD报文发送状态为预设状态、且不为最近一次更新的第二转发芯片,并通知查找到的转发芯片停止发送BFD报文以及删除其存储的转发表项,将查找到的转发芯片的BFD报文发送状态由预设状态更改为初始状态。
在本步骤中,初始状态可以用“0”来表示,预设状态可以用“1”来表示。
当然,初始状态和预设状态还可以通过其他方式来设置,在此不再一一列举。
进一步地,在本申请实施例中,该CPU还可以执行以下操作:
在接收到会话通知消息后,若确定出第一转发芯片所属的线卡板不为该线卡板,则将发送BFD报文的第二转发芯片更新为第一转发芯片;
若接收到第一转发芯片所属的线卡板中的CPU发送的停止消息,则在自身管理的转发芯片中,查找BFD报文发送状态为预设状态、且不为最近一次更新的发送BFD报文的第二转发芯片;
通知查找到的转发芯片停止发送BFD报文以及删除其存储的转发表项,并将查找到的转发芯片的BFD报文发送状态由预设状态更改为初始状态。
更进一步地,在本申请实施例中,该CPU还可以执行以下操作:
在接收到会话通知消息后,若确定出第一转发芯片所属的线卡板为该线卡板、且最近一次更新的发送BFD报文的第二转发芯片为该线卡板中除第一转发芯片之外的其他转发芯片,则将发送BFD报文的转发芯片更新为第一转发芯片,并生成用于转发BFD报文的转发表项,将生成的转发表项和BFD报文下发给第一转发芯片,以使第一转发芯片基于生成的转发表项发送BFD报文;
将第一转发芯片的BFD报文发送状态由初始状态更改为预设状态;
通知其他转发芯片停止发送BFD报文以及删除其存储的转发表项,并将查找到的转发芯片的BFD报文发送状态由预设状态更改为初始状态。
需要说明的是,在本申请实施例中,上述CPU生成相关转发表项的具体生成过程为现有技术,例如,上述CPU可以基于会话信息中包括的出接口信息、报文封装信息、BFD报文的发送间隔和检测间隔等生成相关转发表项,在此不再详述。
下面结合具体实施例对上述消息处理方法进行详细说明。
如图2所示,假设在某段时间内,路由设备1与路由设备2之间的BFD会话1对应的BFD报文1被路由设备1中的线卡板1中的NP 0的接口2发送给路由设备2,在这种情形下,线卡板1中的CPU1和线卡板2中的CPU2最近一次更新的发送BFD报文的转发芯片为NP0,NP0所属的线卡板为线卡板1,NP0的BFD报文发送状态为预设状态,例如,用“1”来表示,NP1的BFD报文发送状态为初始状态,例如,用“0”来表示。
假设在某个时刻,路由设备1中的主控板1以组播方式发送了携带有BFD会话1的会话信息1的会话通知消息1。其中,该会话信息1中包括有BFD报文2及其对应的出接口信息1。
假设出接口信息1对应的出接口为接口5,对应的转发芯片为线卡板2中的NP2。
后续线卡板1中的CPU1接收到会话通知消息1后,确定出出接口信息1对应的转发芯片所属的线卡板(即,线卡板2)不为线卡板1,此时,CPU1将发送BFD报文的转发芯片(即,NP0)更新为NP2,并继续使用NP0发送BFD报文1。
线卡板2中的CPU2在接收到会话通知消息1后,确定出出接口信息1对应的转发芯片所属的线卡板(即,线卡板2)为自己,并且,确定出最近一次更新的发送BFD报文的转发芯片(即,NP0)不为线卡板2中的转发芯片,此时,CPU2将发送BFD报文的转发芯片(即,NP0)更新为NP2,并生成用于转发BFD报文2的转发表项1,将转发表项1和BFD报文2下发给NP2,由NP2基于该转发表项1发送BFD报文2。在这里,转发表项1的生成过程为现有技术,在此不再详述。
需要说明的是,在这种情形下,CPU2在更新发送BFD报文的转发芯片之前,可以单独记录待更新的转发芯片,作为上一次发送BFD报文的转发芯片,以便于后续与上一次发送BFD报文的转发芯片所属的线卡板中的CPU进行交互。
之后,CPU2将NP2的BFD报文发送状态由0更改为1,并向更新前的转发芯片(即,NP0)所属的线卡板(即,线卡板1)中的CPU(即,CPU1)发送携带有BFD会话1的会话标识符1的停止消息1。
接下来,CPU1在接收到停止消息1后,查找BFD报文发送状态为1、且不为最近一次更新的转发芯片的转发芯片,即,查找到NP0;CPU1通知NP0停止发送BFD报文1以及删除NP0存储的转发表项,并且,CPU1还将NP0的BFD报文发送状态由1更改为0。
又假设,CPU1在接收到停止消息1之前,又接收到了主控板1发送的携带有BFD会话1的会话信息2的会话通知消息2。其中,该会话信息2中包括有BFD报文3及其对应的出接口信息2。
假设出接口信息2对应的出接口为接口3,对应的转发芯片为线卡板1中的NP1。
那么,线卡板1中的CPU1在接收到会话通知消息2后,确定出出接口信息2对应的转发芯片所属的线卡板(即,线卡板1)为自己,并且,确定出最近一次更新的发送BFD报文的转发芯片(即,NP2)不为线卡板1中的转发芯片,此时,CPU1将发送BFD报文的转发芯片更新为NP1,并生成用于转发BFD报文3的转发表项2,将转发表项2和BFD报文3下发给NP1,由NP1基于该转发表项2发送BFD报文3。
之后,CPU1将NP1的BFD报文发送状态由0更改为1,并向更新前的转发芯片(即,NP2)所属的线卡板(即,线卡板2)中的CPU(即,CPU2)发送携带有BFD会话1的会话标识符1的停止消息2。后续CPU2的处理流程与CPU1接收到停止消息1的处理流程类似,在此不再详述。
假设NP1发送BFD报文3后,CPU1才接收到上述停止消息1,此时,CPU1查找BFD报文发送状态为1、且不为最近一次更新的转发芯片的转发芯片,即,查找到NP0;CPU1通知NP0停止发送BFD报文1以及删除NP0存储的转发表项,并且,CPU1还将NP0的BFD报文发送状态由1更改为0。
由以上技术方案可以看出,在本申请实施例中,对于路由设备中的任一线卡板而言,在该线卡板中的CPU接收到该路由设备中的主控板发送的携带有BFD会话的会话信息(至少包括BFD报文及其对应的出接口信息)的会话通知消息时,一旦确定出该出接口信息对应的第一转发芯片所属的线卡板为该线卡板、且最近一次更新的发送BFD报文的第二转发芯片不为该线卡板中的转发芯片,则发送BFD报文的转发芯片更新为该第一转发芯片,并生成用于转发该BFD报文的转发表项,将该转发表项和该BFD报文下发给该第一转发芯片,以使该第一转发芯片基于该转发表项发送该BFD报文;将该第一转发芯片的BFD报文发送状态由初始状态更改为预设状态,并向更新前的第二转发芯片所属的线卡板中的CPU发送携带有该目标会话的会话标识符的停止消息,以使对应的CPU在接收到该停止消息后,查找BFD报文发送状态为该预设状态、且不为最近一次更新的转发芯片,并通知查找到的转发芯片停止发送该BFD报文以及删除其存储的转发表项,将查找到的转发芯片的BFD报文发送状态由该预设状态更改为该初始状态。
可见,在整个线卡板对会话通知消息的处理过程中,通过增设BFD报文发送状态、和接收到会话通知消息时需要发送BFD报文的线卡板与接收到会话通知消息时需要停止发送BFD报文的线卡板之间交互的停止消息,实现了在线卡板之间同步发送BFD报文,从而避免了相关BFD会话因检测超时引起的误震荡问题。
基于同一发明构思,本申请还提供了一种消息处理装置,所述装置应用于路由设备中的任一线卡板中的CPU,其结构示意图如图3所示,具体包括:
接收模块31,用于接收所述路由设备中的主控板发送的携带有目标双向转发检测BFD会话的会话信息的会话通知消息,其中,所述会话信息中至少包括BFD报文及其对应的出接口信息;
第一处理模块32,用于若确定出所述出接口信息对应的第一转发芯片所属的线卡板为该线卡板、且最近一次更新的发送BFD报文的第二转发芯片不为该线卡板中的转发芯片,则将发送BFD报文的第二转发芯片更新为所述第一转发芯片,并生成用于转发所述BFD报文的转发表项,将所述转发表项和所述BFD报文下发给所述第一转发芯片,以使所述第一转发芯片基于所述转发表项发送所述BFD报文;
第二处理模块33,用于将所述第一转发芯片的BFD报文发送状态由初始状态更改为预设状态,并向更新前的第二转发芯片所属的线卡板中的CPU发送携带有所述目标BFD会话的会话标识符的停止消息,以使对应的CPU在接收到所述停止消息后,查找BFD报文发送状态为所述预设状态、且不为最近一次更新的第二转发芯片,并通知查找到的转发芯片停止发送所述BFD报文以及删除其存储的转发表项,将查找到的转发芯片的BFD报文发送状态由所述预设状态更改为所述初始状态。
优选地,所述装置还包括:
第三处理模块(图3中未示出),
用于在所述接收模块接收到所述会话通知消息后,若确定出所述第一转发芯片所属的线卡板不为该线卡板,则将发送BFD报文的第二转发芯片更新为所述第一转发芯片;
若接收到所述第一转发芯片所属的线卡板中的CPU发送的所述停止消息,则在自身管理的转发芯片中,查找BFD报文发送状态为所述预设状态、且不为最近一次更新的发送所述BFD报文的第二转发芯片;
通知查找到的转发芯片停止发送所述BFD报文以及删除其存储的转发表项,并将查找到的转发芯片的BFD报文发送状态由所述预设状态更改为所述初始状态。
优选地,所述装置还包括:
第四处理模块(图3中未示出),用于在所述接收模块接收到所述会话通知消息后,若确定出所述第一转发芯片所属的线卡板为该线卡板、且最近一次更新的发送BFD报文的第二转发芯片为该线卡板中除所述第一转发芯片之外的其他转发芯片,则将发送BFD报文的第二转发芯片更新为所述第一转发芯片,并生成用于转发所述BFD报文的转发表项,将生成的转发表项和所述BFD报文下发给所述第一转发芯片,以使所述第一转发芯片基于生成的转发表项发送所述BFD报文;
将所述第一转发芯片的BFD报文发送状态由初始状态更改为预设状态;
通知所述其他转发芯片停止发送所述BFD报文以及删除其存储的转发表项,并将查找到的转发芯片的BFD报文发送状态由所述预设状态更改为所述初始状态。
优选地,所述装置还包括:
确定模块(图3中未示出),用于通过以下方式确定所述出接口信息对应的第一转发芯片所属的线卡板是否为该线卡板:
在本地存储的出接口信息、转发芯片与线卡板的对应关系中,查找所述出接口信息对应的第一转发芯片和线卡板;
判断查找到的线卡板是否为该线卡板;
在判断结果为是时,确定所述出接口信息对应的第一转发芯片所属的线卡板为该线卡板;
在判断结果为否时,确定所述出接口信息对应的第一转发芯片所属的线卡板不为该线卡板。
优选地,所述第一转发芯片为NP芯片。
由以上技术方案可以看出,在本申请实施例中,对于路由设备中的任一线卡板而言,在该线卡板中的CPU接收到该路由设备中的主控板发送的携带有BFD会话的会话信息(至少包括BFD报文及其对应的出接口信息)的会话通知消息时,一旦确定出该出接口信息对应的第一转发芯片所属的线卡板为该线卡板、且最近一次更新的发送BFD报文的第二转发芯片不为该线卡板中的转发芯片,则发送BFD报文的转发芯片更新为该第一转发芯片,并生成用于转发该BFD报文的转发表项,将该转发表项和该BFD报文下发给该第一转发芯片,以使该第一转发芯片基于该转发表项发送该BFD报文;将该第一转发芯片的BFD报文发送状态由初始状态更改为预设状态,并向更新前的第二转发芯片所属的线卡板中的CPU发送携带有该目标会话的会话标识符的停止消息,以使对应的CPU在接收到该停止消息后,查找BFD报文发送状态为该预设状态、且不为最近一次更新的转发芯片,并通知查找到的转发芯片停止发送该BFD报文以及删除其存储的转发表项,将查找到的转发芯片的BFD报文发送状态由该预设状态更改为该初始状态。
可见,在整个线卡板对会话通知消息的处理过程中,通过增设BFD报文发送状态、和接收到会话通知消息时需要发送BFD报文的线卡板与接收到会话通知消息时需要停止发送BFD报文的线卡板之间交互的停止消息,实现了在线卡板之间同步发送BFD报文,从而避免了相关BFD会话因检测超时引起的误震荡问题。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (10)
1.一种消息处理方法,其特征在于,所述方法应用于路由设备中的任一线卡板中的中央处理器CPU,所述方法包括:
接收所述路由设备中的主控板发送的携带有目标双向转发检测BFD会话的会话信息的会话通知消息,其中,所述会话信息中至少包括BFD报文及其对应的出接口信息;
若确定出所述出接口信息对应的第一转发芯片所属的线卡板为该线卡板、且最近一次更新的发送BFD报文的第二转发芯片不为该线卡板中的转发芯片,则将发送BFD报文的第二转发芯片更新为所述第一转发芯片,并生成用于转发所述BFD报文的转发表项,将所述转发表项和所述BFD报文下发给所述第一转发芯片,以使所述第一转发芯片基于所述转发表项发送所述BFD报文;
将所述第一转发芯片的BFD报文发送状态由初始状态更改为预设状态,并向更新前的第二转发芯片所属的线卡板中的CPU发送携带有所述目标BFD会话的会话标识符的停止消息,以使对应的CPU在接收到所述停止消息后,查找BFD报文发送状态为所述预设状态、且不为最近一次更新的第二转发芯片,并通知查找到的转发芯片停止发送所述BFD报文以及删除其存储的转发表项,将查找到的转发芯片的BFD报文发送状态由所述预设状态更改为所述初始状态。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在接收到所述会话通知消息后,若确定出所述第一转发芯片所属的线卡板不为该线卡板,则将发送BFD报文的第二转发芯片更新为所述第一转发芯片;
若接收到所述第一转发芯片所属的线卡板中的CPU发送的所述停止消息,则在自身管理的转发芯片中,查找BFD报文发送状态为所述预设状态、且不为最近一次更新的第二转发芯片的转发芯片;
通知查找到的转发芯片停止发送所述BFD报文以及删除其存储的转发表项,并将查找到的转发芯片的BFD报文发送状态由所述预设状态更改为所述初始状态。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在接收到所述会话通知消息后,若确定出所述第一转发芯片所属的线卡板为该线卡板、且最近一次更新的发送BFD报文的第二转发芯片为该线卡板中除所述第一转发芯片之外的其他转发芯片,则将发送BFD报文的第二转发芯片更新为所述第一转发芯片,并生成用于转发所述BFD报文的转发表项,将生成的转发表项和所述BFD报文下发给所述第一转发芯片,以使所述第一转发芯片基于生成的转发表项发送所述BFD报文;
将所述第一转发芯片的BFD报文发送状态由初始状态更改为预设状态;
通知所述其他转发芯片停止发送所述BFD报文以及删除其存储的转发表项,并将查找到的转发芯片的BFD报文发送状态由所述预设状态更改为所述初始状态。
4.根据权利要求1至3中任一项所述的方法,其特征在于,通过以下方式确定所述出接口信息对应的第一转发芯片所属的线卡板是否为该线卡板:
在本地存储的出接口信息、转发芯片与线卡板的对应关系中,查找所述出接口信息对应的第一转发芯片和线卡板;
判断查找到的线卡板是否为该线卡板;
在判断结果为是时,确定所述出接口信息对应的第一转发芯片所属的线卡板为该线卡板;
在判断结果为否时,确定所述出接口信息对应的第一转发芯片所属的线卡板不为该线卡板。
5.根据权利要求1所述的方法,其特征在于,所述第一转发芯片为网络处理器NP芯片。
6.一种消息处理装置,其特征在于,所述装置应用于路由设备中的任一线卡板中的中央处理器CPU,所述装置包括:
接收模块,用于接收所述路由设备中的主控板发送的携带有目标双向转发检测BFD会话的会话信息的会话通知消息,其中,所述会话信息中至少包括BFD报文及其对应的出接口信息;
第一处理模块,用于若确定出所述出接口信息对应的第一转发芯片所属的线卡板为该线卡板、且最近一次更新的发送BFD报文的第二转发芯片不为该线卡板中的转发芯片,则将发送BFD报文的第二转发芯片更新为所述第一转发芯片,并生成用于转发所述BFD报文的转发表项,将所述转发表项和所述BFD报文下发给所述第一转发芯片,以使所述第一转发芯片基于所述转发表项发送所述BFD报文;
第二处理模块,用于将所述第一转发芯片的BFD报文发送状态由初始状态更改为预设状态,并向更新前的第二转发芯片所属的线卡板中的CPU发送携带有所述目标BFD会话的会话标识符的停止消息,以使对应的CPU在接收到所述停止消息后,查找BFD报文发送状态为所述预设状态、且不为最近一次更新的第二转发芯片,并通知查找到的转发芯片停止发送所述BFD报文以及删除其存储的转发表项,将查找到的转发芯片的BFD报文发送状态由所述预设状态更改为所述初始状态。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第三处理模块,用于在所述接收模块接收到所述会话通知消息后,若确定出所述第一转发芯片所属的线卡板不为该线卡板,则将发送BFD报文的第二转发芯片更新为所述第一转发芯片;
若接收到所述第一转发芯片所属的线卡板中的CPU发送的所述停止消息,则在自身管理的转发芯片中,查找BFD报文发送状态为所述预设状态、且不为最近一次更新的发送所述BFD报文的第二转发芯片;
通知查找到的转发芯片停止发送所述BFD报文以及删除其存储的转发表项,并将查找到的转发芯片的BFD报文发送状态由所述预设状态更改为所述初始状态。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第四处理模块,用于在所述接收模块接收到所述会话通知消息后,若确定出所述第一转发芯片所属的线卡板为该线卡板、且最近一次更新的发送BFD报文的第二转发芯片为该线卡板中除所述第一转发芯片之外的其他转发芯片,则将发送BFD报文的第二转发芯片更新为所述第一转发芯片,并生成用于转发所述BFD报文的转发表项,将生成的转发表项和所述BFD报文下发给所述第一转发芯片,以使所述第一转发芯片基于生成的转发表项发送所述BFD报文;
将所述第一转发芯片的BFD报文发送状态由初始状态更改为预设状态;
通知所述其他转发芯片停止发送所述BFD报文以及删除其存储的转发表项,并将查找到的转发芯片的BFD报文发送状态由所述预设状态更改为所述初始状态。
9.根据权利要求6至8中任一项所述的装置,其特征在于,所述装置还包括:
确定模块,用于通过以下方式确定所述出接口信息对应的第一转发芯片所属的线卡板是否为该线卡板:
在本地存储的出接口信息、转发芯片与线卡板的对应关系中,查找所述出接口信息对应的第一转发芯片和线卡板;
判断查找到的线卡板是否为该线卡板;
在判断结果为是时,确定所述出接口信息对应的第一转发芯片所属的线卡板为该线卡板;
在判断结果为否时,确定所述出接口信息对应的第一转发芯片所属的线卡板不为该线卡板。
10.根据权利要求6所述的装置,其特征在于,所述第一转发芯片为网络处理器NP芯片。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111118594.2A CN113765797B (zh) | 2021-09-24 | 2021-09-24 | 一种消息处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111118594.2A CN113765797B (zh) | 2021-09-24 | 2021-09-24 | 一种消息处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113765797A true CN113765797A (zh) | 2021-12-07 |
CN113765797B CN113765797B (zh) | 2022-11-18 |
Family
ID=78797124
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111118594.2A Active CN113765797B (zh) | 2021-09-24 | 2021-09-24 | 一种消息处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113765797B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117278345A (zh) * | 2023-11-20 | 2023-12-22 | 新华三技术有限公司 | 应用于网络设备的节能方法及装置 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101247270A (zh) * | 2008-03-19 | 2008-08-20 | 中兴通讯股份有限公司 | 一种实现双向转发检测的系统及方法 |
US20130229922A1 (en) * | 2012-03-02 | 2013-09-05 | Futurewei Technologies, Inc. | DS-Lite with BFD Support |
WO2016187980A1 (zh) * | 2015-05-25 | 2016-12-01 | 中兴通讯股份有限公司 | 一种bfd建链的方法及其装置、路由器 |
CN107547368A (zh) * | 2017-08-04 | 2018-01-05 | 新华三技术有限公司 | Bfd会话切换方法、装置及存储介质 |
CN109039746A (zh) * | 2018-08-07 | 2018-12-18 | 新华三技术有限公司 | 检测双向转发路径检测会话状态的方法及处理器 |
CN109495345A (zh) * | 2018-11-22 | 2019-03-19 | 北京华三通信技术有限公司 | 一种bfd处理方法及网络设备 |
CN109547274A (zh) * | 2019-01-28 | 2019-03-29 | 新华三技术有限公司 | 一种维护板切换方法、装置及第一网络设备 |
CN110620739A (zh) * | 2019-07-25 | 2019-12-27 | 新华三技术有限公司成都分公司 | 一种bfd报文发送方法及装置 |
CN111478851A (zh) * | 2020-02-29 | 2020-07-31 | 新华三信息安全技术有限公司 | 一种报文处理方法和装置 |
-
2021
- 2021-09-24 CN CN202111118594.2A patent/CN113765797B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101247270A (zh) * | 2008-03-19 | 2008-08-20 | 中兴通讯股份有限公司 | 一种实现双向转发检测的系统及方法 |
US20130229922A1 (en) * | 2012-03-02 | 2013-09-05 | Futurewei Technologies, Inc. | DS-Lite with BFD Support |
WO2016187980A1 (zh) * | 2015-05-25 | 2016-12-01 | 中兴通讯股份有限公司 | 一种bfd建链的方法及其装置、路由器 |
CN107547368A (zh) * | 2017-08-04 | 2018-01-05 | 新华三技术有限公司 | Bfd会话切换方法、装置及存储介质 |
CN109039746A (zh) * | 2018-08-07 | 2018-12-18 | 新华三技术有限公司 | 检测双向转发路径检测会话状态的方法及处理器 |
CN109495345A (zh) * | 2018-11-22 | 2019-03-19 | 北京华三通信技术有限公司 | 一种bfd处理方法及网络设备 |
CN109547274A (zh) * | 2019-01-28 | 2019-03-29 | 新华三技术有限公司 | 一种维护板切换方法、装置及第一网络设备 |
CN110620739A (zh) * | 2019-07-25 | 2019-12-27 | 新华三技术有限公司成都分公司 | 一种bfd报文发送方法及装置 |
CN111478851A (zh) * | 2020-02-29 | 2020-07-31 | 新华三信息安全技术有限公司 | 一种报文处理方法和装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117278345A (zh) * | 2023-11-20 | 2023-12-22 | 新华三技术有限公司 | 应用于网络设备的节能方法及装置 |
CN117278345B (zh) * | 2023-11-20 | 2024-02-13 | 新华三技术有限公司 | 应用于网络设备的节能方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113765797B (zh) | 2022-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20020169794A1 (en) | Redundancy systems and methods in communications systems | |
CN104243239B (zh) | 一种sdn集群中控制器的状态检测方法和装置 | |
CN101989953A (zh) | 双向转发检测报文的发送方法及设备 | |
CN110958151B (zh) | 保活检测方法、装置、节点、存储介质及通信系统 | |
CN109495345B (zh) | 一种bfd处理方法及网络设备 | |
CN109450707B (zh) | 一种数据传输方法、装置、网关设备及可读存储介质 | |
CN113765797B (zh) | 一种消息处理方法及装置 | |
CN103036716A (zh) | 链路切换方法及系统 | |
CN106911597A (zh) | 一种跨板转发方法和装置 | |
CN104539462B (zh) | 一种切换至灾备应用实例的方法及装置 | |
CN112787939B (zh) | 路径转发表更新方法及装置 | |
CN110502581A (zh) | 分布式数据库系统监测方法及装置 | |
CN101741618A (zh) | 一种数据通信设备进行业务处理的方法及数据通信设备 | |
CN110601786B (zh) | 一种时间同步方法、中继设备及装置 | |
CN112383414A (zh) | 双机热备份快速切换方法及装置 | |
US9350621B2 (en) | Synchronization after restart of a FC switch | |
CN111064622B (zh) | 网络设备、同步装置及信息传输方法 | |
CN111464346B (zh) | 基于atca架构的主备用控制板同步方法及系统 | |
CN110474781B (zh) | 一种组播数据转发的方法及装置 | |
JP2003186722A (ja) | クラスタシステムにおけるデータベースサーバフェイルオーバー方法 | |
CN114125827A (zh) | 一种终端管理方法、装置及集中化管理系统 | |
CN109361781B (zh) | 报文转发方法、装置、服务器、系统及存储介质 | |
CN112866107A (zh) | Ip地址通告方法、流量引导方法及网络设备 | |
CN115152192A (zh) | Pce受控网络可靠性 | |
CN114979037B (zh) | 一种组播方法、装置、交换机和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |