一种实现虚拟专用网VPN本地互访的方法以及相关装置与流程

文档序号:37295896发布日期:2024-03-13 20:44阅读:12来源:国知局
一种实现虚拟专用网VPN本地互访的方法以及相关装置与流程

本技术涉及通信,尤其涉及一种实现虚拟专用网vpn本地互访的方法以及相关装置。


背景技术:

1、虚拟路由转发(virtual routing and forwarding,vrf)通过在一台网络设备上创建多张路由表实现数据或业务的隔离,常用于多协议标签交换虚拟专用网(multi-protocol label switching virtual private network,mpls vpn)或者防火墙等一些需要实现隔离的应用场景。具体的,在网络设备上创建一个或多个vrf,vrf又称vpn实例(vpninstance),每个vrf拥有独立的接口、路由表以及路由协议进程等信息。vrf中的路由表又称为vrf表。

2、在vpn的本地互访场景下,不同的用户边缘设备(customer edge,ce)可以通过边界网关协议(border gateway protocol route target,bgp)实现业务互访。示例性的,在服务商边缘设备(provider edge,pe)中,为ce1创建vrf1表,为ce2创建vrf2表。vrf1表中记录pe从ce1学习的路由,vrf2表中记录pe从ce2中学习的路由。当vrf1表的路由目标属性(route target,rt)指示vrf1表的导出路由目标(export route target,ert)与vrf2表的导入路由目标(import route target,irt)匹配时,pe将vrf1表拷贝到vrf2表中。通过上述方式,实现ce1与ce2的业务互访。

3、申请人研究发现,pe将vrf1表拷贝到vrf2表中,存在工作量巨大,无法实现的问题。目前常用的方法是,pe将vrf1表中的一条路由,拷贝到vrf2表中,以节省工作量。而这种方法带来新的问题,受限于仅拷贝一条路由至vrf2表,当vrf1表支持负载分担时,无法在vrf2表中实现vrf1表的负载分担。


技术实现思路

1、第一方面,本技术实施例提出一种实现虚拟专用网vpn本地互访的方法,包括:

2、在所述第一通信装置的第一虚拟路由转发vrf表中保存到达第二通信装置的第一vpn路由,所述第一vpn路由包括路由前缀和第一下一跳,所述第一下一跳指向所述第一通信装置的第一接口,其中,所述第一通信装置通过所述第一接口与所述第二通信装置通信连接;

3、根据所述第一vrf表关联的导出路由目标export rt和第二vrf表关联的导入路由目标import rt的匹配关系,将第二vpn路由保存到所述第一通信装置的第二vrf表中,其中,所述第二vpn路由包括所述路由前缀和第二下一跳,所述第二下一跳指向所述第一vrf表。

4、需要说明的是,第一vrf表也可以称为第一vrf表中的路由表。由于vrf等价于vpn实例(vpn instance),因此,第一vrf表也可以称为第一vpn实例中的路由表。第一vrf表可以是第一vrf表中的任一个或多个路由表,也可以是第一vrf表中的所有路由表。类似的,第二vrf表也可以称为第二vrf表中的路由表,或者,第二vpn实例中的路由表。本技术实施例对此不作限制。

5、本技术实施例中,第一vrf表的第一vpn路由包括路由前缀和第一下一跳,第一下一跳指向第一通信装置的第一接口。第一通信装置在本地实现第一vrf表和第二vrf表的路由交叉,生成的第二vpn路由存储至第二vrf表中,第二vpn路由包括与第一vpn路由相同的路由前缀,第二vpn路由包括的第二下一跳指向第一vrf表。通过上述方法,实现vpn本地互访。在占用较小存储空间的情况下,实现第二vrf表继承第一vrf表的路由属性,有效解决路由传递失真的问题,提升了方案的适用范围。

6、结合第一方面,在第一方面的一种可能的实现方式中,所述路由前缀包括:互联网协议(internet protocol,ip)地址,或者,媒体访问控制(media access control,mac)地址。换言之,本技术实施例提出的实现虚拟专用网(virtual private network,vpn)本地互访的方法,除了可以应用于vpn技术的网络中,还可以应用于以太网虚拟专用网络(ethernet virtual private network,evpn)技术的网络中,本技术实施例对此不作限制。

7、结合第一方面,在第一方面的一种可能实现方式中,所述第二vrf表继承所述第一vrf表的路由属性。具体的,由于第二vrf表中的第二vpn路由包括的第二下一跳指向第一vrf表,因此,第二vrf表可以继承第一vrf表具有的路由属性。路由属性包括以下任意一项或多项:负载分担、负载均衡、快速重路由,或者,表项关联。例如:第一vrf表包括多个vpn路由(第一vrf表),该多个vpn路由(第一vrf表)的路由前缀与第二vpn路由的路由前缀相同,则第二vpn路由的流量可以通过该多个vpn路由(第一vrf表)实现负载分担。换言之,第二vpn路由的流量通过该多个vpn路由(第一vrf表)转发。

8、结合第一方面,在第一方面的一种可能实现方式中,所述第二vrf表包括多个vpn路由,所述多个vpn路由包括相同的所述路由前缀,所述多个vpn路由中包括所述第二vpn路由。具体的,第二vrf表还可以包括具有相同路由前缀的多个vpn路由,该多个vpn路由中包括下一跳指向第一vrf表的第二vpn路由,该多个vpn路由中还可以包括指向其他vrf表的vpn路由,例如指向第三vrf表的第三vpn路由。通过上述方法,实现第二vrf表继承多个不同vrf表的路由属性。

9、结合第一方面,在第一方面的一种可能实现方式中,所述第二vrf表与所述第一通信装置的第二接口绑定,所述第二接口与所述第二vpn路由对应,所述第一通信装置通过所述第二接口与第三通信装置连接。具体的,第一通信装置为服务商边缘设备(provideredge,pe),第一通信装置与至少两个用户边缘设备(customer edge,ce)连接。第一通信装置(pe)通过第一vrf表和第二vrf表实现两个ce(例如ce1和ce2)的业务互联。例如:第一vrf表与第二通信装置(ce1)对应,第二vrf表与第三通信装置(ce2)对应。

10、结合第一方面,在第一方面的一种可能实现方式中,所述第一通信装置从所述第二接口中接收流量;所述第一通信装置根据所述第二接口,从所述第二vrf表中确定所述第二vpn路由;所述第一通信装置根据所述第二vpn路由,从所述第一vrf表中查找与所述流量匹配的所述第一vpn路由;所述第一通信装置根据所述第一vpn路由,通过所述第一接口转发所述流量。示例性的,若该第一vpn路由包括多个vpn路由时,通过负载分担的方式转发上述流量。

11、结合第一方面,在第一方面的一种可能实现方式中,所述第二下一跳包括所述第一vrf表的标识信息。具体的,第一通信装置将第二vrf表中第二vpn路由包括的第二下一跳设置为所述第一vrf表的标识信息。例如:第一vrf表的标识信息为“vrf1”,第二vpn路由的格式:“prefix/mask,nexthop:vrf1”。

12、结合第一方面,在第一方面的一种可能实现方式中,所述第一通信装置获取第二通信装置的第一路由信息;所述第一通信装置生成第一vpn路由,所述第一vpn路由包括所述第一路由信息和第一路由区分属性rd,所述第一rd用于标识所述第一路由信息,所述第一rd为所述第一通信装置向所述第一路由信息分配的路由区分属性;所述第一通信装置将所述第一vpn路由和第一路由目标属性rt关联,存储至所述第一vrf表。

13、关于路由区分属性rd,rd具有全局唯一性。示例性的,通过将8比特(byte)的rd作为ipv4地址前缀的扩展,使不唯一的ipv4地址(例如第一路由信息)转化为唯一的vpnv4地址(例如第一vpn路由)。

14、关于路由目标属性rt,rt使用了bgp中扩展团体属性,用于路由的分发,具有全局唯一性。同一个rt只能被一个vpn使用,rt包括导入路由目标属性(import route target,irt)和导出路由目标属性(export route target,ert),分别用于路由信息的导入和导出策略。每个vrf都有irt和ert。当pe从vrf中导出路由时,需要ert对该路由进行标记;当pe接收路由时,只有路由的ert和本地vrf的irt相匹配时,才能将接收的路由导入本地vrf中。

15、结合第一方面,在第一方面的一种可能实现方式中,所述第一通信装置生成所述第一vpn路由,包括:所述第一通信装置通过边界网关协议网络bgp network方式导入所述第一路由信息,或者,所述第一通信装置通过边界网关协议导入bgp import方式导入所述第一路由信息;所述第一通信装置根据所述第一路由信息和所述第一rd生成所述第一vpn路由。本技术实施例中第一通信装置可以导入单条路由信息,也可以导入多条路由信息,提升了方案的实现灵活性。

16、结合第一方面,在第一方面的一种可能实现方式中,所述第一通信装置获取第三通信装置的第二路由信息;所述第一通信装置生成第二vpn路由,所述第二vpn路由包括所述第二路由信息和第二路由区分属性rd,所述第二rd用于标识所述第二路由信息,所述第二rd为所述第一通信装置向所述第二路由信息分配的路由区分属性;所述第一通信装置将所述第二vpn路由和第二路由目标属性rt关联,存储至所述第二vrf表。

17、结合第一方面,在第一方面的一种可能实现方式中,所述第一通信装置生成所述第二vpn路由,包括:所述第一通信装置通过边界网关协议网络bgp network方式导入所述第二路由信息,或者,所述第一通信装置通过边界网关协议导入bgp import方式导入所述第二路由信息;所述第一通信装置根据所述第二路由信息和所述第二rd生成所述第二vpn路由。

18、结合第一方面,在第一方面的一种可能实现方式中,所述第一通信装置获取所述第二通信装置的所述第一路由信息,包括:所述第一通信装置通过以下任意一项方法,获取所述第二通信装置的所述第一路由信息:所述第一通信装置静态配置所述第一路由信息;或者,所述第一通信装置通过开放式最短路径优先ospf协议从所述第二通信装置学习所述第一路由信息;或者,所述第一通信装置通过边界网关协议bgp从所述第二通信装置学习所述第一路由信息;或者,所述第一通信装置通过路由信息协议rip从所述第二通信装置学习所述第一路由信息;或者,所述第一通信装置通过内部网关协议igp从所述第二通信装置学习所述第一路由信息。

19、本技术实施例中,第一通信装置可以通过多张方式获取第二通信装置的第一路由信息,提升了方案的实现灵活性。

20、结合第一方面,在第一方面的一种可能实现方式中,所述第一通信装置获取所述第三通信装置的所述第二路由信息,包括:所述第一通信装置通过以下任意一项方法,获取所述第三通信装置的所述第二路由信息:所述第一通信装置静态配置所述第二路由信息;或者,所述第一通信装置通过开放式最短路径优先ospf协议从所述第三通信装置学习所述第二路由信息;或者,所述第一通信装置通过边界网关协议bgp从所述第三通信装置学习所述第二路由信息;或者,所述第一通信装置通过路由信息协议rip从所述第三通信装置学习所述第二路由信息;或者,所述第一通信装置通过内部网关协议igp从所述第三通信装置学习所述第二路由信息。

21、本技术实施例中,第一通信装置可以通过多张方式获取第三通信装置的第二路由信息,提升了方案的实现灵活性。

22、第二方面,本技术实施例提出一种通信装置,包括:

23、处理模块,用于在所述第一通信装置的第一虚拟路由转发vrf表中保存到达第二通信装置的第一vpn路由,所述第一vpn路由包括路由前缀和第一下一跳,所述第一下一跳指向所述第一通信装置的第一接口,其中,所述第一通信装置通过所述第一接口与所述第二通信装置通信连接;

24、所述处理模块,还用于根据所述第一vrf表关联的导出路由目标export rt和第二vrf表关联的导入路由目标import rt的匹配关系,将第二vpn路由保存到所述第一通信装置的第二vrf表中,其中,所述第二vpn路由包括所述路由前缀和第二下一跳,所述第二下一跳指向所述第一vrf表。

25、一种可能实现方式中,所述路由前缀包括:互联网协议ip地址,或者,媒体访问控制mac地址。

26、一种可能实现方式中,所述第二vrf表继承所述第一vrf表的路由属性。

27、一种可能实现方式中,所述第二vrf表包括多个vpn路由,所述多个vpn路由包括相同的所述路由前缀,所述多个vpn路由中包括所述第二vpn路由。

28、一种可能实现方式中,所述第二vrf表与所述第一通信装置的第二接口绑定,所述第二接口与所述第二vpn路由对应,所述第一通信装置通过所述第二接口与第三通信装置连接。

29、一种可能实现方式中,收发模块,用于从所述第二接口中接收流量;

30、所述处理模块,还用于根据所述第二接口,从所述第二vrf表中确定所述第二vpn路由;

31、所述处理模块,还用于根据所述第二vpn路由,从所述第一vrf表中查找与所述流量匹配的所述第一vpn路由;

32、所述收发模块,还用于根据所述第一vpn路由,通过所述第一接口转发所述流量。

33、一种可能实现方式中,所述第一vpn路由包括多个vpn路由时,所述第一vpn路由用于所述流量的负载分担。

34、一种可能实现方式中,所述第二下一跳包括所述第一vrf表的标识信息。

35、第三方面,本技术实施例提出一种通信装置,包括:通信接口;

36、与所述通信接口连接的处理器;

37、处理器,用于在所述第一通信装置的第一虚拟路由转发vrf表中保存到达第二通信装置的第一vpn路由,所述第一vpn路由包括路由前缀和第一下一跳,所述第一下一跳指向所述第一通信装置的第一接口,其中,所述第一通信装置通过所述第一接口与所述第二通信装置通信连接;

38、所述处理器,还用于根据所述第一vrf表关联的导出路由目标export rt和第二vrf表关联的导入路由目标import rt的匹配关系,将第二vpn路由保存到所述第一通信装置的第二vrf表中,其中,所述第二vpn路由包括所述路由前缀和第二下一跳,所述第二下一跳指向所述第一vrf表。

39、一种可能实现方式中,所述路由前缀包括:互联网协议ip地址,或者,媒体访问控制mac地址。

40、一种可能实现方式中,所述第二vrf表继承所述第一vrf表的路由属性。

41、一种可能实现方式中,所述第二vrf表包括多个vpn路由,所述多个vpn路由包括相同的所述路由前缀,所述多个vpn路由中包括所述第二vpn路由。

42、一种可能实现方式中,所述第二vrf表与所述第一通信装置的第二接口绑定,所述第二接口与所述第二vpn路由对应,所述第一通信装置通过所述第二接口与第三通信装置连接。

43、一种可能实现方式中,通信接口,用于从所述第二接口中接收流量;

44、所述处理器,还用于根据所述第二接口,从所述第二vrf表中确定所述第二vpn路由;

45、所述处理器,还用于根据所述第二vpn路由,从所述第一vrf表中查找与所述流量匹配的所述第一vpn路由;

46、所述通信接口,还用于根据所述第一vpn路由,通过所述第一接口转发所述流量。

47、一种可能实现方式中,所述第一vpn路由包括多个vpn路由时,所述第一vpn路由用于所述流量的负载分担。

48、一种可能实现方式中,所述第二下一跳包括所述第一vrf表的标识信息。

49、第四方面,提供了一种通信系统,通信系统包括如第二方面或第三方面的通信装置。

50、本技术第五方面提供一种计算机存储介质,该计算机存储介质可以是非易失性的;该计算机存储介质中存储有计算机可读指令,当该计算机可读指令被处理器执行时实现第一方面中任意一种实现方式中的方法。

51、本技术第六方面提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行第一方面中任意一种实现方式中的方法。

52、本技术第七方面提供一种芯片系统,该芯片系统包括处理器和接口电路,用于支持网络设备实现上述方面中所涉及的功能,例如,发送或处理上述方法中所涉及的数据和/或信息。在一种可能的设计中,芯片系统还包括存储器,存储器,用于保存网络设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包括芯片和其他分立器件。

53、本技术第八方面提供一种通信装置,包括:通信接口;

54、与通信接口连接的处理器,基于通信接口和处理器,使得通信装置执行如前述第一方面中的方法。

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