一种报文转发方法及装置与流程

文档序号:17725853发布日期:2019-05-22 02:30阅读:191来源:国知局
一种报文转发方法及装置与流程

本申请涉及通信技术领域,具体而言,涉及一种报文转发方法及装置。



背景技术:

转发报文的头节点能够将接收到的报文转发到目的节点,以实现报文转发。在报文转发的过程中,头节点中预先维护有针对不同目的地址的主路径,并基于主路径转发报文。

为了保障报文转发的可靠性,头节点还维护一个备路径。当转发报文的主路径故障后,头节点能够切换到备路径进行报文转发。但是,在一些特殊场景下,比如,为了快速切换到其他特殊业务,目的节点需要配置监控链路组,监控链路组独立进行主路径和备路径的联动,监控链路组在使备路径断开时,强制主路径也断开,以达到快速切换到其他特殊业务的目的。在该种场景下,转发报文所需要的主路径和备路径均断开,无法进行报文转发,进而导致报文的大量丢包。



技术实现要素:

有鉴于此,本申请实施例的目的在于提供一种报文转发方法及装置,头节点通过维护主备拓扑的转发表项,能够在由于目的节点配置监控链路组而导致主拓扑的转发表项无法应用时,快速切换到备拓扑的转发表项进行报文转发,加快了业务恢复的速度,缓解了大量丢包的问题。

第一方面,本申请实施例提供了一种报文转发方法,应用于头节点,所述头节点中维护有将报文从所述头节点转发到目的节点的主备拓扑的转发表项;其中,主拓扑的转发表项包括与主路径对应的主转发表项和与第一备路径对应的第一备转发表项;备拓扑的转发表项包括与第二备路径对应的第二备转发表项;所述头节点在基于所述主拓扑的转发表项进行报文转发时,执行以下方法步骤:

所述头节点通过与所述主路径上的目的节点之间建立的双向转发检测bfd会话连接,周期性向所述目的节点发送第一探测报文;以及,通过与所述第一备路径上的第一pq节点之间建立的bfd会话连接,周期性向所述第一pq节点发送第二探测报文;其中,所述第一pq节点用于将接收的报文转发给所述目的节点;

所述头节点在基于发送的所述第一探测报文和所述第二探测报文检测到所述主路径和所述第一备路径发生故障时,进行主备拓扑切换,并基于切换后的所述备拓扑的转发表项进行报文转发。

第二方面,本申请实施例还提供了一种报文转发装置,包括:

存储模块,用于维护有将报文从头节点转发到目的节点的主备拓扑的转发表项;其中,主拓扑的转发表项包括与主路径对应的主转发表项和与第一备路径对应的第一备转发表项;备拓扑的转发表项包括与第二备路径对应的第二备转发表项;

检测模块,用于在基于所述主拓扑的转发表项进行报文转发时,通过与所述主路径上的目的节点之间建立的双向转发检测bfd会话连接,周期性向所述目的节点发送第一探测报文;以及,通过与所述第一备路径上的第一pq节点之间建立的bfd会话连接,周期性向所述第一pq节点发送第二探测报文;其中,所述第一pq节点用于将接收的报文转发给所述目的节点;

转发模块,用于在基于发送的所述第一探测报文和所述第二探测报文检测到所述主路径和所述第一备路径发生故障时,进行主备拓扑切换,并基于切换后的所述备拓扑的转发表项进行报文转发。

本申请实施例提供的一种报文转发方法及装置,头节点中维护有将报文从头节点转发到目的节点的主备拓扑的转发表项,头节点在基于主拓扑的转发表项进行报文转发时,分别通过与主路径上的目的节点以及与第一备路径上的第一pq节点之间建立的双向转发检测bfd会话连接,周期性检测主路径和第一备路径的通信状态,若检测到主路径和第一备路径发生故障,则将当前主拓扑切换为备拓扑,并基于备拓扑的转发表项进行报文转发。这样,头节点能够在由于目的节点配置监控链路组而导致主拓扑的转发表项无法应用时,快速切换到备拓扑的转发表项进行报文转发,加快了业务恢复的速度,缓解了大量丢包的问题。

为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

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

图1示出了本申请实施例所提供的现有技术中报文转发的路由拓扑图。

图2示出了本申请实施例所提供的一种报文转发方法的流程图。

图3示出了本申请实施例所提供的本申请实施例中报文转发的路由拓扑图。

图4示出了本申请实施例所提供的又一种报文转发方法的流程图。

图5示出了本申请实施例所提供的再一种报文转发方法的流程图。

图6示出了本申请实施例所提供的再一种报文转发方法的流程图。

图7示出了本申请实施例所提供的一种报文转发装置的结构示意图。

图8示出了本申请实施例所提供的一种网络设备的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

图1为报文转发的路由拓扑图,如图1所示,头节点1将接收到的报文发送给目的节点2。在图1中,头节点1向目的节点2转发报文,最优链路为头节点1直连目的节点2的链路l1,并维护链路l1为主路径;头节点1确定中间节点5为备份pq节点,并维护备份pq节点对应的路径(即头节点1-中间节点3-中间节点5-目的节点2)为备路径。头节点1在接收到报文后,通过主路径将报文转发给目的节点;当主路径故障时,头节点1通过维护的备路径将接收的报文转发给目的节点。

但是,现有技术中,没有对中间节点5的保护机制,在一些特殊场景下,目的节点2需要配置monitorlink(即监控链路组)技术,monitorlink让目的节点2与中间节点5的链路故障的同时,也使目的节点2与头节点1的链路l1自动触发故障,以达到快速切换其他特殊业务的目的。在该种场景下,转发报文所需要的主路径和备路径均断开,无法进行报文转发,进而导致报文的大量丢包。

当头节点1到目的节点2的主备路径都故障时,如果此时重新计算寻找新的备路径,耗时长,也将导致大量丢包,基于上述问题,本申请实施例提供了一种报文转发方法及装置,通过维护主备拓扑的转发表项,头节点能够在由于目的节点配置监控链路组而导致备拓扑中的第一备用路径和主路径均无法应用时,快速切换到备拓扑的第二备用路径进行报文转发,加快了业务恢复的速度,缓解了大量丢包的问题。

如图2所示,本申请实施例提供了一种报文转发方法,应用于头节点,所述头节点中维护有将报文从所述头节点转发到目的节点的主备拓扑的转发表项;其中,主拓扑的转发表项包括与主路径对应的主转发表项和与第一备路径对应的第一备转发表项;备拓扑的转发表项包括与第二备路径对应的第二备转发表项;所述头节点在基于所述主拓扑的转发表项进行报文转发时,执行以下方法步骤:

s201、所述头节点通过与所述主路径上的目的节点之间建立的双向转发检测bfd会话连接,周期性向所述目的节点发送第一探测报文;以及,通过与所述第一备路径上的第一pq节点之间建立的bfd会话连接,周期性向所述第一pq节点发送第二探测报文;其中,所述第一pq节点用于将接收的报文转发给所述目的节点。

本申请实施例中,头节点根据最短路径优先(shortestpathfirst,spf)算法,计算主用下一跳节点,并基于该主用下一跳节点,确定转发报文的主路径,并生成对应于该主路径的主转发表项。为了提高报文转发的可靠性,头节点基于(loop-freealternate,lfa)基本无环路条件(也即lfa无环路公式)计算备份路径,以便在头节点与目的节点的主路径故障时,快速切换流量到备份路径,无需等待路由收敛。

上述lfa无环路公式如下:dist(n,d)<dist(n,plr)+dist(plr,d)。其中,dist(a,b)表示从a到b的最短距离;n表示本地修复节点(pointoflocalrepair,plr)的邻居;d表示所针对的目的节点;plr表示提供保护的本地修复节点。

如图3所示,头节点1的主用下一跳节点为目的节点2,转发报文的主路径为链路l1。其中,图3中的每条链路的开销信息均为默认开销且各个链路的开销相同,头节点1为plr,基于lfa算法,plr的邻居节点为中间节点3,由于中间节点3不满足上述lfa无环路公式,中间节点3会认为走头节点1更优。因此,中间节点3不具备作为头节点1到达目的节点2备份下一跳的资格,也即中间节点3不为plr的邻居下一跳节点,否则会出现短暂环路。

考虑到lfa技术无法确定头节点的备份下一跳的问题,本申请实施例中,头节点还基于远程无环替换路径(remoteloop-freealternate,rlfa),确定用于将接收的报文转发给目的节点的多个pq节点,并从上述多个pq节点中选取第一pq节点和第二pq节点,并在头节点与每个pq节点之间建立标签分发协议(labeldistributionprotocol,ldp)隧道形成备份下一跳。其中,上述pq节点为:头节点非直连的且能够将来自头节点的报文转发至相应的目的节点的远程中间节点。头节点基于第一pq节点确定第一备路径,并确定对应于该第一备路径的第一备转发表项;以及,基于第二pq节点确定第二备路径,并确定对应于该第二备路径的第二备转发表项。相应的,头节点维护主转发表项和第一备转发表项作为主拓扑的转发表项;头节点维护主转发表项和第二备转发表项作为备拓扑的转发表项。在主拓扑正常的情况下,头节点通过主拓扑的转发表项进行报文转发。当主拓扑对应的主路径和第一备路径均故障时,头节点切换到备拓扑继续转发报文。

如图3所示,头节点1确定的第一pq节点为中间节点5,第二pq节点为中间节点4。相应的,头节点1维护的主拓扑中,主路径为头节点1-目的节点2,第一备路径为头节点1-中间节点3-中间节点5-目的节点2;其中,主拓扑中,单独维护主路径和第一备路径各自对应的转发表项,第一备路径对应第一ldp隧道。头节点1维护的备拓扑中:主路径为头节点1-目的节点2,第二备路径为头节点1-中间节点3-中间节点4-目的节点2;其中,备拓扑中,单独维护主路径和第二备路径各自对应的转发表项,第二备路径对应第二ldp隧道。正常情况下,头节点1用主拓扑转发报文,当主拓扑对应的转发路径均故障时,切换到备拓扑,并使用备拓扑的转发路径转发报文。

如图3所示,头节点1在确定了主用下一跳节点(即目的节点2)和第一pq节点(即中间节点5)后,基于目的节点2的互联网协议地址(internetprotocoladdress,ip地址),建立与目的节点2的双向转发检测(bidirectionalforwardingdetection,bfd)会话连接,并周期性向目的节点2发送第一探测报文,以检测头节点1与目的节点2的链路状态;同时,头节点1基于中间节点5的ip地址,建立与中间节点5的bfd会话连接,并周期性向中间节点5发送第二探测报文,以检测中间节点5与目的节点2的链路状态。

本申请实施例中,建立的上述bfd的控制会话中包括会话类型标识,该会话类型的作用是标识该bfd会话用于触发主备拓扑切换。相应的,头节点1基于上述bfd会话同时探测到主拓扑中的主路径和第一备路径,并在探测到主路径和第一备路径均故障时,触发主备拓扑切换。

s202、所述头节点在基于发送的所述第一探测报文和所述第二探测报文检测到所述主路径和所述第一备路径发生故障时,进行主备拓扑切换,并基于切换后的所述备拓扑的转发表项进行报文转发。

如图3所示,在需要快速切换其他特殊业务的特殊场景下,目的节点2由于配置了monitorlink技术,会使中间节点5和目的节点2的链路故障(即使会使主拓扑的转发表项对应的第一备路径故障),同时也使目的节点2和头节点1的链路l1故障(即使主路径故障)。在该种场景下,头节点1能够基于探测报文检测到中间节点5和目的节点2的链路以及链路l1均故障,此时,头节点1将当前的主拓扑切换为备拓扑,由于主拓扑的主路径和备拓扑的主路径相同且主路径故障。因此,头节点1基于备拓扑中与第二备路径对应的第二备转发表项进行报文转发。

本申请实施例提供的一种报文转发方法,头节点中维护有将报文从头节点转发到目的节点的主备拓扑的转发表项,头节点在基于主拓扑的转发表项进行报文转发时,分别通过与主路径上的目的节点以及与第一备路径上的第一pq节点之间建立的双向转发检测bfd会话连接,周期性检测主路径和第一备路径的通信状态,若检测到主路径和第一备路径发生故障,则将当前主拓扑切换为备拓扑,并基于备拓扑的转发表项进行报文转发。这样,头节点能够在由于目的节点配置监控链路组而导致主拓扑的转发表项无法应用时,快速切换到备拓扑的转发表项进行报文转发,加快了业务恢复的速度,缓解了大量丢包的问题。

如图4所示,本申请实施例中,头节点确定上述第一pq节点和上述第二pq节点的方法,具体包括如下步骤:

s401、所述头节点基于远程无环替换路径rlfa,确定对应于所述目的节点的多个pq节点。

本申请实施例中,头节点确定主路径为保护链路,并基于保护链路以及rlfa算法计算多个pq节点,并在头节点与每个pq节点之间建立ldp隧道形成备份下一跳。当保护链路发生故障时,头节点自动切换到隧道备份路径,继续转发报文,从而提高网络的可靠性。

在上述方式中,头节点能够通过ldp隧道将报文直接发送至pq节点,隧道通常是ldp标签交换路径(labelswitchedpath,lsp)。

其中,通过以下两个条件计算pq节点:

条件1、满足lfa无环路条件公式:dist(n,d)<dist(n,plr)+dist(plr,d);

条件2、满足以下pq节点选择条件:

p空间:以保护链路源端为根节点建立spf树,所有从根节点不经过保护链路可达的节点集合称为p空间。

扩展p空间:以保护链路源端的所有邻居为根节点分别建立spf树,所有从根节点不经过保护链路可达的节点集合称为扩展p空间。

q空间:以保护链路末端为根节点建立反向spf树,所有从根节点不经过保护链路可达的节点集合称为q空间。

pq节点:pq节点是指既在扩展p空间又在q空间的节点,pq节点作为保护隧道的目的端。这里,pq节点也即:头节点非直连的且能够将来自头节点的报文转发至相应的目的节点的远程中间节点。

如图3所示,报文转发路径为头节点1→目的节点2,主路径对应的链路l1为保护链路,为了避免头节点1、目的节点2之间的链路l1故障导致报文丢失,头节点1会上述两个条件计算pq节点:

1、头节点1分别计算以所有头节点1的邻居(不包括通过保护链路的邻居目的节点2)为根的spf树,每棵spf树中从根节点不经过链路l1可达的节点为p空间,所有邻居的p空间集合得到扩展p空间{头节点1,中间节点3,中间节点4,中间节点5};

2、头节点1计算以目的节点2为根节点的反向spf树,得到q空间{目的节点2、中间节点4,中间节点5};

3、头节点1确定既在扩展p空间又在q空间的节点(即pq节点)包括中间节点4和中间节点5。

头节点在确定了中间节点4和中间节点5为pq节点后,建立头节点1和中间节点5之间建立第一ldp隧道,以及建立头节点1和中间节点4之间建立第二ldp隧道。

s402、所述头节点基于多个所述pq节点对应的路径开销信息,确定所述第一pq节点和所述第二pq节点。

本申请实施例中,头节点将多个pq节点的路径开销信息进行比较,选取最小路径开销信息对应的pq节点为第一pq节点,从除第一pq节点之外最小路径开销信息对应的pq节点为第二pq节点。

考虑到存在多个pq节点对应的路径开销信息都相同的情况,在该种情况下,头节点通过多个pq节点的ip地址确定所述第一pq节点和所述第二pq节点,如图5所示,具体确定方法包括如下步骤:

s501、所述头节点在检测到多个所述pq节点对应的路径开销信息相同时,将多个所述pq节点的互联网协议地址ip地址进行比较。

s502、所述头节点根据多个所述pq节点的ip地址的比较结果,确定所述第一pq节点和第二pq节点。

结合步骤501至步骤502,头节点若确定多个pq节点对应的路径开销信息均相同,则将多个pq节点的ip地址进行比较。作为一种实施方式,头节点根据多个pq节点的ip地址的比较结果,确定ip地址最大的pq节点作为第一pq节点,确定多个pq节点中除第一pq节点之外的ip地址最大的pq节点作为第二pq节点。

如图3所示,头节点1确定中间节点4和中间节点5的路径开销信息均相同,此时,头节点1将中间节点4和中间节点5的ip地址进行比较,由于中间节点5的ip地址为5.5.5.5/32,中间节点4的ip地址为4.4.4.4/32,因此,头节点1选取中间节点5作为第一pq节点,选取中间节点4作为第二pq节点。

进一步的,如图6所示,本申请实施例提供的报文转发方法中,所述头节点进行主备拓扑切换,并基于切换后的所述备拓扑的转发表项进行报文转发,具体包括:

s601、所述头节点通过查找所述备拓扑的转发表项,获取所述第二备路径上的第二pq节点对应的出标签;其中,所述第二pq节点用于将接收的报文转发给所述目的节点。

本申请实施例中,头节点基于第二pq节点的ip地址,从备拓扑的与第二备路径对应的第二备转发表项中,查找对应于第二pq节点的ip地址的第二出标签。

如图3所示,头节点1查找到的对应于中间节点4的ip地址的4.4.4.4/32的第二出标签为1120。

s602、所述头节点基于所述第二pq节点对应的出标签进行报文转发。

本申请实施例中,头节点基于该第二出标签封装报文,并将带有第二出标签的报文发送给中间节点;中间节点在接收到带有第二出标签的报文后,基于第二出标签,查找到相应的标签转发表项,并从相应的标签转发表项中获取第四出标签,中间节点剥离第二出标签并基于第四出标签封装该报文,并将带有第四出标签的数据报文发送给第二pq节点。

第二pq节点接收带有第四出标签的报文,确定该第四出标签对应的ip地址为自身的ip地址,剥离报文中的第四出标签,获取报文的目的ip地址,并查找ip路由表中对应于报文的目的ip地址的出接口,通过出接口将该报文转发至目的节点。

结合图3,头节点1基于第二出标签1120封装报文,并将带有第二出标签1120的报文发送给中间节点3,中间节点3在接收到带有第二出标签1120的报文后,查找到作为入标签的第二出标签1120对应的第四出标签1200,并剥离第二出标签1120,并基于第四出标签1200封装报文,并将带有第四出标签1200的报文发送给中间节点4。中间节点4接收带有第四出标签1200的报文,确定该第四出标签1200对应自身的ip地址4.4.4.4/32,剥离报文中的第四出标签1200,获取报文的目的ip地址2.2.2.2/32,通过查找ip路由表中对应于2.2.2.2/32的出接口,通过查找到的出接口将报文转发至目的节点2。

进一步的,本申请实施例中提供的报文转发方法中,头节点基于切换后的所述备拓扑的转发表项进行报文转发之后,还包括:

所述头节点在基于发送的所述探测报文检测到所述主路径或者所述第一备路径恢复正常通信时,将当前备拓扑切换回所述主拓扑,并基于切换后的所述主拓扑的转发表项进行报文转发。

本申请实施例中,头节点在切换回主拓扑后,若第一备路径恢复正常通信但主路径未恢复正常通信,头节点则基于第一备路径对应的第一备转发表项转发报文;当主路径恢复正常通信时,头节点则基于主路径对应的主转发表项转发报文。

其中,头节点则基于第一备路径对应的第一备转发表项转发报文的具体过程如下:

头节点基于第一pq节点的ip地址,从主拓扑的与第一备路径对应的第一备转发表项中,查找对应于第一pq节点的ip地址的第一出标签。如图3所示,头节点1查找到的对应于中间节点5的ip地址的5.5.5.5/32的第二出标签为1100。

头节点基于该第一出标签封装报文,并将带有第一出标签的报文发送给中间节点;中间节点在接收到带有第一出标签的报文后,基于第一出标签,查找到相应的标签转发表项,并从相应的标签转发表项中获取第三出标签,中间节点剥离第一出标签并基于第三出标签封装该报文,并将带有第三出标签的数据报文发送给第一pq节点。

第一pq节点接收带有第三出标签的报文,确定该第三出标签对应的ip地址为自身的ip地址,剥离报文中的第三出标签,获取报文的目的ip地址,并查找ip路由表中对应于报文的目的ip地址的出接口,通过出接口将该报文转发至目的节点。

结合图3,头节点1基于第一出标签1100封装报文,并将带有第一出标签1100的报文发送给中间节点3,中间节点3在接收到带有第一出标签1100的报文后,查找到作为入标签的第一出标签1100对应的第三出标签1000,并剥离第一出标签1100,并基于第三出标签1000封装报文,并将带有第三出标签1000的报文发送给中间节点5。中间节点5接收带有第三出标签1000的报文,确定该第三出标签1000对应自身的ip地址5.5.5.5/32,剥离报文中的第三出标签1000,获取报文的目的ip地址2.2.2.2/32,通过查找ip路由表中对应于2.2.2.2/32的出接口,通过查找到的出接口将报文转发至目的节点2。

其中,头节点则切换到基于主路径对应的主转发表项转发报文,即头节点通过查找ip路由表直接将报文转发给目的节点。

本申请实施例的目的在于提供一种报文转发方法,头节点通过维护主备拓扑的转发表项,能够在由于目的节点配置监控链路组而导致主拓扑的转发表项无法应用时,快速切换到备拓扑的转发表项进行报文转发,加快了业务恢复的速度,缓解了大量丢包的问题。

本申请实施例提供了一种报文转发装置,所述装置用于执行上述报文转发方法,如图7所示,所述装置包括:

存储模块701,用于维护有将报文从头节点转发到目的节点的主备拓扑的转发表项;其中,主拓扑的转发表项包括与主路径对应的主转发表项和与第一备路径对应的第一备转发表项;备拓扑的转发表项包括与第二备路径对应的第二备转发表项。

检测模块702,用于在基于所述主拓扑的转发表项进行报文转发时,通过与所述主路径上的目的节点之间建立的双向转发检测bfd会话连接,周期性向所述目的节点发送第一探测报文;以及,通过与所述第一备路径上的第一pq节点之间建立的bfd会话连接,周期性向所述第一pq节点发送第二探测报文;其中,所述第一pq节点用于将接收的报文转发给所述目的节点。

转发模块703,用于在基于发送的所述第一探测报文和所述第二探测报文检测到所述主路径和所述第一备路径发生故障时,进行主备拓扑切换,并基于切换后的所述备拓扑的转发表项进行报文转发。

进一步的,如图7所示,本申请实施例提供的报文转发装置中,转发模块703,具体用于:

通过查找所述备拓扑的转发表项,获取所述第二备路径上的第二pq节点对应的出标签;其中,所述第二pq节点用于将接收的报文转发给所述目的节点;

基于所述第二pq节点对应的出标签进行报文转发。

进一步的,如图7所示,本申请实施例提供的报文转发装置中,转发模块703,具体用于:

基于所述第二pq节点对应的出标签封装所述报文,并将带有所述出标签的报文发送给中间节点,以使所述中间节点基于所述出标签将报文转发给所述第二pq节点,并由所述第二pq节点将所述报文转发给所述目的节点。

进一步的,本申请实施例提供的报文转发装置还包括一确定模块和第二确定模块;

第一确定模块,用于基于远程无环替换路径rlfa,确定对应于所述目的节点的多个pq节点;

第二确定模块,用于基于多个所述pq节点对应的路径开销信息,确定所述第一pq节点和所述第二pq节点。

进一步的,本申请实施例提供的报文转发装置中,第二确定模块,具体用于:

在检测到多个所述pq节点对应的路径开销信息相同时,将多个所述pq节点的互联网协议地址ip地址进行比较;

根据多个所述pq节点的ip地址的比较结果,确定所述第一pq节点和第二pq节点。

进一步的,本申请实施例提供的报文转发装置中,转发模块703,还用于在基于发送的所述探测报文检测到所述主路径或者所述第一备路径恢复正常通信时,将当前备拓扑切换回所述主拓扑,并基于切换后的所述主拓扑的转发表项进行报文转发。

本申请实施例提供的一种报文转发装置,头节点中维护有将报文从头节点转发到目的节点的主备拓扑的转发表项,头节点在基于主拓扑的转发表项进行报文转发时,分别通过与主路径上的目的节点以及与第一备路径上的第一pq节点之间建立的双向转发检测bfd会话连接,周期性检测主路径和第一备路径的通信状态,若检测到主路径和第一备路径发生故障,则将当前主拓扑切换为备拓扑,并基于备拓扑的转发表项进行报文转发。这样,头节点能够在由于目的节点配置监控链路组而导致主拓扑的转发表项无法应用时,快速切换到备拓扑的转发表项进行报文转发,加快了业务恢复的速度,缓解了大量丢包的问题。

如图8所示,为本申请实施例提供的一种网络设备80,包括:处理器801、存储器802和总线,所述存储器802存储有所述处理器801可执行的机器可读指令,当网络设备运行时,所述处理器801与所述存储器802之间通过总线通信,所述机器可读指令被所述处理器801执行时执行上述报文转发方法的步骤。

具体地,上述存储器802和处理器801能够为通用的存储器和处理器,这里不做具体限定,当处理器801运行存储器802存储的计算机程序时,能够执行上述报文转发方法。

对应于上述报文转发方法,本申请实施例提供的一种计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述报文转发方法。

本申请实施例所提供的报文转发装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本申请实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。

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

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

另外,在本申请提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围,都应涵盖在本申请的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1