一种限制链路状态通告数量的方法和装置制造方法及图纸

技术编号:20118911 阅读:19 留言:0更新日期:2019-01-16 12:16
本申请提供一种限制链路状态通告数量的方法和装置,所述方法包括:监控运行OSPF协议的网络设备当前能提供给OSPF协议的可用内存大小;若所述网络设备当前能提供给OSPF协议的可用内存大小变化,则计算得出链路状态数据库能储存的链路状态通告数量;获取所述数据库当前储存的链路状态通告数量,若所述数据库当前储存的链路状态通告数量等于限制值,则进行限制链路状态通告数量增加的操作。

A Method and Device for Limiting the Number of Link State Notices

This application provides a method and device for limiting the number of link state notifications. The method includes: monitoring the available memory size currently provided to OSPF protocol by network devices running OSPF protocol; calculating the number of link state notifications that link state database can store if the available memory size of network devices currently provided to OSPF protocol changes; If the number of link state notifications stored in the database is equal to the limit value, the operation of limiting the increase of the number of link state notifications is carried out.

【技术实现步骤摘要】
一种限制链路状态通告数量的方法和装置
本申请涉及网络
,特别是涉及一种限制链路状态通告数量的方法和装置。
技术介绍
在网络中,相连的运行OSPF(OpenShortestPathFirst,开放最短路径优先)协议的网络设备之间会将链路状态通告交换储存在链路状态数据库中,这会占用网络设备的内存,因此,当网络规模达到一定程度时,链路状态通告数量就会变得非常庞大,从而给OSPF协议的计算以及网络设备的内存带来巨大的压力。一方面,网络中各个网络设备的内存大小可能不同,另一方面,同一个网络设备启用的功能可能不同,因此,网络设备提供给OSPF协议的可用内存大小很难确定,从而链路状态数据库能储存的链路状态通告数量很难界定。为了保证网络正常,必须对网络进行细致规划同时时刻警惕网络设备接收的或者自己产生的链路状态通告数量有没有超量。这就造成一旦网络规划不细致或网络管理员未注意,使大量链路状态通告进入链路状态数据库,超出链路状态数据库能储存的数量,将导致网络设备无法支持或OSPF协议崩溃,进而导致网络崩溃。
技术实现思路
有鉴于此,本申请提供了一种限制链路状态通告数量的方法和装置,以解决链路状态数据库能储存的链路状态通告数量很难界定造成的链路状态通告涌入很难控制的问题。具体地,本申请是通过如下技术方案实现的:一种限制链路状态通告数量的方法,其特征在于,包括:监控运行OSPF协议的网络设备当前能提供给OSPF协议的可用内存大小;若所述网络设备当前能提供给OSPF协议的可用内存大小变化,则计算得出链路状态数据库能储存的链路状态通告数量;所述数据库能储存的链路状态通告数量的计算方法为:利用所述网络设备当前能提供给OSPF协议的可用内存减去OSPF协议运行基础功能所用内存,得出所述数据库可用内存,再利用所述数据库除以每条链路状态通告所需占用的内存,得出所述数据库能够储存的链路状态通告数量;获取所述数据库当前储存的链路状态通告数量,若所述数据库当前储存的链路状态通告数量等于预设限制值,则进行限制链路状态通告数量增加的操作。本申请还提供一种限制链路状态通告数量的装置,其特征在于,包括:监控单元,用于监控运行OSPF协议的网络设备当前能提供给OSPF协议的可用内存大小;计算单元,用于若所述网络设备当前能提供给OSPF协议的可用内存大小变化,则计算得出链路状态数据库能储存的链路状态通告数量;所述数据库能储存的链路状态通告数量的计算方法为:利用所述网络设备当前能提供给OSPF协议的可用内存减去OSPF协议运行基础功能所用内存,得出所述数据库可用内存,再利用所述数据库除以每条链路状态通告所需占用的内存,得出所述数据库能够储存的链路状态通告数量;限制单元,用于获取所述数据库当前储存的链路状态通告数量,若所述数据库当前储存的链路状态通告数量等于预设限制值,则进行限制链路状态通告数量增加的操作。由以上技术方案可以看出,本申请中,能够根据网络设备当前能提供给OSPF协议的可用内存大小变化,随时计算链路状态数据库能储存的链路状态通告数量,以此设置限制值,并对当前储存的链路状态通告的数量进行监控,由于限制值不大于数据库能够储存的链路状态通告数量,所以当前储存的链路状态通告的数量不会超过链路状态数据库能够储存的链路状态通告数量。附图说明图1是本申请根据一示例性实施例示出的一种限制链路状态通告数量应用场景示意图;图2是本申请一示例性实施例示出的一种限制链路状态通告数量的方法的流程示意图;图3是本申请一示例性实施例示出的一种限制链路状态通告数量的装置的结构示意图;图4是本申请根据一示例性实施例示出的一种限制链路状态通告数量的装置所在设备的一种硬件结构图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。随着信息技术的发展,网络的规模越来越大,结构越来越复杂,为了满足大型、异构的网络的需要,OSPF协议被开发并在市场中广泛使用。运行OSPF协议的网络设备会将自己的链路状态通告根据对应的扩散范围,发给与自己相连的邻居,邻居将收到的链路状态通告放入链路状态数据库,之后邻居再发给自己的所有邻居,并且在传递过程中,绝对不会有任何更改。通过这样的过程,最终,网络中所有运行OSPF协议的网络设备都拥有其所在范围的所有的链路状态通告。因此,当网络规模达到一定程度时,链路状态通告的数据将变得非常庞大,由于链路状态通告储存于链路状态数据库中,而链路状态数据库占用的是网络设备的内存,所以势必会给OSPF计算以及网络设备内存和性能带来巨大的压力。目前,运行OSPF协议的网络设备必须时刻警惕与其连接的邻居发送的链路状态通告或者自己产生的链路状态通告有没有超过链路状态数据库的储存能力,一旦网络规划不细致或网络管理员未注意链路状态数据库所能储存的链路状态通告的最大数量,极端情况下,网络中大量的链路状态通告涌入网络设备或网络设备自身产生大量新的链路状态通告,严重超过链路状态数据库实际储存能力,导致网络设备内存不足,无法继续支持OSPF计算,从而导致OSPF协议崩溃,进而导致网络崩溃。参见图1所示,为本申请根据一示例性实施例示出的一种限制链路状态通告数量应用场景示意图:如图1所示的应用场景中,以最简单的3台运行OSPF协议的网络设备为例,分别是路由器A、路由器B和路由器C,路由器A能储存的链路状态通告数量为10万,已有3万,路由器B能储存的链路状态通告数量为6万,已有1万,路由器C能储存的链路状态通告数量为10万,已有4万。路由器B会分别和路由器A、路由器C先后建立连接关系。路由器A与路由器B连接,相互交互学习对方的链路状态通告,路由器A的链路状态通告数量为3万加上路由器B的链路状态通告数量1万,总量为4万,同理路由器B的链路状态通告数量也为4万,二者链路状态通告数量都没达到限制值;路由器C与路由器B连接,相互交互学习对方的链路状态通告,路由器B已有链路状态通告数量为4万,到达自己极限所能储存的链路状态通告数量6万时OSPF协议崩溃,导致与路由器A的连接关系也断掉了,网络陷入瘫痪。另一种情况是,路由器B本身已有1万的链路状态通告,通过引入其他种类的路由等方式自身产生6万的链路状态通告,到达自己极限,最终导致路由器OS本文档来自技高网...

【技术保护点】
1.一种限制链路状态通告数量的方法,其特征在于,包括:监控运行OSPF协议的网络设备当前能提供给OSPF协议的可用内存大小;若所述网络设备当前能提供给OSPF协议的可用内存大小变化,则计算得出链路状态数据库能储存的链路状态通告数量;所述数据库能储存的链路状态通告数量的计算方法为:利用所述网络设备当前能提供给OSPF协议的可用内存减去OSPF协议运行基础功能所用内存,得出所述数据库可用内存,再利用所述数据库除以每条链路状态通告所需占用的内存,得出所述数据库能够储存的链路状态通告数量;获取所述数据库当前储存的链路状态通告数量,若所述数据库当前储存的链路状态通告数量等于限制值,则进行限制链路状态通告数量增加的操作;所述限制值不大于所述数据库能够储存的链路状态通告数量。

【技术特征摘要】
1.一种限制链路状态通告数量的方法,其特征在于,包括:监控运行OSPF协议的网络设备当前能提供给OSPF协议的可用内存大小;若所述网络设备当前能提供给OSPF协议的可用内存大小变化,则计算得出链路状态数据库能储存的链路状态通告数量;所述数据库能储存的链路状态通告数量的计算方法为:利用所述网络设备当前能提供给OSPF协议的可用内存减去OSPF协议运行基础功能所用内存,得出所述数据库可用内存,再利用所述数据库除以每条链路状态通告所需占用的内存,得出所述数据库能够储存的链路状态通告数量;获取所述数据库当前储存的链路状态通告数量,若所述数据库当前储存的链路状态通告数量等于限制值,则进行限制链路状态通告数量增加的操作;所述限制值不大于所述数据库能够储存的链路状态通告数量。2.根据权利要求1所述的方法,其特征在于,所述进行限制链路状态通告数量增加的操作,包括:若所述网络设备当前在接收链路状态通告,则停止接收链路状态通告;若所述网络设备当前在自身产生链路状态通告,则停止自身产生新的链路状态通告。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:若计算得出所述数据库能够储存的链路状态通告数量小于所述数据库当前储存的链路状态通告数量,则按预设规则删除所述数据库当前储存的链路状态通告。4.根据权利要求3所述的方法,其特征在于,所述预设规则为优先删除所述网络设备自身产生的链路状态通告。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:设置小于限制值的提醒值,若所述数据库当前储存的链路状态通告数量等于提醒值时,发出提醒。6.根据权利要求1所述的方法,其特征在于,所述方法还包括:所述网络设备在接收链路状态通告时,若接收到同一个链路状态通告的多个实例,则进行以下处理:比较实例的序列号,接收序列号最大的实例;若序列号相同,则比较实例的校验和值,接收校验和值...

【专利技术属性】
技术研发人员:李强王朝
申请(专利权)人:杭州迪普科技股份有限公司
类型:发明
国别省市:浙江,33

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

1