SRv6报文转发方法、存储介质、电子设备及装置与流程

文档序号:30556628发布日期:2022-06-29 02:56阅读:319来源:国知局
SRv6报文转发方法、存储介质、电子设备及装置与流程
srv6报文转发方法、存储介质、电子设备及装置
技术领域
1.本技术涉及通信技术领域,具体涉及一种srv6报文转发方法、存储介质、电子设备及装置。


背景技术:

2.段路由(segment routing,sr)协议是一种源路由协议,由源节点来为应用报文指定路径,并将路径转化成一个有序的段列表封装到报文头中,位于该路径的中间节点只需要根据报文头中指定的路径进行转发。段列表是指导网络节点(例如,路由器等)处理报文的任何指令,如:根据最短路径转发报文到目的地、通过指定接口转发报文或者将报文转发到指定的应用或者业务实例等。
3.srv6全称是segment routing ipv6,当下最为热门的segment routing和ipv6两种网络技术的结合体。目前对于evpn业务封装srv6的隧道,存在双归接入bum报文成环的问题,在目前的转发装置上尚没有成熟的解决方案。
4.在现有的技术中,针对srv6的单播转发,有很好的转发方案,但是对于多播报文,转发方案存在一定的问题,无法达到处理双归防环的效果。因此,为应对该技术问题,现提供一种针对srv6的报文转发技术。


技术实现要素:

5.本技术提供一种srv6报文转发方法、存储介质、电子设备及装置,在存在双归接入情况的设备进行报文转发时添加识别标识,从而在接收报文时,通过识别标识来进行报文接收或丢弃的判断工作,简单高效的实现双归防环的工作效率,为srv6报文的转发工作提供便利。
6.第一方面,本技术提供了一种srv6报文转发方法、存储介质、电子设备及装置,所述方法包括以下步骤:
7.若pe1和pe2与ce双归接入,在所述ce向所述pe1,pe1向pe2方向的连接通路配置识别标识;
8.所述ce根据来自pe2报文中是否存在所述识别标识决定是否丢弃该报文;其中,
9.ce分别与pe1和pe2之间信号连接,pe1与pe2之间信号连接,基于pe1与pe2之间的连接通路以及pe2与ce之间的连接通路,ce向pe1发送的报文转发至pe2,再从pe2返回至ce。
10.进一步的,所述ce根据来自pe2报文中是否存在所述识别标识决定是否丢弃该报文之前,所述方法还包括以下步骤:
11.所述pe1接收所述ce发送的报文并需要转发至所述pe2时,在所述pe1向所述pe2发送的报文中添加所述pe1向pe2方向对应的识别标识;
12.所述pe2接收并向所述ce转发所述pe1向所述pe2发送的报文。
13.进一步的,所述ce根据来自pe2报文中是否存在所述识别标识决定是否丢弃该报文之前,所述方法还包括以下步骤:
14.在所述pe1向所述pe2的连接通路配置pe1-pe2表项,所述pe1-pe2表项包括所述识别标识和所述pe1向所述pe2的pe1-pe2连接通路信息;
15.在所述ce向所述pe1的连接通路配置ce-pe1表项,所述ce-pe1表项包括所述识别标识和所述ce向所述pe1的ce-pe1连接通路信息;
16.根据所述ce-pe1表项和所述pe1-pe2表项得到第一查找表项,所述第一查找表项包括ce-pe1连接通路信息、pe1-pe2连接通路信息以及共同对应的所述识别标识。
17.具体的,所述ce根据来自pe2报文中是否存在所述识别标识决定是否丢弃该报文中,包括以下步骤:
18.所述ce接收来自pe2报文,并判断来自pe2报文中是否存所述识别标识;
19.若来自pe2报文中存在所述识别标识,所述ce丢弃该报文。
20.具体的,所述在所述pe1向pe2方向的连接通路配置识别标识中,包括以下步骤:
21.若所述pe1与所述pe2之间没有其他pe,在所述pe1向所述pe2发送的报文中添加pe1-pe2连接通路配置所述识别标识。
22.具体的,在所述pe1向所述pe2发送的报文中添加pe1-pe2连接通路配置所述识别标识中,包括以下步骤:
23.在所述pe1向所述pe2发送的报文的ipv6_dip的args部分中添加所述识别标识。
24.具体的,在所述pe1向所述pe2方向的报文配置识别标识所述方法包括以下步骤:
25.所述pe1与所述pe2之间存在其他pe时,在所述pe1向所述pe2发送的报文的vpn_sid的args部分中添加所述识别标识。
26.第二方面,本技术提供了一种存储介质,该存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面提及的针对srv6的报文转发方法。
27.第三方面,本技术提供了一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现第一方面提及的针对srv6的报文转发方法。
28.第四方面,本技术提供了一种针对srv6的报文转发装置,所述装置包括:
29.esi标记配置模块,其用于若pe1和pe2与ce双归接入,在所述ce向所述pe1,pe1向pe2方向的连接通路配置识别标识;
30.esi标记识别模块,其用于控制所述ce根据来自pe2报文中是否存在所述识别标识决定是否丢弃该报文;其中,
31.ce分别与pe1和pe2之间信号连接,pe1与pe2之间信号连接,基于pe1与pe2之间的连接通路以及pe2与ce之间的连接通路,ce向pe1发送的报文转发至pe2,再从pe2返回至ce。
32.本技术提供的技术方案带来的有益效果包括:
33.本技术在存在双归接入情况的设备进行报文转发时添加识别标识,从而在接收报文时,通过识别标识来进行报文接收或丢弃的判断工作,简单高效的实现双归防环的工作效率,为srv6报文的转发工作提供便利。
附图说明
34.术语解释:
35.pe:provider edge,服务侧边缘设备;
36.ce:customer edge,客户侧边缘设备;
37.sid:system identification,系统识别码;
38.esi:ethernet segment identifier以太网数据段标识符
39.srh:segment routing header段路由头
40.ipv6:internet protocol version 6,互联网协议第6版;
41.dip:destination internet protocol,目的ip;
42.dmac:destination media access control,目的mac;
43.vsi:virtual switch interface,虚拟交换接口;
44.mac:media access control address,mac地址,即局域网地址;
45.eth:ethernet,以太网;
46.ac:access controller,接入控制器;
47.pw:pseudo wire,虚链路/伪线;
48.bum:broad cast&unknown-unicast&multicast。
49.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
50.图1为本技术实施例中提供的srv6报文转发方法的步骤流程图;
51.图2为本技术实施例中提供的srv6报文转发方法中其中一种组网场景示意图;
52.图3为本技术实施例中提供的srv6报文转发方法中现有的srv6的sid的组成示意图;
53.图4为本技术实施例中提供的srv6报文转发方法中针对srv6的sid的改造示意图;
54.图5为本技术实施例中提供的srv6报文转发方法中在多层sid的场景下srv6报文原始切换至增加识别标识后的srv6报文的组成结构示意图;
55.图6为本技术实施例中提供的srv6报文转发方法中在一层sid的场景下srv6报文原始切换至增加识别标识后的srv6报文的组成结构示意图;
56.图7为本技术实施例中提供的srv6报文转发方法中其中一种组网场景示意图;
57.图8为本技术实施例中提供的srv6报文转发方法中其中一种组网场景示意图;
58.图9为本技术实施例中提供的srv6报文转发方法中其中一种组网场景示意图;
59.图10为本技术实施例中提供的srv6报文转发方法中其中一种组网场景示意图;
60.图11为本技术实施例中提供的srv6报文转发方法中的报文封装流程图;
61.图12为本技术实施例中提供的srv6报文转发方法中的报文解封流程图;
62.图13为本技术实施例中提供的srv6报文转发装置的结构框图。
具体实施方式
63.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
64.以下结合附图对本技术的实施例作进一步详细说明。
65.本技术实施例提供一种srv6报文转发方法、存储介质、电子设备及装置,在存在双归接入情况的设备进行报文转发时添加识别标识,从而在接收报文时,通过识别标识来进行报文接收或丢弃的判断工作,简单高效的实现双归防环的工作效率,为srv6报文的转发工作提供便利。
66.为达到上述技术效果,本技术的总体思路如下:
67.一种针对srv6的报文转发方法,该方法包括以下步骤:
68.s1、若pe1和pe2与ce双归接入,在ce向pe1,pe1向pe2方向的连接通路配置识别标识;
69.s2、ce根据来自pe2报文中是否存在识别标识决定是否丢弃该报文;其中,
70.ce分别与pe1和pe2之间信号连接,pe1与pe2之间信号连接,基于pe1与pe2之间的连接通路以及pe2与ce之间的连接通路,ce向pe1发送的报文转发至pe2,再从pe2返回至ce。
71.以下结合附图对本技术的实施例作进一步详细说明。
72.第一方面,参见图1~12所示,本技术实施例提供一种针对srv6的报文转发方法,该方法包括以下步骤:
73.s1、若pe1和pe2与ce双归接入,在ce向pe1,pe1向pe2方向的连接通路配置识别标识;
74.s2、ce根据来自pe2报文中是否存在识别标识决定是否丢弃该报文。
75.其中,ce分别与pe1和pe2之间信号连接,pe1与pe2之间信号连接,基于pe1与pe2之间的连接通路以及pe2与ce之间的连接通路,ce向pe1发送的报文转发至pe2,再从pe2返回至ce;
76.在ce向pe1,pe1向pe2方向的连接通路配置识别标识时,具体可以是在ce与pe1之间的端口或ce与pe2之间的端口配置识别标识,具体配置情况,可根据实际情况进行设定。
77.另外,ce为用户侧边缘设备,是服务提供商连接所有用户的路由器,ce路由器通过连接一个或者多个pe路由器,为用户提供服务连接;
78.pe为服务侧边缘设备,是服务提供商骨干网的边缘路由器,pe路由器用来连接ce路由器和骨干路由器,是重要的网络节点,用户数据通过pe路由器流入用户网络,或者通过pe路由器流入mpls骨干网。
79.本技术实施例的针对srv6的报文转发方法可用于应对如说明书附图的图2中所示的双归接入的情况,即ce2与pe1以及pe2之间存在双归接入的情况。
80.需要说明的是,如说明书附图的图3所示,根据标准定义,srv6sid主要由三部分组成,包括locator、function以及args部分,args部分为自定义部分;
81.本技术实施例的识别标识可以是esi标识,esi标识需要封装到sid的args部分中,根据目前srv6的标准,args部分就是用户自定义部分,本技术实施例则是在args部分增加esi标识,用来进行双归的防环处理,esi标识用来在下游设备进行合法性检查和丢包使用,防止报文回到原来的ce设备;
82.esi标识可以是预先设定也可以是根据特定规则基于特定的参数进行转换。
83.其中,报文封装时需要打上esi标识,如果是多层sid,需要在vpn_sid的args部分增加esi标识,从而将没有打上esi的报文与打上了esi标识的报文的具体区别,如说明书附
图的图5所示;
84.报文封装时需要打上esi标识,如果只有一层vpn_sid,这时没有srh信息以及sid信息,需要在ip_tunnel的ipv6_dip中args部分增加esi标识,没有加上esi标识的报文和加上了esi标识的报文的具体区别,如说明书附图的图6所示,
85.其中,报文转发时需要有个ipv6的头部信息,其通常称为ipv6_header,也可把ip_tunnel改为ipv6_header;
86.报文在pe设备封装了srh头部、segment list信息、vpn_sid信息以及eth信息,在封装的过程中,需要判断dmac+vsi在mac表中是否可以命中,若不能命中,需要在srv6信息封装完成后,再加上一个esi标识,
87.其中,segmentlist是路由段的列表,其内部存放了很多sid列表,报文每走一段路径都会去列表中取一个sid进行转发,通俗的说就是其内部存放多段目的地址信息,达到一个地址后,再去获取下一个地址信息。
88.另外,esi标识是加在sid后面的args部分,但是并不是所有的洪泛业务都需要加上esi标识;
89.首先没有双归接入的ac口是不需要加上esi标识,因为它不存在回环的问题,所以ac口的判断是是否加上esi标识的一个依据。比如图7中的通过port_1进入的报文是不需要加上esi标识。
90.其次,确认了ac端口以后,并不是所有的网络侧出口都需要加上esi标识,不存在回环可能的网络侧出口是不需要加上esi标识,如图7所示,网络侧port_3由于不存在回环可能,故而不需要加上esi标识;
91.在图7所示中,在pe1设备,只有在双归接入的ac口port_2进入的报文,同时报文在洪泛域通过pw2的网络侧出去的报文,这个时候才需要在微码中加上esi的标识。即在报文进行bum流程中,需要通过用户侧入口加上pw业务来索引esi标识,能够索引到esi标识,才需要把esi标识加入到报文中。
92.另外,在落地站,如果是只有一层sid,也就是不存在多层sid的情况,需要解析报文转发所需要的信息的同时,解析报文ipv6_dip的args部分的信息,从args中获取esi的值;
93.在落地站,如果是有多层sid信息,需要解析报文转发所需要的信息的同时,解析报文的vpn_sid的args的信息,从args中获取esi的值;
94.获取到esi的值以后,需要判断esi的值是否为有效esi,如果是无效esi的值,在转发面微码处理中直接丢弃,如果有效,则继续洪泛转发;
95.在落地站,pe设备接收到srv6报文后,进行srh头和ip_tunnel的剥离,经过报文的end或者end.x的模式查找到报文的出口后,需要根据esi以及出端口进行查找匹配,查找完成后进行报文的转发或者丢弃,这样就可以防止报文回环。
96.本技术实施例,在存在双归接入情况的设备进行报文转发时添加识别标识,从而在接收报文时,通过识别标识来进行报文接收或丢弃的判断工作,简单高效的实现双归防环的工作效率,为srv6报文的转发工作提供便利。
97.具体的,在所述ce向所述pe1,pe1向pe2方向的连接通路配置识别标识中,所述方法包括以下步骤:
98.在所述ce向所述pe1的连接通路配置识别标识;
99.在所述pe1向所述pe2的连接通路配置与所述ce向所述pe1的连接通路相同的识别标识。
100.进一步的,所述ce根据来自pe2报文中是否存在所述识别标识决定是否丢弃该报文之前,所述方法还包括以下步骤:
101.所述pe1接收所述ce发送的报文并需要转发至所述pe2时,在所述pe1向所述pe2发送的报文中添加所述pe1向pe2方向对应的识别标识;
102.所述pe2接收并向所述ce转发所述pe1向所述pe2发送的报文。
103.进一步的,所述ce根据来自pe2报文中是否存在所述识别标识决定是否丢弃该报文之前,所述方法还包括以下步骤:
104.在所述pe1向所述pe2的连接通路配置pe1-pe2表项,所述pe1-pe2表项包括所述识别标识和所述pe1向所述pe2的pe1-pe2连接通路信息;
105.在所述ce向所述pe1的连接通路配置ce-pe1表项,所述ce-pe1表项包括所述识别标识和所述ce向所述pe1的ce-pe1连接通路信息;
106.根据所述ce-pe1表项和所述pe1-pe2表项得到第一查找表项,所述第一查找表项包括ce-pe1连接通路信息、pe1-pe2连接通路信息以及共同对应的所述识别标识。
107.具体的,所述ce根据来自pe2报文中是否存在所述识别标识决定是否丢弃该报文中,包括以下步骤:
108.所述ce接收来自pe2报文,并判断来自pe2报文中是否存所述识别标识;
109.若来自pe2报文中存在所述识别标识,所述ce丢弃该报文。
110.具体的,所述在所述pe1向pe2方向的连接通路配置识别标识中,包括以下步骤:
111.若所述pe1与所述pe2之间没有其他pe,在所述pe1向所述pe2发送的报文中添加pe1-pe2连接通路配置所述识别标识。
112.具体的,在所述pe1向所述pe2发送的报文中添加pe1-pe2连接通路配置所述识别标识中,包括以下步骤:
113.在所述pe1向所述pe2发送的报文的ipv6_dip的args部分中添加所述识别标识。
114.具体的,在所述pe1向所述pe2方向的报文配置识别标识所述方法包括以下步骤:
115.所述pe1与所述pe2之间存在其他pe时,在所述pe1向所述pe2发送的报文的vpn_sid的args部分中添加所述识别标识。
116.基于本技术实施例的技术方案的核心思想,结合多种路径图对本技术实施例的技术方案进行说明,具体情况如下:
117.如图7所示,该图描述了一个包含单、双归接入的组网场景,ce1单归接入pe1,ce2双归接入pe1和pe2,基于此网路连接基础下,进行说明:
118.情况一:如图8所示,ce1发送报文到pe1之后,在pe1上进行组播洪泛,会通过pw1和pw2转发报文,由于水平分割的功能而不会向ce2进行转发,pe3收到转发来的报文之后向ce3转发,pe2收到报文之后向ce2转发,此情况下并不存在业务报文成环的问题。
119.情况二:如图9所示,ce2发送报文到pe2之后,在pe2上进行组播洪泛,会向pe1转发报文;
120.pe1收到报文之后,会同时向ce1和ce2转发,若ce2可以收到报文,那么ce2则收到
自己发送出去的报文,即出现成环情况;
121.此时需要在pe1上阻断向ce2发送的报文来达到双归不成环的效果,而洪泛过程中区别就在于ce1和ce2属性不同,那么则需要根据出口属性来进行报文丢弃。
122.情况三:如图10所示,ce2发送报文到pe1之后,在pe1上进行组播洪泛,会通过pw1和pw2转发报文,pe3收到转发来的报文之后向ce3转发,pe2收到报文之后向ce2转发;
123.若ce2可以收到报文,那么ce2就收到了自己发出的报文而成环了,因此,在pe2上需要对转发到ce2的报文进行丢弃。
124.对比图8和图10,同样是由pe1洪泛到pe2的报文,在图8中可以由pe2洪泛到ce2上,而图10中pe2却不能向ce2进行洪泛,两种场景的出口同为ce2,因此需要对由pe1转发到pe2上的报文进行标记,在pe2上通过标记来决定是否向ce2转发。
125.对比图8和图10,pe1需要对洪泛到pe2的报文进行标记,pe1对洪泛到pe3的报文不需要进行标记,此时报文的来源不一样,洪泛出口也不一样,因此需要通过报文的来源以及出口信息进行标记的添加。
126.再者,以图10为例进行报文标记的添加以及阻断报文转发的功能说明:
127.由于ce2双归接入pe1和pe2,根据pe1和pe2相连接的pw2配置esi标识,配置表项内容为esi+pw2(vpn_sid);
128.同时pe1与ce2相连的ac侧也配置esi标识,配置表项内容为out_ac_port+esi;
129.此时由ac侧(ac则存在in_ac_port和out_ac_port)和pw侧两端的信息可以合成一个查找表项,配置表项为in_ac_port+vpn_sid

esi。
130.ce2向pe1发送报文之后,在pe1上向pw1和pw2进行洪泛;
131.在转发过程中,匹配in_ac_port+vpn_sid表项成功之后,将表项查找的结果esi标识添加到vpn_sid的args部分,查找不成功则不进行esi标识添加;
132.此时向pw1转发的报文内容不携带esi标识,向pw2转发的报文将携带esi标识;
133.添加esi标识之后可继续进行srv6转发流水查找,若pe1和pe2之间还存在p结点,则封装之后的报文如图5所示。
134.其中,若pe1和pe2之间没有p结点,则封装之后的报文如图4所示;
135.若pe1和pe2之间存在p结点,报文通过p结点进行段路由,最终图5中的segment list[0](vpn_sid+esi)会被拷贝到ipv6头的dip信息中并转发到pe2上,
[0136]
segment list[0]作为存放vpn_sid的地方,segment list[0]有128bit,而vpn_sid一般用不到128bit,故而若有esi标识,那么最后8bit就存放esi,
[0137]
同时在报文封装时,ipv6的dip就是把segment list[0]的内容拷贝到ipv6的dip中;
[0138]
两种情形下,在落地站上收到的报文esi标识都是存在于ipv6头的dip信息中。
[0139]
在pe2上收到srv6封装的报文,在dip信息中提取esi标识,提取完成之后继续进行洪泛转发;
[0140]
当转发到ac侧时,查表匹配out_ac_port+esi,若匹配成功,将洪泛到该成员ac侧的报文丢弃,ce2不会收到自己发送出去的报文,可达到防环的目的,
[0141]
其中,out_ac_port是指用户侧的出方向的端口信息。
[0142]
在上述的功能的基础上,以图8为例接着进行报文转发说明。
[0143]
由于ce1单归接入pe1,那么pe1和pe2相连接的pw2将不会配置esi标识(esi与ce相关,在同一个洪泛域bd内,连接不同的ce侧将分配不同的esi值,不会产生冲突);
[0144]
此时pe2与ce1相连的ac侧也会配置esi标识,配置表项内容为out_ac_port+esi;
[0145]
ce1向pe1发送报文之后,在pe1上向pw1和pw2进行洪泛,在转发过程中,匹配in_ac_port+vpn_sid表项不成功,不进行esi标识添加,此时向pw1转发的报文内容不携带esi标识,向pw2转发的报文也不携带esi标识,
[0146]
其中,in_ac_port是指用户侧的入端口信息,也就是报文的入端口信息,报文从哪个端口进行,该端口则是报文的入端口,
[0147]
vpn_sid指私网的sid信息,携带在报文中;
[0148]
在pe2上收到srv6封装的报文,在dip信息中提取esi标识,此时将提取不到esi标识。
[0149]
提取完成之后继续进行洪泛转发。当转发到ac侧时,查表匹配out_ac_port+esi,无法匹配成功,洪泛报文将从该ac侧转发出去。即ce2可收到转发报文。
[0150]
在上述的功能的基础上,以图8为例,进行报文转发说明:
[0151]
由于ce2双归接入pe1和pe2,那么根据pe1和pe2相连接的pw2配置esi标识,配置表项内容为esi+pw2(vpn_sid),
[0152]
其中,芯片会解析报文,提取报文中的esi和vpn_sid信息,同时需要在芯片的内存中保存有关键字为esi和vpn_sid的一条数据信息,芯片从报文中提取esi和vpn_sid在芯片的内存中查询,根据查询结果来决定报文的转发流程;
[0153]
同时pe2与ce2相连的ac侧也配置esi标识,配置表项内容为out_ac_port+esi,
[0154]
其中,芯片会解析报文,提取报文中的esi信息,然后根据转发结果中获取出端口(out_ac_port)信息,同时需要在芯片的内存中保存有关键字为esi和端口的一条数据信息,芯片从报文中提取esi,同时根据转发结果提取出端口,最终根据esi+端口在芯片的内存中查询,根据查询结果来最终决定报文的转发流程;
[0155]
此时由ac侧(ac则存在in_ac_port和out_ac_port)和pw侧两端的信息可以合成一个查找表项,配置表项为in_ac_port+vpn_sid

esi。
[0156]
ce2向pe2发送报文之后,在pe2上进行洪泛到pe1,在转发过程中,匹配in_ac_port+vpn_sid表项成功之后,将表项查找的结果esi标识添加到vpn_sid的args部分。
[0157]
添加esi标识之后可继续进行srv6转发流水查找,若pe1和pe2之间还存在p结点,则封装之后的报文如图5所示。
[0158]
其中,若pe1和pe2之间没有p结点,则封装之后的报文如图6所示;
[0159]
若pe1和pe2之间存在p结点,报文通过p结点进行段路由,最终图5中的segment list[0](vpn_sid+esi)会被拷贝到ipv6头的dip信息中并转发到pe1上,
[0160]
segment list[0]作为存放vpn_sid的地方,segment list[0]有128bit,而vpn_sid一般用不到128bit,故而若有esi标识,那么最后8bit就存放esi,
[0161]
同时在报文封装时,ipv6的dip就是把segment list[0]的内容拷贝到ipv6的dip中;
[0162]
两种情形下,在落地站上收到的报文esi标识都是存在于ipv6头的dip信息中。
[0163]
在pe1上收到srv6封装的报文,在dip信息中提取esi标识,提取完成之后继续进行
洪泛转发。
[0164]
当转发到ac侧时,查表匹配out_ac_port+esi,若匹配成功,将洪泛到该成员ac侧的报文丢弃,若匹配不成功,则不丢弃;
[0165]
因此,pe1收到pe2转发来的报文后进行洪泛,可以转发到ce1,而不会向ce2转发,ce2不会收到自己发送出去的报文,可达到防环的目的。
[0166]
图11列出了srv6的报文封装流程图,在现有的流程基础上做了改进,需要查表in_ac_port+vpn_sid得到esi,然后在微码组包的时候,把esi标识添加到vpn_sid中的args部分中。
[0167]
图12列出了srv6的报文解封装的流程中,在现有流程基础上做了改进,需要在入口解析esi标识,检查esi的有效性,最后转发出去的时候需要根据out_ac_port+esi查表,匹配成功,则将洪范报文丢弃,完成防环处理,若匹配不成功,则从端口正常的转发出去,说明不需要防环。
[0168]
第二方面,本技术实施例提供了一种存储介质,该存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面提及的针对srv6的报文转发方法。
[0169]
第三方面,本技术实施例提供了一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现第一方面提及的针对srv6的报文转发方法。
[0170]
第四方面,参见图13所示,本技术实施例提供了一种针对srv6的报文转发装置,该装置包括:
[0171]
esi标记配置模块,其用于若pe1和pe2与ce双归接入,在所述ce向所述pe1,pe1向pe2方向的连接通路配置识别标识;
[0172]
esi标记识别模块,其用于控制所述ce根据来自pe2报文中是否存在所述识别标识决定是否丢弃该报文。
[0173]
其中,ce分别与pe1和pe2之间信号连接,pe1与pe2之间信号连接,基于pe1与pe2之间的连接通路以及pe2与ce之间的连接通路,ce向pe1发送的报文转发至pe2,再从pe2返回至ce;
[0174]
在ce向pe1,pe1向pe2方向的连接通路配置识别标识时,具体可以是在ce与pe1之间的端口或ce与pe2之间的端口配置识别标识,具体配置情况,可根据实际情况进行设定。
[0175]
本技术实施例的针对srv6的报文转发方法可用于应对如说明书附图的图2中所示的双归接入的情况,即ce2与pe1以及pe2之间存在双归接入的情况。
[0176]
需要说明的是,根据标准定义,srv6 sid主要由三部分组成,包括locator、function以及args部分;
[0177]
本技术实施例,在存在双归接入情况的设备进行报文转发时添加识别标识,从而在接收报文时,通过识别标识来进行报文接收或丢弃的判断工作,简单高效的实现双归防环的工作效率,为srv6报文的转发工作提供便利。
[0178]
具体的,该装置还包括报文标记模块,其用于所述pe1接收所述ce发送的报文并需要转发至所述pe2时,在所述pe1向所述pe2发送的报文中添加所述pe1向pe2方向对应的识别标识;
[0179]
所述pe2接收并向所述ce转发所述pe1向所述pe2发送的报文。
[0180]
具体的,该装置还包括表项配置模块,其用于在所述pe1向所述pe2的连接通路配置pe1-pe2表项,所述pe1-pe2表项包括所述识别标识和所述pe1向所述pe2的pe1-pe2连接通路信息;
[0181]
该表项配置模块还用于在所述ce向所述pe1的连接通路配置ce-pe1表项,所述ce-pe1表项包括所述识别标识和所述ce向所述pe1的ce-pe1连接通路信息;
[0182]
该表项配置模块还用于根据所述ce-pe1表项和所述pe1-pe2表项得到第一查找表项,所述第一查找表项包括ce-pe1连接通路信息、pe1-pe2连接通路信息以及共同对应的所述识别标识。
[0183]
具体的,esi标记识别模块用于在所述ce接收来自pe2报文后,判断来自pe2报文中是否存所述识别标识;
[0184]
若来自pe2报文中存在所述识别标识,控制所述ce丢弃该报文。
[0185]
具体的,esi标记配置模块还用于若所述pe1与所述pe2之间没有其他pe,在所述pe1向所述pe2发送的报文的ipv6_dip的args部分中添加所述识别标识。
[0186]
具体的,esi标记配置模块还用于所述pe1与所述pe2之间存在其他pe时,所述pe1与所述pe2之间存在其他pe时,在所述pe1向所述pe2发送的报文的vpn_sid的args部分中添加所述识别标识。
[0187]
需要说明的是,在本技术中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0188]
以上仅是本技术的具体实施方式,使本领域技术人员能够理解或实现本技术。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1