路由优化方法、装置、电子设备及存储介质与流程

文档序号:29091127发布日期:2022-03-02 02:50阅读:62来源:国知局
1.本技术涉及通信网络
技术领域
:,具体而言,涉及一种路由优化方法、装置、电子设备及存储介质。
背景技术
::2.当前越来越多的网络设备接入到网络中,在网络设备的基础上,路由转发作为基础转发功能。路由器首先路由表中查找,并对分组的发送进行判断,将分组发送到下一个站点(路由器或主机)的端口中上。3.目前,随着网络规模越来越大,网络设备中进行路由转发的路由条目的数量也越来越庞大。其中存在大量覆盖关系和匹配条件过于宽泛的路由,由于网络设备的路由条目数量庞大,难以管理,导致网络设备的运维成本较高,难度较大。技术实现要素:4.有鉴于此,本技术实施例的目的在于提供一种路由优化方法、装置、电子设备及存储介质,以改善现有技术中存在的网络设备的运维成本较高的问题。5.为了解决上述问题,第一方面,本技术提供了一种路由优化方法,包括:6.对目标设备中的多条路由条目进行排序,得到第一路由表;7.对所述第一路由表中具有覆盖关系的路由条目进行优化,得到第二路由表;8.根据获取的所述目标设备中的验证集,对所述第二路由表中每条路由条目进行匹配的目标范围进行验证,得到目标路由条目,其中,所述验证集为流经所述目标设备的数据流集合。9.在上述实现方式中,由于网络设备中存在大量覆盖关系和匹配范围过大的路由,因此可以对需要进行优化的目标设备中存在的多条路由条目进行排序,集合为第一路由表,通过对第一路由表中具有覆盖关系的路由条目进行优化,优化掉具有覆盖关系的多条路由条目,得到对应的第二路由表,通过流经目标设备的数据流组成的验证集对第二路由表中每条路由条目进行匹配的目标范围进行验证,对匹配范围过大的路由条目进行验证和调整,得到目标路由条目,实现对目标设备中多条无效路由的优化,降低无用路由条目带来的不利影响,减少网络设备中路由条目的数量,从而降低网络设备的运维成本。10.可选地,所述根据获取的所述目标设备中的验证集,对所述第二路由表中每条路由条目进行匹配的目标范围进行验证,得到目标路由条目,包括:11.获取所述目标设备中的验证集;12.基于所述验证集对所述第二路由表中的第一路由条目对应的目标网络地址的目标范围进行验证,得到所述验证集经过所述目标范围形成的验证值,其中,所述第一路由条目为所述第二路由表中的任意一条路由条目;13.若所述验证值大于标准验证值,则对所述目标范围进行调整,得到调整后的目标路由条目;14.若所述验证值小于所述标准验证值,则以所述第一路由条目作为所述目标路由条目。15.在上述实现方式中,在对第二路由表中存在的多条匹配范围过大的路由条目进行优化时,可以基于获取的验证集对第二路由表中的任意一条路由条目第一路由条目对应的一个或多个目标网络地址的地址范围进行验证,通过验证集经过目标范围形成的验证值与标准验证值之间的大小关系判断是否对目标范围进行调整,以对第一路由条目的匹配范围是否过大进行判断,对匹配范围过大的第一路由条目进行调整,对匹配范围正常的第一路由条目进行保留,以获取验证并调整后的最终的目标路由条目,提高了目标路由条目的目标范围的有效性,提高了目标路由条目的获取效率和准确性。16.可选地,所述对所述目标范围进行调整,得到调整后的目标路由条目,包括:17.对所述第一路由条目的所述目标范围的大小进行调整,得到调整后的调整范围;18.基于所述验证集对所述第一路由条目的所述调整范围进行验证,得到所述验证集经过所述调整范围形成的调整验证值;19.在所述调整验证值小于所述标准验证值时,以所述调整范围对应的所述第一路由条目作为目标路由条目。20.在上述实现方式中,在计算得到的验证值大于标准验证值时,则表示第一路由条目对应的目标网络地址的目标范围过大,需要对目标范围的大小进行调整,在调整得到的调整范围的基础上继续根据验证集进行验证和与标准验证值的比较,直到获取的当前的调整验证值小于标准验证值,则调整完毕,该调整验证值对应的调整范围不会过大,不会导致第一路由条目成为匹配范围过大的路由条目,当前调整范围对应的第一路由条目作为目标路由条目。通过对不满足匹配范围条件的目标范围重复进行调整和验证,能够得到满足匹配范围条件的范围,以对匹配范围过大的路由条目进行优化,提高了目标路由条目中匹配范围的有效性。21.可选地,所述基于所述验证集对所述第二路由表中的第一路由条目对应的目标网络地址的目标范围进行验证,得到所述验证集经过所述目标范围形成的验证值,包括:22.获取所述验证集经过所述目标范围中形成的计数值;23.根据所述计数值与所述目标网络地址的标准值计算,得到所述第一路由条目对应的验证值。24.在上述实现方式中,在验证集流经第一路由条目时,通过对验证集流经目标范围时形成的值进行计数,可以获取验证集中的数据包匹配到路由条目时的计数值,通过计数值与目标网络地址的标准值,能够计算出第一路由条目对应的验证值,以对验证集在第一路由条目对应的目标范围中的匹配情况进行反馈,提高了验证值的有效性和实时性。25.可选地,所述对所述第一路由表中具有覆盖关系的路由条目进行优化,得到第二路由表,包括:26.a、将所述第一路由表中的第二路由条目与第三路由条目进行对比,得到覆盖关系信息,其中,所述第二路由条目为所述第一路由表中的任意一条路由条目,所述第三路由条目为所述第一路由表中除了所述第二路由条目的任意一条路由条目;27.b、基于所述覆盖关系信息判断是否对所述第二路由条目或所述第三路由条目进行保留或删除;28.重复执行步骤a和b,直到所述第一路由表中的所有路由条目被保留或删除,则对所述第一路由表优化完毕,由保留的多条路由条目组成第二路由表。29.在上述实现方式中,在对第一路由表中存在覆盖关系的多条路由条目进行优化时,选取第一路由表中的任意一条第二路由条目,将第二路由条目与第一路由表中的任意一条其他路由条目第三路由条目进行对比,覆盖关系信息能够表示第二路由条目和第三路由条目之间是否存在覆盖关系。通过覆盖关系信息判断第二路由条目或第三路由条目是否保留或删除,将第一路由表中的每一条路由条目与其他路由条目依次对比完毕,第一路由表中的所有路由条目被保留或删除,则完成对第一路由表的优化,由保留下来的多条不具有覆盖关系的路由条目组成第二路由表。有效地提高了对存在覆盖关系的路由条目的优化效率和准确性,减少了存在覆盖关系的路由条目的数量的带来的内存负荷,提高了第二路由表的有效性。30.可选地,所述覆盖关系信息包括优先级结果和匹配关系;所述将所述第二路由表中的第二路由条目与第三路由条目进行对比,得到覆盖关系信息,包括:31.对所述第二路由条目的第一优先级与所述第三路由条目的第二优先级进行对比,得到所述优先级结果;32.获取所述第二路由条目与所述第三路由条目的所述匹配关系。33.在上述实现方式中,在对第二路由条目和第三路由条目之间是否存在覆盖关系进行判断时,可以对第二路由条目和第三路由条目之间的优先级结果和匹配关系进行获取,优先级关系为第二路由条目和第三路由条目的优先级的比较结果,匹配关系为第二路由条目和第三路由条目之间是否为对方子集的关系,由优先级结果和匹配关系得到最终的覆盖关系信息,提高覆盖关系信息的有效性和多面性,能够从优先级和子集两方面对第二路由条目和第三路由条目之间是否存在覆盖关系进行判断。34.可选地,所述基于所述覆盖关系信息判断是否对所述第二路由条目或所述第三路由条目进行保留或删除,包括:35.在所述优先级结果为所述第一优先级低于所述第二优先级,且所述匹配关系为所述第二路由条目属于所述第三路由条目的子集时,则对所述第二路由条目进行删除,对所述第三路由条目进行保留;36.在所述优先级结果为所述第二优先级低于所述第一优先级,且所述匹配关系所述第三路由条目属于所述第二路由条目的子集时,则对所述第三路由条目进行删除,对所述第二路由条目进行保留;37.在所述匹配关系为所述第二路由条目不属于所述第三路由条目的子集,或所述匹配关系为所述第二路由条目不属于所述第三路由条目的子集时,则对所述第二路由条目和所述第三路由条目进行保留。38.在上述实现方式中,在根据覆盖关系信息对第二路由条目或第三路由条目进行保留或删除时,可以综合优先级结果和匹配关系一起进行判断,对第二路由条目和第三路由条目之间是否存在覆盖关系进行判断。在存在覆盖关系时,对优先级低且属于对方子集的路由条目进行删除,对优先级高且以对方作为子集的路由条目进行保留,在不存在覆盖关系时,对两个路由条目都进行保留。通过删除对存在覆盖关系中的多条无效路由条目进行优化,减少第一路由表中无效路由条目的数量,提高第一路由表的有效性。39.可选地,所述对目标设备中的多条路由条目进行排序,得到第一路由表,包括:40.获取目标设备中的多条路由条目;41.根据优先级的匹配顺序对多条所述路由条目进行排序,得到第一路由表。42.在上述实现方式中,通过目标设备中多条路由条目的优先级的匹配顺序对多条路由条目进行排序,能够以优先级为排序基础,得到对应的第一路由表,便于后续路由条目之间优先级对比的对比效率和准确性。43.第二方面,本技术还提供了一种路由优化装置,所述装置包括:44.排序模块,用于对目标设备中的多条路由条目进行排序,得到第一路由表;45.优化模块,用于对所述第一路由表中具有覆盖关系的路由条目进行优化,得到第二路由表;46.验证模块,用于根据获取的所述目标设备中的验证集,对所述第二路由表中每条路由条目进行匹配的目标范围进行验证,得到目标路由条目,其中,所述验证集为流经所述目标设备的数据流集合。47.在上述实现方式中,通过排序模块对需要进行优化的目标设备中存在的多条路由条目进行排序,集合为第一路由表;通过优化模块对第一路由表中具有覆盖关系的路由条目进行优化,优化掉覆盖关系的多条路由条目,得到对应的第二路由表;通过验证模块对第二路由表中每条路由条目进行匹配的目标范围进行验证,对匹配范围过大的路由条目进行验证和调整,得到目标路由条目,实现对目标设备中多条无效路由的优化,降低无用路由条目带来的不利影响,减少网络设备中路由条目的数量,从而降低网络设备的运维成本。48.第三方面,本技术实施例还提供了一种电子设备,所述电子设备包括存储器和处理器,所述存储器中存储有程序指令,所述处理器读取并运行所述程序指令时,执行上述路由优化方法中任一实现方式中的步骤。49.第四方面,本技术实施例还提供了一种计算机可读取存储介质,所述可读取存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行上述路由优化方法中任一实现方式中的步骤。50.综上所述,本技术提供了一种路由优化方法、装置、电子设备及存储介质,通过对被覆盖的路由条目进行删除,对匹配范围过大的路由条目进行验证和调整,以对网络设备中存在的具有大量覆盖关系和匹配范围过大的多条路由条目进行优化,降低无用路由条目带来的不利影响,减少网络设备中路由条目的数量,从而降低网络设备的运维成本。附图说明51.为了更清楚地说明本技术实施例的技术方案,下面将对本技术实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。52.图1为本技术实施例提供的一种路由优化方法的流程示意图;53.图2为本技术实施例提供的一种步骤s3的详细流程示意图;54.图3为本技术实施例提供的一种步骤s33的详细流程示意图;55.图4为本技术实施例提供的一种步骤s32的详细流程示意图;56.图5为本技术实施例提供的一种步骤s2的详细流程示意图;57.图6为本技术实施例提供的一种路由优化装置的模块结构示意图。58.图标:400-路由优化装置;410-排序模块;420-优化模块;430-验证模块。具体实施方式59.下面将结合本技术实施例中附图,对本技术实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本技术实施例的一部分实施例,而不是全部的实施例。基于本技术实施例的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术实施例保护的范围。60.目前,由于网络设备中进行路由转发的路由条目的数量也越来越庞大,网络设备中存在大量具有覆盖关系和匹配条件、范围过于宽泛的路由条目,这些路由条目引起了弱路由问题,导致网络设备的路由条目数量庞大,难以对这些弱路由进行管理,在网络设备进行运行和维修时,这些弱路由增加了网络设备的运维成本和难度,还降低了网络设备中路由转发的效率。61.因此,为了解决上述问题,本技术实施例提供了一种路由优化方法,应用于服务器,服务器可以为个人电脑(personalcomputer,pc)、平板电脑、智能手机、个人数字助理(personaldigitalassistant,pda)等具有逻辑计算功能的电子设备,能够对网络设备中存在的多条路由进行优化,降低弱路由带来的不利影响,减小网络设备的运维成本和难度。62.可选地,电子设备中可以包括存储器、存储控制器、处理器、外设接口、输入输出单元等。电子设备的组件和结构可以根据实际情况进行设置。63.上述的存储器、存储控制器、处理器、外设接口、输入输出单元各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。上述的处理器用于执行存储器中存储的可执行模块。64.其中,存储器可以是,但不限于,随机存取存储器(randomaccessmemory,简称ram),只读存储器(readonlymemory,简称rom),可编程只读存储器(programmableread-onlymemory,简称prom),可擦除只读存储器(erasableprogrammableread-onlymemory,简称eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,简称eeprom)等。其中,存储器用于存储程序,处理器在接收到执行指令后,执行所述程序,本技术实施例任一实施例揭示的过程定义的电子设备所执行的方法可以应用于处理器中,或者由处理器实现。65.上述的处理器可能是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(digitalsignalprocessor,简称dsp)、专用集成电路(applicationspecificintegratedcircuit,简称asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。66.上述的外设接口将各种输入/输出装置耦合至处理器以及存储器。在一些实施例中,外设接口,处理器以及存储控制器可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。67.本实施例中的电子设备可以用于执行本技术实施例提供的各个路由优化方法中的各个步骤。下面通过几个实施例详细描述路由优化方法的实现过程。68.请参阅图1,图1为本技术实施例提供的一种路由优化方法的流程示意图,该方法可以包括以下步骤:69.步骤s1,对目标设备中的多条路由条目进行排序,得到第一路由表。70.其中,路由条目即为路由转发中的路由命令,指分组从源到目的地时,决定端到端路径的网络范围的进程。目标设备为需要进行路由优化的任意一个网络设备,为了便于对目标设备中的多条理由条目进行优化,可以先对路由条目进行排序,以获得表格形式的第一路由表,路由表(routingtable)或称路由择域信息库(rib,routinginformationbase)是一个存储在路由器或者联网计算机中的电子表格(文件)或类数据库。其中存储着指向特定网络地址的路径(在有些情况下,还记录有路径的路由度量值)。路由表中含有网络周边的拓扑信息。路由表建立的主要目标是为了实现路由协议和静态路由选择。在第一路由表的基础上进行优化和验证,能够提高优化和验证的效率。71.值得说明的是,在进行排序时,可以先获取目标设备中的多条路由条目;然后根据优先级的匹配顺序对多条路由条目进行排序,得到第一路由表。72.可选地,可以在获取目标设备中的多条路由条目时,对每一条路由条目的优先级等级进行获取,并对多个优先级等级进行排序,获取优先级的匹配顺序,还可以为用户根据实际情况和当前需求设置的优先级的匹配顺序。示例地,优先级的匹配顺序可以为从优先级最高到优先级最低的匹配顺序,也可以为从优先级最低到优先级最高的匹配顺序,还可以为对优先级进行分段处理后多个段位的匹配顺序等多种不同的顺序。在优先级的顺序基础上对目标设备中的多条路由条目进行排序,可以得到具有对应的匹配顺序的第一路由表,在第一路由表中对多条路由条目进行优化,可以提高优化的有效性和有序性。73.步骤s2,对所述第一路由表中具有覆盖关系的路由条目进行优化,得到第二路由表。74.其中,由于第一路由表中可能存在具有覆盖关系的多条路由条目,因此需要对具有覆盖关系的多条路由条目进行删除,以对第一路由表进行优化,得到多条不具有覆盖关系的路由条目组成的第二路由表。75.通过对第一路由表的优化,提高了对存在覆盖关系的路由条目的优化效率和准确性,减少了存在覆盖关系的路由条目的数量的带来的内存负荷,提高了第二路由表的有效性。76.步骤s3,根据获取的所述目标设备中的验证集,对所述第二路由表中每条路由条目进行匹配的目标范围进行验证,得到目标路由条目。77.其中,所述验证集为流经所述目标设备的数据流集合,由于第二路由表中还可能存在部分匹配条件较宽泛、匹配范围过大的路由条目,这部分路由条目的冗余还会造成目标设备中路由转发的效率较低,因此还需要对第二路由表中匹配条件较宽泛、匹配范围过大的路由条目进行验证和调整,以对第二路由表中的各条路由条目进行匹配时的目标范围进行验证,得到正常匹配条件和范围的目标路由条目,减少太过宽泛的匹配条件和过大的匹配范围对路由条目的匹配带来的不利影响。78.在图1所示的实施例中,通过对目标设备中的多条路由条目中具有覆盖关系和匹配范围过大的路由条目进行优化和验证,得到目标路由条目,实现对目标设备中多条无效路由的优化,降低无用路由条目带来的不利影响,减少网络设备中路由条目的数量,从而降低网络设备的运维成本。79.可选地,请参阅图2,图2为本技术实施例提供的一种步骤s3的详细流程示意图,步骤s3还可以包括步骤s31-s34:80.步骤s31,获取所述目标设备中的验证集。81.其中,可以采用镜像收集的方式获取设定时间段内流经目标设备的数据流,对多个数据量进行集合,得到对应的验证集。82.步骤s32,基于所述验证集对所述第二路由表中的第一路由条目对应的目标网络地址的目标范围进行验证,得到所述验证集经过所述目标范围形成的验证值。83.其中,第一路由条目为第二路由表中的任意一条路由条目,每一条路由条目中都具有与之对应的一个或多个目的ip(internetprotocol,网络互联协议),即为目标网络地址,每个目标网络地址都具有其对应的地址范围,即为目标范围,例如192.168.0.0/24等。目标范围能够表示第一路由条目在匹配时的匹配范围的大小,在验证集流经第二路由表中的第一路由条目时,对目标范围进行验证,能够获取验证集在经过目标范围时形成的验证值,从而对第一路由条目的匹配范围是否过大进行验证。84.步骤s33,若所述验证值大于标准验证值,则对所述目标范围进行调整,得到调整后的目标路由条目。85.其中,标准验证值为判断目标范围是否过大的阈值,可以由用户根据实际情况和自身需求进行设置,例如50%等。将计算得到的验证值与对应的多个目标网络地址对应的标准验证值进行对比,能够对第一路由条目的匹配范围是否过大进行判断,提高对第二路由表中多条路由条目的匹配范围的验证的有效性。在验证值大于标准验证值时,则代表第一路由条目的匹配范围过大,需要对第一路由条目的目标范围进行调整,以调整第一路由条目的匹配范围,得到调整后匹配范围正常的目标路由条目。86.步骤s34,若所述验证值小于所述标准验证值,则以所述第一路由条目作为所述目标路由条目。87.其中,在验证值小于标准验证值时,则代表第一路由条目的匹配范围正常,不需要对第一路由条目的目标范围进行调整,能够直接将第一路由条目作为目标路由条目。88.在图2所示的实施例中,通过验证集经过目标范围形成的验证值与标准验证值之间的大小关系判断是否对目标范围进行调整,能够获取验证并调整后的最终的目标路由条目,提高了目标路由条目的目标范围的有效性,提高了目标路由条目的获取效率和准确性。89.可选地,请参阅图3,图3为本技术实施例提供的一种步骤s33的详细流程示意图,步骤s33还可以包括步骤s331-s333:90.步骤s331,对所述第一路由条目的所述目标范围的大小进行调整,得到调整后的调整范围。91.其中,在第一路由条目的匹配范围过大,需要对第一路由条目的目标范围进行调整时,可以对目标范围的大小进行调整,具体的调整方法为缩小目标范围的大小,以缩小第一路由条目的匹配范围,限制第一路由条目的匹配条件,得到缩小后的调整范围。92.可选地,在对目标范围的大小进行缩小时,缩小的幅度可以基于实际情况和用户需求决定,也可以为预设的定值或等比例缩小,例如每次缩小相同大小的范围等。93.步骤s332,基于所述验证集对所述第一路由条目的所述调整范围进行验证,得到所述验证集经过所述调整范围形成的调整验证值。94.其中,对缩小后的调整范围继续进行验证,得到验证集经过调整范围时形成的调整验证值,以对缩小后的调整范围对应的第一路由条目的匹配范围是否过大进行验证。95.步骤s333,在所述调整验证值小于所述标准验证值时,以所述调整范围对应的所述第一路由条目作为目标路由条目。96.其中,可以循环上述步骤s331-s332,在调整验证值大于标准验证值时,继续对调整范围进行调整,得到对应的多次调整验证值,在多次调整验证值的基础上继续与标准验证值进行对比,直到当前的调整验证值小于标准验证值时,结束循环,调整完毕。当前的调整验证值对应的调整范围不会过大,不会导致第一路由条目成为匹配范围过大的路由条目,因此,以当前的调整范围对应的第一路由条目作为调整后的最终的目标路由条目,以对第二路由表中的多个路由条目的匹配范围进行验证和调整,减少匹配范围过大的路由条目带来的不利影响。97.在图3所示的实施例中,通过对不满足匹配范围条件的目标范围重复进行调整和验证,能够得到满足匹配范围条件的范围,以对匹配范围过大的路由条目进行优化,提高了目标路由条目中匹配范围的有效性。98.可选地,请参阅图4,图4为本技术实施例提供的一种步骤s32的详细流程示意图,步骤s32还可以包括步骤s321-s322:99.步骤s321,获取所述验证集经过所述目标范围中形成的计数值。100.值得说明的是,在进行验证时,可以为第一路由条目对应的一个或多个目标网络地址设置对应的计数器,为了增加验证值的准确性,还可以在验证前对每一个计数器都初始化为0。能够在验证集中的数据流流经第二路由表时,每当数据流中有匹配到第一路由条目的数据包时,在流经对应的目标网络地址的目标范围时,在对应的计数器上进行计数,验证集流过后对计数器为0的一个或多个目标网络地址个数进行统计,得到对应的计数值。101.步骤s322,根据所述计数值与所述目标网络地址的标准值计算,得到所述第一路由条目对应的验证值。102.其中,可以计算计数器中得到的计数值与一个或多个目标网络地址的标准值的比值,得到验证集在流经第一路由条目对应的目标范围时的验证值,标准值可以为第一路由条目对应的全部的目标网络地址的个数值。例如,第一路由条目的匹配条件中的目标网络地址的目标范围为192.168.0.0/24,在验证集的数据流流过目标范围后,有64个目标网络地址的计数器中有计数,则标准值为254,计数值为254-64=190,第一路由条目对应的验证值为190/254=74.8%。103.在图4所示的实施例中,通过计数值与目标网络地址的标准值,能够计算出第一路由条目对应的验证值,以对验证集在第一路由条目对应的目标范围中的匹配情况进行反馈,提高了验证值的有效性和实时性。104.可选地,请参阅图5,图5为本技术实施例提供的一种步骤s2的详细流程示意图,步骤s2还可以包括步骤sa-sb:105.步骤sa,将所述第一路由表中的第二路由条目与第三路由条目进行对比,得到覆盖关系信息。106.其中,第二路由条目为第一路由表中的任意一条路由条目,第三路由条目为第一路由表中除了第二路由条目的任意一条路由条目。在对第一路由表中的多条路由条目进行优化时,可以将第一路由表中的第二路由条目与每条第三路由条目进行依次对比,以得到多个覆盖关系信息,在覆盖关系信息的基础上对第一路由表中的多条路由条目中是否存在覆盖关系进行判断,从而对第一路由表中的多条具有覆盖关系的路由条目进行优化。107.可选地,在对第一路由表中的第二路由条目进行选取时,由于第一路由表可以为根据优先级的匹配顺序进行排序的表,因此可以在第一路由表中,根据优先级的顺序进行选取。例如以第一路由表中的优先级从高到低的顺序选取第二路由条目进行对比,选取的第二路由条目还可以按照优先级顺序与第一路由表中的多个第三路由条目依次进行对比,也可以根据路由条目的编号对第二路由条目和第三路由条目进行选取,例如按照由小到大的顺序进行选取等多种选取顺序。108.值得说明的是,覆盖关系信息中可以包括优先级结果和匹配关系,在获取覆盖关系信息时,可以包括:对第二路由条目的第一优先级与第三路由条目的第二优先级进行对比,得到优先级结果;获取第二路由条目与第三路由条目的匹配关系。109.可选地,优先级关系为第二路由条目和第三路由条目的优先级的比较结果,匹配关系为第二路由条目和第三路由条目之间是否为对方子集的关系。根据优先级结果和匹配关系确定出最终的覆盖关系信息,能够提高覆盖关系信息的有效性和多面性,从而在优先级和子集关系两方面对第二路由条目和第三路由条目之间是否存在覆盖关系进行判断。110.步骤sb,基于所述覆盖关系信息判断是否对所述第二路由条目或所述第三路由条目进行保留或删除。111.其中,在覆盖关系信息为第二路由条目和第三路由条目之间存在覆盖关系时,可以对第二路由条目和第三路由条目进行对应的保留或删除处理,以删除第一路由表中重复或被覆盖的路由条目,减少重复或被覆盖的路由条目造成的内存负荷和重复匹配。112.可选地,在对第二路由条目和第三路由条目进行保留或删除时,可以包括一下几种情况:113.在优先级结果为第一优先级低于第二优先级,且匹配关系为第二路由条目属于第三路由条目的子集时,则对第二路由条目进行删除,对第三路由条目进行保留;其中,由于第二路由条目的优先级较低,且属于第三路由条目的子集,因此第二路由条目和第三路由条目之间具有覆盖关系,第三路由条目能够覆盖第二路由条目,对被覆盖的第二路由条目进行删除,对第三路由条目进行保留。114.在优先级结果为第二优先级低于第一优先级,且匹配关系第三路由条目属于第二路由条目的子集时,则对第三路由条目进行删除,对第二路由条目进行保留;其中,由于第三路由条目的优先级较低,且属于第二路由条目的子集,因此第二路由条目和第三路由条目之间具有覆盖关系,第二路由条目能够覆盖第三路由条目,对被覆盖的第三路由条目进行删除,对第二路由条目进行保留。115.在匹配关系为第二路由条目不属于第三路由条目的子集,或匹配关系为第二路由条目不属于第三路由条目的子集时,则对第二路由条目和第三路由条目进行保留;其中,由于第二路由条目和第三路由条目之间不具有覆盖关系,因此对两条路由条目都进行保留。116.示例地,优先级中还可以包括路由条目的下一跳动作和出接口,第二路由条目和第三路由条目进行对比时,在第二路由条目的优先级高于第三路由条目,第二路由条目和第三路由条目的出接口以及下一跳均一致,第二路由条目中的目的地址为192.168.0.0/16,第三路由条目中的目的地址为192.168.0.0/24,则第三路由条目的目的地址属于第二路由条目的子集,对第三路由条目进行删除,对第二路由条目进行保留。117.在上述几种情况中,在存在覆盖关系时,对优先级低且属于对方子集的路由条目进行删除,对优先级高且以对方作为子集的路由条目进行保留,在不存在覆盖关系时,对两个路由条目都进行保留。通过删除对存在覆盖关系中的多条无效路由条目进行优化,减少第一路由表中无效路由条目的数量,提高第一路由表的有效性。118.值得说明的是,重复执行步骤a和b,直到所述第一路由表中的所有路由条目被保留或删除,则对所述第一路由表优化完毕,由保留的多条路由条目组成第二路由表。119.需要注意的是,通过循环上述步骤a和b以对第一路由表中的多条路由条目都进行优化,在循环的过程中,进行对比的第二路由条目和第三路由条目可以为之前循环中保留的路由条目,以对第一路由表中的所有路由条目之间的覆盖关系进行全面优化。120.在图5所示的实施例中,由保留下来的多条不具有覆盖关系的路由条目组成第二路由表。有效地提高了对存在覆盖关系的路由条目的优化效率和准确性,减少了存在覆盖关系的路由条目的数量的带来的内存负荷,提高了第二路由表的有效性。121.请参阅图6,图6为本技术实施例提供的一种路由优化装置的模块结构示意图,路由优化装置400包括:122.排序模块410,用于对目标设备中的多条路由条目进行排序,得到第一路由表;123.优化模块420,用于对所述第一路由表中具有覆盖关系的路由条目进行优化,得到第二路由表;124.验证模块430,用于根据获取的所述目标设备中的验证集,对所述第二路由表中每条路由条目进行匹配的目标范围进行验证,得到目标路由条目,其中,所述验证集为流经所述目标设备的数据流集合。125.在一可选的实施方式中,验证模块430中还可以包括获取子模块、验证子模块和比较子模块;126.获取子模块,用于获取所述目标设备中的验证集;127.验证子模块,用于基于所述验证集对所述第二路由表中的第一路由条目对应的目标网络地址的目标范围进行验证,得到所述验证集经过所述目标范围形成的验证值,其中,所述第一路由条目为所述第二路由表中的任意一条路由条目;128.比较子模块,用于若所述验证值大于标准验证值,则对所述目标范围进行调整,得到调整后的目标路由条目;若所述验证值小于所述标准验证值,则以所述第一路由条目作为所述目标路由条目。129.在一可选的实施方式中,比较子模块中还可以包括调整单元,用于对所述第一路由条目的所述目标范围的大小进行调整,得到调整后的调整范围;基于所述验证集对所述第一路由条目的所述调整范围进行验证,得到所述验证集经过所述调整范围形成的调整验证值;在所述调整验证值小于所述标准验证值时,以所述调整范围对应的所述第一路由条目作为目标路由条目。130.在一可选的实施方式中,验证子模块中还可以包括计数单元和计算单元;131.计数单元,用于获取所述验证集经过所述目标范围中形成的计数值;132.计算单元,用于根据所述计数值与所述目标网络地址的标准值计算,得到所述第一路由条目对应的验证值。133.在一可选的实施方式中,优化模块420中还可以包括对比子模块、优化子模块和循环子模块;134.对比子模块,用于将所述第一路由表中的第二路由条目与第三路由条目进行对比,得到覆盖关系信息,其中,所述第二路由条目为所述第一路由表中的任意一条路由条目,所述第三路由条目为所述第一路由表中除了所述第二路由条目的任意一条路由条目;135.优化子模块,用于基于所述覆盖关系信息判断是否对所述第二路由条目或所述第三路由条目进行保留或删除;136.循环子模块,用于重复执行对比子模块和优化子模块中的步骤,直到所述第一路由表中的所有路由条目被保留或删除,则对所述第一路由表优化完毕,由保留的多条路由条目组成第二路由表。137.在一可选的实施方式中,所述覆盖关系信息包括优先级结果和匹配关系;对比子模块中还可以包括优先级单元和匹配单元;138.优先级单元,用于对所述第二路由条目的第一优先级与所述第三路由条目的第二优先级进行对比,得到所述优先级结果;139.匹配单元,用于获取所述第二路由条目与所述第三路由条目的所述匹配关系。140.在一可选的实施方式中,优化子模块还用于,在所述优先级结果为所述第一优先级低于所述第二优先级,且所述匹配关系为所述第二路由条目属于所述第三路由条目的子集时,则对所述第二路由条目进行删除,对所述第三路由条目进行保留;141.在一可选的实施方式中,优化子模块还用于,在所述优先级结果为所述第二优先级低于所述第一优先级,且所述匹配关系所述第三路由条目属于所述第二路由条目的子集时,则对所述第三路由条目进行删除,对所述第二路由条目进行保留;142.在一可选的实施方式中,优化子模块还用于,在所述匹配关系为所述第二路由条目不属于所述第三路由条目的子集,或所述匹配关系为所述第二路由条目不属于所述第三路由条目的子集时,则对所述第二路由条目和所述第三路由条目进行保留。143.在一可选的实施方式中,排序模块410还可以包括路由获取子模块和排序子模块;144.路由获取子模块,用于获取目标设备中的多条路由条目;145.排序子模块,用于根据优先级的匹配顺序对多条所述路由条目进行排序,得到第一路由表。146.由于本技术实施例中的路由优化装置400解决问题的原理与前述的路由优化方法的实施例相似,因此本实施例中的装置的实施可以参见上述方法的实施例中的描述,重复之处不再赘述。147.本技术实施例还提供了一种电子设备,该电子设备包括存储器和处理器,所述存储器中存储有程序指令,所述处理器读取并运行所述程序指令时,执行本实施例提供的路由优化方法中任一项所述方法中的步骤。148.应当理解是,该电子设备可以是个人电脑、平板电脑、智能手机、个人数字助理等具有逻辑计算功能的电子设备。149.本技术实施例还提供了一种计算机可读取存储介质,所述可读取存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行本实施例提供的路由优化方法中任一项所述方法中的步骤。150.综上所述,本技术实施例提供了一种路由优化方法、装置、电子设备及存储介质,通过对被覆盖的路由条目进行删除,对匹配范围过大的路由条目进行验证和调整,以对网络设备中存在的具有大量覆盖关系和匹配范围过大的多条路由条目进行优化,降低无用路由条目带来的不利影响,减少网络设备中路由条目的数量,从而降低网络设备的运维成本。151.在本技术所提供的几个实施例中,应该理解到,所揭露的设备,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的框图显示了根据本技术的多个实施例的设备的可能实现的体系架构、功能和操作。在这点上,框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图中的每个方框、以及框图的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。152.另外,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。153.所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。因此本实施例还提供了一种可读取存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行区块数据存储方法中任一项所述方法中的步骤。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。154.以上所述仅为本技术的实施例而已,并不用于限制本技术的保护范围,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。155.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本
技术领域
:的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。156.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1