CN101150523A - 一种路由信息传播方法和路由器 - Google Patents

一种路由信息传播方法和路由器 Download PDF

Info

Publication number
CN101150523A
CN101150523A CNA2007101771139A CN200710177113A CN101150523A CN 101150523 A CN101150523 A CN 101150523A CN A2007101771139 A CNA2007101771139 A CN A2007101771139A CN 200710177113 A CN200710177113 A CN 200710177113A CN 101150523 A CN101150523 A CN 101150523A
Authority
CN
China
Prior art keywords
lsa
router
default
lsdb
ospf
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
CNA2007101771139A
Other languages
English (en)
Other versions
CN100596117C (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.)
New H3C Information Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
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 Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN200710177113A priority Critical patent/CN100596117C/zh
Publication of CN101150523A publication Critical patent/CN101150523A/zh
Application granted granted Critical
Publication of CN100596117C publication Critical patent/CN100596117C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种路由信息传播方法,包括:对需要限制LSDB规模的目标路由器,在该目标路由器的上行邻居路由器中生成缺省LSA;在上行邻居路由器向目标路由器发布LSA时,仅将所述缺省LSA与该上行邻居路由器产生的RouterLSA发布给所述目标路由器;发布给目标路由器的所述缺省LSA,用于为目标路由器提供缺省路由,使所述目标路由器根据所述缺省LSA将未找到匹配路由的报文转发给所述上行邻居路由器。本发明还公开了一种路由器,包括OSPF接口单元、存储单元和LSA处理单元。应用本发明,能够在中低端路由器上运行OSPF协议。

Description

一种路由信息传播方法和路由器
技术领域
本发明涉及开放最短路径优先(OSPF)路由协议技术,特别涉及一种路由信息传播方法和路由器。
背景技术
OSPF是IETF组织开发的一个基于链路状态的内部网关协议。应用OSPF协议的路由器间通过链路状态报告(LSA)互相传递路由信息,每一台运行OSPF协议的路由器总是将本地网络的连接状态,如可用接口信息、可达邻居信息等用LSA描述,并广播到整个自治系统中去。这样,每台路由器都收到了自治系统中所有路由器生成的LSA,所有LSA的集合组成链路状态数据库(LSDB)。由于每一条LSA是对一台路由器周边网络拓扑的描述,则整个LSDB就是对该自治系统网络拓扑的真实反映。其中,LSA共分为七类。
图1为一种典型的通信网络组网示意图,包括核心层、汇聚层和接入层。其中,核心层由图中的CORRT1、CORRT2、CORRT3和CORRT4组成,汇聚层包括图中的汇聚层路由器MRT1、MRT2、MRT3和MRT4,接入层包括图中的路由器RT1、RT2、...、RTN。在各层之间,如汇聚层与接入层之间的链路,对汇聚层来说就是下行链路,MRT1、MRT2、MRT3和MRT4为接入层路由器RT1、RT2、...、RTN的上行邻居路由器。
目前,在网络中应用OSPF协议时,通常将整个网络分成不同的区域,同一区域内的各个路由器间保持LSDB同步。在图1所示的组网环境中,AREA100为一个OSPF区域,该区域内的MRT1、MRT2、MRT3、MRT4、RT1、RT2...、RTN间保持LSDB同步,这些路由器均根据自身保存的LSDB,应用SPF路由算法计算到达各个目的节点的路由。具体地,区域内任意路由器的LSDB中通常包括:该路由器自身和区域内其他路由器产生的一类LSA(Router LSA),二类LSA(NetWork LSA),本区域引入的外部路由信息LSA,还有区域间路由信息LSA和其他区域引入的外部路由信息LSA。路由器间会互相向邻居路由器发布本LSDB中的LSA。
考虑到进行的业务处理和成本等问题,一般在图1所示的组网环境中,将汇聚层路由器配置为高端路由器,而将接入层路由器配置为中低端路由器,因此接入层路由器的内存和处理能力都低于汇聚层路由器。当区域内的路由器数目众多时,会造成区域内的LSA数量众多,形成的LSDB规模也更大,接入层路由器的内存和处理能力在运行OSPF协议时,往往无法达到要求,从而使得在中低端路由器上无法正常应用OSPF协议进行路由。
基于此,当区域内路由器数目达到一定数量后,目前的处理方式为:不在接入层的中低端路由器上应用OSPF,而是如图2所示进行网络配置,将AREA100区域缩小,在接入层路由器上运行RIP。这时,需要在汇聚层路由器(MRT1,MRT2)的OSPF接口引入RIP,将相关路由发布到OSPF区域;同时在接入层路由器的RIP接口引入OSPF,将OSPF路由发布到RIP。
具体地,接入层路由器的RIP接口,每隔一段时间向相邻路由器发送本地路由表,运行RIP协议的相邻路由器在收到报文后,对本地路由进行维护,选择一条最佳路由,再向其各自相邻网络发送更新信息。在上述方案中,需要在MRT1,MRT2中与RT1至RTN相连的三层接口上使能RIP。由于RT1至RTN可能存在200个以上路由器,所以,在MRT1,MRT2需要在很多接口使能RIP。这样多的接口频繁发送RIP路由信息,会造成路由器CPU间歇性繁忙,造成很多隐患,如,报文丢失等。
可见,在图1和图2所示的组网环境中,在接入层路由器中应用OSPF和RIP协议均存在问题,无法保证在接入层的中低端路由器中稳定地运行路由协议,完成报文路由。
发明内容
有鉴于此,本发明提供一种路由信息传播方法和路由器,使接入层的中低端路由器能够稳定运行OSPF协议。
为实现上述目的,本发明采用如下的技术方案:
一种路由信息传播方法,包括:
a、在目标路由器的上行邻居路由器中生成缺省LSA;所述缺省LSA为代表缺省路由信息的区域间LSA或外部LSA;
b、在所述上行邻居路由器向所述目标路由器发布LSA时,仅将所述缺省LSA与该上行邻居路由器产生的Router LSA发布给所述目标路由器;发布给目标路由器的所述缺省LSA,用于为目标路由器提供缺省路由,使所述目标路由器根据所述缺省LSA将未找到匹配路由的报文转发给所述上行邻居路由器。
较佳地,所述在目标路由器的上行邻居路由器中生成缺省LSA的过程包括:
在所述上行邻居路由器中,将所述上行邻居路由器与目标路由器间的OSPF接口设置为下行链路;
对于设置为下行链路的OSPF接口,生成代表缺省路由信息的区域间LSA或外部LSA,将该生成的LSA作为缺省LSA。
较佳地,所述将所述上行邻居路由器与目标路由器间的OSPF接口设置为下行链路包括:
预先在所述上行邻居路由器中的OSPF接口管理部分,为该上行邻居路由器的各个OSPF接口增加下行链路lowlink字段;
将上行邻居路由器与目标路由器间的OSPF接口的lowlink字段设置为有效。
较佳地,所述对于设置为下行链路的OSPF接口,生成代表缺省路由信息的区域间LSA或外部LSA包括:
将下行链路所在的OSPF设置为区域边界路由器ABR;
所述生成代表缺省路由信息的区域间LSA或外部LSA为:生成路由信息为缺省路由信息的三类LSA。
较佳地,所述对于设置为下行链路的OSPF接口,生成代表缺省路由信息的区域间LSA或外部LSA包括:
当下行链路所在OSPF的区域为非STUB区时,将该OSPF设置为自治系统边界路由器ASBR;
所述生成代表缺省路由信息的区域间LSA或外部LSA为,生成路由信息为缺省路由信息的五类或七类LSA。
较佳地,该方法进一步包括:对于设置为下行链路的OSPF接口,为该接口所在OSPF的区域产生虚拟LSDB,并将所述缺省LSA和所述上行邻居路由器自身产生的Router LSA加入所述虚拟LSDB中;
所述仅将所述缺省LSA与该上行邻居路由器产生的Router LSA发布给所述目标路由器为:将所述虚拟LSDB中的所有LSA发布给所述目标路由器。
较佳地,在所述将虚拟LSDB中的所有LSA发布给所述目标路由器后,该方法进一步包括:当所述上行邻居路由器收到所述目标路由器发送的连接状态请求消息时,仅在所述虚拟LSDB中查找所述连接状态请求消息对应的LSA,并根据查找结果应答所述连接状态请求消息。
较佳地,在所述将虚拟LSDB中的所有LSA发布给所述目标路由器后,该方法进一步包括:当所述上行邻居路由器收到连接状态更新消息时,
对连接状态更新消息中包括的LSA进行判断,若该LSA中的LSID与所述缺省LSA的LSID相同,且该LSA为通过下行链路接收的三类、五类或七类LSA,则丢弃该连接状态更新消息,直接返回LSACK;否则,向正常LSDB中添加所述LSA;所述正常LSDB中保存该路由器生成的RouterLSA和区域内其他路由器产生的LSA。
较佳地,该方法进一步包括:当所述虚拟LSDB中的LSA更新时,通过所述下行链路向所述目标路由器同步更新后的LSA。
较佳地,当所述下行链路的链路类型为Broadcast或NBMA时,该方法进一步包括:设置该下行链路的指定路由器DR选举优先级为最低;
当所述下行链路所属的网段进行DR选举时,所述下行链路不能作为该网段的DR和备份指定路由器BDR。
较佳地,在执行所述设置下行链路的操作后、为该接口的OSPF生成缺省LSA前,该方法进一步包括:
断开所述下行链路的所有邻居,重新建立邻居关系。
较佳地,当所述目标路由器存在同层邻居路由器、且该同层邻居路由器与所述目标路由器具有相同的上行邻居路由器时,该方法进一步包括:将所述同层邻居路由器作为所述目标路由器,执行所述步骤a和b。
一种基于OSPF的路由器,包括LSA处理单元、存储单元和OSPF接口单元;
所述LSA处理单元,用于生成缺省LSA,所述缺省LSA为代表缺省路由信息的区域间LSA或外部LSA;所述缺省路由信息表示通过所述上行邻居路由器能够到达任意网段;还用于生成本路由器的Router LSA;将所述缺省LSA和本路由器的Router LSA保存到所述存储单元中;在向所述目标路由器发布LSA时,仅将所述存储单元中保存的缺省LSA和Router LSA通过所述OSPF接口单元发布给所述目标路由器;
所述存储单元,用于保存缺省LSA和本路由器的Router LSA;
所述OSPF接口单元包括多个OSPF接口,分别与网络中的其他路由器相连,收集网络中其他路由器的LSA信息,向所述目标路由器发布缺省LSA和Router LSA。
较佳地,所述路由器进一步包括控制单元,用于将所述OSPF接口单元中与目标路由器相连的OSPF接口设置为下行链路;
所述LSA处理单元,在产生缺省LSA时,针对下行链路的接口所在的OSPF进行。
较佳地,所述存储单元包括虚拟LSDB子单元和正常LSDB子单元;所述虚拟LSDB子单元,用于保存缺省LSA和本路由器的Router LSA;所述正常LSDB子单元,用于保存本路由器的Router LSA和OSPF接口单元接收的其他路由器产生的LSA;
所述LSA处理单元,进一步用于在接收到通过所述下行链路接收的连接状态请求消息后,从所述虚拟LSDB子单元中查找LSA;在接收到所述OSPF接口单元转发的连接状态更新消息后,对该消息中包括的LSA进行判断,若该LSA中的LSID为0.0.0.0,且该LSA为通过下行链路接收的三类、五类或七类LSA,则丢弃该连接状态更新消息,通知OSPF接口单元返回LSACK;否则,在所述正常LSDB子单元中保存该连接状态更新消息中包括的LSA,不在所述虚拟LSDB子单元中保存该LSA;在所述虚拟LSDB子单元中的LSA更新时,通过所述下行链路向所述目标路由器同步更新后的LSA。
由上述技术方案可见,本发明中,对于需要限制LSDB规模的目标路由器(例如图1中接入层的中低端路由器RT1),在该目标路由器的上行邻居路由器(例如图1中的汇聚路由器MRT1)中生成缺省LSA,其中,缺省LSA为代表缺省路由信息的区域间LSA或外部LSA,并且缺省路由信息表示通过所述上行邻居路由器能够到达任意网段。当上行邻居路由器向目标路由器发布LSA时,仅将缺省LSA和该上行邻居路由器自身产生的RouterLSA发布给目标路由器,而不会像背景技术中提到的将上行邻居路由器LSDB中所有LSA发布给目标路由器,从而大大减少目标路由器收到的LSA数量,降低目标路由器中LSDB的规模。同时,当目标路由器进行报文转发时,若未找到与报文目的地址相匹配的路由,则可以通过缺省LSA,将到达任意网段的报文转发给上行邻居路由器,不会影响报文的路由和转发。可见,通过本发明的上述方式,在保证报文正常转发的前提下,减少了目标路由器中的LSA数量,降低了目标路由器中LSDB的规模,从而使OSPF路由运算对于路由器硬件的要求降低,进而保证能够在目标路由器上运行OSPF协议。
附图说明
图1为运行OSPF协议的组网示意图。
图2为运行OSPF和RIP协议的组网示意图。
图3为本发明中路由信息传播方法的总体流程图。
图4为本发明提供的路由器总体结构图。
图5为本发明实施例中路由信息传播方法的具体流程图。
图6为本发明实施例中路由器的具体结构图。
具体实施方式
为使本发明的目的、技术手段和优点更加清楚明白,以下结合附图,对本发明做进一步详细描述。
本发明的基本思想为:减少中低端路由器中的LSA数量,降低LSDB的规模,从而降低路由计算过程的计算量,使中低端路由器能够正常运行OSPF协议进行路由。
具体地,本发明中控制中低端路由器中LSA数量的具体方式为:在保证报文正常转发的前提下,减少该中低端路由器的上行邻居路由器下发的LSA数量。
图3为本发明中提供的路由信息传播方法的总体流程图。如图3所示,该方法包括:
步骤301,在目标路由器的上行邻居路由器中生成缺省LSA。
其中,目标路由器是指需要限制LSDB规模的中低端路由器,缺省LSA是指代表缺省路由信息的区域间LSA或外部LSA,而缺省路由信息表示通过所述上行邻居路由器能够到达任意网段。这里生成的缺省LSA是为该上行邻居路由器与所述目标路由器间的OSPF接口所在的OSPF生成的。
步骤302,在上行邻居路由器向目标路由器发布LSA时,仅将缺省LSA与该上行邻居路由器产生的Router LSA发布给目标路由器。
本步骤中,上行邻居路由器向目标路由器发送Router LSA和缺省LSA,而不发送非上行邻居路由器产生的Router LSA。而事实上,当区域内的路由器数目很多时,非上行邻居路由器产生的Router LSA的数目巨大,采用本发明的路由信息传递方法后,会大大减少发送给目标路由器的LSA数量,降低LSDB的规模,减少OSPF路由算法的计算量。同时,如前所述,缺省LSA代表的路由信息为,通过上行邻居路由器到达任意网段的缺省路由。这样,目标路由器收到上行邻居发布的LSA后,若在报文转发时没有找到与报文目的地址匹配的路由,则可以将该报文,利用缺省LSA转发给上行邻居路由器,然后由上行邻居路由器将报文转发到其他网段。
由上述可见,虽然目标路由器中的LSA数量减少了,LSDB的规模降低了,但是仍然能够通过OSPF进行正常的报文转发,从而保证了在处理能力较弱的中低端路由器上能够应用OSPF进行报文路由。
图4为本发明提供的基于OSPF的路由器总体结构图。如图4所示,该路由器包括LSA处理单元、存储单元和OSPF接口单元。
在该路由器中,LSA处理单元,用于生成缺省LSA,所述缺省LSA为代表缺省路由信息的区域间LSA或外部LSA;所述缺省路由信息表示通过所述上行邻居路由器到达任意网段的缺省路由;还用于生成本路由器的Router LSA;将所述缺省LSA和本路由器的Router LSA保存到所述存储单元中;在向所述目标路由器发布LSA时,将所述存储单元中保存的缺省LSA和Router LSA通过所述OSPF接口单元发布给所述目标路由器,不将非该上行邻居路由器产生的Router LSA发布给所述目标路由器。
存储单元,用于保存缺省LSA和本路由器的Router LSA。
OSPF接口单元包括多个OSPF接口,分别与网络中的其他路由器相连,接收其他路由器发布的LSA信息,向所述目标路由器发布缺省LSA和本路由器产生的Router LSA。
以上是对本发明提供的基于OSPF的路由信息传递方法和路由器的总体概述,下面通过具体实施例说明本发明的具体实施方式。
实施例:
在本实施例中,以图1所示的典型组网环境为例,将其中的汇聚层路由器MRT1作为上行邻居路由器,将接入层路由器RT1作为目标路由器,对本发明的方法和路由器的具体实现进行详述。
其中,MRT1中可能运行多个OSPF进程,每个OSPF进程可能包括多个OSPF接口,假定与RT1相连的OSPF接口为接口A。由于RT1的处理能力较弱,因此需要应用本发明实施例的方法对该RT1中的LSDB规模进行限制,以保证其能够正常运行OSPF。
图5为本发明实施例中路由信息传播方法的具体流程图。如图5所示,该方法包括:
步骤501,在MRT1中,将MRT1与RT1相连的接口A设置为下行链路。
本步骤中,具体设置下行链路的方式可以为:预先在MRT1的OSPF接口管理部分中,为MRT1的各个OSPF接口增加下行链路(lowlink)字段,用于标识该OSPF接口是否为下行链路,规定当该lowlink字段被置为有效时,则代表该OSPF接口为下行链路,当该lowlink字段被置为无效时,则代表该OSPF接口不是下行链路;然后,将MRT1中与RT1间的接口A对应的lowlink字段设置为有效,以表明该接口A为下行链路。
步骤502,对于下行链路,为该接口所在的OSPF的区域产生虚拟LSDB。
如前所述,通常一个路由器上可以运行多个OSPF进程,而多个OSPF进程间是相互隔离、互不影响的,它们可以属于不同的OSPF区域。假定下行链路的接口所在的OSPF进程为OSPF1,那么为OSPF 1的区域产生虚拟LSDB。这里,虚拟LSDB是本发明提出的一种LSDB,其中包括LSA信息,虚拟LSDB与背景技术中提到的LSDB类似,只是其中包括的LSA信息有所差异。
路由器MRT1配置了下行链路后,路由器MRT1产生的LSA(非虚拟LSDB中的LSA)不会通过其他途径传播到下行链路邻居;同样虚拟LSDB中的LSA不能通过非下行链路传播回路由器MRT1。
接下来在MRT1中产生缺省LSA。其中,缺省LSA为区域间LSA或外部LSA。在OSPF协议中,应用OSPF的网络可以被分成不同的区域和自治系统。自治系统内部可以包括多个OSPF区域,OSPF区域分为多种不同的类型。OSPF协议还规定了七类LSA,根据LSA的类型不同,产生该LSA的实体和产生的信息内容均不同。
具体针对不同类型的LSA产生实体而言,OSPF协议规定,只有区域边界路由器(ABR)才能生成区域间LSA(三类LSA),只有自治系统边界路由器(ASBR)才能生成外部LSA(即五类或七类LSA)。因此,需要首先在MRT1中设置ABR或ASBR,以生成缺省LSA。
步骤503,根据OSPF1所在区域的类型,将OSPF1设置为区域边界路由器(ABR)或自治系统边界路由器(ASBR),并产生缺省LSA。
本步骤中,对于MRT1的接口A所在的OSPF1,无论该区域的类型为哪一种,均可以将该OSPF1设置为ABR,产生的缺省LSA为代表缺省路由信息的三类LSA。该缺省路由信息表示能够通过MRT1到达任意网段。具体地,在一般的路由器中,0.0.0.0/0的路由信息代表可以到达任意网段,路由器在转发报文时,如果没有找到与目的地址匹配的路由,那么就会采用0.0.0.0/0这条路由进行报文转发。本实施例中,将缺省路由信息设置为0.0.0.0/0,该路由信息由MRT1产生,因此当利用该路由进行报文转发时,报文会先被转发到MRT1,再通过MRT1到达任意网段。
或者,若OSPF1所在区域为非STUB区(即为普通区域和NSSA区),则可以将OSPF1设置为ASBR,产生的缺省LSA为路由信息是0.0.0.0/0的五类或七类LSA。其中,路由信息0.0.0.0/0表示通过MRT1到达任意网段的缺省路由。
由上述可见,缺省LSA表示向收到该LSA的路由器宣告,MRT1为本OSPF的Router ID,也就是说,经过MRT1可以到达任意网段。
步骤504,将产生的缺省LSA加入虚拟LSDB中,并将MRT1自身产生的Router LSA(即一类LSA)加入虚拟LSDB中。
本步骤中,将一类LSA和缺省LSA加入虚拟LSDB中,也就是说,该虚拟LSDB包括两条LSA。其中,一类LSA由任意运行OSPF协议的路由器产生,其中通告了路由器所有的链路和接口,并指明了它们的状态和沿每条链路方向出站的代价。
除上述虚拟LSDB外,在MRT1的OSPF区域还存在背景技术中描述的LSDB,称为正常LSDB,正常LSDB中包括该路由器自身的Router LSA和本区域内其他路由器产生的LSA、NetWork LSA、本区域引入的外部路由信息LSA,还有区域间路由信息LSA和其他区域引入的外部路由信息LSA。其中,虚拟LSDB中的Router LSA与正常LSDB中的Router LSA一致。在正常LSDB更新Router LSA时,虚拟LSDB中的Router LSA也一同进行更新。
由上述过程可见,本发明实施例中,在MRT1中包括两个LSDB,分别为虚拟LSDB和正常LSDB。其中,虚拟LSDB是本实施例中新加入的LSDB,它的规模比正常LSDB小很多,包括本身产生的Router LSA和缺省LSA,MRT1利用该虚拟LSDB与中低端路由器RT1进行同步,从而保证RT1中LSDB规模受到限制。
步骤505,在MRT1向RT1发布LSA时,仅将缺省LSA和自身产生的Router LSA发布给RT1,不将非MRT1产生的LSA发布给RT1。
LSA的发布过程可以利用路由器间的LSDB同步完成。本步骤中,可以在MRT1与RT1同步LSDB时,使用MRT1的虚拟LSDB中的LSA进行。也就是,使RT1获取到MRT1中的Router LSA和缺省LSA。
在背景技术介绍的方案中,进行LSDB同步时,利用正常LSDB中的LSA进行,如前所述,正常LSDB中包括该路由器自身的Router LSA和本区域内其他路由器产生的LSA、NetWork LSA、本区域引入的外部路由信息LSA,还有区域间路由信息LSA和其他区域引入的外部路由信息LSA。因此,在进行LSDB同步即LSA发布时,RT1接收到正常LSDB中的所有LSA,因此其接收的LSA数量巨大。
但是按照上述本发明实施例的方法,在进行LSDB同步时,利用虚拟LSDB中的LSA进行,也就是说,RT1接收到的是:MRT1产生的Router LSA和一条缺省LSA。可见,这种情况下RT1接收的LSA数量大大少于与正常LSDB同步时接收的LSA数量,从而能够大大降低RT1中的LSA数量。
同时,由于缺省LSA代表通过MRT1到达任意网段,因此RT1可以将未匹配到目的地址的报文先发送到MRT1,再由MRT1转发到该报文的目的地。可见,虽然LSA数量减少了,但是并未影响报文转发,只是在RT1中不再记录过多详细路由,而是只记录到达任意网段的聚合路由。
至此,基于OSPF的路由信息传递方法的基本流程结束。显然,本发明的方法大大减少接入层等中低端路由器中LSA的数量,减小内存占用,减少中低端路由器之间LSA的泛洪,减少路由计算,减轻了CPU负担,保证OSPF协议在中低端路由器上正常运行。并且,在一些组网应用中,可以采用OSPF协议替代RIP协议,从而避免大量接口使能RIP造成的CPU间歇性繁忙,避免了很多隐患,也减少了链路中路由协议的开销。
在本发明的具体实施过程中,针对OSPF协议中存在的连接状态更新和连接状态请求等操作,为保证RT1中的LSA数量保持稳定,不会由于上述操作而增加LSA数量,同时保证其他路由器不会受到虚拟LSDB的影响,本发明实施例的方法还可以进一步包括如下处理:
1、当MRT1收到RT1发送的连接状态请求(LSR)消息时,MRT1从虚拟LSDB中查找LSA,而不从正常LSDB中查找,以保证RT1中始终不会引入非MRT1产生的LSA。
2、当MRT1收到连接状态更新(LSU)消息时,对该消息中包括的LSA进行判断,若该LSA中的LSID为0.0.0.0,且该LSA为通过MRT1与RT1间的接口A接收的三类、五类或七类LSA,即表明该LSA为虚拟的缺省LSA,则丢弃该连接状态更新消息,直接返回LSACK;否则,向所述正常LSDB中添加连接状态更新消息中的LSA,而不向虚拟LSDB中添加。
这里,丢弃虚拟的缺省LSA的原因是:当两个上行邻居路由器(例如MRT1和MRT2)都与目标路由器(例如RT1)存在下行链路时,RT1可以从两个上行邻居路由器MRT1和MRT2分别接收到一条缺省LSA,分别为LSA1和LSA2,这两条缺省LSA互不相同,但是由于其代表的路由信息都是0.0.0.0/0,因此其中的LSID均为0.0.0.0;当RT1与MRT1同步LSDB时,很可能将MRT1中没有的LSA2发送给MRT2,同理,也会将LSA1发送给MRT1,为保证两个上行邻居路由器中不会引入对方产生的缺省LSA(否则会影响二者间报文的正常路由),也就是说,MRT1中不引入MRT2产生的缺省LSA2,MRT2不引入MRT1产生的缺省LSA1,因此,将MRT1从接口A接收的LSID为0.0.0.0的LSA丢弃,而将其他的LSA保留。
3、在MRT1的虚拟LSDB中的LSA更新时,通过下行链路(即接口A)向RT1同步更新后的LSA。
这里,根据OSPF协议的规定,LSA是具有一定生命周期的,当生命周期结束时,产生的LSA会被丢弃,并根据当前的网络状况重新生成相应的LSA,这一过程称为LSA的更新。因此,MRT1中产生的缺省LSA会在一定时间后被丢弃,这时,需要重新产生新的缺省LSA,该LSA与之前的LSA相同,也是路由信息为0.0.0.0/0的区域间LSA或外部LSA,从而实现缺省LSA的更新。然后,在MRT1中的缺省LSA更新后,通过下行链路向RT1同步更新后的LSA。
本发明实施例还提供了基于OSPF的路由器具体结构。该路由器是图4所示路由器的具体实施方式。本实施例中,具体为上行邻居路由器MRT1。图6为该路由器的具体结构图。如图6所示,该路由器包括:控制单元、LSA处理单元、存储单元和OSPF接口单元。其中,LSA处理单元、存储单元和OSPF接口单元具有与图4所示路由器相同的结构和功能。除此之外,进一步地,图6所示路由器中还增加了控制单元,存储单元进一步包括虚拟LSDB子单元和正常LSDB子单元。并且,在LSA处理单元中加入了增强型的功能。具体地,在该路由器中,
控制单元,用于将所述OSPF接口单元中与目标路由器相连的OSPF接口设置为下行链路。
存储单元中的虚拟LSDB子单元,用于保存缺省LSA和本路由器的Router LSA。正常LSDB子单元,用于保存本路由器的Router LSA和OSPF接口单元接收的其他路由器产生的LSA。
LSA处理单元,在产生缺省LSA时,针对下行链路的接口所在的OSPF进行;并且,进一步用于在接收到通过所述下行链路接收的连接状态请求消息后,从所述虚拟LSDB子单元中查找LSA;在接收到所述OSPF接口单元转发的连接状态更新消息后,对该消息中包括的LSA进行判断,若该LSA中的LSID为0.0.0.0,且该LSA为通过下行链路接收的三类、五类或七类LSA,则丢弃该连接状态更新消息,通知OSPF接口单元返回LSACK;否则,在所述正常LSDB子单元中保存该连接状态更新消息中包括的LSA,不在所述虚拟LSDB子单元中保存该LSA;在所述虚拟LSDB子单元中的LSA更新时,通过所述下行链路向所述目标路由器同步更新后的LSA。
在上述本发明实施例中,在设置完下行链路后,直接执行后续步骤创建虚拟LSDB,加入缺省LSA和Router LSA。事实上,在某些情况下,若设置下行链路前,上行邻居路由器中已经保存了其他路由器产生的RouterLSA,就有可能已经将这些LSA发布给目标路由器了,显然,这将对目标路由器的LSDB规模限制造成不利影响。因此,优先的方式为,在设置完下行链路后,上行邻居路由器断开下行链路的所有邻居,重新建立邻居关系,从而保证不将非上行邻居路由器产生的LSA发布给目标路由器。
经过上述本发明实施例的具体操作,在图1中,将MRT1和MRT2与RT1间的接口配置为lowlink,那么在邻居建立后,RT1就只从MRT1收到两条LSA,只从MRT2收到两条LSA,但是,由于通过MRT1和MRT2能够到达图1中所示的其他任何设备,因此,虽然RT1中的LSDB规模降低,但同样可将报文路由到该网络中的任何设备。更重要的是,由于RT1中只有四条LSA,因此应用OSPF协议进行路由计算的计算量大大降低,对内存和CPU的要求也大大降低,因此中低端路由器RT1完全能够正常运行OSPF。
另外,在图1中,各个接入层路由器间不存在邻居关系,因此,RT1只能从上行邻居路由器处进行区域内LSDB的同步。而通过上述实施方式,显然由上行邻居路由器中同步的LSDB为虚拟LSDB,其中包括的LSA数量大大减少,从而降低了在RT1中进行路由计算的复杂度,使处理能力较差的RT1仍然能够正常运行OSPF协议进行报文转发。但是如果RT1存在同层邻居路由器,也就是RT1与其他接入层路由器(例如RT2)直连,如果该路由器具有与RT1相同的上行邻居路由器(例如MRT1),那么RT1可能会从该同层邻居路由器获取上行邻居路由器中的正常LSDB,这样的话,也会导致RT1中的LSDB规模过大,RT1无法正常运行OSPF协议的问题。
针对上述问题,优选地,在RT1存在同层邻居路由器、且该同层邻居路由器与RT1具有相同的上行邻居路由器时,例如RT2满足上述条件,那么需要将RT2也作为需要限制LSDB规模的路由器,并进行与RT1相同的处理,具体处理过程与上述实施例中描述的相同,这里就不再赘述。
上述的实施方式中,假定各个接入层路由器均处于不同的网段,因此不涉及到网段内指定路由器(DR)的选举。所谓DR是指在一个网段内的一个特殊路由器,它负责收集网段内所有路由器的LSA,并向区域内所有路由器发布其他路由器产生的LSA。只有在OSPF区域内的链路类型为Broadcast或NBMA时,需要设置DR。
当多个接入层路由器与上行邻居路由器位于同一网段时,例如RT1、RT2和MRT1位于同一网段,并且网段内的链路类型为Broadcast或NBMA,那么优选地,将RT1与MRT1间的接口A设置为下行链路后,将该下行链路的DR选举优先级设为0,即此下行链路不能做DR或BDR。其中,BDR为备份的DR,在DR出现故障时升级为DR。例如,将RT2作为DR,那么RT1仍然可以从RT2接收本区域内的LSA,这样,能够保证RT1正常从DR接收到本区域内其他路由器产生的LSA,使得在本区域内的报文路由不需要一定经过MRT1的转发。
以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (15)

1.一种路由信息传播方法,其特征在于,该方法包括:
a、在目标路由器的上行邻居路由器中生成缺省LSA;所述缺省LSA为代表缺省路由信息的区域间LSA或外部LSA;
b、在所述上行邻居路由器向所述目标路由器发布LSA时,仅将所述缺省LSA与该上行邻居路由器产生的Router LSA发布给所述目标路由器;发布给目标路由器的所述缺省LSA,用于为目标路由器提供缺省路由,使所述目标路由器根据所述缺省LSA将未找到匹配路由的报文转发给所述上行邻居路由器。
2.根据权利要求1所述的方法,其特征在于,所述在目标路由器的上行邻居路由器中生成缺省LSA的过程包括:
在所述上行邻居路由器中,将所述上行邻居路由器与目标路由器间的OSPF接口设置为下行链路;
对于设置为下行链路的OSPF接口,生成代表缺省路由信息的区域间LSA或外部LSA,将该生成的LSA作为缺省LSA。
3.根据权利要求2所述的方法,其特征在于,所述将所述上行邻居路由器与目标路由器间的OSPF接口设置为下行链路包括:
预先在所述上行邻居路由器中的OSPF接口管理部分,为该上行邻居路由器的各个OSPF接口增加下行链路lowlink字段;
将上行邻居路由器与目标路由器间的OSPF接口的lowlink字段设置为有效。
4.根据权利要求2所述的方法,其特征在于,所述对于设置为下行链路的OSPF接口,生成代表缺省路由信息的区域间LSA或外部LSA包括:
将下行链路所在的OSPF设置为区域边界路由器ABR;
所述生成代表缺省路由信息的区域间LSA或外部LSA为:生成路由信息为缺省路由信息的三类LSA。
5.根据权利要求2所述的方法,其特征在于,所述对于设置为下行链路的OSPF接口,生成代表缺省路由信息的区域间LSA或外部LSA包括:
当下行链路所在OSPF的区域为非STUB区时,将该OSPF设置为自治系统边界路由器ASBR;
所述生成代表缺省路由信息的区域间LSA或外部LSA为,生成路由信息为缺省路由信息的五类或七类LSA。
6.根据权利要求2所述的方法,其特征在于,该方法进一步包括:对于设置为下行链路的OSPF接口,为该接口所在OSPF的区域产生虚拟LSDB,并将所述缺省LSA和所述上行邻居路由器自身产生的Router LSA加入所述虚拟LSDB中;
所述仅将所述缺省LSA与该上行邻居路由器产生的Router LSA发布给所述目标路由器为:将所述虚拟LSDB中的所有LSA发布给所述目标路由器。
7.根据权利要求6所述的方法,其特征在于,在所述将虚拟LSDB中的所有LSA发布给所述目标路由器后,该方法进一步包括:当所述上行邻居路由器收到所述目标路由器发送的连接状态请求消息时,仅在所述虚拟LSDB中查找所述连接状态请求消息对应的LSA,并根据查找结果应答所述连接状态请求消息。
8.根据权利要求6所述的方法,其特征在于,在所述将虚拟LSDB中的所有LSA发布给所述目标路由器后,该方法进一步包括:当所述上行邻居路由器收到连接状态更新消息时,
对连接状态更新消息中包括的LSA进行判断,若该LSA中的LSID与所述缺省LSA的LSID相同,且该LSA为通过下行链路接收的三类、五类或七类LSA,则丢弃该连接状态更新消息,直接返回LSACK;否则,向正常LSDB中添加所述LSA;所述正常LSDB中保存该路由器生成的Router LSA和区域内其他路由器产生的LSA。
9.根据权利要求6所述的方法,其特征在于,该方法进一步包括:当所述虚拟LSDB中的LSA更新时,通过所述下行链路向所述目标路由器同步更新后的LSA。
10.根据权利要求2所述的方法,其特征在于,当所述下行链路的链路类型为Broadcast或NBMA时,该方法进一步包括:设置该下行链路的指定路由器DR选举优先级为最低;
当所述下行链路所属的网段进行DR选举时,所述下行链路不能作为该网段的DR和备份指定路由器BDR。
11.根据权利要求2所述的方法,其特征在于,在执行所述设置下行链路的操作后、为该接口的OSPF生成缺省LSA前,该方法进一步包括:
断开所述下行链路的所有邻居,重新建立邻居关系。
12.根据权利要求1所述的方法,其特征在于,当所述目标路由器存在同层邻居路由器、且该同层邻居路由器与所述目标路由器具有相同的上行邻居路由器时,该方法进一步包括:将所述同层邻居路由器作为所述目标路由器,执行所述步骤a和b。
13.一种基于OSPF的路由器,其特征在于,所述路由器包括LSA处理单元、存储单元和OSPF接口单元;
所述LSA处理单元,用于生成缺省LSA,所述缺省LSA为代表缺省路由信息的区域间LSA或外部LSA;所述缺省路由信息表示通过所述上行邻居路由器能够到达任意网段;还用于生成本路由器的Router LSA;将所述缺省LSA和本路由器的RouterLSA保存到所述存储单元中;在向所述目标路由器发布LSA时,仅将所述存储单元中保存的缺省LSA和Router LSA通过所述OSPF接口单元发布给所述目标路由器;
所述存储单元,用于保存缺省LSA和本路由器的Router LSA;
所述OSPF接口单元包括多个OSPF接口,分别与网络中的其他路由器相连,收集网络中其他路由器的LSA信息,向所述目标路由器发布缺省LSA和Router LSA。
14.根据权利要求13所述的路由器,其特征在于,所述路由器进一步包括控制单元,用于将所述OSPF接口单元中与目标路由器相连的OSPF接口设置为下行链路;
所述LSA处理单元,在产生缺省LSA时,针对下行链路的接口所在的OSPF进行。
15.根据权利要求14所述的路由器,其特征在于,所述存储单元包括虚拟LSDB子单元和正常LSDB子单元;所述虚拟LSDB子单元,用于保存缺省LSA和本路由器的Router LSA;所述正常LSDB子单元,用于保存本路由器的RouterLSA和OSPF接口单元接收的其他路由器产生的LSA;
所述LSA处理单元,进一步用于在接收到通过所述下行链路接收的连接状态请求消息后,从所述虚拟LSDB子单元中查找LSA;在接收到所述OSPF接口单元转发的连接状态更新消息后,对该消息中包括的LSA进行判断,若该LSA中的LSID为0.0.0.0,且该LSA为通过下行链路接收的三类、五类或七类LSA,则丢弃该连接状态更新消息,通知OSPF接口单元返回LSACK;否则,在所述正常LSDB子单元中保存该连接状态更新消息中包括的LSA,不在所述虚拟LSDB子单元中保存该LSA;在所述虚拟LSDB子单元中的LSA更新时,通过所述下行链路向所述目标路由器同步更新后的LSA。
CN200710177113A 2007-11-09 2007-11-09 一种路由信息传播方法和路由器 Active CN100596117C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200710177113A CN100596117C (zh) 2007-11-09 2007-11-09 一种路由信息传播方法和路由器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200710177113A CN100596117C (zh) 2007-11-09 2007-11-09 一种路由信息传播方法和路由器

Publications (2)

Publication Number Publication Date
CN101150523A true CN101150523A (zh) 2008-03-26
CN100596117C CN100596117C (zh) 2010-03-24

Family

ID=39250872

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200710177113A Active CN100596117C (zh) 2007-11-09 2007-11-09 一种路由信息传播方法和路由器

Country Status (1)

Country Link
CN (1) CN100596117C (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101383727B (zh) * 2008-10-31 2010-12-08 杭州华三通信技术有限公司 路由器维护方法和路由器
CN107196856A (zh) * 2017-07-31 2017-09-22 杭州迪普科技股份有限公司 一种确定路由转发路径的方法和装置
CN107634793A (zh) * 2017-09-29 2018-01-26 北京空间飞行器总体设计部 一种leo/meo双层卫星网络低开销洪泛方法及卫星节点
CN109076431A (zh) * 2016-04-19 2018-12-21 三菱电机株式会社 无线通信装置和无线通信方法
WO2019052488A1 (zh) * 2017-09-14 2019-03-21 华为技术有限公司 链路状态通告lsa发送方法、装置和系统
CN110896377A (zh) * 2019-11-19 2020-03-20 迈普通信技术股份有限公司 一种ospf路由控制方法及装置
CN112039770A (zh) * 2020-08-28 2020-12-04 北京世纪互联宽带数据中心有限公司 一种路由选择方法及装置
CN113824633A (zh) * 2020-06-19 2021-12-21 华为技术有限公司 园区网中路由发布方法及网络设备

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105450447B (zh) * 2015-11-17 2018-05-18 上海斐讯数据通信技术有限公司 一种网络系统及网络运行方法

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101383727B (zh) * 2008-10-31 2010-12-08 杭州华三通信技术有限公司 路由器维护方法和路由器
CN109076431A (zh) * 2016-04-19 2018-12-21 三菱电机株式会社 无线通信装置和无线通信方法
CN109076431B (zh) * 2016-04-19 2022-03-11 三菱电机株式会社 无线通信装置和无线通信方法
CN107196856A (zh) * 2017-07-31 2017-09-22 杭州迪普科技股份有限公司 一种确定路由转发路径的方法和装置
WO2019052488A1 (zh) * 2017-09-14 2019-03-21 华为技术有限公司 链路状态通告lsa发送方法、装置和系统
US11411853B2 (en) 2017-09-14 2022-08-09 Huawei Technologies Co., Ltd Link-state advertisement LSA sending method, apparatus, and system
CN107634793A (zh) * 2017-09-29 2018-01-26 北京空间飞行器总体设计部 一种leo/meo双层卫星网络低开销洪泛方法及卫星节点
CN107634793B (zh) * 2017-09-29 2020-02-18 北京空间飞行器总体设计部 一种leo/meo双层卫星网络低开销洪泛方法及卫星节点
CN110896377A (zh) * 2019-11-19 2020-03-20 迈普通信技术股份有限公司 一种ospf路由控制方法及装置
CN113824633A (zh) * 2020-06-19 2021-12-21 华为技术有限公司 园区网中路由发布方法及网络设备
CN112039770A (zh) * 2020-08-28 2020-12-04 北京世纪互联宽带数据中心有限公司 一种路由选择方法及装置
CN112039770B (zh) * 2020-08-28 2022-08-05 北京世纪互联宽带数据中心有限公司 一种路由选择方法及装置

Also Published As

Publication number Publication date
CN100596117C (zh) 2010-03-24

Similar Documents

Publication Publication Date Title
CN100596117C (zh) 一种路由信息传播方法和路由器
CN100579072C (zh) 一种在ip设备之间进行通信的方法和系统
CN107070798B (zh) 网络区域划分方法、网络设备和系统
CN105049350B (zh) 利用出口对等工程的分段路由的方法、装置及系统
US9054956B2 (en) Routing protocols for accommodating nodes with redundant routing facilities
US7334047B1 (en) Method and system for selective link state advertisement blocking over a data network area
US10951463B2 (en) BGP aggregation in Clos networks
US9071503B2 (en) Highly scalable OSPF routing in support of full mesh optical networks
US10250958B2 (en) Optical network-on-chip, optical router, and signal transmission method
US7936668B2 (en) Methods and apparatus for distributing label information
CN106559246A (zh) 集群的实现方法和服务器
US8396988B2 (en) Method and system for survival of data plane through a total control plane failure
CN103825826A (zh) 一种动态路由的实现方法和装置
CN103200097B (zh) 一种路由计算方法和网络设备
US20160072701A1 (en) Method, apparatus and system for controlling routing information advertising
CN106982162B (zh) 用于转发业务流的方法、装置和系统
CN105207906A (zh) 一种业务路径确定方法及装置
EP2226952B1 (en) An automatically switched optical network and method for data transmission in the network
CN112039770B (zh) 一种路由选择方法及装置
CN102710499A (zh) 多发布源外部路由备下一跳选择方法及其设备
CN116566472B (zh) 一种面向动态离散拓扑的天地一体化网络广域路由方法
CN113765956B (zh) 报文处理方法、设备、系统及存储介质
CN106130904A (zh) 一种lsp链路状态协议数据单元的同步方法及装置
KR100570821B1 (ko) 분산구조 라우터에서 오에스피에프 프로토콜을 처리하는장치 및 그 방법
KR100450930B1 (ko) 대용량 병렬 라우터 아키텍쳐용 조정 프로토콜의 경로설정

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
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Patentee after: NEW H3C TECHNOLOGIES Co.,Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Patentee before: HANGZHOU H3C TECHNOLOGIES Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230620

Address after: 310052 11th Floor, 466 Changhe Road, Binjiang District, Hangzhou City, Zhejiang Province

Patentee after: H3C INFORMATION TECHNOLOGY Co.,Ltd.

Address before: 310052 Changhe Road, Binjiang District, Hangzhou, Zhejiang Province, No. 466

Patentee before: NEW H3C TECHNOLOGIES Co.,Ltd.