欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 链路标签分配方法、装置、网络设备及可读存储介质独创技术42469字

链路标签分配方法、装置、网络设备及可读存储介质

2021-02-15 05:26:53

链路标签分配方法、装置、网络设备及可读存储介质

  技术领域

  本申请涉及通信技术领域,具体而言,涉及一种链路标签分配方法、装置、网络设备及可读存储介质。

  背景技术

  在多协议标签交换(Multi-Protocol Label Switching,MPLS)网络中,可以在两个节点之间建立标签交换路径(Label Switch Path,LSP),用于在两个节点之间传送数据报文。MPLS网络由标签交换路由器(Label Switch Router,LSR)和他们之间的链路组成。LSR表示MPLS网络中的一个节点,可以实现根据数据报文中MPLS头部的MPLS标签转发,他们之间的链路负责两个LSR之间传送数据报文。

  在两个LSR之间,可以建立LSP,用于传送数据报文。通过LSP进行报文转发时是依据分段路由(Segment Routing,SR)来实现的,SR是通过内部网关协议(Interior GatewayProtocol,IGP)为网络系统中的各个LSR分配链路标签,并在LSR之间传输的数据包的包头打上标签栈,结合网络控制器按需选择路由,以此实现报文转发。

  在网络出现震荡后,IGP协议需要重新为LSR申请链路标签,而目前IGP协议申请链路标签的方式为动态申请,即IGP协议每次为LSR申请的链路标签可能会发生变化,为了实现报文在网络系统中的顺利传输,控制器需要感知这一变化,以重新为LSR下发LSP和SR转发策略,这无疑会加重控制器的处理负担。

  发明内容

  本申请实施例的目的在于提供一种链路标签分配方法、装置、网络设备及可读存储介质,用以改善现有技术中由于每次申请的链路标签可能发生变化而导致控制器需要重新下发LSP和SR,使得控制器的处理负担较大的问题。

  第一方面,本申请实施例提供了一种链路标签分配方法,所述方法包括:在第一网络设备与第二网络设备欲建立邻接关系时,查找所述第一网络设备中是否记录有对应的标签信息,获得查找结果,其中,所述标签信息包括上一次为所述第一网络设备中与所述第二网络设备连接的目标接口所分配的目标链路标签;根据所述查找结果为所述目标接口分配对应的链路标签。

  在上述实现过程中,通过在第一网络设备与第二网络设备欲建立邻接关系时,查找第一网络设备中是否记录有对应的标签信息,根据查找结果来为目标接口分配对应的链路标签,这样可无需为接口申请新的链路标签,也就可以避免控制器在每次分配新的链路标签后需要重新下发相应的转发策略的问题,从而可减少控制器的处理负担。

  可选地,所述根据所述查找结果为所述目标接口分配对应的链路标签,包括:

  若所述查找结果为所述第一网络设备记录有所述标签信息,则从所述标签信息中获取所述目标链路标签;

  为所述目标接口分配所述目标链路标签。

  在上述实现过程中,为目标接口分配标签信息中记录的目标链路标签,从而可使得为目标接口分配的链路标签没有发生变化,进而使得控制器无需再次下发对应的转发策略,减少了控制器的处理负担。

  可选地,所述第一网络设备包括IGP协议模块以及标签管理模块,所述为所述目标接口分配所述目标链路标签,包括:

  所述IGP协议模块向所述标签管理模块发送为所述目标接口申请所述目标链路标签的申请信息;

  所述标签管理模块将所述申请信息与所述标签信息中的对应信息进行匹配;

  若所述申请信息与所述标签信息中的对应信息匹配一致,所述标签管理模块向所述IGP协议模块发送对应的指示信息;

  所述IGP协议模块根据所述指示信息为所述目标接口分配所述目标链路标签。

  在上述实现过程中,通过第一网络设备的IGP协议模块和标签管理模块来为目标接口分配链路标签,这样由网络设备自己完成链路标签的分配,可无需控制器参与,减少了控制器的处理负担。

  可选地,所述申请信息包括所述目标接口和所述目标链路标签,所述申请信息还包括IGP协议类型和/或下一跳地址,所述标签信息包括接口信息和链路标签信息,所述标签信息还包括IGP协议类型信息和/或下一跳地址信息;所述标签管理模块将所述申请信息与所述标签信息中的对应信息进行匹配,包括:

  所述标签管理模块将所述目标接口与所述接口信息进行匹配以及将所述目标链路标签与所述链路标签信息进行匹配;和/或所述标签管理模块将所述IGP协议类型与所述IGP协议类型信息进行匹配,和/或将所述下一跳地址与所述下一跳地址信息进行匹配。

  在上述实现过程中,通过对目标接口、目标链路标签、IGP协议类型和/或下一跳地址等信息的匹配,从而可以更准确地确定为目标接口所分配的链路标签。

  可选地,所述根据所述查找结果为所述目标接口分配对应的链路标签,包括:

  若所述查找结果为所述第一网络设备没有记录所述标签信息,则为所述目标接口分配对应的预设链路标签。

  在上述实现过程中,在没有查找到对应的标签信息时,可为目标接口分配预设链路标签,以及时确保报文的顺利传输。

  可选地,所述第一网络设备包括IGP协议模块以及标签管理模块,所述方法还包括:

  所述IGP协议模块获取所述预设链路标签与所述目标接口的关联关系,根据所述关联关系获得对应的标签添加信息,并将所述标签添加信息发送给所述标签管理模块进行存储;

  在所述第一网络设备与所述第二网络设备之间的邻接关系断开时,所述IGP协议模块向所述标签管理模块发送释放所述关联关系的指示信息;

  所述标签管理模块根据所述指示信息释放所述预设链路标签与所述目标接口的关联关系,并记录对应的标签释放信息,所述标签信息包括所述标签释放信息。

  在上述实现过程中,通过记录标签添加信息和标签释放信息,从而可知晓为目标接口分配的链路标签的相关变动信息,为后续为目标接口重新分配链路标签提供数据支持。

  可选地,将所述标签添加信息更新为所述标签释放信息,如此可便于知晓标签释放信息中记录的链路标签是否是上次已申请的链路标签后再释放的链路标签。

  第二方面,本申请实施例提供了一种链路标签分配装置,所述装置包括:

  标签查找模块,用于在第一网络设备与第二网络设备欲建立邻接关系时,查找所述第一网络设备中是否记录有对应的标签信息,获得查找结果,其中,所述标签信息包括上一次为所述第一网络设备中与所述第二网络设备连接的目标接口所分配的目标链路标签;

  标签分配模块,用于根据所述查找结果为所述目标接口分配对应的链路标签。

  可选地,所述标签分配模块,用于若所述查找结果为所述第一网络设备记录有所述标签信息,则从所述标签信息中获取所述目标链路标签;为所述目标接口分配所述目标链路标签。

  可选地,所述第一网络设备包括IGP协议模块以及标签管理模块;

  所述IGP协议模块,用于向所述标签管理模块发送为所述目标接口申请所述目标链路标签的申请信息;

  所述标签管理模块,用于将所述申请信息与所述标签信息中的对应信息进行匹配;

  若所述申请信息与所述标签信息中的对应信息匹配一致,所述标签管理模块,用于向所述IGP协议模块发送对应的指示信息;

  所述IGP协议模块,用于根据所述指示信息为所述目标接口分配所述目标链路标签。

  可选地,所述申请信息包括所述目标接口和所述目标链路标签,所述申请信息还包括IGP协议类型和/或下一跳地址,所述标签信息包括接口信息和链路标签信息,所述标签信息还包括IGP协议类型信息和/或下一跳地址信息;

  所述标签管理模块,用于将所述目标接口与所述接口信息进行匹配以及将所述目标链路标签与所述链路标签信息进行匹配;和/或所述标签管理模块,用于将所述IGP协议类型与所述IGP协议类型信息进行匹配,和/或将所述下一跳地址与所述下一跳地址信息进行匹配。

  可选地,所述标签分配模块,用于若所述查找结果为所述第一网络设备没有记录所述标签信息,则为所述目标接口分配对应的预设链路标签。

  可选地,所述第一网络设备包括IGP协议模块以及标签管理模块;

  所述IGP协议模块,用于获取所述预设链路标签与所述目标接口的关联关系,根据所述关联关系获得对应的标签添加信息,并将所述标签添加信息发送给所述标签管理模块进行存储;

  在所述第一网络设备与所述第二网络设备之间的邻接关系断开时,所述IGP协议模块,用于向所述标签管理模块发送释放所述关联关系的指示信息;

  所述标签管理模块,用于根据所述指示信息释放所述预设链路标签与所述目标接口的关联关系,并记录对应的标签释放信息,所述标签信息包括所述标签释放信息。

  可选地,所述标签管理模块,用于将所述标签添加信息更新为所述标签释放信息。

  第三方面,本申请实施例提供一种网络设备,包括处理器以及存储器,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,运行如上述第一方面提供的所述方法中的步骤。

  第四方面,本申请实施例提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时运行如上述第一方面提供的所述方法中的步骤。

  本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

  附图说明

  为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

  图1为本申请实施例提供的一种网络系统中链路标签分配的示意图;

  图2为本申请实施例提供的一种链路标签分配方法的流程图;

  图3为本申请实施例提供的一种链路标签分配的示例性示意图;

  图4为本申请实施例提供的一种链路标签分配装置的结构框图;

  图5为本申请实施例提供的一种用于执行链路标签分配方法的网络设备的结构示意图。

  具体实施方式

  下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述。

  为了便于对本申请提供的链路标签分配方法的理解,在介绍本申请方法的具体实现过程之前,先对本申请涉及到的一些概念进行介绍。

  标签交换路径(LSP):LSP是指报文在MPLS网络内经过的路径,即在传输时经过的标签交换路由集合构成的数据传输通道。

  分段路由(SR):SR是一种新型的MPLS技术,其中控制平面基于IGP路由协议扩展实现,转发层面基于MPLS转发网络实现,对的segment在转发层面呈现为标签。SR是一种源路由技术,SR隧道的信息只存在于头节点,路径上的其他节点不感知业务,也就无法在设备层为业务预留带宽,因此SR的流量工程需要在控制器完成,由控制器维护全局的拓扑和流量工程(Traffic Engineer,TE)信息,并根据业务请求和路由策略计算端到端的路径,形成逐跳的严格约束路径,并在控制面完成带宽预留,实现端到端的TE能力。

  SR-TE:是使用SR作为控制信令的一种新型的MPLS TE隧道技术,控制器负责计算隧道的转发路径,并将与路径严格对应的标签栈下发给转发器(如LSR),在SR-TE隧道的入节点上,转发器根据标签栈进行转发。

  链路标签:用于标识SR网络中的路由邻接链路,是SR-TE主要使用的标签类型。链路标签具有一定的方向性,用于指导报文的转发时仅在源节点本地有效。

  内部网关协议(IGP):是在一个自治网络内网关间交换路由信息的协议。在网络系统中,转发器(如网关、路由器等网络设备)的IGP协议可用于进行链路标签的分配,并将分配的标签上报给控制器,由控制器根据网络中各个转发器的标签下发对应的SR-TE和LSP策略。

  如图1所示,其表示网络系统中的一种标签分配方式的示意图,在转发器PE1、P1、P2、P3、P4和PE2上分别使能SR能力,相互之间建立IGP邻接关系。对于具有SR能力的网络设备,会对所有使能IGP协议的出接口分配SR链路标签,链路标签会泛洪到整个网络中。如图1所示,以P3设备为例,分配标签的具体过程如下:

  P3的IGP协议为其所有链路申请本地动态标签,例如,P3为链路P3->P4分配链路标签xx;P3的IGP协议发布链路标签,泛洪到整个网络,P3上生成链路标签对应的标签转发表,网络中的其他设备的IGP协议学习到P3发布的链路标签,但不生成标签转发表。

  其他设备分别按照P3的方式分配和发布链路标签,并生成链路标签对应的标签转发表。当在一个或多个转发器与控制器之间配置IGP协议,建立了邻接关系IGP引入带有SR标签信息的拓扑,向控制器上报。

  标签分配由转发器自己完成,转发器提供NETCONF接口,转发器可将标签信息与BGP-LS链路拓扑信息进行绑定后上述给控制器,控制器根据BGP-LS链路拓扑信息即可知道对应链路的标签信息。各转发器上使能SR能力,相互之间建立邻接关系;控制器与转发器之间建立邻接关系。IGP协议收集网络拓扑后,通过IGP协议上报给控制器。控制器为拓扑中的每个链路分配链路标签,并将链路标签信息通过NETCONF下发给标签对应的源节点转发器,在转发器上生成链路标签转发表。

  现有技术中,控制器会基于转发器收集的拓扑信息,根据为每个链路分配的链路标签向各个转发器下发LSR和SR-TE转发策略,但是在实际情况中,IGP协议申请的链路标签的方式为动态申请,当IGP网络震荡后,使得IGP协议重新申请的链路标签会发生变化,此时控制器需要感知这一变化,重新下发LSP和SR-TE转发策略,从而导致控制器的处理负担较大的问题。

  并且,由于控制器下发转发策略需要一定的时间,在该时间段内,网络中的报文可能还是依照原来的标签进行转发,但是由于链路标签已经发生了变化,则使得报文继续沿着错误的路径转发,造成长时间丢包的情况。

  以上现有技术中的方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本发明实施例针对上述问题所提出的解决方案,都应该是发明人在本发明过程中对本发明做出的贡献。

  为了解决现有技术中在网络震荡后,重新申请的链路标签可能发生变化而使得控制器需要重新下发转发策略导致控制器的处理负担较大的问题,本申请实施例提供一种链路标签分配方法,通过在第一网络设备与第二网络设备欲建立邻接关系时,查找第一网络设备中是否记录有标签信息,根据查找结果来为目标接口分配对应的链路标签,这样可无需为接口申请新的链路标签,也就可以避免控制器在每次分配新的链路标签后需要重新下发相应的转发策略的问题,从而可减少控制器的处理负担。

  请参照图2,图2为本申请实施例提供的一种链路标签分配方法的流程图,该方法包括如下步骤:

  步骤S110:在第一网络设备与第二网络设备欲建立邻接关系时,查找所述第一网络设备中是否记录有对应的标签信息,获得查找结果,其中,所述标签信息包括上一次为所述第一网络设备中与所述第二网络设备连接的目标接口所分配的目标链路标签。

  其中,第一网络设备与第二网络设备可以理解为是上述实施例中所描述的转发器,如路由器LSR等设备,第一网络设备与第二网络设备可以指两个相对的设备,其仅是为了区分两个网络设备,即第二网络设备也可作为第一网络设备。本申请的链路标签分配方法的执行主体为第一网络设备,当然在第二网络设备为其与第一网络设备连接的接口分配链路标签的方法与本申请中提供的链路标签分配方法相同,所以,本申请实施例以为第一网络设备上的接口分配链路标签的过程为例进行说明。

  在第一网络设备与第二网络设备之间有数据传输需求时,第一网络设备与第二网络设备需先建立邻接关系,即第一网络设备与第二网络设备建立邻接关系是为了彼此之间可以交互相关信息,在两个网络设备欲建立邻接关系时,还需要申请链路标签,该链路标签即用于指示报文的转发路径。其中,两个网络设备建立邻接关系的具体实现过程在此不详细介绍,本领域技术人员可参照现有技术中的相关实现过程。

  在两个网络设备欲建立邻接关系时,需要申请链路标签,然后再将申请到的链路标签分配给对应接口。而本申请实施例中,为了避免每次给接口申请的链路标签发生变化而控制器需要重新下发转发策略的问题,网络设备中可记录有上次为接口分配的链路标签信息,在两个网络设备的邻接关系断开时,其可释放为接口分配的链路标签,此时网络设备可记录对应的标签释放信息。

  例如,第一网络设备与第二网络设备建立邻接关系后,为第一网络设备中与第二网络设备连接的目标接口分配的链路标签为100,若由于网络震荡,第一网络设备与第二网络设备断开邻接关系,此时,第一网络设备可释放链路标签100与目标接口的绑定信息,但是,为了避免链路标签100重新分配给其他接口,而使得目标接口再次被分配的链路标签发生变化,则第一网络设备可以记录对应的标签信息,即该标签信息可以包括上一次为目标接口所分配的目标链路标签,即链路标签100。

  由于第一网络设备可能包括有多个接口,第一网络设备可以通过这些接口与不同的网络设备建立邻接关系,所以第一网络设备中可存储有多个标签信息,这些标签信息是针对各个接口的标签信息。因此,第一网络设备可查找第一网络设备中是否记录有对应的标签信息,该标签信息是指针对目标接口的标签信息,若查找结果为第一网络设备记录有对应的标签信息,则表示第一网络设备与第二网络设备并不是首次建立邻接关系,若查找结果为第一网络设备没有记录有对应的标签信息,则表示第一网络设备与第二网络设备为首次建立邻接关系。

  步骤S120:根据所述查找结果确定为所述目标接口分配的链路标签。

  在上述步骤S110获得查找结果后,可根据查找结果为目标接口分配对应的链路标签。

  在具体实现过程中,若查找结果为第一网络设备记录有对应的标签信息,则从标签信息中获取目标链路标签,则为目标接口分配目标链路标签。

  而若查找结果为第一网络设备没有记录有对应的标签信息,表示两个网络设备为首次建立邻接关系,则获取为目标接口分配预设链路标签。

  应理解,在第一网络设备中可存储有多个链路标签,预设链路标签可以是指第一网络设备中当前未分配的链路标签中的任意一个链路标签,即可以在第一网络设备中的当前未分配的链路标签中任意选择一个链路标签作为预设链路标签,该预设链路标签即为目标接口分配的链路标签。

  这样在第一网络设备与第二网络设备欲首次建立邻接关系时,则第一网络设备可为目标接口分配预设链路标签,然后可向控制器发送对应的通知信息,以使控制器可感知目标接口分配的链路标签,使得控制器可以向网络设备下发对应的LSP和SR-TE转发策略。

  当然,在由于网络震荡而使得第一网络设备与第二网络设备之间的邻接关系断开时,需要释放预设链路标签,所以,第一网络设备可将该预设链路标签的标签释放信息进行记录,上述的标签信息即包括该标签释放信息。而第一网络设备与第二网络设备在下次建立邻接关系时,可查找第一网络设备中记录的标签释放信息,标签释放信息中记录有上次为目标接口分配的预设链路标签,如100,则第一网络设备与第二网络设备此次建立邻接关系时,查找到的预设链路标签100即为目标链路标签,从而可确定此次为目标接口分配的链路标签为100。

  在另外一些实施方式中,预设链路标签可以是指预先为目标接口配置的链路标签,如第一网络设备包括多个接口,可以预先为每个接口配置相应的链路标签,并将对应的配置信息存储在第一网络设备中,其配置信息为各个接口与对应的链路标签的对应关系,该配置信息也可称为标签信息。这样在第一网络设备与第二网络设备首次建立邻接关系时,即可通过查找标签信息中目标接口对应的链路标签,然后将对应的链路标签分配给目标接口即可。在网络震荡后,第一网络设备与第二网络设备欲再次建立邻接关系时,也可以通过查找标签信息中该目标接口对应的链路标签,从而可再次为目标接口分配对应的链路标签,这样可使得为目标接口的链路标签不会发生变化,无需控制器再次下发对应的转发策略,这样也使得网络系统中报文的传输路径不会发生变化,也不会造成因为报文长时间通过错误路径传输而丢包的问题。

  在上述实现过程中,通过在第一网络设备与第二网络设备欲建立邻接关系时,查找第一网络设备中是否记录有对应的标签信息,根据查找结果来为目标接口分配对应的链路标签,这样可无需为接口申请新的链路标签,也就可以避免控制器在每次分配新的链路标签后需要重新下发相应的转发策略的问题,从而可减少控制器的处理负担。

  在一些实施方式中,第一网络设备可以包括IGP协议模块和标签管理模块,标签管理模块用于管理为第一网络设备的各个接口的链路标签,即上述的标签信息存储在标签管理模块中,IGP协议模块用于为第一网络设备中的各个接口申请对应的链路标签,以及为各个接口分配对应的链路标签。

  在上述为目标接口分配对应的链路标签的过程中,还可以通过IGP协议模块向标签管理模块发送为目标接口申请目标链路标签的申请信息,标签管理模块再将申请信息与标签信息中的对应信息进行匹配,若申请信息与标签信息中的对应信息匹配一致,则标签管理模块向IGP协议模块发送对应的指示信息,则IGP协议模块根据指示信息为目标接口分配目标链路标签。

  可以理解地,在第一网络设备与第二网络设备第一次建立邻接关系后,IGP协议模块可记录为目标接口分配的链路标签的相关信息,第一网络设备与第二网络设备再次建立邻接关系时,IGP协议模块查找记录的相关信息,从而获得目标接口上次分配的目标链路标签,然后向标签管理模块发送申请信息,该申请信息中携带有目标链路标签,表示向标签管理模块申请为目标接口分配目标链路标签的指示。标签管理模块可记录有第一网络设备中各个接口的链路标签的变动信息,即标签信息,如标签添加信息、标签释放信息等,标签管理模块则将申请信息与标签信息中的对应信息进行匹配,若匹配一致,则表示上次为目标接口分配的链路标签为目标链路标签,标签管理模块可向IGP协议模块发送对应的指示信息,IGP协议模块则可根据指示信息为目标接口分配目标链路标签。

  在上述实现过程中,通过第一网络设备的IGP协议模块和标签管理模块来为目标接口分配链路标签,这样由网络设备自己完成链路标签的分配,可无需控制器参与,减少了控制器的处理负担。

  为了便于标签管理模块更准确地确定为目标接口所分配的链路标签,上述的申请信息可以包括目标接口和目标链路标签,标签信息可以包括接口信息和链路标签信息,标签管理模块在进行信息匹配时,将目标接口与接口信息进行匹配,以及将目标链路标签与链路标签信息进行匹配。

  也即,上述在将申请信息与标签信息中的对应信息进行匹配,是指将申请信息中的目标接口和标签信息中的接口信息进行匹配以及将申请信息中的目标链路标签与将标签信息中的链路标签信息进行匹配,在两个信息匹配一致时,则标签管理模块再向IGP协议模块发送对应的指示信息,以指示IGP协议模块为目标接口分配目标链路标签。

  当然,为了匹配更多的信息,申请信息还可以包括IGP协议类型和/或下一跳地址,标签信息包括IGP协议类型和/或下一跳地址信息,标签管理模块在进行信息匹配时,还可以将IGP协议类型与IGP协议类型信息进行匹配,和/或将下一跳地址与下一跳地址信息进行匹配。

  也就是说,上述在将申请信息与标签信息中的对应信息进行匹配,还可以将申请信息中的IGP协议类型与标签信息中的IGP协议类型信息进行匹配,和/或将申请信息中的下一跳地址与标签信息中的下一跳地址信息进行匹配。

  上述实施例可以理解为匹配的是申请信息中的目标接口和目标链路标签,或者匹配的是目标接口、目标链路标签和IGP协议类型,或者匹配的是目标接口、目标链路标签和下一跳地址,匹配的是目标接口、目标链路标签、IGP协议类型和下一跳地址。所以,在进行匹配时,可以选择上述的任一种组合的申请信息与标签信息中的对应信息进行匹配即可,在任一种组合的申请信息与标签信息中的对应信息匹配一致后,标签管理模块可向IGP协议模块发送对应的指示信息。

  其中,IGP协议类型包括有开放式最短路径优先(Open Shortest Path First,OSPF)协议、中间系统到中间系统(Intermediate System-to-Intermediate System,IS-IS)协议等其他分配标签的协议。

  另外,在上述实施例的预设链路标签是指首次为目标接口分配的链路标签,而在后续为目标接口分配的目标链路标签实际上目标链路标签为预设链路标签。

  而在上述为目标接口分配预设链路标签的具体实现过程中,还可以通过IGP协议模块获取预设链路标签与目标接口的关联关系,并根据所述关联关系获得对应的标签添加信息,并将标签添加信息发送给标签管理模块进行存储;而在第一网络设备与第二网络设备之间的邻接关系断开时,IGP协议模块向标签管理模块发送释放关联关系的指示信息,标签管理模块根据该指示信息释放预设链路标签与目标接口的关联关系,并记录对应的标签释放信息,上述标签信息包括该标签释放信息。

  举例来说,IGP协议模块初次为目标接口申请链路标签时,可以根据申请到的预设链路标签在第一网络设备中安装入标签映射(Incoming Label Ma,ILM)表项,该表项用于指示报文的转发。IGP协议模块记录目标接口与预设链路标签的关联关系,如A(Adj SID(预设链路标签),INTERFACE(目标接口),NEXTHOP(下一跳地址)),IGP协议模块将该关联关系A扩展为关联关系B,即标签添加信息,B(Adj SID,IGP-TYPE(IGP协议类型),INTERFACE,NEXTHOP,ADD),将该标签添加信息B发送给标签管理模块,标签管理模块存储次关联关系。其中,IGP协议类型和下一跳地址可从ILM表项中获得。

  在邻接关系断开时,IGP协议模块可申请释放已申请的链路标签,在IGP协议模块释放已申请的目标链路标签时,向标签管理模块发送删除关联关系的指示信息B1(AdjSID,IGP-TYPE,INTERFACE,NEXTHOP,DELETE),标签管理模块收到该指示信息后,可以将标签添加信息B删除,以释放目标接口与预设链路标签的关联关系,并将指示信息B1作为标签释放信息存储。

  由于网络震荡或者进程重置后需要重新给目标接口申请链路标签时,IGP协议模块向标签管理模块发送上述的标签添加信息B,标签管理模块接收到该标签添加信息B后,查找存在的标签释放信息B1,然后进行对应信息的匹配,在匹配一致后,将标签释放信息中记载的目标链路标签发送给IGP协议模块,从而可确保IGP协议模块重新给目标接口分配的链路标签没有发生变化。

  另外,相同的链路标签可以对应不同的IGP协议类型,所以,在IGP协议删除时,IGP协议模块还可以向标签管理模块发送指示信息B2(Adj SID,IGP-TYPE-DELETE,INTERFACE,NEXTHOP,DELETE),用以指示标签管理模块删除预设链路标签与IGP协议类型之间的关联关系,即标签管理模块删除已存储的关联关系B或者B1,如此该预设链路标签可用于分配给其他IGP协议类型使用。

  在上述实现过程中。通过记录标签添加信息和标签释放信息,从而可知晓为目标接口分配的链路标签的相关变动信息,为后续为目标接口重新分配链路标签提供数据支持。

  在一些实施方式中,为了便于标签管理模块对接口与链路标签的管理关系进行管理,还可以将标签添加信息更新为标签释放信息,即可将标签添加信息删除,存储标签释放信息,从而可在进行链路标签查找时,便于知晓标签释放信息中记录的链路标签是否是上次已申请的链路标签后再释放的链路标签。

  为了便于对上述实施例介绍的理解,下面以一个具体的实施例来说明上述的链路标签分配过程。

  如图3所示,网络设备1、网络设备2、……、网络设备n为一条LSP上的设备,以网络设备2(即网络设备2为上述实施例中的第一网络设备)为例,网络设备2与网络设备1(即上述实施例中的第二网络设备)欲建立IGP邻接关系,网络设备2的IGP协议模块给接口if1(即上述实施例中的目标接口)分配链路标签,其中,IGP协议以OSPF 65535为例。

  IGP协议模块第一次给接口if1分配链路标签并安装ILM表项后,IGP协议模块记录关联关系A(x1,if1,1.1.1.2),形成A-list,并向标签管理模块发送经过A扩展的标签添加信息B(x1,OSPF-65535,if1,1.1.1.2,ADD),标签管理模块收到对应消息后存储B,形成B-list。

  由于IGP协议震荡或者进程重置需要释放给接口if1分配的链路标签时,IGP协议模块向标签管理模块发送指示信息B1(x1,OSPF-65535,if1,1.1.1.2,DELETE),标签管理模块收到指示信息后,存储B1形成B1-list,并更新B-list,删除存储的B。

  IGP协议模块重新给接口if1分配链路标签时,查找A-list,找到对应关系A后向标签管理模块发送B,标签管理模块收到B后查找B1-list,找到对应关联关系B1后给IGP协议模块发送对应关系中的链路标签,标签管理模块删除B1-list中的B1,存储B,这样IGP协议模块重新给接口if1分配的链路标签为IGP协议模块之前释放的链路标签。

  在IGP协议删除时,IGP协议模块可向标签管理模块发送删除关联关系的指示信息B2(x1,OSPF-65535-DELETE,if1,1.1.1.2,DELETE),标签管理模块收到此信息后,根据链路标签查找B-list和B1-list,根据IGP-TYPE-DELETE删除相应IGP协议存储的B和B1关联关系,从而保证协议被删除后,对应的标签能够被其他IGP协议使用。

  请参照图4,图4为本申请实施例提供的一种链路标签分配装置100的结构框图,该装置100可以是网络设备上的模块、程序段或代码。应理解,该装置100与上述图2方法实施例对应,能够执行图2方法实施例涉及的各个步骤,该装置100具体的功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。

  可选地,所述装置100包括:

  标签查找模块110,用于在第一网络设备与第二网络设备欲建立邻接关系时,查找所述第一网络设备中是否记录有对应的标签信息,获得查找结果,其中,所述标签信息包括上一次为所述第一网络设备中与所述第二网络设备连接的目标接口所分配的目标链路标签;

  标签分配模块120,用于根据所述查找结果为所述目标接口分配对应的链路标签。

  可选地,所述标签分配模块120,用于若所述查找结果为所述第一网络设备记录有所述标签信息,则从所述标签信息中获取所述目标链路标签;为所述目标接口分配所述目标链路标签。

  可选地,所述第一网络设备包括IGP协议模块以及标签管理模块;

  所述IGP协议模块,用于向所述标签管理模块发送为所述目标接口申请所述目标链路标签的申请信息;

  所述标签管理模块,用于将所述申请信息与所述标签信息中的对应信息进行匹配;

  若所述申请信息与所述标签信息中的对应信息匹配一致,所述标签管理模块,用于向所述IGP协议模块发送对应的指示信息;

  所述IGP协议模块,用于根据所述指示信息为所述目标接口分配所述目标链路标签。

  可选地,所述申请信息包括所述目标接口和所述目标链路标签,所述申请信息还包括IGP协议类型和/或下一跳地址,所述标签信息包括接口信息和链路标签信息,所述标签信息还包括IGP协议类型信息和/或下一跳地址信息;

  所述标签管理模块,用于将所述目标接口与所述接口信息进行匹配以及将所述目标链路标签与所述链路标签信息进行匹配;和/或所述标签管理模块,用于将所述IGP协议类型与所述IGP协议类型信息进行匹配,和/或将所述下一跳地址与所述下一跳地址信息进行匹配。

  可选地,所述标签分配模块120,用于若所述查找结果为所述第一网络设备没有记录所述标签信息,则为所述目标接口分配对应的预设链路标签。

  可选地,所述第一网络设备包括IGP协议模块以及标签管理模块;

  所述IGP协议模块,用于获取所述预设链路标签与所述目标接口的关联关系,根据所述关联关系获得对应的标签添加信息,并将所述标签添加信息发送给所述标签管理模块进行存储;

  在所述第一网络设备与所述第二网络设备之间的邻接关系断开时,所述IGP协议模块,用于向所述标签管理模块发送释放所述关联关系的指示信息;

  所述标签管理模块,用于根据所述指示信息释放所述预设链路标签与所述目标接口的关联关系,并记录对应的标签释放信息,所述标签信息包括所述标签释放信息。

  可选地,所述标签管理模块,用于将所述标签添加信息更新为所述标签释放信息。

  需要说明的是,本领域技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再重复描述。

  请参照图5,图5为本申请实施例提供的一种用于执行链路标签分配方法的网络设备的结构示意图,所述网络设备可以包括:至少一个处理器210,例如CPU,至少一个通信接口220,至少一个存储器230和至少一个通信总线240。其中,通信总线240用于实现这些组件直接的连接通信。其中,本申请实施例中设备的通信接口220用于与其他节点设备进行信令或数据的通信。存储器230可以是高速RAM存储器,也可以是非易失性的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器230可选的还可以是至少一个位于远离前述处理器的存储装置。存储器230中存储有计算机可读取指令,当所述计算机可读取指令由所述处理器210执行时,网络设备执行上述图2所示方法过程。

  可以理解,图5所示的结构仅为示意,所述网络设备还可包括比图5中所示更多或者更少的组件,或者具有与图5所示不同的配置。图5中所示的各组件可以采用硬件、软件或其组合实现。

  本申请实施例提供一种可读存储介质,所述计算机程序被处理器执行时,执行如图2所示方法实施例中网络设备所执行的方法过程。

  本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如,包括:在第一网络设备与第二网络设备欲建立邻接关系时,查找所述第一网络设备中是否记录有对应的标签信息,获得查找结果,其中,所述标签信息包括上一次为所述第一网络设备中与所述第二网络设备连接的目标接口所分配的目标链路标签;根据所述查找结果为所述目标接口分配对应的链路标签。

  综上所述,本申请实施例提供一种链路标签分配方法、装置、网络设备及可读存储介质,通过在第一网络设备与第二网络设备欲建立邻接关系时,查找第一网络设备中是否记录有对应的标签信息,根据查找结果来为目标接口分配对应的链路标签,这样可无需为接口申请新的链路标签,也就可以避免控制器在每次分配新的链路标签后需要重新下发相应的转发策略的问题,从而可减少控制器的处理负担。

  在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

  另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

  再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

  在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。

  以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

《链路标签分配方法、装置、网络设备及可读存储介质.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)