CN104579976A - 链路状态协议数据包的生成方法及装置 - Google Patents
链路状态协议数据包的生成方法及装置 Download PDFInfo
- Publication number
- CN104579976A CN104579976A CN201410379451.0A CN201410379451A CN104579976A CN 104579976 A CN104579976 A CN 104579976A CN 201410379451 A CN201410379451 A CN 201410379451A CN 104579976 A CN104579976 A CN 104579976A
- Authority
- CN
- China
- Prior art keywords
- lsp
- length
- lsp burst
- item
- burst
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/06—Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种链路状态协议数据包的生成方法及装置,在上述方法中,配置预留空间的长度,其中,预留空间的长度小于单个LSP分片的默认最大长度;按照预留空间的长度在依次生成的每个LSP分片中设置预留空间。根据本发明提供的技术方案,能够大幅消除由于网络震荡所引起的不良影响。
Description
技术领域
本发明涉及通信领域,具体而言,涉及一种链路状态协议数据包的生成方法及装置。
背景技术
目前,相关技术中所采用的中间系统到中间系统(ISIS)路由协议是一种动态的、基于链路状态的内部网关协议(IGP)。ISIS协议在通过HELLO报文交互协商建立邻居之后,每一个中间系统(IS)均会产生链路状态协议数据包(LSP)描述该IS的链路状态信息,并发送至网络中。此外,每个IS还会存储网络拓扑上其余IS发送过来的LSP,以形成链路状态数据库(LSDB)。ISIS就是使用LSDB通过最短路径优先算法(SPF)计算出到达目的地址的最佳路由的。
在集成的ISIS路由协议中,LSP主要包含大量的互联网协议(IP)可达性信息,即IP前缀路由信息。上述IP可达性信息主要来源于以下两个方面:一方面是IS自身配置的三层路由接口,该接口上配置的IP前缀会作为IP可达性信息在LSP中通告,以表示该IS可以到达这个IP路由网段;另一方面是在IS配置了路由泄露或者重分发之后,将ISIS路由协议自身产生的三层路由表或者配置的对应重分发的路由协议产生的三层路由表中的IP前缀在LSP中通告,以表示通过该IS可以经由IS另一层次的路由或者其他路由协议可以到达该IP路由网段。
每个IS均需要通告链路状态信息,链路状态信息可以分为多种类型,并且使用类型长度值(TLV)的形式填写在LSP中。每个IS通告的LSP会有多个分片,最多为256个分片,每个分片分别对应一个编号,从0到255。每个分片存在一个最大长度,默认情况下为1492个字节。在通常情况下,一个IS产生的LSP都是从0编号分片的LSP开始产生,当0编号分片的LSP填充到最大长度时,如果还有链路状态信息需要填充在LSP通告时,即会生成1编号分片;以此类推,直至全部需要通告的链路状态信息都在LSP中的通告为止。因此,上述LSP分片除了最后一个LSP可能由于需要通告的链路状态信息结束,长度没有达到最大长度之外,其他的LSP分片均可达到最大长度(1492)。
由此,在大规模的网络中,需要通告的链路状态数据库较为庞大。尤其是,该网络中通常需要通告大量IP可达性信息,故而,IP可达性信息通常会占用大多数的LSP分片进行通告。而当一个需要在LSP中通告的IP可达性信息的增加、删除、改变(包括:metric改变、类型改变、属性改变)导致其所占用的LSP长度发生变化时,均会导致其所在LSP分片及其后续分片的LSP重新生成,从而导致这些LSP的格局重组。而格局重组会带来负面影响,即为远端IS在计算当前IS通告的IP可达性信息时,某些IP可达性信息已经从一个分片移动至另外一个分片,而当这些LSP在网络中发生洪泛时,远端IS会先接收到移走这个IP可达性信息的LSP,从而删除这个IP路由。当经过一段时间又接收到另一个LSP分片时,这个IP可达性信息重新在这个LSP分片中通告,才能够恢复这个IP路由,进而导致这一段时间路由消失,到达这个IP前缀的流量被迫中断。
随着网络规模的逐步扩大,IS所需要通告的链路状态信息随之大量增加,从而导致所需要产生的LSP也会日益增加。但是,某些链路状态信息(例如:IP可达性信息)会由于某些原因(例如:某些链路由于物理故障频繁up和down、重分发协议的路由出现大量震荡、ISIS协议system-id配置重复)出现震荡,频繁增加、删除、改变(包括:metric改变,类型改变、属性改变),由此会不断引发众多LSP的重组与更新。从而,大量消耗本地IS的CPU资源;并且IS生成LSP效率也会随之大幅降低,就在某些LSP还没有来得及响应上次改变的情况下,又开始了新一轮的重组更新,因而增加了网络上LSP洪泛负载,同时引发网络拓扑中全部中IS路由的频繁震荡。
发明内容
本发明提供了一种链路状态协议数据包的生成方法及装置,以至少解决相关技术中由于在LSP生成时会出现大量LSP频繁进行重组和更新增加了网络上LSP洪泛负载,同时引发网络拓扑中全部中IS路由的频繁震荡的问题。
根据本发明的一个方面,提供了一种链路状态协议数据包的生成方法。
根据本发明的链路状态协议数据包的生成方法包括:配置预留空间的长度,其中,预留空间的长度小于单个LSP分片的默认最大长度;按照预留空间的长度在依次生成的每个LSP分片中设置预留空间。
优选地,在按照预留空间的长度在依次生成的每个LSP分片中设置预留空间之后,还包括:根据待插入的链路状态信息条目(ITEM)的类型和/或该ITEM的关键字查找与待插入的ITEM对应的LSP分片编号以及在该LSP分片中待插入的位置信息;在确定查找到的LSP分片中的剩余空间的长度大于或等于待插入的ITEM的长度的情况下,直接按照LSP分片编号和待插入的位置信息将待插入的ITEM插入至查找到的LSP分片中;对查找到的LSP分片中的链路状态信息进行重组和更新。
优选地,在按照预留空间的长度在依次生成的每个LSP分片中设置预留空间之后,还包括:在确定查找到的LSP分片中的剩余空间的长度小于待插入的ITEM的长度并且当前使用的IS中还存在尚未使用的LSP分片的情况下,从LSP分片编号开始依次对每个LSP分片中的链路状态信息进行重组和更新。
优选地,在按照预留空间的长度在依次生成的每个LSP分片中设置预留空间之后,还包括:在确定查找到的LSP分片中的剩余空间的长度小于待插入的ITEM的长度并且IS中的全部LSP分片均已被使用的情况下,重新对预留空间的长度进行调整。
优选地,在按照预留空间的长度在依次生成的每个LSP分片中设置预留空间之后,还包括:查找待删除的ITEM所在的LSP分片;判断在查找到的LSP分片中除待删除的ITEM之外是否还存在其他的ITEM;如果是,则对查找到的LSP分片中的链路状态信息进行重组和更新;如果否,则重新对预留空间的长度进行调整。
优选地,按照以下公式重新对预留空间的长度进行调整:
其中,Lr为预留空间的长度,Lmax为默认最大长度,表示编号为n的LSP分片当前的实际长度,0≤n≤256,0<N<100。
根据本发明的另一方面,提供了一种链路状态协议数据包的生成装置。
根据本发明的链路状态协议数据包的生成装置包括:配置模块,用于配置预留空间的长度,其中,预留空间的长度小于单个链路状态协议数据包LSP分片的默认最大长度;设置模块,用于按照预留空间的长度在依次生成的每个LSP分片中设置预留空间。
优选地,上述装置还包括:第一查找模块,用于根据待插入的链路状态信息条目ITEM的类型和/或该ITEM的关键字查找与待插入的ITEM对应的LSP分片编号以及在该LSP分片中待插入的位置信息;插入模块,用于在确定查找到的LSP分片中的剩余空间的长度大于或等于待插入的ITEM的长度的情况下,直接按照LSP分片编号和待插入的位置信息将待插入的ITEM插入至查找到的LSP分片中;第一重组更新模块,用于对查找到的LSP分片中的链路状态信息进行重组和更新。
优选地,上述装置还包括:第二重组更新模块,用于在确定查找到的LSP分片中的剩余空间的长度小于待插入的ITEM的长度并且当前使用的中间系统IS中还存在尚未使用的LSP分片的情况下,从LSP分片编号开始依次对每个LSP分片中的链路状态信息进行重组和更新。
优选地,上述装置还包括:第一调整模块,用于在确定查找到的LSP分片中的剩余空间的长度小于待插入的ITEM的长度并且IS中的全部LSP分片均已被使用的情况下,重新对预留空间的长度进行调整。
优选地,上述装置还包括:第二查找模块,用于查找待删除的ITEM所在的LSP分片;判断模块,用于判断在查找到的LSP分片中除待删除的ITEM之外是否还存在其他的ITEM;第三重组更新模块,用于在判断模块输出为是时,对查找到的LSP分片中的链路状态信息进行重组和更新;第二调整模块,用于在判断模块输出为否时,重新对预留空间的长度进行调整。
通过本发明实施例,采用配置预留空间的长度,其中,预留空间的长度小于单个LSP分片的默认最大长度;按照预留空间的长度在依次生成的每个LSP分片中设置预留空间,即在依次生成的每个LSP分片中分别设置预留空间,不再采用相关技术中的在将当前的LSP分片中填满链路状态信息之后,再继续生成下一个LSP分片,继续填充链路状态信息,而是在每个LSP分片中的预留空间之外的空间填充链路状态信息,由此解决了相关技术中由于在LSP生成时会出现大量LSP频繁进行重组和更新增加了网络上LSP洪泛负载,同时引发网络拓扑中全部中IS路由的频繁震荡的问题,进而能够大幅消除由于网络震荡所引起的不良影响。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的链路状态协议数据包的生成方法的流程图;
图2是根据本发明优选实施例的ISIS协议LSP生成抑制振荡的方法的流程图;
图3是根据本发明实施例的链路状态协议数据包的生成装置的结构框图;
图4是根据本发明优选实施例的链路状态协议数据包的生成装置的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
图1是根据本发明实施例的链路状态协议数据包的生成方法的流程图。如图1所示,该方法可以包括以下处理步骤:
步骤S102:配置预留空间的长度,其中,预留空间的长度小于单个LSP分片的默认最大长度;
步骤S104:按照预留空间的长度在依次生成的每个LSP分片中设置预留空间。
相关技术中,由于在LSP生成时会出现大量LSP频繁进行重组和更新增加了网络上LSP洪泛负载,同时引发网络拓扑中全部中IS路由的频繁震荡。采用如图1所示的方法,配置预留空间的长度,其中,预留空间的长度小于单个LSP分片的默认最大长度;按照预留空间的长度在依次生成的每个LSP分片中设置预留空间,即在依次生成的每个LSP分片中分别设置预留空间,不再采用相关技术中的在将当前的LSP分片中填满链路状态信息之后,再继续生成下一个LSP分片,继续填充链路状态信息,而是在每个LSP分片中的预留空间之外的空间填充链路状态信息,由此解决了相关技术中由于在LSP生成时会出现大量LSP频繁进行重组和更新增加了网络上LSP洪泛负载,同时引发网络拓扑中全部中IS路由的频繁震荡的问题,进而能够大幅消除由于网络震荡所引起的不良影响。
优选地,在步骤S104,按照预留空间的长度在依次生成的每个LSP分片中设置预留空间之后,还可以包括以下步骤:
步骤S1:根据待插入的ITEM的类型和/或该ITEM的关键字查找与待插入的ITEM对应的LSP分片编号以及在该LSP分片中待插入的位置信息;
步骤S2:在确定查找到的LSP分片中的剩余空间的长度大于或等于待插入的ITEM的长度的情况下,直接按照LSP分片编号和待插入的位置信息将待插入的ITEM插入至查找到的LSP分片中;
步骤S3:对查找到的LSP分片中的链路状态信息进行重组和更新。
在优选实施例中,可以采用链路状态信息填充LSP规则如下:按照类别对不同类型的链路状态信息进行类别排序,例如:邻居链路状态信息优先于IP可达性信息向LSP中填充;而对于相同类别的链路状态信息,可以按照与链路状态信息条目对应的关键字从小到大排列,关键字小的优先向LSP报文中填充,例如:IP可达性信息按照前缀和掩码进行从小到大排列填充至LSP分片中。
在ISIS路由协议中可以只限定产生LSP的最大长度,由于实际填充在LSP中不同类型的链路状态信息的复杂性和多样性,无法要求一个LSP分片长度必须填充至最大长度才能使用新分片的LSP。因此,针对链路状态数据信息插入这种情况,可以在一定范围内抑制由于新的ITEM插入一个链路状态类型的TLV中,而导致插入这个编号LSP分片的后续编号LSP分片的重组和更新。由此可以为每个LSP分片预留预设长度的空间,当新的ITEM插入一个链路状态类型的TLV中时,可以按照上述链路状态信息填充LSP规则的有序性查找其所要插入的LSP分片以及待插入的位置信息,直接在当前LSP分片进行插入,由于该分片还存在预留空间能够容纳上述新插入的ITEM,故而不会导致任何其他LSP分片的重组与更新,而只需要更新上述ITEM所插入的LSP编号分片即可。
优选地,在步骤S104,按照预留空间的长度在依次生成的每个LSP分片中设置预留空间之后,还可以包括以下操作:
步骤S4:在确定查找到的LSP分片中的剩余空间的长度小于待插入的ITEM的长度并且当前使用的IS中还存在尚未使用的LSP分片的情况下,从LSP分片编号开始依次对每个LSP分片中的链路状态信息进行重组和更新。
在优选实施例中,如果待插入的LSP分片无法容纳新增的ITEM,而当前的IS尚存在没有使用的LSP分片,即在当前全部生成的LSP分片中,最大的LSP分片编号没有达到最大允许编号255,那么可以从当前编号的LSP分片开始,重组和更新其后续编号的LSP分片。
优选地,在步骤S104,按照预留空间的长度在依次生成的每个LSP分片中设置预留空间之后,还可以包括以下步骤:
步骤S5:在确定查找到的LSP分片中的剩余空间的长度小于待插入的ITEM的长度并且IS中的全部LSP分片均已被使用的情况下,重新对预留空间的长度进行调整。
在优选实施例中,如果当前IS已经使用了全部的LSP分片,即在当前全部生成的LSP分片中,最大的LSP分片编号已经达到了最大允许编号255,此时,需要对每片LSP的预留空间进行重置。
优选地,在步骤S104,按照预留空间的长度在依次生成的每个LSP分片中设置预留空间之后,还可以包括以下操作:
步骤S6:查找待删除的ITEM所在的LSP分片;
步骤S7:判断在查找到的LSP分片中除待删除的ITEM之外是否还存在其他的ITEM;
步骤S8:如果是,则对查找到的LSP分片中的链路状态信息进行重组和更新;
步骤S9:如果否,则重新对预留空间的长度进行调整。
在优选实施例中,针对从LSP中删除ITEM这种情况;可以在一个编号的LSP分片中删除ITEM,而在该LSP中仍然存在其他的ITEM时,则只会对该编号LSP分片进行更新,而无需重组和更新任何其他编号的LSP分片。如果在该LSP中的全部ITEM均被清空时,则需要对每个LSP分片中的预留空间进行重置。
在优选实施过程中,可以按照以下公式重新对预留空间的长度进行调整:
其中,Lr为预留空间的长度,Lmax为默认最大长度,表示编号为n的LSP分片当前的实际长度,0≤n≤256,0<N<100。
在优选实施例中,可以针对每个LSP分片中剩余空间的长度各异的情况,分别对每个LSP分片中的剩余空间进行均衡分配,即对预留空间进行重置。将LSP预留空间设置为平均剩余可用空间的75%(即N的取值为75%)。如果修改后的LSP预留空间小于25个字节,即将LSP预留空间设置为0,此时LSP空间达到饱和,在这种极限状态下,IS将丧失添加新的链路状态信息时的LSP生成预留空间抑制震荡功能;如果修改后的LSP预留空间大于或者等于LSP的初始预留空间,即将LSP预留空间设置为LSP的初始预留空间,此时,IS将添加新的链路状态信息时的LSP生成预留空间抑制震荡功能的性能达到最大。
下面将结合图2所示的优选实施方式对上述优选实施过程做进一步的描述。
图2是根据本发明优选实施例的ISIS协议LSP生成抑制振荡的方法的流程图。如图2所示,该流程可以包括以下处理步骤:
步骤S202:LSP生成功能启动。在初始状态下,ISIS协议开始启动。在该优选实施例中,可以将LSP的预留空间设置为LSP最大长度的25%,而默认LSP的最大长度为1492,因此LSP的初始预留空间为1492×25%=373,LSP的实际最大长度=LSP的默认最大长度―LSP的初始预留空间。在默认情况下,LSP的实际最大长度即为1492×75%=1119。转到步骤S210,从0编号LSP分片开始重组和更新全部LSP分片;在ISIS协议运行后,如果向LSP中新增一个ITEM,则转到步骤S204;在ISIS协议运行后,如果需要从LSP中删除一个ITEM,则转到步骤S206。
步骤S204:向LSP中插入新的ITEM。按照上述链路状态信息填充LSP规则,插入一个ITEM(例如:IP可达性信息),按照上述链路状态信息填充LSP规则的有序性,将其定位至应当插入的LSP分片及其在该LSP分片中的位置。
如果待插入的LSP分片可以容纳新增的ITEM,包括:该LSP没有填充至实际最大长度,或者,LSP填充已经达到或超过实际最大长度但尚有LSP预留空间这两种情况下,可以直接插入,并重组和更新该LSP分片即可,而不需要对其他任何LSP分片进行重组和更新。
如果待插入的LSP分片无法容纳新增的ITEM,而当前的IS尚存在没有使用的LSP分片,即在当前全部生成的LSP分片中,最大的LSP分片编号没有达到最大允许编号255,那么可以从本编号的LSP分片开始,重组和更新其后续编号的LSP分片,即转到步骤S210。
如果当前IS已经使用了全部的LSP分片,即在当前全部生成的LSP分片中,最大的LSP分片编号已经达到了最大允许编号255,则转到步骤S208。
步骤S206:从LSP中删除已经存在的ITEM。即从一个编号的LSP分片中删除ITEM。
如果在删除上述ITEM后,该LSP分片中仍然存在其他的ITEM时,则只会更新本编号LSP分片,而不会重组和更新任何其他编号的LSP分片。
如果在删除上述ITEM后,该LSP分片中并不存在其他的ITEM时,则继续执行步骤S208。
步骤S208:LSP预留空间重置,即采用如下公式重新设置LSP预留空间:
其中,Lr为LSP预留空间,Lmax表示LSP的默认最大长度,表示n编号LSP分片当前LSP的实际长度。
将LSP预留空间设置为平均剩余可用空间的75%。如果修改后的LSP预留空间小于25个字节,即将LSP预留空间设置为0,此时LSP空间达到饱和,在这种极限状态下,IS将丧失添加新的链路状态信息时的LSP生成预留空间抑制震荡功能;如果修改后的LSP预留空间大于或者等于LSP的初始预留空间(LSP的初始预留空间为1492×25%=373),即将LSP预留空间设置为LSP的初始预留空间,此时,IS将添加新的链路状态信息时的LSP生成预留空间抑制震荡功能的性能达到最大。继续执行步骤S210,从0编号LSP分片开始重组和更新全部LSP分片。
步骤S210:重组和更新LSP分片。从要求编号的分片开始重组和更新LSP分片,依据链路状态信息填充LSP规则,依次将链路状态数据信息向LSP中进行填充,将一个编号的分片填写到实际LSP总长度后,申请下一个分片,编号递增1继续填充,直至将需要通告的链路状态数据库填写完毕为止。如果填充至编号为255的LSP分片时,填写长度超过当前LSP的实际最大长度,还需要插入新的链路状态数据信息时,针对这些还需要插入ITEM,则转到步骤S208。
图3是根据本发明实施例的链路状态协议数据包的生成装置的结构框图。如图3所示,该链路状态协议数据包的生成装置可以包括:配置模块100,用于配置预留空间的长度,其中,预留空间的长度小于单个链路状态协议数据包LSP分片的默认最大长度;设置模块102,用于按照预留空间的长度在依次生成的每个LSP分片中设置预留空间。
采用如图3所示的装置,解决了相关技术中由于在LSP生成时会出现大量LSP频繁进行重组和更新增加了网络上LSP洪泛负载,同时引发网络拓扑中全部中IS路由的频繁震荡的问题,进而能够大幅消除由于网络震荡所引起的不良影响。
优选地,如图4所示,上述装置还可以包括:第一查找模块104,用于根据待插入的链路状态信息条目ITEM的类型和/或该ITEM的关键字查找与待插入的ITEM对应的LSP分片编号以及在该LSP分片中待插入的位置信息;插入模块106,用于在确定查找到的LSP分片中的剩余空间的长度大于或等于待插入的ITEM的长度的情况下,直接按照LSP分片编号和待插入的位置信息将待插入的ITEM插入至查找到的LSP分片中;第一重组更新模块108,用于对查找到的LSP分片中的链路状态信息进行重组和更新。
优选地,如图4所示,上述装置还可以包括:第二重组更新模块110,用于在确定查找到的LSP分片中的剩余空间的长度小于待插入的ITEM的长度并且当前使用的中间系统IS中还存在尚未使用的LSP分片的情况下,从LSP分片编号开始依次对每个LSP分片中的链路状态信息进行重组和更新。
优选地,如图4所示,上述装置还可以包括:第一调整模块112,用于在确定查找到的LSP分片中的剩余空间的长度小于待插入的ITEM的长度并且IS中的全部LSP分片均已被使用的情况下,重新对预留空间的长度进行调整。
优选地,如图4所示,上述装置还可以包括:第二查找模块114,用于查找待删除的ITEM所在的LSP分片;判断模块116,用于判断在查找到的LSP分片中除待删除的ITEM之外是否还存在其他的ITEM;第三重组更新模块118,用于在判断模块输出为是时,对查找到的LSP分片中的链路状态信息进行重组和更新;第二调整模块120,用于在判断模块输出为否时,重新对预留空间的长度进行调整。
从以上的描述中,可以看出,上述实施例实现了如下技术效果(需要说明的是这些效果是某些优选实施例可以达到的效果):本发明所提供的技术方案适用于各种支持ISIS的设备,包括:路由器和交换机。采用ISIS协议向LSP分片中增加和/或删除ITEM,从而有效地控制了LSP分片重组和更新的范围,不会引起大量LSP分片发生重组和更新,并且在大多数情况下只会更新其直接影响到的一个LSP分片,进而在ITEM频繁地增加和/或删除时,极大地抑制了对大量LSP分片进行重组和更新的情况发生。从LSP报文生成的具体情况着手,实现了伴随ITEM数量的多少,动态地调整LSP的生成抑制震荡能力,最大限度地发挥其抑制震荡的性能。同时,在ITEM的数量较少的情况下,尽可能减少生成LSP报文的数量。本发明实施例所提供的技术方案有效地控制了LSP分片发生重组和更新的范围,因此,极大地节省了ISIS处理LSP分片重组和更新的资源,提高了处理效率,节约了CPU资源。由于本发明实施例所提供的技术方案有效地控制了LSP分片发生重组和更新的范围,减小了ISIS协议发送更新LSP的数量和网络洪泛LSP的负载。使用本发明实施例所提供的技术方案生成的LSP数据报文,其ITEM可以按照类型优先级和同类型关键字有序排放的填充规则,极大地减小了LSP接收的计算处理压力,提高了LSP接收的计算效率。同时,也极大地减少了由于链路状态协议数据信息在不同LSP分片中迁移所导致的拓扑和路由等信息计算的震荡。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (11)
1.一种链路状态协议数据包的生成方法,其特征在于,包括:
配置预留空间的长度,其中,所述预留空间的长度小于单个链路状态协议数据包LSP分片的默认最大长度;
按照所述预留空间的长度在依次生成的每个LSP分片中设置所述预留空间。
2.根据权利要求1所述的方法,其特征在于,在按照所述预留空间的长度在依次生成的每个LSP分片中设置所述预留空间之后,还包括:
根据待插入的链路状态信息条目ITEM的类型和/或该ITEM的关键字查找与所述待插入的ITEM对应的LSP分片编号以及在该LSP分片中待插入的位置信息;
在确定查找到的LSP分片中的剩余空间的长度大于或等于所述待插入的ITEM的长度的情况下,直接按照所述LSP分片编号和所述待插入的位置信息将所述待插入的ITEM插入至所述查找到的LSP分片中;
对所述查找到的LSP分片中的链路状态信息进行重组和更新。
3.根据权利要求2所述的方法,其特征在于,在按照所述预留空间的长度在依次生成的每个LSP分片中设置所述预留空间之后,还包括:
在确定查找到的LSP分片中的剩余空间的长度小于所述待插入的ITEM的长度并且当前使用的中间系统IS中还存在尚未使用的LSP分片的情况下,从所述LSP分片编号开始依次对每个LSP分片中的链路状态信息进行重组和更新。
4.根据权利要求3所述的方法,其特征在于,在按照所述预留空间的长度在依次生成的每个LSP分片中设置所述预留空间之后,还包括:
在确定查找到的LSP分片中的剩余空间的长度小于所述待插入的ITEM的长度并且所述IS中的全部LSP分片均已被使用的情况下,重新对所述预留空间的长度进行调整。
5.根据权利要求1所述的方法,其特征在于,在按照所述预留空间的长度在依次生成的每个LSP分片中设置所述预留空间之后,还包括:
查找待删除的ITEM所在的LSP分片;
判断在查找到的LSP分片中除所述待删除的ITEM之外是否还存在其他的ITEM;
如果是,则对所述查找到的LSP分片中的链路状态信息进行重组和更新;
如果否,则重新对所述预留空间的长度进行调整。
6.根据权利要求4或5所述的方法,其特征在于,按照以下公式重新对所述预留空间的长度进行调整:
其中,Lr为所述预留空间的长度,Lmax为所述默认最大长度,表示编号为n的LSP分片当前的实际长度,0≤n≤256,0<N<100。
7.一种链路状态协议数据包的生成装置,其特征在于,包括:
配置模块,用于配置预留空间的长度,其中,所述预留空间的长度小于单个链路状态协议数据包LSP分片的默认最大长度;
设置模块,用于按照所述预留空间的长度在依次生成的每个LSP分片中设置所述预留空间。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第一查找模块,用于根据待插入的链路状态信息条目ITEM的类型和/或该ITEM的关键字查找与所述待插入的ITEM对应的LSP分片编号以及在该LSP分片中待插入的位置信息;
插入模块,用于在确定查找到的LSP分片中的剩余空间的长度大于或等于所述待插入的ITEM的长度的情况下,直接按照所述LSP分片编号和所述待插入的位置信息将所述待插入的ITEM插入至所述查找到的LSP分片中;
第一重组更新模块,用于对所述查找到的LSP分片中的链路状态信息进行重组和更新。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第二重组更新模块,用于在确定查找到的LSP分片中的剩余空间的长度小于所述待插入的ITEM的长度并且当前使用的中间系统IS中还存在尚未使用的LSP分片的情况下,从所述LSP分片编号开始依次对每个LSP分片中的链路状态信息进行重组和更新。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
第一调整模块,用于在确定查找到的LSP分片中的剩余空间的长度小于所述待插入的ITEM的长度并且所述IS中的全部LSP分片均已被使用的情况下,重新对所述预留空间的长度进行调整。
11.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第二查找模块,用于查找待删除的ITEM所在的LSP分片;
判断模块,用于判断在查找到的LSP分片中除所述待删除的ITEM之外是否还存在其他的ITEM;
第三重组更新模块,用于在所述判断模块输出为是时,对所述查找到的LSP分片中的链路状态信息进行重组和更新;
第二调整模块,用于在所述判断模块输出为否时,重新对所述预留空间的长度进行调整。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410379451.0A CN104579976B (zh) | 2013-10-16 | 2014-08-04 | 链路状态协议数据包的生成方法及装置 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013104862845 | 2013-10-16 | ||
CN201310486284 | 2013-10-16 | ||
CN201410379451.0A CN104579976B (zh) | 2013-10-16 | 2014-08-04 | 链路状态协议数据包的生成方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104579976A true CN104579976A (zh) | 2015-04-29 |
CN104579976B CN104579976B (zh) | 2019-07-23 |
Family
ID=51932946
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410379451.0A Active CN104579976B (zh) | 2013-10-16 | 2014-08-04 | 链路状态协议数据包的生成方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10097672B2 (zh) |
EP (1) | EP3059913B1 (zh) |
CN (1) | CN104579976B (zh) |
WO (1) | WO2014187398A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105553856A (zh) * | 2015-12-15 | 2016-05-04 | 瑞斯康达科技发展股份有限公司 | 一种实现链路状态数据包更新的方法及装置 |
CN109347737A (zh) * | 2018-10-18 | 2019-02-15 | 迈普通信技术股份有限公司 | Lsp发送方法、装置及网络系统 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108206823B (zh) * | 2016-12-20 | 2020-06-02 | 华为技术有限公司 | 一种处理报文的方法、系统及网络设备 |
CN109309616B (zh) * | 2017-07-27 | 2022-03-01 | 中兴通讯股份有限公司 | 基于isis协议的通告方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070286091A1 (en) * | 2006-06-08 | 2007-12-13 | Christian Hopps | Technique for efficiently avoiding transient routing disturbances in link state routing protocols with link state packet fragmentation |
CN101483610A (zh) * | 2009-02-26 | 2009-07-15 | 迈普(四川)通信技术有限公司 | 链路状态路由协议的路由更新方法 |
WO2013011469A1 (en) * | 2011-07-21 | 2013-01-24 | Telefonaktiebolaget L M Ericsson (Publ) | Methods and network elements operable to specify and determine complete sets of link state messages for link state routing protocols |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8565766B2 (en) | 2007-02-05 | 2013-10-22 | Wefi Inc. | Dynamic network connection system and method |
ES2344758T3 (es) * | 2006-10-27 | 2010-09-06 | Telefonaktiebolaget Lm Ericsson (Publ) | Optimizacion de indicador de longitud. |
US20080159150A1 (en) * | 2006-12-28 | 2008-07-03 | Furquan Ahmed Ansari | Method and Apparatus for Preventing IP Datagram Fragmentation and Reassembly |
US20090086729A1 (en) * | 2007-09-28 | 2009-04-02 | Parthasarathy Sarangam | User datagram protocol (UDP) transmit acceleration and pacing |
KR100933238B1 (ko) | 2007-10-29 | 2009-12-22 | 포항공과대학교 산학협력단 | 단말 기반의 네트워크 정보 업데이트 장치 및 방법 |
NZ589061A (en) | 2008-07-02 | 2012-10-26 | Ericsson Telefon Ab L M | Automatic configuration of inter-domain access technology neighbor relations |
CN101350789B (zh) * | 2008-09-17 | 2010-12-08 | 杭州华三通信技术有限公司 | 清除残留lsp分片的方法及装置 |
CN101431471A (zh) | 2008-12-17 | 2009-05-13 | 华为技术有限公司 | 一种lsp报文传输的方法、设备及系统 |
CN101932006A (zh) * | 2009-06-19 | 2010-12-29 | 中兴通讯股份有限公司 | 数据包发送、接收、传输方法及装置 |
CN101730067B (zh) | 2009-06-25 | 2012-06-06 | 中兴通讯股份有限公司 | 控制用户设备上报网络发现的方法和装置 |
CN101699800B (zh) | 2009-11-04 | 2011-11-16 | 杭州华三通信技术有限公司 | 一种邻居信息存储方法和设备 |
US20120327954A1 (en) * | 2011-06-24 | 2012-12-27 | Cisco Technology, Inc. | Packet Meta-Tagging Using Excess Payload |
WO2013134669A1 (en) | 2012-03-09 | 2013-09-12 | Interdigital Patent Holdings, Inc. | Hotspot evolution support and discovery through non-3gpp access networks |
EP2928129B1 (en) * | 2012-12-18 | 2018-05-09 | Huawei Technologies Co., Ltd. | Method and network devices for determining an administrative domain in a virtual cluster |
CN103152261B (zh) | 2013-02-08 | 2016-06-01 | 杭州华三通信技术有限公司 | 一种链路状态协议数据单元分片报文生成发布方法和设备 |
-
2014
- 2014-06-06 EP EP14800318.9A patent/EP3059913B1/en active Active
- 2014-06-06 WO PCT/CN2014/079413 patent/WO2014187398A1/zh active Application Filing
- 2014-06-06 US US15/030,067 patent/US10097672B2/en active Active
- 2014-08-04 CN CN201410379451.0A patent/CN104579976B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070286091A1 (en) * | 2006-06-08 | 2007-12-13 | Christian Hopps | Technique for efficiently avoiding transient routing disturbances in link state routing protocols with link state packet fragmentation |
CN101483610A (zh) * | 2009-02-26 | 2009-07-15 | 迈普(四川)通信技术有限公司 | 链路状态路由协议的路由更新方法 |
WO2013011469A1 (en) * | 2011-07-21 | 2013-01-24 | Telefonaktiebolaget L M Ericsson (Publ) | Methods and network elements operable to specify and determine complete sets of link state messages for link state routing protocols |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105553856A (zh) * | 2015-12-15 | 2016-05-04 | 瑞斯康达科技发展股份有限公司 | 一种实现链路状态数据包更新的方法及装置 |
CN105553856B (zh) * | 2015-12-15 | 2018-09-11 | 瑞斯康达科技发展股份有限公司 | 一种实现链路状态数据包更新的方法及装置 |
CN109347737A (zh) * | 2018-10-18 | 2019-02-15 | 迈普通信技术股份有限公司 | Lsp发送方法、装置及网络系统 |
CN109347737B (zh) * | 2018-10-18 | 2021-12-17 | 迈普通信技术股份有限公司 | Lsp发送方法、装置及网络系统 |
Also Published As
Publication number | Publication date |
---|---|
US20160261721A1 (en) | 2016-09-08 |
WO2014187398A1 (zh) | 2014-11-27 |
US10097672B2 (en) | 2018-10-09 |
EP3059913A4 (en) | 2016-11-16 |
CN104579976B (zh) | 2019-07-23 |
EP3059913B1 (en) | 2018-12-26 |
EP3059913A1 (en) | 2016-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2548341B1 (en) | Alternate down paths for directed acyclic graph (dag) routing | |
US9130863B2 (en) | Managing host routes for local computer networks with a plurality of field area routers | |
US9008092B2 (en) | Route prefix aggregation using reachable and non-reachable addresses in a computer network | |
CN101547139B (zh) | 网络拓扑变化的通告方法及装置 | |
CN104579976A (zh) | 链路状态协议数据包的生成方法及装置 | |
CN105323163A (zh) | 基于isis的路由计算方法及装置 | |
CN102594657B (zh) | 一种路由迭代方法及路由交换设备 | |
Mai et al. | CC-ADOV: An effective multiple paths congestion control AODV | |
EP3886384A1 (en) | Method for updating route in network, network device, and system | |
CN107426097A (zh) | 一种基于增量最短路径优先的域内路由保护方法 | |
CN103179038B (zh) | 一种使用as号的互联网路由方法及网络转发设备 | |
CN105282041A (zh) | 基于isis的洪泛方法及装置 | |
CN102845033B (zh) | 用于在分组转发装置中针对每个模块在因特网协议切换模式之间进行自动选择的方法、系统以及计算机可读介质 | |
US10200276B2 (en) | Method, apparatus and system for controlling routing information advertising | |
CN103001865B (zh) | 一种lsp分片报文中发布信息的方法和设备 | |
EP3166263B1 (en) | Routing calculation method and device for trill isis | |
CN105451291A (zh) | 一种aodv路由方法、节点设备及系统 | |
CN105553856A (zh) | 一种实现链路状态数据包更新的方法及装置 | |
CN102316029B (zh) | 一种快速重路由方法及路由设备 | |
CN106411729B (zh) | 一种实现链路状态通告处理的方法及装置 | |
CN111464441A (zh) | 一种通信方法及装置 | |
CN108965122A (zh) | 路由选路方法、设备及计算机可读存储介质 | |
CN102710499B (zh) | 多发布源外部路由备下一跳选择方法及其设备 | |
Walkowiak | Anycast communication—A new approach to survivability of connection-oriented networks | |
CN103701696A (zh) | 一种is-is协议中支持转发地址的方法及其装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |