一种双向转发检测报文的处理装置及方法制造方法及图纸

技术编号:16841844 阅读:43 留言:0更新日期:2017-12-20 00:27
一种双向转发检测报文的处理装置及方法,可以有效避免多个BFD会话集中于某个线卡CPU上,保持设备性能的稳定性及安全性。包括主控CPU和线卡CPU,所述主控CPU和线卡CPU分离设置,其中,主控CPU负责BFD会话建立,删除和控制BFD报文发送/接收的相关信息,即BFD控制模块在主控CPU上,负责BFD会话的控制;线卡CPU根据主控CPU下发的配置参数,在指定的线卡CPU创建本地BFD会话,进行BFD的报文的收发;其他线卡CPU创建非本地BFD会话,非本地BFD会话收到该BFD会话的报文都将该报文转发到指定的线卡CPU,即BFD报文转发模块在线卡CPU上。本发明专利技术能够跟踪记录单板上光模块的启用时间,实际运行时长,对超过运行时长阈值的光模块发出告警信息,提示更换,提高了通信系统的可靠性。

A processing device and method for two-way forwarding detection message

A processing device of bidirectional forwarding detection message and method, can effectively avoid the multiple BFD sessions focused on a CPU card, to maintain the stability and safety of equipment performance. Including the main control card CPU and CPU, the main control card CPU and CPU are separated and the main control CPU is responsible for BFD session establishment, delete and control BFD message send / receive relevant information, namely the BFD control module in the main control CPU, BFD control for the session; according to the configuration parameters of the main control card CPU CPU issued, create a local BFD session with the card designated CPU, BFD to send and receive packets; the other card CPU to create a non local BFD session, the non local BFD session received the message of the BFD session will be the message to the specified CPU card, the BFD packet forwarding module online card CPU. The invention can track and record the startup time of the optical module of the single board, and the actual running time can alarm information for the optical module exceeding the runtime threshold value, prompt and replace, and improve the reliability of the communication system.

【技术实现步骤摘要】
一种双向转发检测报文的处理装置及方法
本专利技术涉及数据通信
,具体涉及一种双向转发检测报文的处理装置及方法。
技术介绍
双向转发检测(BidirectionalForwardingDetection,简称BFD),是IETF(InternetEngineeringTaskForce,互联网工程任务组)发布的一套用来实现快速检测的国际标准协议。它是一个用于检测两个转发点之间故障的网络协议,可以提供毫秒级的检测,当链路发生故障时,实现链路的快速检测,从而快速建立起备用通道恢复通信,确保业务的永续性。现有BFD技术实现方法有:BFD会话建立由主控板的CPU完成,会话建立后,会话的维护和报文的收发由线卡完成。而BFD会话的报文在哪个CPU收,通常就在该线卡的CPU进行维护和转发,在分布式设备中,虽然存在多个线卡CPU,但是如果仅是一个线卡CPU处理多个BFD会话,存在资源利用率不高的问题。专利申请号为200810161826.0的中国专利申请“一种实现双向收发检测的方法和装置”,通过外部器件(FPGA)进行收发,来减轻线卡CPU的负担。专利申请号为201210266071.7的中国专利申请“一种BFD实现方法及设备”是一个BFD会话建立在多个线卡CPU上,该BFD会话的保活报文平均分摊到各个CPU,以达到降低CPU利用率,但是管理BFD会话比较复杂。
技术实现思路
本专利技术提出的一种双向转发检测报文的处理装置及方法,可以有效避免多个BFD会话集中于某个线卡CPU上,保持设备性能的稳定性及安全性。为实现上述目的,本专利技术采用了以下技术方案:一种双向转发检测报文的处理装置,包括主控CPU和线卡CPU,所述主控CPU和线卡CPU分离设置,其中,主控CPU负责BFD会话建立,删除和控制BFD报文发送/接收的相关信息,即BFD控制模块在主控CPU上,负责BFD会话的控制;线卡CPU根据主控CPU下发的配置参数,在指定的线卡CPU创建本地BFD会话,进行BFD的报文的收发;其他线卡CPU创建非本地BFD会话,非本地BFD会话收到该BFD会话的报文都将该报文转发到指定的线卡CPU,即BFD报文转发模块在线卡CPU上。进一步的,还包括主控CPU建立本端设备和对端设备之间的BFD会话链路,并协商会话内容的BFD参数信息。进一步的,所述指定线卡CPU的BFD会话在规定的时间内没有收到足够的保活报文,则通知主控CPU进行BFD会话删除。进一步的,所述线卡CPU需要创建三张表,BFD会话信息表、BFD分流表、BFD状态表,其中,所述BFD会话信息表是主控CPU协商成功后下发到线卡CPU创建的,主要作用是线卡CPU发送BFD保活报文内容封装及收到BFD报文时进行查表,是否该设备有创建该BFD会话,有的话再判断会话表是否有local标记;所述BFD分流表是BFD会话协商成功后,主控CPU下发相关信息到CPU时创建,用于线卡CPU收到BFD报文进行查找BFD会话成功后,根据会话表的Locoal标记判断是否进行BFD分流表查找,如果置1则就在本线卡处理,否则需要进行分流表查找,根据目的线卡CPU作为入参查找BFD分流表,查找到K线卡CPU的下一跳出接口,再发送到指定的线卡CPU上处理;所述BFD状态表,对收到BFD会话进行检查,是否定期能收到保活报文,如果没收到表明该链路出现故障,需要上报进行相关处理。一种双向转发检测报文的处理方法,包括如下步骤:步骤一:设备初始化,给所有线卡CPU进行编号;步骤二:主控CPU根据配置的BFD会话参数,将信息下发到所有的线卡CPU,线卡CPU创建BFD会话表,但是只有一块线卡CPU才会将BFD会话表中的local字段值标记为1,该标记通过本设备BFD会话的MyDicriminator字段计算得出线卡CPU编号K,此时其他线卡CPU上的BFD会话表中local标记为0,同时所有的线卡CPU都将创建一个BFD分流表;步骤三:当线卡CPU收到对端设备发过来的报文,线卡CPU首先判断是否是BFD报文,如果是则进入BFD业务处理,否则进入其他业务处理;步骤四:线卡CPU进一步判断是否是BFD建链报文,是的话则上送到主控CPU,主控CPU进行BFD会话协商,协商成功,主控CPU把BFD会话内容下发到各个线卡CPU,所有线卡CPU都将更新该BFD会话表,同时开启定时器,定时发送BFD的保活报文;步骤五:线卡CPU收到的是BFD保活报文,那么提取该BFD报文中的yourdicriminator查找BFD会话表,查找失败,则将报文送给主控CPU处理,否则继续在线卡CPU处理,查找成功后,如果BFD会话表的locoal标记为0,那么需要进行BFD分流表查找,查找成功后,就将该BFD报文发送到指定的线卡CPU,继续步骤五处理,否则就更新BFD状态表。进一步的,所述步骤二还包括:BFD会话表创建完后,主控发送BFD建链报文到线卡CPU,但是只有编号为K的线卡CPU会将报文从指定接口发送到对端设备,其他都将丢弃。进一步,所述步骤二中线卡CPU编号K=MyDicriminator%线卡数N。由上述技术方案可知,本专利技术能够跟踪记录单板上光模块的启用时间,实际运行时长,对超过运行时长阈值的光模块发出告警信息,提示更换,提高了通信系统的可靠性。并且本专利技术没有外部器件、管理简便的情况下,实现一种BFD的装置及方法,可以实现大容量的BFD会话,且无需占用太多线卡CPU资源。附图说明图1是本专利技术分布式设备架构图;图2设备发送bfd建链报文图;图3设备接收bfd建链报文图;图4设备接收bfd保活报文图;图5设备发送bfd保活报文图;图6bfd收包流程图。具体实施方式下面结合附图对本专利技术做进一步说明:本实施例所述的双向转发检测报文的处理装置及方法,采用主控CPU和线卡CPU分离,线卡CPU与线卡CPU之间分离装置,如图1所示。主控CPU负责将BFD会话内容下发到所有线卡CPU上,所有的线卡CPU都会创建BFD会话表,但是只有一块线卡CPU负责管理BFD保活报文,其他线卡CPU收到该保活报文将通过查BFD分流表,并发送至指定的线卡CPU上进行集中处理。如果有多个BFD会话,通过散列算法,可均匀的分配到各个线卡上。这样就达到管理简单且多BFD会话能散列到各个线卡CPU上,使CPU利用率得到提高。具体如下:本专利技术实施例提供的一种BFD实现方法,应用于分布式设备,分布式设备包括主控CPU和线卡CPU,如图1所示。其中主控CPU负责:1)BFD参数配置并发送建链报文到线卡CPU上。2)处理来自线卡CPU的BFD报文。3)协商成功后下发BFD会话信息到线卡CPU。线卡CPU负责:1)区分BFD的保活报文和建链报文2)将建链报文上送到主控CPU处理3)保活报文在线卡CPU进行处理,进行BFD会话维护。在这里需要指出,线卡CPU需要创建三张表,BFD会话信息表、BFD分流表、BFD状态表。1、BFD会话信息表是主控CPU协商成功后下发到线卡CPU创建的,主要作用是线卡CPU发送BFD保活报文内容封装及收到BFD报文时进行查表,是否该设备有创建该BFD会话,有的话再判断会话表是否有local标记。Locoal标记判断方法,线卡CPUK=(MyDiscrimi本文档来自技高网...
一种双向转发检测报文的处理装置及方法

【技术保护点】
一种双向转发检测报文的处理装置,其特征在于:包括主控CPU和线卡CPU,所述主控CPU和线卡CPU分离设置,其中,主控CPU负责BFD会话建立,删除和控制BFD报文发送/接收的相关信息,即BFD控制模块在主控CPU上,负责BFD会话的控制;线卡CPU根据主控CPU下发的配置参数,在指定的线卡CPU创建本地BFD会话,进行BFD的报文的收发;其他线卡CPU创建非本地BFD会话,非本地BFD会话收到该BFD会话的报文都将该报文转发到指定的线卡CPU,即BFD报文转发模块在线卡CPU上。

【技术特征摘要】
1.一种双向转发检测报文的处理装置,其特征在于:包括主控CPU和线卡CPU,所述主控CPU和线卡CPU分离设置,其中,主控CPU负责BFD会话建立,删除和控制BFD报文发送/接收的相关信息,即BFD控制模块在主控CPU上,负责BFD会话的控制;线卡CPU根据主控CPU下发的配置参数,在指定的线卡CPU创建本地BFD会话,进行BFD的报文的收发;其他线卡CPU创建非本地BFD会话,非本地BFD会话收到该BFD会话的报文都将该报文转发到指定的线卡CPU,即BFD报文转发模块在线卡CPU上。2.根据权利要求1所述的双向转发检测报文的处理装置,其特征在于:还包括主控CPU建立本端设备和对端设备之间的BFD会话链路,并协商会话内容的BFD参数信息。3.根据权利要求2所述的双向转发检测报文的处理装置,其特征在于:所述指定线卡CPU的BFD会话在规定的时间内没有收到足够的保活报文,则通知主控CPU进行BFD会话删除。4.根据权利要求3所述的双向转发检测报文的处理装置,其特征在于:所述线卡CPU需要创建三张表,BFD会话信息表、BFD分流表、BFD状态表,其中,所述BFD会话信息表是主控CPU协商成功后下发到线卡CPU创建的,主要作用是线卡CPU发送BFD保活报文内容封装及收到BFD报文时进行查表,是否该设备有创建该BFD会话,有的话再判断会话表是否有local标记;所述BFD分流表是BFD会话协商成功后,主控CPU下发相关信息到CPU时创建,用于线卡CPU收到BFD报文进行查找BFD会话成功后,根据会话表的Locoal标记判断是否进行BFD分流表查找,如果置1则就在本线卡处理,否则需要进行分流表查找,根据目的线卡CPU作为入参查找BFD分流表,查找到K线卡CPU的下一跳出接口,再发送到指定的线卡CPU上处理;所述BFD状态表,对收到BFD会话进行检查,是否定期能收到保活报文,如果没收到表明...

【专利技术属性】
技术研发人员:付艳柳
申请(专利权)人:安徽皖通邮电股份有限公司
类型:发明
国别省市:安徽,34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1