CN101800677A - 一种双向转发检测报文的处理装置及方法 - Google Patents

一种双向转发检测报文的处理装置及方法 Download PDF

Info

Publication number
CN101800677A
CN101800677A CN201010119149A CN201010119149A CN101800677A CN 101800677 A CN101800677 A CN 101800677A CN 201010119149 A CN201010119149 A CN 201010119149A CN 201010119149 A CN201010119149 A CN 201010119149A CN 101800677 A CN101800677 A CN 101800677A
Authority
CN
China
Prior art keywords
session
message
unit
tocpu
subclauses
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
CN201010119149A
Other languages
English (en)
Other versions
CN101800677B (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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN201010119149.3A priority Critical patent/CN101800677B/zh
Publication of CN101800677A publication Critical patent/CN101800677A/zh
Application granted granted Critical
Publication of CN101800677B publication Critical patent/CN101800677B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供了一种双向转发检测BFD报文的处理装置,会话协商单元,用于分配本地连接标识符LD、发送或接收报文;会话状态设置单元,用于设置本地会话信息表中会话协商单元分配的LD对应的toCpu的值;网络处理器NP,用于根据toCpu的值确定报文类型。本发明还提供了一种双向转发检测BFD报文的处理方法,采用本装置及方法,可以有效的避免BFD报文冲击CPU,提高系统的稳定性及安全性。

Description

一种双向转发检测报文的处理装置及方法
技术领域
本发明涉及数据通信领域,特别是指一种双向转发检测(BFD)报文的处理装置及方法。
背景技术
随着通信技术的发展,传统话音交换网络向IP网络转变在网络建设中逐渐成为现实,运营商已经基本停止新建传统话音交换网络,逐渐向IP承载方向发展。但是,目前传统的IP网络是一种尽力而为的服务模型,即IP网络关注的是报文发送是否成功,而不考虑是否接收,服务质量、可靠性等都无法达到传统话音交换网络的水平。传统话音交换网络对网络链路的可靠性更敏感,在网络链路出现故障时,可以在50ms内实现主用链路与备用链路的倒换,这样,在IP网络中就需要一种技术可以快速的检测链路故障,BFD协议就是其中的一种。
目前,BFD协议有V0和V1两个版本,较早接入的网络设备只支持V0版本,新入网设备在支持V1版本基础上向下兼容V0版本。BFD V0协议中,会话主动端发送H=0的协商报文,会话被动端收到协商报文后,回复H=1的响应报文,会话主动端收到H=1的响应报文后再发送H=1的协商报文,经过3次握手后建立会话链路,双方开始发送H=1的检测报文,如果会话中的一方在足够长的时间内没有收到对方发送的检测报文,则说明链路出现故障。可以看出,当会话一端收到一个H=1的报文后,无法只根据报文内容区分出该报文是协商报文,还是检测报文,而必须参考该报文对应的会话状态机,所述会话状态机用于确定会话状态。
由于BFD需要支持快速检测,其检测报文的发送速率为毫秒级别,因此一般由网络处理器(NP)实现检测报文的发送和检测,CPU只用来处理会话协商过程。由于V0版本的缺陷,要区别出检测报文和协商报文,需要在NP上维护一个会话状态机,由于会话状态机运作复杂,对大部分NP而言是很难实现的,因此一般会话状态机只在CPU上维护,CPU通过会话状态机判断会话建立后,将会话信息整合下发到NP,所述会话信息包括根据会话协议规定的双方约定信息、收发报文频率以及本地连接标识符(LD)等,此后NP开始发送检测报文。对于收到的H=1的报文,NP可以根据报文中的Your Discriminator(YD)索引会话信息,如果索引到,即认为是检测报文,所述YD为报文发送方携带的报文接收方的LD,如果索引不到会话信息,即认为是协商报文,上送给CPU处理。
但是,这种处理方式存在一定的问题,对于H=0的报文,NP可直接发送给CPU,但是当会话双方的链路断开后,会话一端的CPU会删除会话信息,对于H=1的报文,NP无法区分是属于检测报文还是协商报文,这时,另一端的会话信息如果尚未删除,则正常发送检测报文,已经删除会话信息的会话端NP收到检测报文后,查找不到会话信息,便无法区分是检测报文还是协商报文,只能发送给CPU,检测报文以ms为单位发送,这样会对CPU造成冲击,如果是人为构造会话信息不存在的检测报文攻击,对网络系统的影响将更为严重。
发明内容
有鉴于此,本发明的主要目的在于提供一种BFD报文的处理装置及方法,可以有效的避免BFD报文对CPU的冲击,保持网络系统的稳定性及安全性。
为达到上述目的,本发明的技术方案是这样实现的:
本发明提供了一种双向转发检测BFD报文的处理装置,包括:
会话协商单元,用于分配本地连接标识符LD,发送或接收报文;
会话状态设置单元,用于设置本地会话信息表中会话协商单元分配的LD对应的toCpu的值;
网络处理器NP,用于根据toCpu的值确定报文类型。
上述方案中,还包括:会话初始化单元,用于初始化本地会话信息表,将条目中toCpu的值初始化。
上述方案中,所述会话协商单元位于会话主动端时,具体用于:建立会话时,为会话分配LD,发送H=0的报文,将分配LD消息发送给会话状态设置单元,接收会话被动端发送的响应报文,回复H=1的协商报文;所述NP具体用于:收到H=1的报文后,根据报文中携带的YD查找本地会话信息表中的条目,根据条目toCpu的值确定报文处于协商阶段,将报文发送给CPU;所述会话协商单元位于会话被动端时,具体用于:接收H=0的报文后,给该会话分配LD,将分配LD的消息发送给会话状态设置单元,发送H=1的响应报文;所述会话状态设置单元,用于接收分配LD消息后,将LD对应的本地会话信息表条目中toCpu设置为处于协商阶段。
上述方案中,所述会话协商单元具体用于:确定建立会话链路,将建立会话链路的消息发送给会话状态设置单元;相应的,会话状态设置单元具体用于:将本地会话信息表中会话对应条目的toCpu设置为处于检测阶段。
上述方案中,还包括:会话拆除单元,用于会话链路断开时,清除会话信息。
本发明还提供了一种BFD报文的处理方法,包括:
会话协商单元分配LD、发送或接收报文,会话状态设置单元设置会话LD对应条目中toCpu的值,NP根据接收报文索引到的toCpu的值确定报文类型。
上述方案中,所述会话协商单元分配LD、发送或接收报文之前,进一步包括:会话初始化单元以LD为索引初始化本地会话信息表,所述本地会话信息表的条目包含toCpu字段,会话初始化单元将条目中toCpu设置为处于检测阶段。
上述方案中,所述会话协商单元分配LD、发送或接收报文,包括:建立会话,会话主动端的会话协商单元分配LD并发送H=0的报文,会话主动端的会话状态设置单元将本地会话信息表中LD对应条目的toCpu设置为处于协商阶段;会话被动端的会话协商单元收到H=0的报文并给会话分配LD,发送H=1的响应报文,会话被动端的会话状态设置单元将本地会话信息表中LD对应条目的toCpu设置为处于协商阶段。
上述方案中,所述设置发送报文携带的LD对应条目中toCpu的值,包括:会话协商单元确定会话链路建立后,将会话链路建立的消息发送给会话状态设置单元,会话状态设置单元将本地会话信息表中该会话LD对应条目的toCpu设置为处于检测阶段。
上述方案中,进一步包括:会话链路断开时,会话拆除单元清除会话信息。
由此可见,采用本发明提供的BFD报文的处理装置及方法,通过本地会话信息表中toCpu的值确定报文类型,从而有效的避免了检测报文对CPU的冲击。
附图说明
图1为本发明实现BFD报文的处理装置组成示意图;
图2为本发明实现BFD报文的处理方法流程示意图。
具体实施方式
本发明的基本思想是:开始建立会话时,会话协商单元为会话分配LD,发送或接收协商报文,会话状态设置单元设置LD对应条目中toCpu的值,NP根据toCpu的值确定报文类型;
其中,发送报文的过程即为一个会话。
下面通过一个优选实施例来对本发明进行详细说明,如图1所示:
本发明提供了一种防止BFD报文冲击CPU的装置,该装置包括:会话协商单元102、会话状态设置单元103和NP 105。会话协商单元102用于给会话分配本地连接标识符(LD),发送或接收协商报文;会话状态设置单元103用于设置本地会话信息表(bfdTable)中会话协商单元102分配的LD对应的toCpu的值;NP 105,用于根据toCpu的值确定报文的类型;
其中,所述bfdTable大小为本地可分配的LD的范围,其条目包含协议规定的BFD会话信息和toCpu字段,所述LD相当于bfdTable条目的索引号,所述toCpu的值为1时,表示处于协商阶段,接收的报文为协商报文,toCpu的值为0时,表示处于检测阶段,接收的报文为检测报文。
会话协商单元102、会话状态设置单元103和NP 105可以位于会话主动端,也可以位于会话被动端;
具体地,会话主动端的会话协商单元102,具体用于:建立会话时,为会话分配LD,发送H=0的报文,将分配LD消息发送给会话状态设置单元103,接收会话被动端发送的H=1的响应报文,回复H=1的协商报文,所述协商报文中包含会话主动端LD以及YD,YD即会话被动端的LD;
会话被动端的会话协商单元102,具体用于:接收H=0的报文后,给该会话分配LD并保存到本地会话信息表,将分配LD的消息发送给会话状态设置单元103,发送H=1的响应报文,所述响应报文中包含YD、即会话主动端LD,以及会话被动端LD;
相应的,会话状态设置单元103,用于接收分配LD消息后,将LD对应的本地会话信息表条目中toCpu置1;
NP 105,用于接收H=0的报文后,直接将报文发送给CPU;接收H=1的报文后,根据报文中携带的YD查找bfdTable中的条目,如果YD对应条目中toCpu的值为1,则将报文发送给CPU,如果YD对应条目中toCpu的值为0,则将报文丢弃。
具体地,会话协商单元102,用于在建立会话时,为会话分配LD,发送或接收报文,同时将分配LD的消息发送给会话状态设置单元103,所述分配是将任意未使用的LD分配给会话;确定会话可以建立后,建立会话链路并将会话链路建立的消息发送给会话状态设置单元103;
会话状态设置单元103,用于在建立会话时,将bfdTable表中会话协商单元102分配给会话的LD对应条目的toCpu的值置1;在会话链路建立后,将bfdTable表中LD对应条目的toCpu的值置0;
其中,会话协商单元102具体用于,确定会话链路建立,并将会话链路建立的消息发送给会话状态设置单元103;
相应的,会话状态设置单元103,用于收到会话链路建立的消息后将bfdTable表中会话号LD对应条目的toCpu设置为0。
该装置还包括:会话初始化单元101,用于初始化时,在NP上建立bfdTable,将bfdTable条目中的toCpu的值初始化,即将toCpu字段设置为0,其他字段值均为无效值,同时初始化条目中的会话信息。
该装置进一步包括:会话拆除单元104,用于会话断开后,清除会话信息。
本发明还提供了一种防止BFD报文冲击CPU的方法,如图2所示:
步骤201,初始化bfdTable,将各条目中toCpu的值置0;
初始化的具体过程为会话初始化单元以LD为索引,将bfdTable表中各LD对应条目的toCpu的值均置0,所述LD为bfdTable条目的索引号;
步骤202,建立会话,设置条目中报文携带的LD对应的toCpu的值。
开始建立会话,首先由会话主动端的会话协商单元任意分配一个未使用的LD,发送报文并将给会话分配LD的消息发送给会话状态设置单元,所述报文中H=0,会话状态设置单元将bfdTable表中会话协商单元分配的LD对应条目的toCpu的值置1;
会话被动端的NP收到H=0的报文后,发送给CPU,会话协商单元给该会话分配一个LD,将分配LD的消息发送给会话状态设置单元,会话状态设置单元将bfdTable表中LD对应条目的toCpu的值置1;至此,会话主动端及会话被动端的LD均已被确定。
会话被动端的会话协商单元发送响应报文并携带会话被动端的LD以及会话主动端的LD,所述响应报文中H=1;
会话主动端的NP收到H=1的响应报文后,根据响应报文中YD,即会话主动端的LD,索引bfdTable表,若表中LD对应条目的toCpu的值为1,说明此响应报文为协商报文,将响应报文发送给CPU,若表中LD条目对应的toCpu的值为0,说明此响应报文为检测报文,将报文丢弃。会话被动端的NP收到H=1的响应报文后,根据响应报文中YD,即会话被动端的LD,索引bfdTable表,若LD对应条目的toCpu的值为1,说明此响应报文为协商报文,将响应报文发送给CPU,若LD对应条目的toCpu的值为0,说明此响应报文为检测报文,将报文丢弃。
会话协商单元确定建立会话链路后,将建立会话链路的消息发送给会话状态设置单元,会话状态设置单元将bfdTable表中会话LD对应的toCpu置0,这样后续H=1的报文将不会再发送给CPU。
步骤203,会话链路断开,根据toCpu的值确定报文类型。
会话链路断开后,会话一端的会话拆除单元将会话信息清除,如果会话另一端的会话信息仍然存在,会话信息清除的一端的NP接收报文后,根据报文携带的YD,索引bfdTable条目中YD对应的toCpu的值,确定接收的报文的类型,若toCpu为0,则接收的报文为检测报文,若toCpu为1,则接收的报文为协商报文,发送给CPU。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种双向转发检测BFD报文的处理装置,其特征在于,该装置包括:
会话协商单元,用于分配本地连接标识符LD,发送或接收报文;
会话状态设置单元,用于设置本地会话信息表中会话协商单元分配的LD对应的toCpu的值;
网络处理器NP,用于根据toCpu的值确定报文类型。
2.根据权利要求1所述的装置,其特征在于,该装置还包括:
会话初始化单元,用于初始化本地会话信息表,将条目中toCpu的值初始化。
3.根据权利要求1所述的装置,其特征在于,
所述会话协商单元位于会话主动端时,具体用于:建立会话时,为会话分配LD,发送H=0的报文,将分配LD消息发送给会话状态设置单元,接收会话被动端发送的响应报文,回复H=1的协商报文;
所述NP具体用于:收到H=1的报文后,根据报文中携带的YD查找本地会话信息表中的条目,根据条目toCpu的值确定报文处于协商阶段,将报文发送给CPU;
所述会话协商单元位于会话被动端时,具体用于:接收H=0的报文后,给该会话分配LD,将分配LD的消息发送给会话状态设置单元,发送H=1的响应报文;
所述会话状态设置单元,用于接收分配LD消息后,将LD对应的本地会话信息表条目中toCpu设置为处于协商阶段。
4.根据权利要求3所述的装置,其特征在于,
所述会话协商单元具体用于:确定建立会话链路,将建立会话链路的消息发送给会话状态设置单元;
相应的,会话状态设置单元具体用于:将本地会话信息表中会话对应条目的toCpu设置为处于检测阶段。
5.根据权利要求1至4任一所述的装置,其特征在于,该装置还包括:
会话拆除单元,用于会话链路断开时,清除会话信息。
6.一种BFD报文的处理方法,其特征在于,该方法包括:
会话协商单元分配LD、发送或接收报文,会话状态设置单元设置会话LD对应条目中toCpu的值,NP根据接收报文索引到的toCpu的值确定报文类型。
7.根据权利要求6所述的方法,其特征在于,所述会话协商单元分配LD、发送或接收报文之前,进一步包括:
会话初始化单元以LD为索引初始化本地会话信息表,所述本地会话信息表的条目包含toCpu字段,会话初始化单元将条目中toCpu设置为处于检测阶段。
8.根据权利要求7所述的方法,其特征在于,所述会话协商单元分配LD、发送或接收报文,包括:
建立会话,会话主动端的会话协商单元分配LD并发送H=0的报文,会话主动端的会话状态设置单元将本地会话信息表中LD对应条目的toCpu设置为处于协商阶段;会话被动端的会话协商单元收到H=0的报文并给会话分配LD,发送H=1的响应报文,会话被动端的会话状态设置单元将本地会话信息表中LD对应条目的toCpu设置为处于协商阶段。
9.根据权利要求7所述的方法,其特征在于,所述设置发送报文携带的LD对应条目中toCpu的值,包括:
会话协商单元确定会话链路建立后,将会话链路建立的消息发送给会话状态设置单元,会话状态设置单元将本地会话信息表中该会话LD对应条目的toCpu设置为处于检测阶段。
10.根据权利要求6至9任一所述的方法,其特征在于,该方法进一步包括:
会话链路断开时,会话拆除单元清除会话信息。
CN201010119149.3A 2010-02-24 2010-02-24 一种双向转发检测报文的处理装置及方法 Expired - Fee Related CN101800677B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010119149.3A CN101800677B (zh) 2010-02-24 2010-02-24 一种双向转发检测报文的处理装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010119149.3A CN101800677B (zh) 2010-02-24 2010-02-24 一种双向转发检测报文的处理装置及方法

Publications (2)

Publication Number Publication Date
CN101800677A true CN101800677A (zh) 2010-08-11
CN101800677B CN101800677B (zh) 2015-01-28

Family

ID=42596181

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010119149.3A Expired - Fee Related CN101800677B (zh) 2010-02-24 2010-02-24 一种双向转发检测报文的处理装置及方法

Country Status (1)

Country Link
CN (1) CN101800677B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102438232A (zh) * 2011-12-29 2012-05-02 华为终端有限公司 一种网络协商方法及终端
CN103746881B (zh) * 2014-01-13 2017-03-15 杭州华三通信技术有限公司 Evi网络中的邻居状态检测方法及装置
CN107547619A (zh) * 2017-06-19 2018-01-05 新华三技术有限公司 一种定时器参数协商方法和装置
CN112367255A (zh) * 2020-09-25 2021-02-12 新华三信息安全技术有限公司 一种bfd会话处理方法、装置、存储介质及路由设备
CN114513433A (zh) * 2022-01-06 2022-05-17 新华三技术有限公司 一种报文处理方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1913457A (zh) * 2005-08-10 2007-02-14 华为技术有限公司 对双向转发链路进行故障检测的方法
CN101247270A (zh) * 2008-03-19 2008-08-20 中兴通讯股份有限公司 一种实现双向转发检测的系统及方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1913457A (zh) * 2005-08-10 2007-02-14 华为技术有限公司 对双向转发链路进行故障检测的方法
CN101247270A (zh) * 2008-03-19 2008-08-20 中兴通讯股份有限公司 一种实现双向转发检测的系统及方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102438232A (zh) * 2011-12-29 2012-05-02 华为终端有限公司 一种网络协商方法及终端
CN102438232B (zh) * 2011-12-29 2014-03-12 华为终端有限公司 一种网络协商方法及终端
CN103746881B (zh) * 2014-01-13 2017-03-15 杭州华三通信技术有限公司 Evi网络中的邻居状态检测方法及装置
CN107547619A (zh) * 2017-06-19 2018-01-05 新华三技术有限公司 一种定时器参数协商方法和装置
CN107547619B (zh) * 2017-06-19 2020-11-06 新华三技术有限公司 一种定时器参数协商方法和装置
CN112367255A (zh) * 2020-09-25 2021-02-12 新华三信息安全技术有限公司 一种bfd会话处理方法、装置、存储介质及路由设备
CN114513433A (zh) * 2022-01-06 2022-05-17 新华三技术有限公司 一种报文处理方法及装置
CN114513433B (zh) * 2022-01-06 2023-10-24 新华三技术有限公司 一种报文处理方法及装置

Also Published As

Publication number Publication date
CN101800677B (zh) 2015-01-28

Similar Documents

Publication Publication Date Title
EP2448206A1 (en) Method, system and device for transmitting video data
CN103297470B (zh) 永远在线业务的处理方法、应用服务器、用户终端和系统
CN101800677B (zh) 一种双向转发检测报文的处理装置及方法
CN103532822A (zh) 消息投递的管理方法、服务器和系统
CN102209039A (zh) 一种文件传输方法及设备
CN105591720A (zh) 一种大容量高速度的北斗数据传输的方法及系统
CN103905579A (zh) 平台与终端间的通信方法、通信系统、平台及相关设备
CN107645517A (zh) 数据推送方法及装置
CN101977358A (zh) 一种数据短信的传输方法、装置及设备
CN102780593A (zh) 基于bfd协议检测链路的方法、装置和网络处理器
CN104580346B (zh) 数据传输方法及装置
CN101977396B (zh) 多媒体消息业务中实现网元业务切换的系统及方法
CN106534331B (zh) 一种基于动态端口切换的数据传输方法和系统
CN103297449B (zh) 一种文件传输方法、即时通信终端及系统
CN102413191A (zh) 一种基于浏览器的web即时通讯方法
CN101778101A (zh) 一种消息传送方法和消息传送系统
CN112887312B (zh) 一种慢协议报文处理方法及相关装置
CN101548514B (zh) 在一个移动无线电系统中交换消息的方法和设备
CN107995199A (zh) 网络设备的端口限速方法及装置
CN101800682A (zh) 一种双向转发检测方法及装置
CN102263808B (zh) 一种会话控制服务方法、装置和系统
CN101795216B (zh) 多跳双向转发检测中复位看门狗的方法及设备
CN105426118B (zh) 一种双控系统中利用串口备份心跳通道的方法
CN101778055B (zh) 一种消息处理方法和网络实体
EP2757756B1 (en) Apparatus and method for reducing transmission delay of HTTP protocol and processing load of HTTP server in wireless communications network

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150128

Termination date: 20200224

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