CN100591046C - 一种路由器及路由器发布路由信息的方法 - Google Patents

一种路由器及路由器发布路由信息的方法 Download PDF

Info

Publication number
CN100591046C
CN100591046C CN200710027307A CN200710027307A CN100591046C CN 100591046 C CN100591046 C CN 100591046C CN 200710027307 A CN200710027307 A CN 200710027307A CN 200710027307 A CN200710027307 A CN 200710027307A CN 100591046 C CN100591046 C CN 100591046C
Authority
CN
China
Prior art keywords
declaration
link state
network address
interface
chained list
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.)
Expired - Fee Related
Application number
CN200710027307A
Other languages
English (en)
Other versions
CN101060478A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN200710027307A priority Critical patent/CN100591046C/zh
Publication of CN101060478A publication Critical patent/CN101060478A/zh
Application granted granted Critical
Publication of CN100591046C publication Critical patent/CN100591046C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种路由器发布路由信息的方法,包括:接收链路状态宣告;根据所接收的链路状态宣告,检测路由器归属的区域中分离网络的状态是否发生变化,当检测到所述区域中分离网络的状态发生变化时,更新所述区域中接口的分离标识;所述分离网络由所述区域中的某一网络分离而形成,所述分离网络的网络地址与由所述某一网络分离后形成的其他分离网络的网络地址相同;向邻居接口发布链路状态宣告,并为带有分离标识的接口发布主机路由。本发明还公开了一种路由器。采用本发明,具有能在网络分离情况下,正确发布路由信息,保证路由器准确进行路由计算和查找,最终保证报文数据准确发送到各个分离子网段的优点。

Description

一种路由器及路由器发布路由信息的方法
技术领域
本发明涉及通信领域,尤其涉及一种路由器及路由器发布路由信息的方法。
背景技术
路由协议作为TCP/IP协议族中重要成员之一,其选路过程实现的好坏会影响整个Internet网络的效率。按应用范围的不同,路由协议可分为两类:在一个自治系统(AS,Autonomous System)内的路由协议称为内部网关协议(IGP,interior gateway protocol)。AS之间的路由协议称为外部网关协议(EGP,exteriorgateway protocol)。一个自治系统,是指有权自主地决定在本系统中应采用何种路由选择协议的网络。现在正在使用的内部网关路由协议包括:距离矢量路由协议和链路状态路由协议两种,其中,距离矢量路由协议包括:路由消息协议(RIP,Routing Information Protocol)、内部网关路由协议(IGRP,interior gatewayRouting Protocol)、扩展内部网关路由协议(EIGRP,enhanced interior gatewayRouting Protocol)。链路状态路由协议包括:最短路径优先协议(OSPF,OpenShonest Path First)和中间系统到中间系统协议(IS-IS,Intermediate System toIntermediate System)。
在一个AS内部,链路状态路由协议通过链路状态宣告(LSA,Link StateAdertisements或LSP,Link State PDU)来描述路由,AS中所有的路由器都维护一个相同的通过链路状态宣告来描述这个AS结构的数据库,路由器通过该数据库中的链路状态宣告来了解AS内部网络拓扑现状,进行路由计算。链路状态路由协议允许将一些网络组合在一起构成区域Area,一个AS系统包括多个Area,一个骨干Area和多个非骨干Area,有多个接口连接到不同的Area的路由器称之为边缘路由器,边缘路由器与没有全部包含在任何一个非骨干Area中的路由器共同组成骨干Area,负责在非骨干Area之间传播路由信息。每个Area内的结构和拓扑对外界是不可见的,且Area内的路径信息并不传播到Area之外。
在一般情况下,属于同一个Area的路由器通过链路状态路由协议发布的链路状态宣告即可准确进行路由计算和查找,但在某些特殊的组网应用或者网络故障时,一个网络可能分离成几个具有相同网络地址的子网络,这时不同的子网路会发布携带相同网络地址的链路状态宣告,通过发布的链路状态宣告进行路由计算时将会有多个相同的目的地址,会导致路由错误,最终导致报文数据不能准确发送到目的子网段。
发明内容
本发明实施例所要解决的技术问题在于,提供一种路由器发布路由信息的方法,能在网络分离情况下,正确发布路由信息,保证路由器准确进行路由计算和查找,最终保证报文数据准确发送到各个分离子网段。
为了解决上述技术问题,本发明实施例提供了一种路由器发布路由信息的方法,包括:
接收链路状态宣告;
根据所接收的链路状态宣告,检测路由器归属的区域中分离网络的状态是否发生变化,当检测到所述区域中分离网络的状态发生变化时,更新所述区域中接口的分离标识,所述分离标识用于指示所述接口处于分离网络中;所述分离网络由所述区域中的某一网络分离而形成,所述分离网络的网络地址与由所述某一网络分离后形成的其他分离网络的网络地址相同;
向邻居接口发布链路状态宣告,并为带有分离标识的接口发布主机路由。
相应的,本发明实施例提供了一种路由器,包括:
宣告接收单元,用于接收链路状态宣告;
其特征在于,还包括:
检测执行单元,与所述宣告接收单元相连,用于根据所述接收的链路状态宣告,检测路由器归属的区域中分离网络的状态是否发生变化,当检测到所述区域中分离网络的状态发生变化时,更新所述区域中接口的分离标识,所述分离标识用于指示所述接口处于分离网络中;所述分离网络由所述区域中的某一网络分离而形成,所述分离网络的网络地址与由所述某一网络分离后形成的其他分离网络的网络地址相同;
路由发布单元,与所述检测执行单元相连,用于向邻居接口发布链路状态宣告及为所述检测执行单元输出的带有分离标识的接口发布主机路由。
本发明实施例根据接收到的链路状态宣告,检测路由器归属的区域中分离网络的状态是否发生变化,当检测到所述区域中分离网络的状态发生变化时,更新所述区域中接口的分离标识,并为更新后带有分离标识的接口发布主机路由,能在网络分离情况下,正确发布路由信息,保证路由器准确进行路由计算和查找,最终保证报文数据准确发送到各个分离子网段。
附图说明
图1是本发明实施例的路由器发布路由信息的方法流程图;
图2是图1中步骤S111中根据一个网络地址及携带所述网络地址的一个链路状态宣告进行路由器归属的区域中接口分离标识的更新的步骤流程图;
图3是本发明实施例的路由器的组成示意图;
图4是图3中检测执行单元的组成示意图;
图5是图4中更新子单元的组成示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施例作进一步地详细描述。
图1,是本发明实施例的路由器发布路由信息的方法流程图。如图所示,本发明实施例的方法具体包括以下步骤:
步骤S100,接收链路状态宣告。链路状态路由协议通过LSA/LSP(OSPF使用LSA,IS-IS使用LSP)来描述区域的网络拓扑,路由器借助这些LSA/LSP来了解网络拓扑和进行路由计算。该步骤是路由器更新链路状态数据库信息,并发布新的路由信息的触发步骤。
步骤S101,判断链路状态数据库中是否存储有所述链路状态宣告的副本,如果判断为是,执行步骤S102;如果判断为否,执行步骤S103。由链路状态路由协议可知,AS中所有的路由器都维护一个相同的通过链路状态宣告来描述这个AS结构的数据库,称之为链路状态数据库。该数据库中存储了一个AS系统中所有路由器发布的链路状态宣告,并根据网络状态的改变进行数据更新,所述副本是指和当前接收到的链路状态宣告类型相同,产生的路由器Ip地址也相同,并已经存储在所述数据库中的链路状态宣告。
步骤S102,判断接收到的链路状态宣告是否过期,如果判断为是,执行步骤S104;如果判断为否,执行步骤S105。在链路状态宣告中有个AGE字段,用于记录链路状态宣告存在的时间长短,当该字段记录的时间大于等于一个小时,认为链路状态宣告过期。
步骤S103,获取所述链路状态宣告携带的网络地址,然后执行步骤S111。
步骤S104,解除所述链路状态宣告的副本与第一分离链表的关联关系,所述第一分离链表包括与所述副本相关联的所有分离链表,然后执行步骤S107。
步骤S105,解除所述链路状态宣告的副本与第二分离链表的关联关系,所述第二分离链表包括与所述链路状态宣告的副本相关联的且相关联的网络地址未在所述链路状态宣告中携带的所有分离链表。当步骤S102判断结果为否时,执行该步骤。
在本发明实施例中,采用给接口添加分离标识的方式来指示接口处于分离网络中,并用分离链表来记录处于同一分离网络的接口。同时,为实现检测路由器归属的区域中分离网络的状态是否发生变化,需将携带处于同一网络中的接口的网络地址的链路状态宣告及所述网络地址通过关联指针或者存储在分离链表中的方式与分离链表进行关联,解除关联则是解除关联指针,或者从分离链表中消除存储的链路状态宣告及网络地址。这样每个分离链表将唯一对应一个分离网络。具体实现中,Router LSA中的2类LINK(Transit link)携带相连路由器的路由器IP地址,将之与接口的掩码进行计算,即可得到网络地址;3类LINK(Stub link)本身就携带接口所在网络的网络地址。将LSA/LSP能够计算得出网络地址的功能称之为其携带有网络地址。
步骤S106,获取所述链路状态宣告携带且所述副本未携带的网络地址。获取网络地址的过程就是计算得到LSA/LSP携带的网络地址的过程。
步骤S107,解除所述分离链表与相关联的网络地址的关联关系及清除所述分离链表中记录的所有接口的分离标识。
步骤S108,判断是否存在与所述分离链表相关联的链路状态宣告,如果判断为是,执行步骤S109;如果判断为否,执行步骤S110。
步骤S109,获取与所述分离链表解除了关联关系的网络地址。执行步骤S111。
步骤S110,删除所述分离链表。一旦一条分离链表不再与任何LSA/LSP相关联的时候,就删除掉这条分离链表。
步骤S111,根据获取的每一网络地址及携带所述网络地址的每一链路状态宣告,进行路由器归属的区域中接口分离标识的更新。该步骤是一个循环步骤,对获取的每个网络地址都将跟携带所述网络地址的每个链路状态宣告组合,每次根据获取的一个网络地址及携带所述网络地址的一个链路状态宣告,进行路由器归属的区域中接口分离标识的更新。所述区域中接口分离标识的更新是指清除所述接口的分离标识或者为所述接口添加分离标识。
步骤S112,向邻居接口发布链路状态宣告,并为带有分离标识的接口发布主机路由。
具体实现中,在步骤S100之后还可以增加以下步骤:
判断所述接收到的链路状态宣告是否为本路由器产生的,如果判断为否,执行步骤S101,或判断是否启动对区域中网络分离状态进行更新的功能,如果判断为是,执行步骤S101。其中,是否启动所述更新功能可以通过开关控制,也可以预先设定启动更新功能的链路状态类型,当接收到的链路状态宣告与所述类型匹配时,启动更新功能。
在进行路由计算时,当检测到链路状态宣告无效时,解除所述链路状态宣告与所有分离链表的关联关系,执行步骤S107。
步骤S111中,根据获取的每一网络地址及携带所述网络地址的每一链路状态宣告,进行路由器归属的区域中接口分离标识的更新的步骤具体参考图2,该步骤具体包括:
步骤S300,将所述网络地址标记为当前网络地址及将所述链路状态宣告标记为当前链路状态宣告。每获取一个网络地址及携带该网络地址的一个链路状态宣告时,将所述网络地址标记为当前网络地址及将所述链路状态宣告标记为当前链路状态宣告。
步骤S301,判断是否存在与当前网络地址相关联的分离链表,如果判断为是,执行步骤S302;如果判断为否,执行步骤S305。
步骤S302,解除所述当前链路状态宣告与相关联的分离链表的关联关系后,将所述当前链路状态宣告与所述当前网络地址相关联的分离链表相关联。
步骤S303,判断产生所述链路状态宣告的路由器是否存在邻居接口,如果判断为是,执行步骤S304;如果判断为否,执行步骤S308。
步骤S304,为所述接口添加分离标识,将所述接口记录在所述当前网络地址相关联的分离链表中,执行步骤S308。
步骤S305,判断产生所述链路状态宣告的路由器是否存在网络地址与当前网络地址相同的非邻居接口,如果判断为是,执行步骤S306;如果判断为否,执行步骤S308。
步骤S306,为所述非邻居接口及所述路由器的所有邻居接口添加分离标识,并创建一个新的分离链表记录所述非邻居接口和邻居接口。
具体实现中,通过查看路由器存储的链路状态数据库信息了解路由器是否存在邻居接口和/或非邻居接口及所述接口的网络地址的具体数值,将查找到的所述路由器的邻居接口记录在一个临时链表中,比如记录在src临时链表中;将查找到的网络地址与当前网络地址相同的所述路由器的非邻居接口记录在另一个临时链表中,比如sam临时链表中;当sam临时链表为空时,结束本次更新,当sam临时链表不为空时,依次从sam和src链表中取出接口,为接口添加分离标识,并创建一个新的分离链表记录取出的接口。每次更新完成后,临时链表将自动删除。
步骤S307,解除当前网络地址的所述标记及解除当前链路状态宣告的所述标记和解除当前链路状态宣告与相关联的分离链表的关联关系,将所述当前网络地址和所述当前链路状态宣告与所述新的分离链表相关联。
步骤S308,判断是否存在与所述当前链路状态宣告解除了关联关系的分离链表相关联的链路状态宣告,如果判断为是,执行步骤S310;如果判断为否,执行步骤S309。
步骤S309,删除所述分离链表。
步骤S310,结束本次更新。
相应的,本发明实施例提供了一种使用上述方法发布路由信息的路由器,图3,是本发明实施例的路由器的组成示意图。如图所示,本发明实施例的路由器包括宣告接收单元5、检测执行单元6以及路由发布单元7,其中:
宣告接收单元5,用于接收链路状态宣告。
检测执行单元6,与所述宣告接收单元5相连,用于根据所述宣告接收单元接收的链路状态宣告,检测路由器归属的区域中分离网络的状态是否发生变化,当检测到所述区域中分离网络的状态发生变化时,更新所述区域中接口的分离标识。在一个区域中,网络状态会动态发生变化,比如某个接口从分离网络中脱离,某个路由器从网络中移出以及区域中的某个接口加入某个分离网络中。
路由发布单元7,与所述检测执行单元6相连,用于向邻居接口发布链路状态宣告及为所述检测执行单元更新后带有分离标识的接口发布主机路由。
具体实现中,本发明实施例的路由器还包括一路由来源判断单元,用于判断所述接收到的链路状态宣告是否为本路由器产生的,并将否定的判断结果发送给所述检测执行单元。以及一启动判断单元,用于判断是否启动检测区域中网络分离状态的变化的功能,并将肯定的判断结果发送给所述检测执行单元,所述检测执行单元6接收到所述路由来源判断单元输出的否定判断结果时且收到所述启动判断单元输出的肯定判断结果时,根据所述宣告接收单元接收的链路状态宣告,检测路由器归属的区域中分离网络的状态是否发生变化,当检测到所述区域中分离网络的状态发生变化时,更新所述区域中接口的分离标识。其中,所述判断是否启动检测区域中网络分离状态的变化的功能包括:确定控制该功能的开关是否处于开启状态。或者判断所述链路状态宣告是否为预设的用于启动对区域中网络分离状态进行更新的功能的链路状态宣告类型。
图4,是图3中检测执行单元的组成示意图。如图所示,本发明实施例中检测执行单元包括第一判断单元60、第一解除单元61、第二解除单元62、第三解除单元63、第二判断单元64、地址获取单元65以、更新子单元66以及第一释放单元67,其中:
第一判断单元60,与所述宣告接收单元5相连,用于判断接收到的链路状态宣告是否过期,输出肯定或否定的判断结果;在链路状态宣告中有个AGE字段,用于记录链路状态宣告存在的时间长短,当该字段记录的时间大于等于一个小时,认为链路状态宣告过期。
第一解除单元61,与所述第一判断单元60相连,用于接收所述第一判断单元60输出的肯定判断结果,解除所述链路状态宣告的副本与第一分离链表的关联关系,所述第一分离链表包括与所述副本相关联的所有分离链表。在本发明实施例中,采用给接口添加分离标识的方式来反映接口处于分离网络中,并将处于同一分离网络的接口记录在一个分离链表中,这样每一条分离链表唯一对应一个网络地址。副本与分离链表的关联关系可以通过关联指针建立,或者将所述副本存储在分离链表中,解除关联则是解除关联指针,或者从分离链表中消除存储的副本。
第二解除单元62,与所述第一判断单元60相连,用于接收所述第一判断单元60输出的否定判断结果,解除所述副本与第二分离链表的关联关系,所述第二分离链表包括与所述链路状态宣告的副本相关联的且相关联的网络地址未在所述宣告中携带的所有分离链表。
第三解除单元63,分别与所述第一解除单元61及所述第二解除单元62相连,用于解除所述第一分离链表或所述第二分离链表与相关联的网络地址的关联关系及清除所述分离链表中记录的所有接口的分离标识;
第二判断单元64,与所述第三解除单元63相连,用于判断是否存在与所述第一分离链表或所述第二分离链表相关联的链路状态宣告,输出肯定或否定的判断结果;
地址获取单元65,分别与所述第一判断单元60及所述第二判断单元64相连,用于接收所述第一判断单元60输出的否定判断结果,获取所述链路状态宣告携带且所述副本未携带的网络地址;及接收所述第二判断单元64输出的肯定判断结果,获取与所述第一分离链表或所述第二分离链表解除了关联关系的网络地址。根据链路状态路由协议可知,LSA/LSP具有描述网络地址的功能,如0SPF协议中,Router LSA中的2类LINK(Transit link)携带相连路由器的路由器IP地址,将之与接口的掩码进行计算,即可得到网络地址;3类LINK(Stublink)本身就携带接口所在网络的网络地址。将LSA/LSP能够计算得出网络地址的功能称之为其携带有网络地址。获取网络地址的过程就是计算得到LSA/LSP携带的网络地址的过程。
更新子单元66,与所述地址获取单元65相连,根据获取的每一网络地址及携带所述网络地址的每一链路状态宣告,进行路由器归属的区域中接口分离标识的更新。该单元完成的工作是一个循环步骤,对获取的每个网络地址都将跟携带所述网络地址的每个链路状态宣告组合,每次根据获取的一个网络地址及携带所述网络地址的一个链路状态宣告,进行路由器归属的区域中接口分离标识的更新。所谓区域中接口分离标识的更新是指清除所述接口的分离标识或者为所述接口添加分离标识。
第一释放单元67,与第二判断单元64相连,用于接收所述第二判断单元64输出的否定判断结果,删除所述第一分离链表或所述第二分离链表。
图5,是图4中更新子单元的组成示意图。如图所示,本发明实施例中更新子单元包括标记单元660、第三判断单元661、第一关联单元662、第四判断单元663、第一添加单元664、第五判断单元665、第二添加单元666、第二关联单元667、第六判断单元668以及第二释放单元669,其中:
标记单元660,与所述地址获取单元65相连,用于依次将获取的每一网络地址标记为当前网络地址及依次将携带所述网络地址的每一链路状态宣告标记为当前链路状态宣告。因为更新子单元66完成的是一个循环步骤,针对每次的网络地址及链路状态宣告有必要进行标记。
第三判断单元661,与所述标记单元660相连,用于判断是否存在与当前网地址相关联的分离链表,输出肯定或否定的判断结果;
第一关联单元662,与所述第三判断单元661相连,用于接收所述第三判断单元661输出的肯定判断结果,解除所述当前链路状态宣告与相关联的分离链表的关联关系,将所述当前链路状态宣告与所述与当前网络地址相关联的分离链表相关联;
第四判断单元663,与所述第一关联单元662相连,用于判断产生所述当前链路状态宣告的路由器是否存在邻居接口,输出肯定或否定的判断结果;
第一添加单元664,与所述第四判断单元663相连,用于接收所述第四判断单元663输出的肯定判断结果,为所述接口添加分离标识,将所述接口记录在与当前网络地址相关联的所述分离链表中;
第五判断单元665,与所述第三判断单元661相连,用于接收所述第三判断单元661输出的否定判断结果,判断产生所述当前链路状态宣告的路由器是否存在网络地址与所述当前网络地址相同的非邻居接口,输出肯定或否定的判断结果;
第二添加单元666,与所述第五判断单元665相连,用于接收所述第五判断单元665输出的肯定判断结果,为所述非邻居接口及所述路由器的所有邻居接口添加分离标识,并创建一个新的分离链表记录所述非邻居接口和邻居接口;
具体实现中,通过查看路由器存储的链路状态数据库信息了解路由器是否存在邻居接口和/或非邻居接口及所述接口的网络地址的具体数值,将查找到的所述路由器的邻居接口记录在一个临时链表中,比如记录在Src临时链表中;将查找到的网络地址与当前网络地址相同的所述路由器的非邻居接口记录在另一个临时链表中,比如sam临时链表中;当sam临时链表为空时,结束本次更新,当sam临时链表不为空时,依次从sam和src链表中取出接口,为接口添加分离标识,并创建一个新的分离链表记录取出的接口。每次更新完成后,临时链表将自动删除。
第二关联单元667,与所述第二添加单元666相连,用于将所述解除了标记的当前网络地址及解除了标记且解除了与相关联的分离链表的关联关系的所述当前链路状态宣告,将所述当前网络地址和所述当前链路状态宣告与所述新的分离链表相关联。
第六判断单元668,分别与所述第一关联单元662和所述第二关联单元667相连,用于判断是否存在与所述当前链路状态宣告解除了关联关系的分离链表相关联的链路状态宣告,输出肯定或否定的判断结果;
第二释放单元669,与所述第六判断单元668相连,用于接收所述第六判断单元668输出的否定判断结果,删除所述分离链表。
本发明实施例可以适应各种网络分离情况,包括异型分离、隔离子网、相连子网以及各种情形混合的分离模式。
本发明实施例有一种备选方案,为确保网络分离情况下路由计算的准确,在生成LSA/LSP时,为区域内每个接口发布主机路由。
本发明实施例根据接收到的链路状态宣告,检测路由器归属的区域中分离网络的状态是否发生变化,当检测到所述区域中分离网络的状态发生变化时,更新所述区域中接口的分离标识,并为更新后带有分离标识的接口发布主机路由,能在网络分离情况下,正确发布路由信息,保证路由器准确进行路由计算和查找,最终保证报文数据准确发送到各个分离子网段。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。

Claims (13)

1、一种路由器发布路由信息的方法,其特征在于,包括:
接收链路状态宣告;
根据所接收的链路状态宣告,检测路由器归属的区域中分离网络的状态是否发生变化,当检测到所述区域中分离网络的状态发生变化时,更新所述区域中接口的分离标识,所述分离标识用于指示所述接口处于分离网络中;所述分离网络由所述区域中的某一网络分离而形成,所述分离网络的网络地址与由所述某一网络分离后形成的其他分离网络的网络地址相同;
向邻居接口发布链路状态宣告,并为带有分离标识的接口发布主机路由。
2、如权利要求1所述的方法,其特征在于,所述根据所接收的链路状态宣告,检测路由器归属的区域中分离网络的状态是否发生变化,当检测到所述区域中分离网络的状态发生变化时,更新所述区域中接口的分离标识的步骤具体包括:
B0、判断所述接收到的链路状态宣告是否过期,如果判断为是,解除所述链路状态宣告的副本与第一分离链表的关联关系,所述第一分离链表包括与所述副本相关联的所有分离链表,执行步骤B2;如果判断为否,解除所述副本与第二分离链表的关联关系,所述第二分离链表包括与所述链路状态宣告的副本相关联的且相关联的网络地址未在所述宣告中携带的所有分离链表;
B1、获取所述链路状态宣告携带且所述副本未携带的网络地址;
B2、解除所述分离链表与相关联的网络地址的关联关系及清除所述分离链表中记录的所有接口的分离标识;
B3、判断是否存在与所述分离链表相关联的链路状态宣告,如果判断为是,获取与所述分离链表解除了关联关系的网络地址,执行步骤B4;如果判断为否,删除所述分离链表;
B4、根据获取的每一网络地址及携带所述获取的每一网络地址的每一链路状态宣告,进行路由器归属的区域中接口分离标识的更新。
3、如权利要求2所述的方法,其特征在于,所述接收链路状态宣告之后还包括:
A0、判断链路状态数据库中是否存储有所述接收到的链路状态宣告的副本,如果判断为是,执行步骤B0;如果判断为否,获取所述链路状态宣告携带的网络地址,执行步骤B4。
4、如权利要求2或3所述的方法,其特征在于,步骤B4中根据获取的每一网络地址及携带所述获取的每一网络地址的每一链路状态宣告进行路由器归属的区域中接口分离标识的更新的步骤包括:
S0、将所述获取的每一网络地址标记为当前网络地址及将所述携带所述获取的每一网络地址的每一链路状态宣告标记为当前链路状态宣告,判断是否存在与当前网络地址相关联的分离链表,如果判断为是,解除所述当前链路状态宣告与相关联分离链表的关联关系,将所述当前链路状态宣告与所述当前网络地址相关联的分离链表相关联,执行步骤S1;如果判断为否,执行步骤S2;
S1、判断产生所述当前链路状态宣告的路由器是否存在邻居接口,如果判断为是,为所述接口添加分离标识,将所述接口记录在当前网络地址相关联的所述分离链表中,结束本次更新;如果判断为否,结束本次更新;
S2,判断产生所述当前链路状态宣告的路由器是否存在网络地址与所述当前网络地址相同的非邻居接口,如果判断为是,执行步骤S3;如果判断为否,结束本次更新;
S3、为所述非邻居接口及所述路由器的所有邻居接口添加分离标识,并创建一个新的分离链表记录所述非邻居接口和邻居接口;
S4、解除当前网络地址的所述标记及解除当前链路状态宣告的所述标记和解除当前链路状态宣告与相关联的分离链表的关联关系,将所述当前网络地址和所述当前链路状态宣告与所述新的分离链表相关联,结束本次更新。
5、如权利要求4所述的方法,其特征在于,所述的在结束本次更新前还包括:
判断是否存在与所述当前链路状态宣告解除了关联关系的分离链表相关联的链路状态宣告,如果判断为否,删除所述分离链表。
6、如权利要求1所述的方法,其特征在于,所述接收链路状态宣告之后还包括:
判断是否启动检测区域中网络分离状态的变化的功能,如果判断为是,根据所接收的链路状态宣告,检测路由器归属的区域中分离网络的状态是否发生变化,当检测到所述区域中分离网络的状态发生变化时,更新所述区域中接口的分离标识。
7、如权利要求6所述的方法,其特征在于,所述判断是否启动检测区域中网络分离状态的变化的功能包括:
确定控制该功能的开关是否处于开启状态。
8、如权利要求6所述的方法,其特征在于,所述判断是否启动检测区域中网络分离状态的变化的功能包括:
判断所述链路状态宣告是否为预设的用于启动对区域中网络分离状态进行更新的功能的链路状态宣告类型。
9、一种路由器,其特征在于,包括:
宣告接收单元,用于接收链路状态宣告;
检测执行单元,与所述宣告接收单元相连,用于根据所述接收的链路状态宣告,检测路由器归属的区域中分离网络的状态是否发生变化,当检测到所述区域中分离网络的状态发生变化时,更新所述区域中接口的分离标识,所述分离标识用于指示所述接口处于分离网络中;所述分离网络由所述区域中的某一网络分离而形成,所述分离网络的网络地址与由所述某一网络分离后形成的其他分离网络的网络地址相同;
路由发布单元,与所述检测执行单元相连,用于向邻居接口发布链路状态宣告及为所述检测执行单元输出的带有分离标识的接口发布主机路由。
10、如权利要求9所述的路由器,其特征在于,所述检测执行单元包括:
第一判断单元,与所述宣告接收单元相连,用于判断接收到的链路状态宣告是否过期,输出肯定或否定的判断结果;
第一解除单元,与所述第一判断单元相连,用于接收所述第一判断单元输出的肯定判断结果,解除所述链路状态宣告的副本与第一分离链表的关联关系,所述第一分离链表包括与所述副本相关联的所有分离链表;
第二解除单元,与所述第一判断单元相连,用于接收所述第一判断单元输出的否定判断结果,解除所述副本与第二分离链表的关联关系,所述第二分离链表包括与所述链路状态宣告的副本相关联的且相关联的网络地址未在所述链路状态宣告中携带的所有分离链表;
第三解除单元,分别与所述第一解除单元及所述第二解除单元相连,用于解除所述第一分离链表或所述第二分离链表与相关联的网络地址的关联关系及清除所述分离链表中记录的所有接口的分离标识;
第二判断单元,与所述第三解除单元相连,用于判断是否存在与所述第一分离链表或所述第二分离链表相关联的链路状态宣告,输出肯定或否定的判断结果;
地址获取单元,分别与所述第一判断单元及所述第二判断单元相连,用于接收所述第一判断单元输出的否定判断结果,获取所述宣告携带且所述副本未携带的网络地址;及接收所述第二判断单元输出的肯定判断结果,获取与所述第一分离链表或所述第二分离链表解除了关联关系的网络地址;
第一删除单元,与所述第二判断单元相连,用于接收所述第二判断单元输出的否定判断结果,删除所述第一分离链表或所述第二分离链表;
更新子单元,与所述地址获取单元相连,根据获取的每一网络地址及携带所述获取的每一网络地址的每一链路状态宣告,进行路由器归属的区域中接口分离标识的更新。
11、如权利要求10所述的路由器,其特征在于,所述更新子单元包括:
标记单元,与所述地址获取单元相连,用于依次将获取的每一网络地址标记为当前网络地址及依次将携带所述获取的每一网络地址的每一链路状态宣告标记为当前链路状态宣告;
第三判断单元,与所述标记单元相连,用于判断是否存在与当前网地址相关联的分离链表,输出肯定或否定的判断结果;
第一关联单元,与所述第三判断单元相连,用于接收所述第三判断单元输出的肯定判断结果,解除所述当前链路状态宣告与相关联分离链表的关联关系,将所述当前链路状态宣告与所述当前网络地址相关联的分离链表相关联;
第四判断单元,与所述第一关联单元相连,用于判断产生所述当前链路状态宣告的路由器是否存在邻居接口,输出肯定或否定的判断结果;
第一添加单元,与所述第四判断单元相连,用于接收所述第四判断单元输出的肯定判断结果,为所述接口添加分离标识,将所述接口记录在与当前网络地址相关联的所述分离链表中;
第五判断单元,与所述第三判断单元相连,用于接收所述第三判断单元输出的否定判断结果,判断产生所述当前链路状态宣告的路由器是否存在网络地址与所述当前网络地址相同的非邻居接口,输出肯定或否定的判断结果;
第二添加单元,与所述第五判断单元相连,用于接收所述第五判断单元输出的肯定判断结果,为所述非邻居接口及所述路由器的所有邻居接口添加分离标识,并创建一个新的分离链表记录所述非邻居接口和邻居接口;
第二关联单元,与所述第二添加单元相连,解除当前网络地址的所述标记及解除当前链路状态宣告的所述标记和解除当前链路状态宣告与相关联的分离链表的关联关系,将所述当前网络地址和所述当前链路状态宣告与所述新的分离链表相关联。
12、如权利要求11所述的路由器,其特征在于,所述更新子单元还包括:
第六判断单元,分别与所述第一关联单元和所述第二关联单元相连,用于判断是否存在与所述当前链路状态宣告解除了关联关系的分离链表相关联的链路状态宣告,输出肯定或否定的判断结果;
第二删除单元,与所述第六判断单元相连,用于接收所述第六判断单元输出的否定判断结果,删除所述分离链表。
13、如权利要求9所述的路由器,其特征在于,还包括:
第八判断单元,与所述宣告接收单元相连,用于判断是否启动检测区域中网络分离状态的变化的功能,并输出肯定的判断结果给所述检测执行单元。
CN200710027307A 2007-03-27 2007-03-27 一种路由器及路由器发布路由信息的方法 Expired - Fee Related CN100591046C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200710027307A CN100591046C (zh) 2007-03-27 2007-03-27 一种路由器及路由器发布路由信息的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200710027307A CN100591046C (zh) 2007-03-27 2007-03-27 一种路由器及路由器发布路由信息的方法

Publications (2)

Publication Number Publication Date
CN101060478A CN101060478A (zh) 2007-10-24
CN100591046C true CN100591046C (zh) 2010-02-17

Family

ID=38866377

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200710027307A Expired - Fee Related CN100591046C (zh) 2007-03-27 2007-03-27 一种路由器及路由器发布路由信息的方法

Country Status (1)

Country Link
CN (1) CN100591046C (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11201854B2 (en) * 2018-11-30 2021-12-14 Cisco Technology, Inc. Dynamic intent-based firewall
CN111835685B (zh) * 2019-04-19 2022-10-28 厦门网宿有限公司 一种监控Nginx网络隔离空间的运行状态的方法和服务器
CN111835684B (zh) * 2019-04-19 2023-01-20 厦门网宿有限公司 一种haproxy设备的网络隔离监控方法及系统
CN110768901B (zh) * 2019-10-24 2022-02-25 新华三技术有限公司 路由发布方法、路由选择方法、相关装置及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
计算机网络. 谢希仁,第214-219页,电子工业出版社. 2003
计算机网络. 谢希仁,第214-219页,电子工业出版社. 2003 *

Also Published As

Publication number Publication date
CN101060478A (zh) 2007-10-24

Similar Documents

Publication Publication Date Title
CN112995029B (zh) 一种传输路径故障的处理方法、装置及系统
US8856584B2 (en) Transport control server that modifies routing information
CN102130834B (zh) 一种ip路由方法和路由器
US7490161B2 (en) Method and system for implementing OSPF redundancy
US6871235B1 (en) Fast path forwarding of link state advertisements using reverse path forwarding
US7155632B2 (en) Method and system for implementing IS-IS protocol redundancy
CN103999431A (zh) 软件定义的网络中灵活的并且可扩展的流处理系统
JP4918862B2 (ja) リンクトレースフレーム転送プログラム、リンクトレースフレーム転送装置、リンクトレースフレーム転送方法
CN105009523A (zh) 用于ip/mpls快速重新路由的方法和设备
CN102404189B (zh) 支持多拓扑路由的设备进行主备倒换的方法及主控板
CN100591046C (zh) 一种路由器及路由器发布路由信息的方法
JP2006254341A (ja) スパニングツリープロトコルネットワークにおけるブリッジ装置および制御パケット処理方法
CN103201987A (zh) 区分路由信息更新的优先级
CN109361596A (zh) 路由计算方法、装置及电子设备
US20090122800A1 (en) Frame transfer route confirmation method, node, frame transfer route confirmation program and frame transfer route confirmation system
CN102325080B (zh) 一种ospf协议平滑重启方法和装置
US7860027B2 (en) Extending an IP everywhere network over a plurality of flooding domains
US6973028B1 (en) SONET ring map generation method and system
CN106230717B (zh) 集群系统中的路由获取方法及装置
WO2020105379A1 (ja) データ転送装置、データ転送方法
CN103200092A (zh) 一种基于虚拟网络设备的路由进程管理方法和设备
CN101582847B (zh) 路由振荡检测方法及自治系统
JP2010161524A (ja) 経路制御プロトコルに基づく障害リンク検出方法、ノード装置及びプログラム
McPherson Intermediate system to intermediate system (IS-IS) transient blackhole avoidance
CN104767687A (zh) 传播关键路由以及建立和更新路由表的方法和设备

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: 20100217

Termination date: 20180327

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