CN114760167A - 报文转发的方法、装置和网络系统 - Google Patents

报文转发的方法、装置和网络系统 Download PDF

Info

Publication number
CN114760167A
CN114760167A CN202011598688.XA CN202011598688A CN114760167A CN 114760167 A CN114760167 A CN 114760167A CN 202011598688 A CN202011598688 A CN 202011598688A CN 114760167 A CN114760167 A CN 114760167A
Authority
CN
China
Prior art keywords
vrf
tunnel
cpe
message
destination address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202011598688.XA
Other languages
English (en)
Inventor
侯建强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202011598688.XA priority Critical patent/CN114760167A/zh
Priority to JP2023539748A priority patent/JP2024500548A/ja
Priority to EP21913647.0A priority patent/EP4250649A1/en
Priority to PCT/CN2021/133170 priority patent/WO2022142905A1/zh
Publication of CN114760167A publication Critical patent/CN114760167A/zh
Priority to US18/341,630 priority patent/US20230336377A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L2012/4629LAN interconnection over a backbone network, e.g. Internet, Frame Relay using multilayer switching, e.g. layer 3 switching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请实施例公开了一种报文转发的方法、装置和网络系统,属于通信技术领域。所述方法包括:第一CPE在发送第一报文时,可以对第一报文进行内层封装和外层封装,其中,内层隧道为第一CPE和第二CPE之间的端到端隧道,外层隧道封装中的第二目的地址即可以为GW的地址。可见,在本申请中第一CPE和第二CPE之间可以建立有端到端的内层隧道,且该内层隧道可在外层隧道建立第一CPE和GW互通的基础上,经过GW穿过骨干网,再到第二CPE。这样,上述内层隧道是一条端到端的隧道,便可以经过SLA质量检测,使得该内层隧道与其他端到端的隧道之间可以基于SLA质量实现自动切换。

Description

报文转发的方法、装置和网络系统
技术领域
本申请涉及通信技术领域,特别涉及一种报文转发的方法、装置和网络系统。
背景技术
在企业业务不断向云端转移的趋势下,软件定义广域网络(software-definednetwork in a wide area network,SD-WAN)应运而生。
SD-WAN组网通常由运营商在骨干网边缘部署SD-WAN网关(Gate Way,GW),企业分支边缘设备(Edge)与SD-WAN GW之间建立overlay隧道,实现企业分支或总部局域网(LocalArea Network,LAN)侧与骨干网的互通。例如,某企业的分支和总部的用户前置设备(customer premise equipment,CPE)分别与一个SD-WAN GW建立overlay隧道,这样,分支和总部之间形成了overlay隧道、骨干网、overlay隧道组成的分段数据传输路径。
在上述SD-WAN组网中,企业的分支和总部之间是分段连接的,而服务水平协议(Service-Level Agreement,SLA)质量检测是基于overlay隧道实现的。这样,overlay隧道、骨干网、overlay隧道所组成的分段数据传输路径无法实现SLA质量检测。
发明内容
本申请实施例提供了一种报文转发的方法、装置和网络系统。可以解决overlay隧道、骨干网、overlay隧道所组成的分段数据传输路径无法实现SLA质量检测的问题,所述技术方案如下:
第一方面,提供了一种转发报文的方法,该方法应用于网络系统,网络系统包括第一用户前置设备CPE和第二CPE,该方法由网络设备中的第一CPE执行,方法包括:
接收第一报文,获取第一报文的初始目的地址。然后,对第一报文封装。具体的,可以包括内层隧道封装和外层隧道封装。内层隧道封装具体处理可以为确定初始地址对应的内层隧道的第一源地址和第一目的地址,基于第一源地址和第一目的地址,对第一报文进行内层隧道封装,其中,内层隧道为第一CPE和第二CPE之间的端到端隧道。外层隧道封装具体处理可以为确定第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于第二源地址和第二目的地址,对经过内层隧道封装的第一报文进行外层隧道封装。最后,对经过外层隧道封装的第一报文进行转发。
上述内层隧道是一条端到端的隧道,可以进行SLA质量检测,使得该内层隧道与其他端到端的隧道之间可以基于SLA质量实现自动切换。
在一种具体的实现方式中,第一CPE在实现报文转发之前,可以先对第一CPE进行配置,具体的配置处理可以如下:
接收路由反射器RR发送的第二目的地址,基于第二源地址和所述第二目的地址,建立外层隧道,其中,第二目的地址对应的端口的路由域与第二源地址对应的端口的路由域相同。接收RR发送的所述第一目的地址,在内层隧道建立完成的基础上,基于第一源地址和第一目的地址,建立内层隧道,其中,第一目的地址对应的端口的路由域与第一源地址对应的端口的路由域相同。生成内层隧道在第一CPE中的路由信息,路由信息包括第一目的地址与第二源地址和第二目的地址的对应关系。
在一种具体的实现方式中,对于第一CPE的配置还可以包括如下处理:
接收控制器发送的overlay VRF配置消息,在第一CPE中建立第一overlay VRF和第二overlay VRF。接收所述控制器发送的underlay VRF配置消息,在第一CPE中建立第一underlay VRF。接收控制器发送的端口关联消息,将第二overlay VRF与第一源地址对应的端口进行关联,将第一underlay VRF与第二源地址进行关联。
结合上述具体的实现方式,在接收到第一报文后,可以由第一CPE中的第一overlay VRF确定初始目的地址对应的内层隧道的第一源地址和第一目的地址,并基于第一源地址和第一目的地址,对第一报文进行内层隧道封装。然后,由第一overlay VRF将经过内层隧道封装的第一报文发送至与第一CPE中与第一源地址对应的第二overlay VRF。再由第二overlay VRF确定第一目的地址对应的外层隧道的第二源地址和第二目的地址,并基于第二源地址和所述第二目的地址,对经过内层隧道封装的第一报文进行外层隧道封装。再然后,由第二overlay VRF将经过外层隧道封装的第一报文发送至与第二源地址对应的第一underlay VRF。最后,由第一underlay VRF对经过外层隧道封装的第一报文进行转发。
在又一种具体的实现方式中,对于第一CPE的配置还可以包括如下处理:
接收控制器发送的overlay VRF配置消息,在第一CPE中建立第一overlay VRF和第二overlay VRF。接收控制器发送的underlay VRF配置消息,在第一CPE中建立第一underlay VRF和第二underlay VRF。接收控制器发送的端口关联消息,将第二underlayVRF与第一源地址对应的端口进行关联,将第一underlay VRF与第二源地址进行关联。
结合上述具体的实现方式,在接收到第一报文后,可以由第一overlay VRF确定所述初始目的地址对应的内层隧道的第一源地址和第一目的地址,并基于第一源地址和第一目的地址,对第一报文进行内层隧道封装。然后,由第一overlay VRF将经过内层隧道封装的第一报文发送至与第一源地址对应的第二underlay VRF。再然后,由第二underlay VRF将经过内层隧道封装的第一报文发送至第一CPE中与第二underlay VRF相连接的第二overlay VRF。接下来,由第二overlay VRF确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于第二源地址和第二目的地址,对经过内层隧道封装的第一报文进行外层隧道封装,并由该第二overlay VRF将经过外层隧道封装的第一报文发送至与所述第二源地址对应的第一underlay VRF。最后,由第一underlay VRF对经过外层隧道封装的第一报文进行转发。
在一种具体的实现方式中,第二underlay VRF与第二overlay VRF之间的连接方式可以为外环连接。
在一种具体的实现方式中,外环连接可以为在第一CPE外通过物理线路对第二overlay VRF和第二underlay VRF关联的物理端口进行连接。
在一种具体的实现方式中,第二underlay VRF与第二overlay VRF直接的连接方式可以为内环连接。
在一种具体的实现方式中,内环连接可以为第二underlay VRF与第二overlayVRF关联的loopback端口之间建立通信连接。
结合上述具体的实现方式,建立loopback端口之间的连接可以通过如下处实现:
接收控制器发送的连接建立消息,其中,连接建立消息携带有第二underlay VRF的标识和所述第二overlay VRF的标识。建立第二underlay VRF对应的loopback端口与第二overlay VRF对应的loopback端口之间的连接。
在又一种具体的实现方式中,对于第一CPE的配置还可以包括如下处理:
接收控制器发送的overlay VRF配置消息,在第一CPE中建立第一overlay VRF。接收控制器发送的underlay VRF配置消息,在第一CPE中建立第一underlay VRF。接收控制器发送的端口关联消息,将第一underlay VRF与、第一源地址对应的端口和第二源地址进行关联。
结合上述具体的实现方式,在接收到第一报文之后,可以由第一overlay VRF确定初始目的地址对应的内层隧道的第一源地址和第一目的地址,并基于第一源地址和第一目的地址,对第一报文进行内层隧道封装。然后,第一overlay VRF将经过内层隧道封装的第一报文发送至与所述第一源地址对应的第一underlay VRF。再由第一underlay VRF确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,并基于第二源地址和第二目的地址,对经过内层隧道封装的第一报文进行外层隧道封装。最后,由第一underlay VRF对经过外层隧道封装的第一报文进行转发。
在一种具体的实现方式中,内层隧道为第一CPE和第二CPE之间的端到端隧道,在第一CPE和第二CPE之间存在多条端到端隧道的情况下,在第一CPE在向第二CPE发送报文时,可以基于这些隧道的SLA质量进行选路,具体的处理可以如下:
在初始目的地址对应的多条内层隧道中,确定隧道服务质量最高的内层隧道,并确定隧道服务质量最高的内层隧道的第一源地址和第一目的地址。此外,除内层隧道以外还可以包括有其他类型隧道,如internet隧道等。
第二方面,提供了一种转发报文的方法,该方法应用于网络系统,网络系统包括CPE,GW以及第二CPE,该方法由所述GW执行,方法包括:
接收第一CPE发送的第一报文,其中,第一报文包括内层隧道封装和外层隧道封装,内层隧道为第一CPE第二CPE之间的端到端隧道。去除第一报文的外层隧道封装,基于第一报文的内层隧道封装中的第一目的地址,对去除外层隧道封装后的第一报文进行转发,其中,第一目的地址关联第二CPE。
在一种具体的实现方式中,在GW和第二CPE之间建立有外层隧道的情况下,GW在对第一报文去除外层封装后,还需进行再次外层封装,具体的,处理可以如下:
确定第一报文的内层隧道封装中的第一目的地址对应的外层隧道的第三源地址和第三目的地址,基于第三源地址和所述第三目的地址,对去除外层隧道封装后的第一报文进行再次外层隧道封装。对经过再次外层隧道封装的第一报文进行转发。
在一种具体的实现方式中,GW建立和第二CPE之间的外层隧道时,处理可以如下:
接收RR发送的关联第二CPE的第三目的地址,基于第三目的地址和所述第三源地址,建立外层隧道,其中,所述第三源地址和所述第三目的地址对应的端口的路由域相同;
建立所述第一目的地址与所述外层隧道的第三源地址和第三目的地址的对应关系。
第三方面,提供了一种转发报文的方法,该方法应用于网络系统,网络系统包括第一CPE,GW和第二CPE,方法由第二CPE执行,方法包括:
接收第一报文,其中,第一报文来自于第一CPE,且第一报文包括内层隧道封装和外层隧道封装,内层隧道为第一CPE和第二CPE之间的端到端隧道。去除第一报文的外层隧道封装,对去除外层隧道封装后的第一报文去除内层隧道封装,对去除内层隧道封装后的第一报文进行转发。
在一种具体的实现方式中,第二CPE对第一报文的处理可以由第二CPE中配置的各VRF实现,具体的,处理可以如下:
由第二CPE中的第一underlay VRF接收第一报文,并去除第一报文的外层隧道封装,再将去除外层隧道封装后的第一报文发送至第二CPE中的第一overlay VRF。然后,由第一overlay VRF,对去除外层隧道封装后的第一报文去除内层隧道封装,并对去除内层隧道封装后的第一报文进行转发。
在又一种具体的实现方式中,通过VRF实现对第一报文的处理,可以包括如下处理:
由第二CPE中的第一underlay VRF,接收第一报文,并将第一报文发送至第二CPE中的第二overlay VRF。然后,由第二overlay VRF,去除第一报文的外层隧道封装,再由第二overlay VRF,将去除外层隧道封装后的第一报文发送至第二CPE中的第一overlay VRF。最后,由第一overlay VRF,对去除外层隧道封装后的第一报文去除内层隧道封装,对去除内层隧道封装后的第一报文进行转发。
结合上述具体的实现方式,由第二overlay VRF将去除外层隧道封装后的第一报文发送至第一overlay VRF,具体还可以有如下处理:
由第二overlay VRF,去除第一报文的外层隧道封装,将去除外层隧道封装后的第一报文发送至与第二overlay VRF相连接的第二underlay VRF。最后,由第二underlayVRF,将去除外层隧道封装后的第一报文发送至第一overlay VRF。
在一种具体的实现方式中,所述第二underlay VRF与所述第二overlay VRF通过外环连接。
在一种具体的实现方式中,所述第二underlay VRF与所述第二overlay VRF通过对应的物理端口连接。
在一种具体的实现方式中,所述第二underlay VRF与所述第二overlay VRF通过内环连接。
在一种具体的实现方式中,所述第二underlay VRF与所述第二overlay VRF通过对应的loopback端口连接。
第四方面,提供了一种CPE配置的方法,方法用于网络系统,网络系统包括第一用户前置设备CPE,网关GW,第二CPE以及路由反射器RR,方法由所述第一PCE执行,方法包括:
接收RR发送的关联GW的第二目的地址,基于第二源地址和所述第二目的地址,建立外层隧道。接收RR发送的关联第二CPE的第一目的地址,基于第一源地址和所述第一目的地址,建立内层隧道,内层隧道为所述第一CPE和所述第二CPE之间的端到端隧道。生成内层隧道在第一CPE中的路由信息,路由信息包括第一目的地址与所述第二源地址和第二目的地址的对应关系。
在一种具体的实现方式中,经过上述配置的第一CPE可以对第一报文进行转发,具体的,处理可以如下:
接收第一报文,获取第一报文的初始目的地址。确定初始地址对应的所述内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,其中,所述内层隧道为所述第一CPE和第二CPE之间的端到端隧道。确定第一目的地址对应的所述外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对经过内层隧道封装的第一报文进行外层隧道封装。对经过外层隧道封装的第一报文进行转发。
在一种具体的实现方式中,第一CPE中还可以配置VRF实现对第一报文的处理,具体的,配置可以如下:
接收控制器发送的overlay VRF配置消息,在第一CPE中建立第一overlay VRF和第二overlay VRF。接收控制器发送的underlay VRF配置消息,在第一CPE中建立第一underlay VRF。接收控制器发送的端口关联消息,将第二overlay VRF与第一源地址对应的端口进行关联,将第一underlay VRF与所述第二源地址进行关联。
在一种具体的实现方式中,经过上述配置的第一CPE可以对第一报文进行转发,具体的,处理可以如下:
接收第一报文,获取第一报文的初始目的地址之后,由第一overlay VRF确定初始目的地址对应的内层隧道的第一源地址和第一目的地址,基于第一源地址和所述第一目的地址,对第一报文进行内层隧道封装,其中,内层隧道为第一CPE和第二CPE之间的端到端隧道,将经过内层隧道封装的第一报文发送至与第一源地址对应的第二overlay VRF。然后,由第二overlay VRF确定第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于第二源地址和所述第二目的地址,对经过内层隧道封装的第一报文进行外层隧道封装,将经过外层隧道封装的第一报文发送至与第二源地址对应的第一underlay VRF。最后,由第一underlay VRF对经过外层隧道封装的第一报文进行转发。
在又一种具体的实现方式中,第一CPE中VRF还可以有如下处理方式:
接收控制器发送的overlay VRF配置消息,在第一CPE中建立第一overlay VRF和第二overlay VRF。接收控制器发送的underlay VRF配置消息,在第一CPE中建立第一underlay VRF和第二underlay VRF。接收控制器发送的端口关联消息,将第二underlayVRF与第一源地址对应的端口进行关联,将第一underlay VRF与第二源地址对应的端口进行关联。
在一种具体的实现方式中,经过上述配置的第一CPE可以对第一报文进行转发,具体的,处理可以如下:
接收第一报文,获取第一报文的初始目的地址后,由第一overlay VRF确定初始目的地址对应的内层隧道的第一源地址和第一目的地址,基于第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,其中,内层隧道为第一CPE和第二CPE之间的端到端隧道,将经过内层隧道封装的第一报文发送至与所述第一源地址对应的第二underlayVRF。然后,由第二underlay VRF将经过内层隧道封装的第一报文发送至所述第一CPE中与第二underlay VRF相连接的第二overlay VRF。再然后,由第二overlay VRF确定第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装,将经过外层隧道封装的第一报文发送至与所述第二源地址对应的所述第一underlay VRF。最后,由第一underlayVRF对经过外层隧道封装的第一报文进行转发。
在又一种具体的实现方式中,第一CPE中VRF还可以有如下处理方式:
接收所述控制器发送的overlay VRF配置消息,在所述第一CPE中建立第一overlay VRF,接收控制器发送的underlay VRF配置消息,在所述第一CPE中建立第一underlay VRF。接收所述控制器发送的端口关联消息,将第一overlay VRF与第一源地址对应的端口和所述第二源地址对应的端口进行关联。
在一种具体的实现方式中,经过上述配置的第一CPE可以对第一报文进行转发,具体的,处理可以如下:
接收第一报文,获取所述第一报文的初始目的地址之后,由第一overlay VRF确定所述初始目的地址对应的内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,将经过内层隧道封装的第一报文发送至与所述第一源地址对应的所述第一underlay VRF。然后,由第一underlay VRF确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装,对经过外层隧道封装的第一报文进行转发。
第五方面,提供了一种CPE配置的方法,方法应用于RR,方法包括:
接收GW发送的关联所述GW的第二目的地址,向第一CPE发送所述第二目的地址;
接收第二CPE发送的关联所述第二CPE的第一目的地址,向所述第二CPE发送的第一目的地址。
第六方面,提供了一种CPE配置的方法,方法应用于控制器,方法包括:
向第一CPE发送overlay VRF配置消息,向第一CPE发送underlay VRF配置消息,向第一CPE发送端口管理消息。
在一种具体的实现方式中,所述overlay VRF配置消息中携带第一overlay VRF的VRF标识和第二overlay VRF的VRF标识,所述underlay VRF配置消息中携带第一underlayVRF的VRF标识,所述端口关联消息携带第二overlay VRF的VRF标识与第一源地址的对应关系,以及第一underlay VRF的VRF标识与所述第二源地址的对应关系。
在一种具体的实现方式中,所述overlay VRF配置消息中携带第一overlay VRF的VRF标识和第二overlay VRF的VRF标识,所述underlay VRF配置消息中携带第一underlayVRF的VRF标识和第二underlay VRF的VRF标识,所述端口关联消息中携带所述第二underlay VRF的VRF标识与所述第一源地址的对应关系,以及所述第一underlay VRF的VRF标识与所述第二源地址的对应关系。
在一种具体的实现方式中,所述overlay VRF配置消息中携带第一overlay VRF的VRF标识,所述underlay VRF配置消息中携带第一underlay VRF的VRF标识,所述端口关联消息携带中所述第一overlay VRF的VRF标识与第一源地址和第二源地址的对应关系。
第七方面,提供了一种报文转发的装置,用于执行第一方面或第四方面的任意一种可能的实现方式。具体地,所述装置包括用于执行第一方面或第四面的任意一种可能的实现方式的模块。
第八方面,提供了一种报文转发的装置,用于执行第二方面的任意一种可能的实现方式。具体地,所述装置包括用于执行第二方面的任意一种可能的实现方式的模块。
第九方面,提供了一种报文转发的装置,用于执行第三方面的任意一种可能的实现方式。具体地,所述装置包括用于执行第三方面任意一种可能的实现方式的模块。
第十方面,提供了一种第一CPE,所述第一CPE包括处理器和存储器,其中,所述存储器用于存储指令,所述处理器用于执行所述指令,以实现如上述第一方面或第四方面所述的方法。
第十一方面,提供了一种GW,所述GW包括处理器和存储器,其中,所述存储器用于存储指令,所述处理器用于执行所述指令,以实现如上述第二方面所述的方法;
第十二方面,提供了一种第二CPE,所述第二CPE包括处理器和存储器,其中,所述存储器用于存储指令,所述处理器用于执行所述指令,以实现如上述第三方面所述的方法。
第十三方面,提供了一种RR,所述RR包括处理器和存储器,其中,所述存储器用于存储指令,所述处理器用于执行所述指令,以实现如上述第五方面所述的方法。
第十四方面,提供了一种控制器,所述控制器包括处理器和存储器,其中,所述存储器用于存储指令,所述处理器用于执行所述指令,以实现如上述第六方面所述的方法。
第十五方面,提供了一种网络系统,所述网络系统包括如上述第十方面所述的第一CPE、如上述第十一方面所述的GW以及如上述第十二方面所述的第二CPE。
本申请实施例提供的技术方案带来的有益效果是:
本申请实施例中,第一CPE在发送第一报文时,可以对第一报文进行内层封装和外层封装,其中,内层隧道为第一CPE和第二CPE之间的端到端隧道,外层隧道封装中的第二目的地址即可以为GW的地址。可见,在本申请中第一CPE和第二CPE之间可以建立有端到端的内层隧道,且该内层隧道可在外层隧道建立第一CPE和GW互通的基础上,经过GW穿过骨干网,再到第二CPE。这样,上述内层隧道是一条端到端的隧道,便可以经过SLA质量检测,使得该内层隧道与其他端到端的隧道之间可以基于SLA质量实现自动切换。
附图说明
图1是本申请实施例提供的一种SD-WAN组网示意图;
图2是本申请实施例提供的一种CPE示意图;
图3是本申请实施例提供的一种CPE示意图;
图4是本申请实施例提供的一种报文转发的方法流程图;
图5是本申请实施例提供的一种CPE示意图;
图6是本申请实施例提供的一种报文转发的方法流程图;
图7是本申请实施例提供的一种CPE示意图;
图8是本申请实施例提供的一种报文转发的方法流程图;
图9是本申请实施例提供的一种SD-WAN组网示意图;
图10是本申请实施例提供的一种报文转发的方法流程图;
图11是本申请实施例提供的一种SD-WAN组网示意图;
图12是本申请实施例提供的一种报文转发的方法流程图;
图13是本申请实施例提供的一种报文转发的方法流程图;
图14是本申请实施例提供的一种SD-WAN组网示意图;
图15是本申请实施例提供的一种报文转发的方法流程图;
图16是本申请实施例提供的一种CPE示意图;
图17是本申请实施例提供的一种报文转发的方法流程图;
图18是本申请实施例提供的一种报文转发的方法流程图;
图19是本申请实施例提供的一种报文转发的方法流程图;
图20是本申请实施例提供的一种SD-WAN组网示意图;
图21是本申请实施例提供的一种CPE配置的方法流程图;
图22是本申请实施例提供的一种报文转发的装置结构示意图;
图23是本申请实施例提供的一种报文转发的装置结构示意图;
图24是本申请实施例提供的一种报文转发的装置结构示意图;
图25是本申请实施例提供的一种CPE配置的装置结构示意图;
图26是本申请实施例提供的一种CPE配置的装置结构示意图;
图27是本申请实施例提供的一种CPE配置的装置结构示意图;
图28是本申请实施例提供的一种通信设备的结构示意图。
具体实施方式
本申请实施例提供了一种报文转发的方法,该方法可以应用在SD-WAN组网中。参见图1为一种SD-WAN组网部署方式,在图1中,包括有同一企业的总部和分支,总部通过CPE1与SD-WAN组网的GW建立连接,以接入运营商的骨干网,分支同样通过CPE与一个GW建立连接,以接入运营商的骨干网,总部和分支之间还可以通过各自的CPE建立多条隧道,例如Internet隧道。通过本申请实施例可以实现两CPE之间通过GW和骨干网的端到端隧道的建立,并通过该隧道实现报文传输。
此外,除图1中所示的部署方式以外,两CPE还可以与同一GW连接,或者一个CPE与GW连接,而另一个CPE直接接入骨干网不与GW连接,又或者一个CPE与多个GW相连。当然,上述示例仅为包括总部的CPE与一个分支CPE的SD-WAN组网,在实际应用中还可以有多个分支的CPE,每个CPE可以单独连接一个GW,或者,多个分支连接同一个GW,或者部分CPE不连接GW直接接入骨干网,又或者,同一个CPE同时连接多个GW。
下面对第一CPE(报文发送侧)、GW和第二CPE(报文接收侧)在实现本申请实施例时的处理流程进行说明。
下面以图2和图3中的CPE作为发送侧的第一CPE,对其转发报文的处理流程进行说明。参见图4,第一CPE转发报文的处理流程可以包括如下步骤:
S101、接收第一报文,获取第一报文的初始目的地址。
在实施中,第一CPE对应的局域网(local area network,LAN)侧的终端设备可以向其他CPE的LAN侧的终端设备发送报文。例如,第一CPE对应的LAN侧的第一终端设备,可以向第二CPE对应的LAN侧的第二终端设备发送报文。
第一CPE对应的LAN侧的终端设备可以生成第一报文,并向连接的第一CPE的LAN口发送该第一报文。该第一报文中携带有初始目的地址,该初始目的地址为其他CPE的LAN侧用于接收该第一报文的终端设备的IP地址。
第一CPE中与上述LAN口关联的第一overlay VRF,可以接收获取到第一报文,并获取该第一报文中携带的初始目的地址。
S102、通过第一CPE中的第一overlay VRF,确定初始目的地址对应的内层隧道的第一源地址和第一目的地址,基于第一源地址和所述第一目的地址,对第一报文进行内层隧道封装。
其中,第一overlay VRF是关联第一CPE的LAN侧各LAN口的VRF。
在实施中,第一overlay VRF根据存储目的地址集合与CPE的对应关系,可以确定出该初始目的地址对应的CPE为第二CPE。然后,可以根据存储的CPE与端到端隧道的对应关系,可以确定出第一CPE与第二CPE之间的至少一条端到端隧道。
此外,在第一CPE中还可以记录有每条隧道的服务质量,该服务质量可以为第一CPE按照预设周期测量得到。
第一overlay VRF可以在第二CPE对应的多条端到端隧道中选择一条服务质量最好的隧道,作为本次传输第一报文所使用的隧道。
然后,第一overlay VRF可以在存储的隧道的源地址和目的地址中,确定上述选择的本次传输第一报文所使用的隧道的第一源地址和第一目的地址。本申请中仅对选择的隧道为内层隧道进行说明。其中,如图2所示,内层隧道的第一源地址为第一CPE中第一广域网(wide area network,WAN)口的IP地址,第一目的地址为第二CPE中的第一WAN口的IP地址,或者,如图3所示,第一源地址为第一CPE中第一loopback端口的IP地址,第一目的地址为第二CPE中的第一loopback端口的IP地址。
再然后,第一overlay VRF确定上述选择的隧道的隧道协议,并根据该隧道协议对第一报文进行内层隧道封装,内层隧道封装后的第一报文中携带有该隧道的第一源地址和第一目的地址。其中,隧道协议可以为通用路由封装(generic routing encapsulation,GRE)协议、互联网安全(internet protocol security,IPsec)协议等等。
此外,内层隧道封装后的第一报文中还可以携带有执行内层隧道封装的第一overlay VRF的VRF标识。
S103、通过第一CPE中与第一源地址对应的第二underlay VRF,将经过内层隧道封装的第一报文发送至第一CPE中与第二underlay VRF相连接的第二overlay VRF。
在实施中,第一overlay VRF将内层隧道封装后的第一报文发送至与第一源地址对应的端口关联的underlay VRF,如图2和图3所示的第二underlay VRF。然后,由该第二underlay VRF将经过内层隧道封装后的第一报文,通过第一源地址对应的端口发送至连接的overlay VRF,如图2和图3所示的第二overlay VRF。
此处值得一提的是,图2所示的第一CPE和图3所示的第一CPE中对于第二underlayVRF和第二overlay VRF的连接方式是不同的。具体的,图2中第二underlay VRF关联的第一WAN口和第二overlay VRF关联的第一LAN口通过物理线路连接。图3中第二underlay VRF关联的第一loopback端口和第二overlay VRF关联的第二loopback端口之间建立内环隧道实现连接。其中,内环隧道所基于的隧道协议可以为GRE协议等。
S104、通过第一CPE中的第二overlay VRF,确定第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于第二源地址和所述第二目的地址,对经过内层隧道封装的第一报文进行外层隧道封装。
在实施中,第二overlay VRF接收到经过内层隧道封装的第一报文后,获取其中携带的第一目的地址,并查询路由信息,确定该第一目的地址对应的出端口,例如,图2所示的第二WAN口。然后,可以获取第二WAN口对应的外层隧道的第二源地址和第二目的地址,以及该外层隧道的隧道协议,并基于该隧道协议对上述经过内层隧道封装后的第一报文进行外层隧道封装。其中,经过外层隧道封装后的第一报文中携带有该外层隧道的第二源地址和第二目的地址。第二源地址即为第一CPE中第二WAN口的IP地址,第二目的地址即为隧道目的端的GW中相应WAN口的IP地址。外层隧道的隧道协议可以为GRE over IPsec协议。
此外,外层隧道封装后的第一报文中还可以携带有执行外层隧道封装的第二overlay VRF的VRF标识。
S105、通过第一CPE中与第二源地址对应的第一underlay VRF,对经过外层隧道封装的第一报文进行转发。
在实施中,第二overlay VRF将经过外层封装的第一报文发送至第二源地址关联的underlay VRF,如图2中所示的第一underlay VRF。然后,该第一underlay VRF通过第二WAN口向GW转发该经过外层隧道封装的第一报文。
下面以图5中的CPE作为发送侧的第一CPE,对其转发报文的处理流程进行说明。参见图6,第一CPE转发报文的处理流程可以包括如下步骤:
S201、接收第一报文,获取第一报文的初始目的地址。
S202、通过第一CPE中的第一overlay VRF,确定初始目的地址对应的内层隧道的第一源地址和第一目的地址,基于第一源地址和所述第一目的地址,对第一报文进行内层隧道封装,其中,内层隧道为第一CPE和第二CPE之间的端到端隧道。
如图5所示,第一源地址为第一CPE中loopback端口的IP地址。在第二CPE也按照如图5所示的CPE进行部署的情况下,第一目的地址为第二CPE中loopback端口的IP地址。
S203、通过第一overlay VRF,将经过内层隧道封装的第一报文发送至与第一源地址对应的第二overlay VRF。
在实施中,如图5所示,第一overlay VRF将经过内层隧道封装后的第一报文发送至与第一源地址对应的loopback端口。该loopback端口关联的第二overlay VRF通过该loopback端口获取到上述经过内层隧道封装后的第一报文。
S204、通过第一CPE中的第二overlay VRF,确定第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于第二源地址和所述第二目的地址,对经过内层隧道封装的第一报文进行外层隧道封装。
在实施中,第二overlay VRF接收到经过内层隧道封装的第一报文后,获取其中携带的第一目的地址,并查询路由信息,确定该第一目的地址对应的出端口,例如,图5所示的WAN口。然后,可以获取该WAN口对应的外层隧道的第二源地址和第二目的地址,以及该外层隧道的隧道协议,并基于该隧道协议对上述经过内层隧道封装后的第一报文进行外层隧道封装。其中,经过外层隧道封装后的第一报文中携带有该外层隧道的第二源地址和第二目的地址,第二源地址即为第一CPE中WAN口的IP地址,第二目的地址即为隧道目的端的GW中相应WAN口的IP地址。
S205、通过第一CPE中与第二源地址对应的第一underlay VRF,对经过外层隧道封装的第一报文进行转发。
此处,需要说明的是,上述S201、S202和S205的具体实施方式分别与上述图4所示的S101、S102和S105的具体实施方式相同或相似,在此不做赘述。
下面以图7中的CPE作为发送侧的第一CPE,对其转发报文的处理流程进行说明。参见图8,第一CPE转发报文的处理流程可以包括如下步骤:
S301、接收第一报文,获取第一报文的初始目的地址。
S302、通过第一CPE中的第一overlay VRF,确定初始目的地址对应的内层隧道的第一源地址和第一目的地址,基于第一源地址和第一目的地址,对第一报文进行内层隧道封装。
如图7所示,第一源地址为第一CPE中loopback端口的IP地址。在第二CPE也按照如图7所示的CPE进行部署的情况下,第一目的地址为第二CPE中loopback端口的IP地址。
S303、通过第一CPE中与第一源地址对应的第一underlay VRF,确定第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于第二源地址和第二目的地址,对经过内层隧道封装的第一报文进行外层隧道封装,对经过外层隧道封装的第一报文进行转发。
如图7所示,第二源地址为第一CPE的WAN口的IP地址,相应的,第二目的地址为图7中GW的WAN口的IP地址。
在实施中,第一overlay VRF将内层隧道封装后的第一报文发送至与第一源地址对应的端口关联的underlay VRF,如图7所示的第一underlay VRF。
第一underlay VRF接收到经过内层隧道封装的第一报文后,获取其中携带的第一目的地址,并查询路由信息,确定该第一目的地址对应的出端口,例如,图7所示的WAN口。
然后,第一underlay VRF可以获取该WAN口对应的外层隧道的第二源地址和第二目的地址,以及该外层隧道的隧道协议,并基于该隧道协议对上述经过内层隧道封装后的第一报文进行外层隧道封装。其中,经过外层隧道封装后的第一报文中携带有该外层隧道的第二源地址和第二目的地址,第二源地址即为第一CPE中上述WAN口的IP地址,第二目的地址即为隧道目的端的GW中相应WAN口的IP地址。
最后,第一underlay VRF通过上述WAN口向GW转发该经过外层隧道封装的第一报文。
此处,需要说明的是,上述S301和S302的具体实施方式分别与上述图4所示的S101和S102的具体实施方式相同或相似,在此不做赘述。
下面对图9所示的SD-WAN组成场景下,GW转发报文的处理流程进行说明。参见图10,GW转发报文的处理流程可以包括如下步骤:
S401、接收第一报文,其中,第一报文包括内层隧道封装和外层隧道封装。
在实施中,GW可以接收由第一CPE发送的经过内层隧道封装和外层隧道封装的第一报文。
S402、去除第一报文的外层隧道封装。
在实施中,GW可以基于外层隧道协议,对上述经过内层隧道封装和外层隧道封装的第一报文去除外层隧道封装。其中,外层隧道协议可以为GRE over IPsec协议。
S403、确定第一报文的内层隧道封装中的第一目的地址对应的外层隧道的第三源地址和第三目的地址,基于第三源地址和所述第三目的地址,对去除外层隧道封装后的第一报文进行再次外层隧道封装。
在实施中,GW获取去除外层隧道封装后的第一报文中携带的第一目的地址,通过查询路由信息确定出用于转发该报文出端口。同时还查询出该出端口对应的外层隧道的第三源地址和第三目的地址。其中,外层隧道的第三源地址即为GW中用于转发该第一报文的出端口的IP地址,第三目的地址为外层隧道的目的端(第二CPE)的WAN口的IP地址。
然后,GW中的VRF可以根据外层隧道协议,对该去除外层隧道封装后的第一报文进行再次外层隧道封装。经过再次外层隧道封装的第一报文中携带有外层隧道的第三源地址和第三目的地址。此外,在进行再次外层隧道封装时,除封装上述外层隧道的第三源地址和第三目的地址外,还封装有执行该再次外层隧道封装的VRF的VRF标识。
S404、对经过再次外层隧道封装的第一报文进行转发。
在实施中,GW通过上述出端口将该经过再次外层隧道封装的第一报文转发至第二CPE。
下面对图11所示的SD-WAN组网场景下,第一GW转发报文的处理流程进行说明。参见图12,第一GW转发报文的处理流程可以包括如下步骤:
S501、接收第一报文,其中,第一报文包括内层隧道封装和外层隧道封装。
其中,内层隧道封装中的第一源地址为第一CPE中端口的IP地址,例如,在图2、3、5、7为第一CPE的情况下,如图2中的第一WAN口的IP地址,或者图3中的第一loopback端口的IP地址,或者图5或7中的loopback端口的IP地址。第一目的地址为第二CPE中端口的IP地址,例如,在图2、3、5、7为第二CPE的情况下,如图2中的第一WAN口的IP地址,或者图3中的第一loopback端口的IP地址,或者图5或7中的loopback端口的IP地址。外层隧道封装中的第二源地址为第一CPE中端口的IP地址,例如,如图2或3中的第二WAN口的IP地址,或者图5或7中的WAN口地址,第二目的地址为第一GW中端口的IP地址,例如,第一GW中的WAN口的IP地址。
S502、去除第一报文的外层隧道封装。
S503、基于第一报文的内层隧道封装中的第一目的地址,对去除外层隧道封装后的第一报文进行转发。
在实施中,GW通过查询路由信息,确定第一目的地址对应的下一跳地址,根据该下一跳地址转发该去除外层隧道封装的第一报文。
此处,需要说明的是,上述S501和S502的具体实施方式分别与上述图10所示的S401和S402的具体实施方式相同或相似,在此不做赘述。
下面对图11所示的SD-WAN组网场景下,第二GW转发报文的处理流程进行说明。参见图13,第二GW转发报文的处理流程可以包括如下步骤:
S504、接收去除外层隧道封装后的第一报文。
在实施中,第二GW接收经过上述第一GW发出并经由骨干网转发的去除外层隧道封装后的第一报文。
S505、确定第一报文的内层隧道封装中的第一目的地址对应的外层隧道的第三源地址和第三目的地址,基于第三源地址和所述第三目的地址,对去除外层隧道封装后的第一报文进行再次外层隧道封装。
如图11所示,第三源地址为第二GW和第二CPE之间的外层隧道的源端(第二GW)中端口的IP地址,第三目的地址为该外层隧道的目的端(第二CPE)中端口的IP地址。其中,第二GW的端口和第二CPE的端口均可以为WAN口。
S506、对经过再次外层隧道封装的第一报文进行转发。
此处,需要说明的是,上述S505和S506的具体实施方式分别与上述图10所示的S403和S404的具体实施方式相同或相似,在此不做赘述。
对于图14所示的SD-WAN组网场景下,GW转发报文的处理流程与上述图11所示的第一GW转发报文的流程相同在此不做赘述。
下面以图2或图3所示的CPE作为接收侧的第二CPE,对其转发报文的处理流程进行说明。参见图15,第二CPE转发报文的处理流程可以包括如下步骤:
S601、通过第二CPE中的第一underlay VRF,接收GW发送的第一报文,将第一报文发送至第二CPE中的第二overlay VRF,其中,第一报文包括内层隧道封装和外层隧道封装。
在实施中,第二CPE中的第三目的地址对应的第二WAN口接收再次经过外层封装的第一报文。
此处,需要说明的是,第一CPE中的第一overlay VRF在对第一报文进行内层封装时,会对第一报文封装有该第一overlay VRF的VRF标识,且第一CPE中的第一overlay VRF与第二CPE中的第一overlay VRF的VRF标识相同。同样的,GW在对去除外层隧道封装的第一报文进行再次外层隧道封装时,会对第一报文封装有GW中的执行再次外层隧道封装任务的VRF的VRF标识,且该GW中VRF的VRF标识与第二CPE中的第二overlay VRF的VRF标识相同,还与第一CPE中的第二overlay VRF的VRF标识相同。
上述第二WAN口关联的第一underlay VRF,确定第一报文的外层隧道封装中的VRF标识为第二overlay VRF的标识,则将该经过再次外层隧道封装的第一报文发送至第二overlay VRF。
S602、通过第二overlay VRF,去除第一报文的外层隧道封装,将去除外层隧道封装后的第一报文发送至连接的第二underlay VRF。
在实施中,第二overlay VRF基于预先配置的外层隧道协议,对获取到的经过进行再次外层隧道封装第一报文去除外层隧道封装。并将该去除外层隧道封装的第一报文转发至连接的第二underlay VRF。
S603、通过第二underlay VRF,将去除外层隧道封装后的第一报文发送至第一overlay VRF。
在实施中,第二overlay VRF确定去除外层隧道封装后的第一报文的内层隧道封装中的VRF标识为第一overlay VRF的标识,则将去除外层隧道封装的第一报文发送至第一overlay VRF。
S604、通过第一overlay VRF,对去除外层隧道封装后的第一报文去除内层隧道封装,并基于初始目的地址对去除内层隧道封装后的第一报文进行转发。
在实施中,第一overlay VRF获取到上述的去除外层隧道封装后的第一报文后,基于预先配置的内层隧道协议,对该去除外层隧道封装后的第一报文去除内层隧道封装。然后,第一overlay VRF获取去除内层隧道封装的第一报文中携带的初始目的地址,查询路由信息确定该初始目的地址对应的下一跳地址,根据该下一跳地址转发该去除内层隧道封装的第一报文。
下面以图16所示的CPE作为接收侧的第二CPE,对其转发报文的处理流程进行说明。需要说明的是,该图16所示的CPE是不与GW连接,而是直接接入骨干网,对应与上述第一报文经过图14所示的GW转发的情况,该第CPE接收到报文是去除外层隧道封装的第一报文。参见图17,第二CPE转发报文的处理流程可以包括如下步骤:
S701、通过第二CPE中的第一underlay VRF,接收GW发送的第一报文,将第一报文发送至第二CPE中的第一overlay VRF,其中,第一报文包括内层隧道封装。
在实施中,第二CPE中的第一目的地址对应的WAN口接收去除外层封装的第一报文。该WAN口关联的第一underlay VRF,确定第一报文的内层隧道封装中的VRF标识为第一overlay VRF的标识,则将该去除外层隧道封装的第一报文发送至第一overlay VRF。
S702、通过第一overlay VRF,对去除外层隧道封装后的第一报文去除内层隧道封装,并基于初始目的地址对去除内层隧道封装后的第一报文进行转发。
在实施中,第一overlay VRF获取到上述的去除外层隧道封装后的第一报文后,基于预先配置的内层隧道协议,对该去除外层隧道封装后的第一报文去除内层隧道封装。然后,第一overlay VRF获取去除内层隧道封装的第一报文中携带的初始目的地址,查询路由信息确定该初始目的地址对应的下一跳地址,根据该下一跳地址转发该去除内层隧道封装的第一报文。
下面以图5所示的CPE作为接收侧的第二CPE,对其转发报文的处理流程进行说明。需要说明的是,该图5所示的第二CPE是与GW连接实现接入骨干网的,对应与上述第一报文经过图9或图11所示的GW转发的情况,该第CPE接收到报文是经过再次外层隧道封装的第一报文。参见图19,第二CPE转发报文的处理流程可以包括如下步骤:
S901、通过第二CPE中的第一underlay VRF,接收GW发送的第一报文,将第一报文发送至第二CPE中的第二overlay VRF,其中,第一报文包括内层隧道封装和外层隧道封装。
在实施中,第二CPE中的第三目的地址对应的WAN口接收再次经过外层封装的第一报文。
此处,需要说明的是,第一CPE中的第一overlay VRF与第二CPE中的第一overlayVRF的VRF标识相同。GW中的执行再次外层隧道封装任务的VRF的VRF标识与第二CPE中的第二overlay VRF的VRF标识相同。
上述WAN口关联的第一underlay VRF,确定第一报文的外层隧道封装中的VRF标识为第二overlay VRF的VRF标识,则将上述第一报文转发至第二overlay VRF。
S902、通过第二overlay VRF,去除第一报文的外层隧道封装,将去除外层隧道封装后的第一报文发送至第一overlay VRF。
在实施中,第二overlay VRF基于预先配置的外层隧道的隧道协议,去除该第一报文的外层隧道封装。然后,第一underlay VRF确定去除外层隧道封装的第一报文的内层隧道封装中的VRF标识为第一overlay VRF的VRF标识,则将去除外层隧道封装的第一报文转发至第一overlay VRF。
S903、通过第一overlay VRF,对去除外层隧道封装后的第一报文去除内层隧道封装,对去除内层隧道封装后的第一报文进行转发。
在实施中,第一overlay VRF获取到上述的去除外层隧道封装后的第一报文后,基于预先配置的内层隧道协议,对该去除外层隧道封装后的第一报文去除内层隧道封装。然后,第一overlay VRF获取去除内层隧道封装的第一报文中携带的初始目的地址,查询路由信息确定该初始目的地址对应下一跳地址,根据该下一跳地址转发该去除内层隧道封装的第一报文。
下面以图7所示的CPE作为接收侧的第二CPE,对其转发报文的处理流程进行说明。需要说明的是,该图7所示的CPE是与GW连接实现接入骨干网的,对应与上述第一报文经过图9或图11所示的GW转发的情况,该第CPE接收到报文是经过再次外层隧道封装的第一报文。参见图18,第二CPE转发报文的处理流程可以包括如下步骤:
S801、通过第二CPE中的第一underlay VRF,接收GW发送的第一报文,其中,第一报文包括内层隧道封装和外层隧道封装,去除第一报文的外层隧道封装,将去除外层隧道封装后的第一报文发送至第一overlay VRF。
在实施中,第二CPE中的第三目的地址对应的WAN口接收再次经过外层封装的第一报文。
此处,需要说明的是,第一CPE中的第一overlay VRF与第二CPE中的第一overlayVRF的VRF标识相同。同样的,GW在对去除外层隧道封装的第一报文进行再次外层隧道封装时,会对第一报文封装有GW中的执行再次外层隧道封装任务的VRF的VRF标识,且该GW中VRF的VRF标识与第二CPE中的第二overlay VRF的VRF标识相同,还与第一CPE中的第二overlayVRF的VRF标识相同。
上述WAN口关联的第一underlay VRF,确定第一报文的外层隧道封装中的VRF标识与自己的VRF标识相同,则基于预先配置的外层隧道的隧道协议,去除该第一报文的外层隧道封装。然后,第一underlay VRF确定去除外层隧道封装的第一报文的内层隧道封装中的VRF标识为第一overlay VRF的VRF标识,则将去除外层隧道封装的第一报文转发至第一overlay VRF。
S802、通过第一overlay VRF,对去除外层隧道封装后的第一报文去除内层隧道封装,对去除内层隧道封装后的第一报文进行转发。
在实施中,第一overlay VRF获取到上述的去除外层隧道封装后的第一报文后,基于预先配置的内层隧道协议,对该去除外层隧道封装后的第一报文去除内层隧道封装。然后,第一overlay VRF获取去除内层隧道封装的第一报文中携带的初始目的地址,查询路由信息确定该初始目的地址对应的下一跳地址,根据该下一跳地址转发该去除内层隧道封装的第一报文。
在一种具体的实现方式中,本申请实施例还可以应用在如图20所示的场景中,其中,第一CPE与两个GW连接,第二CPE与一个GW连接,第一CPE分别通过第一GW和第三GW与第二CEP建立内层隧道。在第一CPE中部署有第一overlay VRF、第二overlay VRF、第三overlay VRF、第一underlay VRF、第二underlay VRF和第三underlay VRF。其中,第二overlay VRF关联的第一LAN口和第二underlay VRF关联的第一WAN口通过物理线路连接,第三overlay VRF关联的第二LAN口和第三underlay VRF关联的第三WAN口之间通过物理线路连接,第二WAN口与第一underlay VRF关联。在第二CPE中部署有第一overlay VRF、第二overlay VRF、第一underlay VRF和第二underlay VRF,第二overlay VRF关联的第一LAN口和第二underlay VRF关联的第一WAN口之间通过物理线路连接。
在该场景下,第一CPE到第二CPE之间有两条端到端的隧道,那么,在第一CPE向第二CPE发送报文时,第一CPE中的第一overlay VRF可以根据等值多路径(ECMP,Equal CostMulti-path)协议,在这两条隧道中实现负载分担。当然,如果在第一CPE和第二CPE之间还存在其他的端到端隧道,那么,第一CPE在向第二CPE发送报文时,第一overlay VRF可以根据ECMP协议,在第一CPE和第二CPE之间的各条端到端隧道中实现负载分担。
此外,值得一提的是,第二overlay VRF和第二underlay VRF之间还可以通过如图3所示的内环连接方式实现连接,第三overlay VRF和第三underlay VRF之间同样还可以通过如图3所示的内环连接方式实现连接。同样的,第二CPE中的第二overlay VRF和第二underlay VRF之间同样还可以通过如图3所示的内环连接方式实现连接。
在对报文进行转发时,图20中的第一CPE的处理与上述图4所示的CPE转发报文的处理流程相同或相似,在此不做赘述。图20中的第一GW和第三GW与上述图12所示的第一GW转发报文的处理流程相同或相似在此不做赘述。图20中的第二GW与上述图14所示的第二GW转发报文的处理流程相同或相似在此不做赘述。
在实现上述报文转发的方法之前,需要对CPE进行配置,参见图21,对如图2和图3所示CPE的配置可以如下:
S111、控制器向第一CPE发送端口地址分配消息。
在实施中,控制器可以指定第一CPE中各端口的IP地址。具体的,在图2所示的CPE的情况下,控制器可以指定第一WAN口、第一LAN口和第二WAN口的IP地址。在图3所示的CPE的情况下,控制器可以指定第一loopback端口、第二loopback端口和第二WAN口的IP地址。
S112、第一CPE根据端口地址分配消息,配置各端口的地址。
在实施中,第一CPE可以根据端口地址分配消息中携带的IP地址信息,对如图2所示的第一WAN口、第一LAN口和第二WAN口配置IP地址。或者,对如图3所示的第一loopback端口、第二loopback端口和第二WAN口配置IP地址。
S113、控制器向第一CPE发送overlay VRF建立消息。
在实施中,如图2和3所示的情况,overlay VRF建立消息中可以携带有第一overlay VRF的VRF标识和第二overlay VRF的VRF标识。
如图5所示的情况,overlay VRF建立消息中可以携带有第一overlay VRF的VRF标识和第二overlay VRF的VRF标识。
如图7所示的情况,overlay VRF建立消息中可以携带有第一overlay VRF的VRF标识。
如图20所示的情况,overlay VRF建立消息中可以携带有第一overlay VRF的VRF标识、第二overlay VRF的VRF标识和第三overlay VRF的VRF标识。
S114、第一CPE基于overlay VRF建立消息,在第一CPE中建立对应的overlay VRF。
在实施中,如图2和3所示的情况,第一CPE在第一CPE中建立第一overlay VRF和第二overlay VRF。
如图5所示的情况,第一CPE在第一CPE中建立第一overlay VRF和第二overlayVRF。
如图7所示的情况,第一CPE在第一CPE中建立第一overlay VRF。
如图20所示的情况,第一CPE在第一CPE中建立第一overlay VRF、第二overlayVRF和第三overlay VRF。
S115、控制器向第一CPE发送underlay VRF建立消息。
在实施中,如图2和3所示的情况,underlay VRF建立消息中携带有第一underlayVRF的VRF标识和第二underlay VRF的VRF标识。
如图5所示的情况,underlay VRF建立消息中携带有第一underlay VRF的VRF标识。
如图7所示的情况,underlay VRF建立消息中携带有第一underlay VRF的VRF标识。
如图20所示的情况,underlay VRF建立消息中携带有第一underlay VRF的VRF标识、第二underlay VRF的VRF标识和第三underlay VRF的VRF标识。
S116、第一CPE根据underlay VRF建立消息,在第一CPE中建立对应的underlayVRF。
在实施中,如图2和3所示的情况,第一CPE在第一CPE中建立第一underlay VRF和第二underlay VRF。
如图5所示的情况,第一CPE在第一CPE中建立第一underlay VRF。
如图7所示的情况,第一CPE在第一CPE中建立第一underlay VRF。
如图20所示的情况,第一CPE在第一CPE中建立第一underlay VRF、第二underlayVRF和第三underlay VRF。
S117、控制器向第一CPE发送的端口关联消息,其中,端口关联消息中包括第一源地址对应的端口的标识和对应的VRF标识,第二源地址对应的端口的标识和对应的VRF标识。
在实施中,如图2所示的情况,端口关联消息中第一源地址对应的端口为第一WAN口,对应的VRF标识为第二underlay VRF的VRF标识,第二源地址对应的端口为第二WAN口,对应的VRF标识为第一underlay VRF的VRF的标识。此外,端口关联消息中还可以携带有第一LAN口的标识和第二overlay VRF的VRF标识。
如图3所示的情况,端口关联消息中第一源地址对应的端口为第一loopback端口,对应的VRF标识为第二underlay VRF的VRF标识,第二源地址对应的端口为第二WAN口,对应的VRF标识为第一underlay VRF的VRF的标识。此外,端口关联消息中还可以携带有第二loopback端口的标识和第二overlay VRF的VRF标识。
如图5所示的情况,端口关联消息中第一源地址对应的端口为loopback端口,对应的VRF标识为第二overlay VRF的VRF标识,第二源地址对应的端口为WAN口,对应的VRF标识为第一underlay VRF的VRF标识。
如图7所示的情况,端口关联消息中第一源地址对应的端口为loopback端口,对应的VRF标识为第一underlay VRF的VRF标识,第二源地址对应的端口为WAN口,对应的VRF标识同样为第一underlay VRF的VRF标识。
如图20所示的情况,端口关联消息中第一源地址对应的端口为第一WAN口,对应的VRF标识为第二underlay VRF的VRF标识。或者,端口关联消息中第一源地址对应的端口为第三WAN口,对应的VRF标识为第三underlay VRF的VRF标识。第二源地址对应的端口为第二WAN口,对应的VRF标识为第一underlay VRF的VRF标识。此外,端口关联消息中还可以携带有第一LAN口的标识和第二overlay VRF的VRF标识,第二LAN口的标识和第三overlay VRF的VRF标识。
S118、第一CPE根据端口关联消息,将第一CPE中的端口和对应的VRF进行关联。
在实施中,如图2所示的情况,第一CPE将第一WAN口和第二underlay VRF关联,将第二WAN口和第一underlay VRF关联,将第一LAN口和第二overlay VRF关联。
如图3所示的情况,第一CPE将第一loopback端口和第二underlay VRF关联,将第二WAN口和第一underlay VRF关联,将第二loopback端口和第二overlay VRF关联。
如图5所示的情况,第一CPE将loopback端口和第二overlay VRF关联,将WAN口和第一underlay VRF关联。
如图7所示的情况,第一CPE将loopback端口和第一underlay VRF关联,将WAN口同样和第一underlay VRF关联。
如图20所示的情况,第一CPE将第一WAN口和第二underlay VRF关联,将第二WAN口和第一underlay VRF关联,将第三WAN口和第三underlay VRF关联。将第一LAN口和第二overlay VRF关联,将第二LAN口和第三overlay VRF关联。
然后,在如图2所示的情况下,第一CPE可以对第二overlay VRF和第二underlayVRF建立外环的物理线路连接。在如图3所示的情况下,第一CPE可以对第二overlay VRF和第二underlay VRF建立二者的loopback端口之间的内环隧道。在如图20所示的情况下,第一CPE可以对第二overlay VRF和第二underlay VRF建立外环的物理线路连接,还可以对第三overlay VRF和第三underlay VRF建立外环的物理线路连接。当然,对于图20所示的情况,第二overlay VRF和第二underlay VRF之间,以及第三overlay VRF和第三underlayVRF之间,还可以均通过建立内环隧道实现连接,也可以一对通过建立外环的物理线路连接,另一对通过建立内环隧道实现连接。
S119、控制器向第一CPE发送路由域分配消息。
在实施中,技术人员在控制器中配置对应第一CPE中各端口的路由域分配信息。其中,路由域分配信息用于指示对端口分配的路由域,第一CPE中各端口可以包括WAN口和loopback端口,分配的路由域可以包括backbone、Internet等。然后,控制器向第一CPE下发路由域分配消息。在该路由域分配消息中携带有端口标识和对应的路由域标识。
S1110、第一CPE对各端口分配路由域。
在实施中,第一CPE根据路由域分配消息,对各WAN口、loopback端口分配路由域,其中,第一源地址和第二源地址的路由域不同。如图2所示的情况,第一WAN口的路由域和第二WAN口的路由域不同,例如,第一WAN口的路由域可以为backbone,第二WAN口的路由域可以为Internet。如图3所示的情况,第一loopback端口的路由域和第二WAN口的路由域不同,例如,第一loopback端口的路由域可以为backbone,第二WAN口的路由域可以为Internet。
S1111、路由反射器(router reflector,RR)向第一CPE发送关联GW的第二目的地址。
在实施中,上述配置完成后,各网络设备如第一CPE、第二CPE和GW可以将本设备的各端口的IP地址以及对应路由域标识、设备标识等发送给RR。RR接收到GW发送的消息后,可以将GW的端口IP地址对应的路由域以及设备标识等发送给第一CPE。
S1112、第一CPE基于第二源地址和第二目的地址,建立外层隧道,其中,第二目的地址对应的端口的路由域与第二源地址对应的端口的路由域相同。
其中,第二源地址为第一CPE中WAN口的IP地址,第二目的地址为GW中WAN口的IP地址。
在实施中,第一CPE接收到RR发送的GW的端口的IP地址以及对应路由域、设备标识等后,尝试通过两设备中处于相同路由域的端口建立隧道。这样,建立一条第一CPE中第二源地址对应的端口到GW中第二目的地址对应的端口之间的隧道,即上述外层隧道。
S1113、RR向第一CPE发送关联第二CPE的第一目的地址。
其中,第一目的地址为第二CPE中WAN口或者loopback端口的IP地址。
在实施中,RR在接收到第二CPE发送的各端口的IP地址以及对应路由域标识、设备标识等之后,可以将这些信息发送至第一CPE。
S1114、第一CPE基于第一源地址和第一目的地址,建立内层隧道,其中,第一目的地址对应的端口的路由域与第一源地址对应的端口的路由域相同。
在实施中,第一CPE接收到RR发送的第二CPE的端口的IP地址以及对应路由域标识、设备标识等后,尝试通过两设备中处于相同路由域的端口建立隧道。由于第一CPE和GW之间已经通过外层隧道建立连接,则第一CPE可以在该外层隧道的基础上,建立一条第一CPE中第一源地址对应的端口和第二CPE中的第一目的地址对应的端口之间的隧道,即上述内层隧道,该内层隧道通过GW和骨干网连接第一CPE和第二CPE。
在建立隧道时,隧道所在路径上的各网络设备均可以学习到路由信息并存储。如第一CPE可以学习到该内层隧道在第一CPE中的路由信息,该路由信息包括第一目的地址与第二WAN口对应关系,以及第二WAN口和第二源地址、第二目的地址的对应关系。GW可以学习到内层隧道在本设备中的路由信息,即第一目的地址和下一跳地址的对应关系。
S1115、控制器向第一CPE发送第二CPE对应的LAN侧的目的地址集合。
在实施中,CPE可以向控制器上报对应LAN侧的终端设备的IP地址和本设备的设备标识。例如,第二CPE可以向控制器上报LAN侧的各终端设备的IP地址以及第二CPE的设备标识。控制器接收到这些信息后,可以发送给其他CPE,例如,可以将第二CPE的LAN侧的各终端设备的IP地址以及第二CPE的设备标识发送至第一CPE。
S1116、第一CPE建立第二CPE和LAN侧的目的地址集合之间的对应关系。
在实施中,第一CPE接收到第二CPE的LAN侧的各终端设备的IP地址以及第二CPE的设备标识后,可以将第二CPE的设备标识和第二CPE的LAN侧的各终端设备的IP地址对应存储。
在本申请中通过上述配置可以建立两CPE之间的经过骨干网的端到端隧道。
基于相同的技术构思,本发明实施例还提供了一种报文转发的装置,所述报文转发装置可以是如图2、3、5、7中的CPE。如图22所示,该装置包括:接收模块220、内层封装模块221、外层封装模块222和转发模块223。
接收模块220,用于接收第一报文,获取所述第一报文的初始目的地址;具体实现方式请参考图4所示的实施例中步骤S101的详细描述,或者图6所示实施例中步骤S201的详细描述,又或者图8所示实施例中步骤S301的详细描述,这里不再赘述。
内层封装模块221,用于确定所述初始地址对应的内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,其中,所述内层隧道为第一CPE和第二CPE之间的端到端隧道;具体实现方式请参考图4所示实施例中步骤S102的详细描述,或者图6所示实施例中步骤S202的详细描述,又或者图8所示实施例中步骤S302的详细描述,这里不再赘述。
外层封装模块222,用于确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装;具体实施方式请参考图4所示实施例中步骤S103-S104的详细描述,或者图6所示实施例中步骤S203-S204的详细描述,又或者图8所示实施例中步骤S303的详细描述,这里不再赘述。
转发模块223,用于对经过外层隧道封装的第一报文进行转发。
在一种具体的实现方式中,所述接收模块220,还用于:
接收路由反射器RR发送的所述第二目的地址,基于所述第二源地址和所述第二目的地址,建立所述外层隧道,其中,所述第二目的地址对应的端口的路由域与所述第二源地址对应的端口的路由域相同;
接收所述RR发送的所述第一目的地址,基于所述第一源地址和所述第一目的地址,建立所述内层隧道,其中,所述第一目的地址对应的端口的路由域与所述第一源地址对应的端口的路由域相同;
生成所述内层隧道在所述第一CPE中的路由信息,所述路由信息包括所述第一目的地址与所述第二源地址和第二目的地址的对应关系。
在一种具体的实现方式中,所述接收模块220,还用于:
接收所述控制器发送的overlay VRF配置消息,在所述第一CPE中建立第一overlay VRF和第二overlay VRF;
接收所述控制器发送的underlay VRF配置消息,在所述第一CPE中建立第一underlay VRF;
接收所述控制器发送的端口关联消息,将所述第二overlay VRF与所述第一源地址对应的端口进行关联,将所述第一underlay VRF与所述第二源地址进行关联。
在一种具体的实现方式中,所述内层封装模块221,用于:
所述第一overlay VRF确定所述初始目的地址对应的内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,其中,所述内层隧道为所述第一CPE和第二CPE之间的端到端隧道;
所述内层封装模块221,还用于:
所述第一overlay VRF将经过内层隧道封装的第一报文发送至与所述第一源地址对应的第二overlay VRF;
所述外层封装模块222,还用于:
所述第二overlay VRF确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装;
所述外层封装模块222,还用于:
所述第二overlay VRF将经过外层隧道封装的第一报文发送至与所述第二源地址对应的第一underlay VRF;
所述转发模块223,用于:
所述第一underlay VRF对经过外层隧道封装的第一报文进行转发。
在一种具体的实现方式中,所述接收模块220,还用于:
接收所述控制器发送的overlay VRF配置消息,在所述第一CPE中建立第一overlay VRF和第二overlay VRF;
接收控制器发送的underlay VRF配置消息,在所述第一CPE中建立第一underlayVRF和第二underlay VRF;
接收所述控制器发送的端口关联消息,将所述第二underlay VRF与所述第一源地址对应的端口进行关联,将所述第一underlay VRF与所述第二源地址进行关联。
在一种具体的实现方式中,所述内层隧道封装模块221,用于:
所述第一overlay VRF确定所述初始目的地址对应的内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,其中,所述内层隧道为所述第一CPE和第二CPE之间的端到端隧道;
所述内层封装模块221,还用于:
所述第一overlay VRF将经过内层隧道封装的第一报文发送至与所述第一源地址对应的第二underlay VRF;
所述第二underlay VRF将所述经过内层隧道封装的第一报文发送至所述第一CPE中与所述第二underlay VRF相连接的第二overlay VRF;
所述外层隧道封装模块222,还用于:
所述第二overlay VRF确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装;
所述外层封装模块222,还用于:
所述第二overlay VRF将经过外层隧道封装的第一报文发送至与所述第二源地址对应的第一underlay VRF;
所述转发模块223,用于:
所述第一underlay VRF对经过外层隧道封装的第一报文进行转发。
在一种具体的实现方式中,所述第二underlay VRF与所述第二overlay VRF通过外环连接。
在一种具体的实现方式中,所述第二underlay VRF与所述第二overlay VRF通过对应的物理端口连接。
在一种具体的实现方式中,所述第二underlay VRF与所述第二overlay VRF通过内环连接。
在一种具体的实现方式中,所述第二underlay VRF与所述第二overlay VRF通过对应的loopback端口连接。
在一种具体的实现方式中,所述方法还包括:
接收所述控制器发送的连接建立消息,其中,所述连接建立消息携带有所述第二underlay VRF的标识和所述第二overlay VRF的标识;
建立所述第二underlay VRF对应的loopback端口与所述第二overlay VRF对应的loopback端口之间的连接。
在一种具体的实现方式中,所述接收模块220,还用于:
接收所述控制器发送的overlay VRF配置消息,在所述第一CPE中建立第一overlay VRF;
接收所述控制器发送的underlay VRF配置消息,在所述第一CPE中建立第一underlay VRF;
接收所述控制器发送的端口关联消息,将所述第一underlay VRF与所述第一源地址对应的端口和所述第二源地址进行关联。
在一种具体的实现方式中,所述内层隧道封装模块221,用于:
所述第一overlay VRF确定所述初始目的地址对应的内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装;
所述内层隧道封装模块221,还用于:
所述第一overlay VRF将经过内层隧道封装的第一报文发送至与所述第一源地址对应的第一underlay VRF;
所述外层隧道封装模块222,用于:
所述第一underlay VRF确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装;
所述转发模块223,用于:
所述第一underlay VRF对经过外层隧道封装的第一报文进行转发。
在一种具体的实现方式中,所述内层隧道封装模块,用于:
在所述初始目的地址对应的多条内层隧道中,确定隧道服务质量最高的内层隧道,并确定所述隧道服务质量最高的内层隧道的第一源地址和第一目的地址。
需要说明的是:上述实施例提供的报文转发的装置在报文转发时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将第一CPE的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的报文转发的装置与报文转发的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
基于相同的技术构思,本发明实施例还提供了一种报文转发的装置,所述报文转发装置可以是如图9、11、14中的GW。如图23所示,该装置包括:接收模块230、解封装模块231和转发模块232。
接收模块230,用于接收所述第一CPE发送的第一报文,其中,所述第一报文包括内层隧道封装和外层隧道封装,所述内层隧道为所述第一CPE和所述第二CPE之间的端到端隧道;具体实现方式请参考图10所示的实施例中步骤S401的详细描述,或者图12所示实施例中步骤S501的详细描述,这里不再赘述。
解封装模块231,用于去除所述第一报文的外层隧道封装;具体实现方式请参考图10所示的实施例中步骤S402的详细描述,或者图12所示实施例中步骤S502的详细描述,这里不再赘述。
转发模块232,用于基于所述第一报文的内层隧道封装中的第一目的地址,对去除外层隧道封装后的第一报文进行转发,所述第一目的地址关联所述第二CPE。具体实现方式请参考图10所示的实施例中步骤S403的详细描述,或者图12所示实施例中步骤S503的详细描述,这里不再赘述。
在一种具体的实现方式中,所述转发模块231,用于:
确定所述第一报文的内层隧道封装中的第一目的地址对应的外层隧道的第三源地址和第三目的地址,基于所述第三源地址和所述第三目的地址,对所述去除外层隧道封装后的第一报文进行再次外层隧道封装;
对经过再次外层隧道封装的第一报文进行转发。
在一种具体的实现方式中,所述接收模块240,用于:
接收控制器发送的路由域分配消息,对所述第三源地址对应的端口分配路由域;
接收RR发送的第三目的地址,基于所述第三目的地址和所述第三源地址,建立所述外层隧道,其中,所述第三源地址和所述第三目的地址对应的端口的路由域相同;
建立所述第一目的地址与所述外层隧道的第三源地址和第三目的地址对应关系。
需要说明的是:上述实施例提供的报文转发的装置在报文转发时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将GW的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的报文转发的装置与报文转发的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
基于相同的技术构思,本发明实施例还提供了一种报文转发的装置,所述报文转发的装置可以是如图2、3、5、7中的CPE。如图24所示,该装置包括:接收模块240、解封装模块241和转发模块242。
接收模块240,用于接收第一报文,其中,所述第一报文来自于所述第一CPE,且所述第一报文包括内层隧道封装和外层隧道封装,所述内层隧道为所述第一CPE和所述第二CPE之间的端到端隧道;具体实现方式请参考图15所示的实施例中步骤S601的详细描述,或者图17所示实施例中步骤S701的详细描述,又或者图18所示的实施例中步骤S801,又或者图19所示的实施例中步骤S901的详细描述,这里不再赘述。
解封装模块241,去除所述第一报文的外层隧道封装;具体实现方式请参考图15所示的实施例中步骤S602的详细描述,或者图18所示的实施例中步骤S801,又或者图19所示的实施例中步骤S902的详细描述,这里不再赘述。
转发模块242,用于对所述去除外层隧道封装后的第一报文去除内层隧道封装,对去除内层隧道封装后的第一报文进行转发。具体实现方式请参考图15所示的实施例中步骤S603的详细描述,或者图17所示实施例中步骤S702的详细描述,又或者图18所示的实施例中步骤S802,又或者图19所示的实施例中步骤S903的详细描述,这里不再赘述。
在一种具体的实现方式中,所述接收模块240,用于:
通过所述第二CPE中的第一underlay VRF,接收第一报文;
所述解封装模块241,用于:
通过所述第一underlay VRF,去除所述第一报文的外层隧道封装;
通过所述第一underlay VRF,去除外层隧道封装后的第一报文发送至所述第二CPE中的第一overlay VRF;
所述转发模块242,用于:
通过所述第一overlay VRF,对所述去除外层隧道封装后的第一报文去除内层隧道封装,对去除内层隧道封装后的第一报文进行转发。
在一种具体的实现方式中,所述接收模块240,用于:
通过所述第二CPE中的第一underlay VRF,接收第一报文;
通过所述第二CPE中的第一underlay VRF,将所述第一报文发送至所述第二CPE中的第二overlay VRF;
所述解封装模块241,用于:
通过所述第二overlay VRF,去除所述第一报文的外层隧道封装;
通过所述第二overlay VRF,将去除外层隧道封装后的第一报文发送至所述第二CPE中的第一overlay VRF;
所述转发模块242,用于:
通过所述第一overlay VRF,对所述去除外层隧道封装后的第一报文去除内层隧道封装,对去除内层隧道封装后的第一报文进行转发。
在一种具体的实现方式中,所述解封装模块241,用于:
通过所述第二overlay VRF,去除所述第一报文的外层隧道封装,将去除外层隧道封装后的第一报文发送至与所述第二overlay VRF相连接的第二underlay VRF;
通过所述第二underlay VRF,将所述去除外层隧道封装后的第一报文发送至第一overlay VRF。
在一种具体的实现方式中,所述第二underlay VRF与所述第二overlay VRF通过外环连接。
在一种具体的实现方式中,所述第二underlay VRF与所述第二overlay VRF通过对应的物理端口连接。
在一种具体的实现方式中,所述第二underlay VRF与所述第二overlay VRF通过内环连接。
在一种具体的实现方式中,所述第二underlay VRF与所述第二overlay VRF通过对应的loopback端口连接。
需要说明的是:上述实施例提供的报文转发的装置在报文转发时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将第二CPE的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的报文转发的装置与报文转发的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
基于相同的技术构思,本申请实施例还提供了一种CPE配置的方法,所述报文转发的装置可以是如图2、3、5、7中的CPE。如图25所示,该装置包括:接收模块250、封装模块251和生成模块252。
接收模块250,用于接收所述RR发送的所述关联所述GW的第二目的地址,基于所述第二源地址和所述第二目的地址,建立外层隧道;具体实现方式请参考图21所示的实施例中步骤S1112的详细描述,这里不再赘述。
封装模块251,用于接收所述RR发送的关联所述第二CPE的第一目的地址,基于所述第一源地址和所述第一目的地址,建立内层隧道,所述内层隧道为所述第一CPE和所述第二CPE之间的端到端隧道;具体实现方式请参考图21所示的实施例中步骤S1114的详细描述,这里不再赘述。
生成模块252,用于生成所述内层隧道在所述第一CPE中的路由信息,所述路由信息包括所述第一目的地址与所述第二源地址和第二目的地址的对应关系。具体实现方式请参考图21所示的实施例中步骤S1114的详细描述,这里不再赘述。
在一种具体的实现方式中,所述接收模块250,还用于:
接收第一报文,获取所述第一报文的初始目的地址;
确定所述初始地址对应的所述内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,其中,所述内层隧道为所述第一CPE和第二CPE之间的端到端隧道;
确定所述第一目的地址对应的所述外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装;
对经过外层隧道封装的第一报文进行转发。
在一种具体的实现方式中,所述接收模块250,还用于:
接收所述控制器发送的overlay VRF配置消息,在所述第一CPE中建立第一overlay VRF和第二overlay VRF;
接收所述控制器发送的underlay VRF配置消息,在所述第一CPE中建立第一underlay VRF;
接收所述控制器发送的端口关联消息,将所述第二overlay VRF与所述第一源地址对应的端口进行关联,将所述第一underlay VRF与所述第二源地址进行关联。
在一种具体的实现方式中,所述接收模块250,还用于:
接收第一报文,获取所述第一报文的初始目的地址;
所述第一overlay VRF确定所述初始目的地址对应的内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,其中,所述内层隧道为所述第一CPE和第二CPE之间的端到端隧道,将经过内层隧道封装的第一报文发送至与所述第一源地址对应的所述第二overlay VRF;
所述第二overlay VRF确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装,将经过外层隧道封装的第一报文发送至与所述第二源地址对应的所述第一underlay VRF;
所述第一underlay VRF对经过外层隧道封装的第一报文进行转发。
在一种具体的实现方式中,所述接收模块250,还用于:
接收所述控制器发送的overlay VRF配置消息,在所述第一CPE中建立第一overlay VRF和第二overlay VRF;
接收控制器发送的underlay VRF配置消息,在所述第一CPE中建立第一underlayVRF和第二underlay VRF;
接收所述控制器发送的端口关联消息,将所述第二underlay VRF与所述第一源地址对应的端口进行关联,将所述第一underlay VRF与所述第二源地址进行关联。
在一种具体的实现方式中,所述接收模块250,还用于:
接收第一报文,获取所述第一报文的初始目的地址;
所述第一overlay VRF确定所述初始目的地址对应的内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,其中,所述内层隧道为第一CPE和第二CPE之间的端到端隧道,将经过内层隧道封装的第一报文发送至与所述第一源地址对应的第二underlay VRF;
所述第二underlay VRF将所述经过内层隧道封装的第一报文发送至第一CPE中与所述第二underlay VRF相连接的第二overlay VRF;
所述第二overlay VRF确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装,将经过外层隧道封装的第一报文发送至与所述第二源地址对应的所述第一underlay VRF;
所述第一underlay VRF对经过外层隧道封装的第一报文进行转发。
在一种具体的实现方式中,所述接收模块250,还用于:
接收所述控制器发送的overlay VRF配置消息,在第一CPE中建立第一overlayVRF;
接收所述控制器发送的underlay VRF配置消息,在第一CPE中建立第一underlayVRF;
接收所述控制器发送的端口关联消息,将所述第一overlay VRF与所述第一源地址对应的端口和所述第二源地址进行关联。
在一种具体的实现方式中,所述接收模块250,还用于:
接收第一报文,获取所述第一报文的初始目的地址;
所述第一overlay VRF确定所述初始目的地址对应的内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,将经过内层隧道封装的第一报文发送至与所述第一源地址对应的所述第一underlayVRF;
所述第一underlay VRF确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装,对经过外层隧道封装的第一报文进行转发。
需要说明的是:上述实施例提供的报文转发的装置在报文转发时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将第一CPE的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的报文转发的装置与报文转发的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本申请实施例还提供了一种CPE配置的装置,该装置可以为RR,如图26所示,装置包括接收模块260和发送模块261:
所述接收模块260,用于接收GW发送的关联所述GW的第二目的地址;具体实现方式请参考图21所示的实施例中步骤S1111的详细描述,这里不再赘述。
所述发送模块261,用于向第一CPE发送所述第二目的地址;具体实现方式请参考图21所示的实施例中步骤S1111的详细描述,这里不再赘述。
所述接收模块260,用于接收第二CPE发送的关联所述第二CPE的第一目的地址;具体实现方式请参考图21所示的实施例中步骤S1113的详细描述,这里不再赘述。
所述发送模块261,用于向所述第二CPE发送的第一目的地址。具体实现方式请参考图21所示的实施例中步骤S1113的详细描述,这里不再赘述。
需要说明的是:上述实施例提供的CPE配置的装置在配置CPE时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将RR的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的CPE配置的装置与CPE配置的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本申请实施例还提供了一种CPE配置的装置,该装置应用于控制器,如图27所示,该装置包括:配置模块270和关联模块271。
所述配置模块270,用于向第一CPE发送overlay VRF配置消息,向所述第一CPE发送underlay VRF配置消息;具体实现方式请参考图21所示的实施例中步骤S113的详细描述,这里不再赘述。
所述关联模块271,用于向所述第一CPE发送端口关联消息。具体实现方式请参考图21所示的实施例中步骤S115的详细描述,这里不再赘述。
在一种具体的实现方式中,所述overlay VRF配置消息中携带第一overlay VRF的VRF标识和第二overlay VRF的VRF标识;
所述underlay VRF配置消息中携带第一underlay VRF的VRF标识;
所述端口关联消息携带第二overlay VRF的VRF标识与第一源地址的对应关系,以及第一underlay VRF的VRF标识与所述第二源地址的对应关系。
在一种具体的实现方式中,所述overlay VRF配置消息中携带第一overlay VRF的VRF标识和第二overlay VRF的VRF标识;
所述underlay VRF配置消息中携带第一underlay VRF的VRF标识和第二underlayVRF的VRF标识;
所述端口关联消息中携带所述第二underlay VRF的VRF标识与所述第一源地址的对应关系,以及所述第一underlay VRF的VRF标识与所述第二源地址的对应关系。
在一种具体的实现方式中,所述overlay VRF配置消息中携带第一overlay VRF的VRF标识;
所述underlay VRF配置消息中携带第一underlay VRF的VRF标识;
所述端口关联消息携带中所述第一overlay VRF的VRF标识与第一源地址和第二源地址的对应关系。
需要说明的是:上述实施例提供的CPE配置的装置在配置CPE时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将控制器的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的CPE配置的装置与CPE配置的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
参见图28,本申请实施例提供了一种通信设备1000示意图。该通信设备1000可以是执行上述图4、6和8任一方法的第一CPE。该通信设备1000包括至少一个处理器1001,内部连接1002,存储器1003以及至少一个收发器1004。
可选的,上述处理器1001可以是一个通用中央处理器(central processingunit,CPU),网络处理器(network processor,NP),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。
上述内部连接1002可包括一通路,在上述组件之间传送信息。可选的,内部连接1002为单板或总线等。
上述收发器1004,用于与其他设备或通信网络通信。
上述存储器1003可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
其中,存储器1003用于存储执行本申请方案的应用程序代码,并由处理器1001来控制执行。处理器1001用于执行存储器1003中存储的应用程序代码,以及配合至少一个收发器1004,从而使得该通信设备1000实现本申请中的功能。
在具体实现中,作为一种实施例,处理器1001可以包括一个或多个CPU,例如图27中的CPU0和CPU1。
在具体实现中,作为一种实施例,该通信设备1000可以包括多个处理器,例如图27中的处理器1001和处理器1007。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
上述通信设备1000可以为第一CPE、第二CPE、GW等。
当通信设备1000为第一CPE时,处理器1001执行处理器1003中存储的应用程序代码,以使得通信设备1000执行如下处理:
接收第一报文,获取第一报文的初始目的地址。确定初始地址对应的内层隧道的第一源地址和第一目的地址,基于第一源地址和所述第一目的地址,对第一报文进行内层隧道封装,其中,内层隧道为第一CPE和第二CPE之间的端到端隧道。确定第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于第二源地址和所述第二目的地址,对经过内层隧道封装的第一报文进行外层隧道封装。对经过外层隧道封装的第一报文进行转发。
具体的,通信设备1000所执行处理的具体实施方式,请参考图4、6和8所示的实施例中第一CPE的具体处理过程。
当通信设备1000为第二CPE时,处理器1001执行处理器1003中存储的应用程序代码,以使得通信设备1000执行如下处理:
接收第一报文,其中,第一报文包括内层隧道封装和外层隧道封装。去除第一报文的外层隧道封装。对去除外层隧道封装后的第一报文去除内层隧道封装,对去除内层隧道封装后的第一报文进行转发。
具体的,通信设备1000所执行处理的具体实施方式,请参考图15、17、18和19所示的实施例中第二CPE的具体处理过程。
当通信设备1000为GW时,处理器1001执行处理器1003中存储的应用程序代码,以使得通信设备1000执行如下处理:
接收第一CPE发送的第一报文,其中,第一报文包括内层隧道封装和外层隧道封装。去除第一报文的外层隧道封装。基于第一报文的内层隧道封装中的第一目的地址,对去除外层隧道封装后的第一报文进行转发。
具体的,通信设备1000所执行处理的具体实施方式,请参考图10、12和13所示的实施例中GW的具体处理过程。
当通信设备1000为RR时,处理器1001执行处理器1003中存储的应用程序代码,以使得通信设备1000执行如下处理:
接收GW发送的关联所述GW的第二目的地址,向第一CPE发送所述第二目的地址,接收第二CPE发送的关联所述第二CPE的第一目的地址,向所述第二CPE发送的第一目的地址。
具体的,通信设备1000所执行处理的具体实施方式,请参考图21所示的实施例中RR的具体处理过程。
当通信设备1000为控制器时,处理器1001执行处理器1003中存储的应用程序代码,以使得通信设备1000执行如下处理:
向第一CPE发送overlay VRF配置消息;向所述第一CPE发送underlay VRF配置消息;向所述第一CPE发送端口管理消息。
具体的,通信设备1000所执行处理的具体实施方式,请参考图21所示的实施例中控制器的具体处理过程。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现,当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令,在设备上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴光缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是设备能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(如软盘、硬盘和磁带等),也可以是光介质(如数字视盘(Digital Video Disk,DVD)等),或者半导体介质(如固态硬盘等)。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的实施例,并不用以限制本申请,凡在本申请原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (41)

1.一种转发报文的方法,其特征在于,所述方法应用于网络系统,所述网络系统包括第一用户前置设备CPE和第二用户前置设备CPE,所述方法由所述第一CPE执行,所述方法包括:
接收第一报文,获取所述第一报文的初始目的地址;
确定所述初始地址对应的内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,其中,所述内层隧道为所述第一CPE和所述第二CPE之间的端到端隧道;
确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装;
对经过外层隧道封装的第一报文进行转发。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收路由反射器RR发送的所述第二目的地址,基于所述第二源地址和所述第二目的地址,建立所述外层隧道,其中,所述第二目的地址对应的端口的路由域与所述第二源地址对应的端口的路由域相同;
接收所述RR发送的所述第一目的地址,基于所述第一源地址和所述第一目的地址,建立所述内层隧道,其中,所述第一目的地址对应的端口的路由域与所述第一源地址对应的端口的路由域相同;
生成所述内层隧道在所述第一CPE中的路由信息,所述路由信息包括所述第一目的地址与所述第二源地址和第二目的地址的对应关系。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
接收所述控制器发送的overlay VRF配置消息,在所述第一CPE中建立第一overlayVRF和第二overlay VRF;
接收所述控制器发送的underlay VRF配置消息,在所述第一CPE中建立第一underlayVRF;
接收所述控制器发送的端口关联消息,将所述第二overlay VRF与所述第一源地址对应的端口进行关联,将所述第一underlay VRF与所述第二源地址进行关联。
4.根据权利要求3所述的方法,其特征在于,所述确定所述初始地址对应的内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,包括:
所述第一overlay VRF确定所述初始目的地址对应的内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,其中,所述内层隧道为所述第一CPE和第二CPE之间的端到端隧道;
所述方法还包括:
所述第一overlay VRF将经过内层隧道封装的第一报文发送至与所述第一源地址对应的第二overlay VRF;
所述确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装,还包括:
所述第二overlay VRF确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装;
所述方法还包括:
所述第二overlay VRF将经过外层隧道封装的第一报文发送至与所述第二源地址对应的第一underlay VRF;
所述对经过外层隧道封装的第一报文进行转发,包括:
所述第一underlay VRF对经过外层隧道封装的第一报文进行转发。
5.根据权利要求2所述的方法,其特征在于,所述方法还包括:
接收所述控制器发送的overlay VRF配置消息,在所述第一CPE中建立第一overlayVRF和第二overlay VRF;
接收控制器发送的underlay VRF配置消息,在所述第一CPE中建立第一underlay VRF和第二underlay VRF;
接收所述控制器发送的端口关联消息,将所述第二underlay VRF与所述第一源地址对应的端口进行关联,将所述第一underlay VRF与所述第二源地址进行关联。
6.根据权利要求5所述的方法,其特征在于,所述确定所述初始地址对应的内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,包括:
所述第一overlay VRF确定所述初始目的地址对应的内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,其中,所述内层隧道为所述第一CPE和第二CPE之间的端到端隧道;
所述方法还包括:
所述第一overlay VRF将经过内层隧道封装的第一报文发送至与所述第一源地址对应的第二underlay VRF;
所述第二underlay VRF将所述经过内层隧道封装的第一报文发送至所述第一CPE中与所述第二underlay VRF相连接的第二overlay VRF;
所述确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装,还包括:
所述第二overlay VRF确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装;
所述方法还包括:
所述第二overlay VRF将经过外层隧道封装的第一报文发送至与所述第二源地址对应的第一underlay VRF;
所述对经过外层隧道封装的第一报文进行转发,包括:
所述第一underlay VRF对经过外层隧道封装的第一报文进行转发。
7.根据权利要求4所述的方法,其特征在于,所述第二underlay VRF与所述第二overlay VRF通过外环连接。
8.根据权利要求6所述的方法,其特征在于,所述第二underlay VRF与所述第二overlay VRF通过对应的物理端口连接。
9.根据权利要求4所述的方法,其特征在于,所述第二underlay VRF与所述第二overlay VRF通过内环连接。
10.根据权利要求8所述的方法,其特征在于,所述第二underlay VRF与所述第二overlay VRF通过对应的loopback端口连接。
11.根据权利要求10所述的方法,其特征在于,所述方法还包括:
接收所述控制器发送的连接建立消息,其中,所述连接建立消息携带有所述第二underlay VRF的标识和所述第二overlay VRF的标识;
建立所述第二underlay VRF对应的loopback端口与所述第二overlay VRF对应的loopback端口之间的连接。
12.根据权利要求2所述的方法,其特征在于,所述方法还包括:
接收所述控制器发送的overlay VRF配置消息,在所述第一CPE中建立第一overlayVRF;
接收所述控制器发送的underlay VRF配置消息,在所述第一CPE中建立第一underlayVRF;
接收所述控制器发送的端口关联消息,将所述第一underlay VRF与所述第一源地址对应的端口和所述第二源地址进行关联。
13.根据权利要求12所述的方法,其特征在于,所述确定所述初始地址对应的内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,包括:
所述第一overlay VRF确定所述初始目的地址对应的内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装;
所述方法还包括:
所述第一overlay VRF将经过内层隧道封装的第一报文发送至与所述第一源地址对应的第一underlay VRF;
所述确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装,包括:
所述第一underlay VRF确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装;
所述对经过外层隧道封装的第一报文进行转发,包括:
所述第一underlay VRF对经过外层隧道封装的第一报文进行转发。
14.根据权利要求1所述的方法,其特征在于,所述确定所述初始目的地址对应的内层隧道的第一源地址和第一目的地址,包括:
在所述初始目的地址对应的多条内层隧道中,确定隧道服务质量最高的内层隧道,并确定所述隧道服务质量最高的内层隧道的第一源地址和第一目的地址。
15.一种转发报文的方法,其特征在于,所述方法应用于网络系统,所述网络系统包括第一用户前置设备CPE,网关GW以及第二CPE,所述方法由所述GW执行,所述方法包括:
接收所述第一CPE发送的第一报文,其中,所述第一报文包括内层隧道封装和外层隧道封装,所述内层隧道为所述第一CPE和所述第二CPE之间的端到端隧道;
去除所述第一报文的外层隧道封装;
基于所述第一报文的内层隧道封装中的第一目的地址,对去除外层隧道封装后的第一报文进行转发,所述第一目的地址关联所述第二CPE。
16.根据权利要求15所述的方法,其特征在于,所述基于所述第一报文的内层隧道封装中的第二目的地址,对去除外层隧道封装后的第一报文进行转发,包括:
确定所述第一报文的内层隧道封装中的第一目的地址对应的外层隧道的第三源地址和第三目的地址,基于所述第三源地址和所述第三目的地址,对所述去除外层隧道封装后的第一报文进行再次外层隧道封装;
对经过再次外层隧道封装的第一报文进行转发。
17.根据权利要求16所述的方法,其特征在于,所述方法还包括:
接收RR发送的关联所述第二CPE的第三目的地址,基于所述第三目的地址和所述第三源地址,建立外层隧道,其中,所述第三源地址和所述第三目的地址对应的端口的路由域相同;
建立所述第一目的地址与所述外层隧道的第三源地址和第三目的地址的对应关系。
18.一种转发报文的方法,其特征在于,所述方法应用于网络系统,所述网络系统包括第一用户前置设备CPE,网关GW和第二CPE,所述方法由所述第二CPE执行,所述方法包括:
接收第一报文,其中,所述第一报文来自于所述第一CPE,且所述第一报文包括内层隧道封装和外层隧道封装,所述内层隧道为所述第一CPE和所述第二CPE之间的端到端隧道;
去除所述第一报文的外层隧道封装;
对所述去除外层隧道封装后的第一报文去除内层隧道封装,对去除内层隧道封装后的第一报文进行转发。
19.根据权利要求18所述的方法,其特征在于,所述接收第一报文,包括:
通过所述第二CPE中的第一underlay VRF,接收第一报文;
所述去除所述第一报文的外层隧道封装,包括:
通过所述第一underlay VRF,去除所述第一报文的外层隧道封装;
所述方法还包括:
通过所述第一underlay VRF,将去除外层隧道封装后的第一报文发送至所述第二CPE中的第一overlay VRF;
所述对所述去除外层隧道封装后的第一报文去除内层隧道封装,对去除内层隧道封装后的第一报文进行转发,包括:
通过所述第一overlay VRF,对所述去除外层隧道封装后的第一报文去除内层隧道封装,对去除内层隧道封装后的第一报文进行转发。
20.根据权利要求18所述的方法,其特征在于,所述接收第一报文,包括:
通过所述第二CPE中的第一underlay VRF,接收第一报文;
所述方法还包括:
通过所述第二CPE中的第一underlay VRF,将所述第一报文发送至所述第二CPE中的第二overlay VRF;
所述去除所述第一报文的外层隧道封装,包括:
通过所述第二overlay VRF,去除所述第一报文的外层隧道封装;
所述方法还包括:
通过所述第二overlay VRF,将去除外层隧道封装后的第一报文发送至所述第二CPE中的第一overlay VRF;
所述对所述去除外层隧道封装后的第一报文去除内层隧道封装,对去除内层隧道封装后的第一报文进行转发,包括:
通过所述第一overlay VRF,对所述去除外层隧道封装后的第一报文去除内层隧道封装,对去除内层隧道封装后的第一报文进行转发。
21.根据权利要求20所述的方法,其特征在于,所述通过所述第二overlay VRF将去除外层隧道封装后的第一报文发送至第一overlay VRF,包括:
通过所述第二overlay VRF,去除所述第一报文的外层隧道封装,将去除外层隧道封装后的第一报文发送至与所述第二overlay VRF相连接的第二underlay VRF;
通过所述第二underlay VRF,将所述去除外层隧道封装后的第一报文发送至第一overlay VRF。
22.根据权利要求21所述的方法,其特征在于,所述第二underlay VRF与所述第二overlay VRF通过外环连接。
23.根据权利要求22所述的方法,其特征在于,所述第二underlay VRF与所述第二overlay VRF通过对应的物理端口连接。
24.根据权利要求21所述的方法,其特征在于,所述第二underlay VRF与所述第二overlay VRF通过内环连接。
25.根据权利要求24所述的方法,其特征在于,所述第二underlay VRF与所述第二overlay VRF通过对应的loopback端口连接。
26.一种CPE配置的方法,其特征在于,所述方法用于网络系统,所述网络系统包括第一用户前置设备CPE,网关GW,第二CPE以及路由反射器RR,所述方法由所述第一PCE执行,所述方法包括:
接收所述RR发送的所述关联所述GW的第二目的地址,基于所述第二源地址和所述第二目的地址,建立外层隧道;
接收所述RR发送的关联所述第二CPE的第一目的地址,基于所述第一源地址和所述第一目的地址,建立内层隧道,所述内层隧道为所述第一CPE和所述第二CPE之间的端到端隧道;
生成所述内层隧道在所述第一CPE中的路由信息,所述路由信息包括所述第一目的地址与所述第二源地址和第二目的地址的对应关系。
27.根据权利要求26所述的方法,其特征在于,所述方法还包括:
接收第一报文,获取所述第一报文的初始目的地址;
确定所述初始地址对应的所述内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,其中,所述内层隧道为所述第一CPE和第二CPE之间的端到端隧道;
确定所述第一目的地址对应的所述外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装;
对经过外层隧道封装的第一报文进行转发。
28.根据权利要求26所述的方法,其特征在于,所述方法还包括:
接收所述控制器发送的overlay VRF配置消息,在所述第一CPE中建立第一overlayVRF和第二overlay VRF;
接收所述控制器发送的underlay VRF配置消息,在所述第一CPE中建立第一underlayVRF;
接收所述控制器发送的端口关联消息,将所述第二overlay VRF与所述第一源地址对应的端口进行关联,将所述第一underlay VRF与所述第二源地址进行关联。
29.根据权利要求28所述的方法,其特征在于,所述方法还包括:
接收第一报文,获取所述第一报文的初始目的地址;
所述第一overlay VRF确定所述初始目的地址对应的内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,其中,所述内层隧道为所述第一CPE和第二CPE之间的端到端隧道,将经过内层隧道封装的第一报文发送至与所述第一源地址对应的所述第二overlay VRF;
所述第二overlay VRF确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装,将经过外层隧道封装的第一报文发送至与所述第二源地址对应的所述第一underlay VRF;
所述第一underlay VRF对经过外层隧道封装的第一报文进行转发。
30.根据权利要求26所述的方法,其特征在于,所述方法还包括:
接收所述控制器发送的overlay VRF配置消息,在所述第一CPE中建立第一overlayVRF和第二overlay VRF;
接收控制器发送的underlay VRF配置消息,在所述第一CPE中建立第一underlay VRF和第二underlay VRF;
接收所述控制器发送的端口关联消息,将所述第二underlay VRF与所述第一源地址对应的端口进行关联,将所述第一underlay VRF与所述第二源地址对应的端口进行关联。
31.根据权利要求30所述的方法,其特征在于,所述方法还包括:
接收第一报文,获取所述第一报文的初始目的地址;
所述第一overlay VRF确定所述初始目的地址对应的内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,其中,所述内层隧道为所述第一CPE和第二CPE之间的端到端隧道,将经过内层隧道封装的第一报文发送至与所述第一源地址对应的第二underlay VRF;
所述第二underlay VRF将所述经过内层隧道封装的第一报文发送至所述第一CPE中与所述第二underlay VRF相连接的第二overlay VRF;
所述第二overlay VRF确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装,将经过外层隧道封装的第一报文发送至与所述第二源地址对应的所述第一underlay VRF;
所述第一underlay VRF对经过外层隧道封装的第一报文进行转发。
32.根据权利要求26所述的方法,其特征在于,所述方法还包括:
接收所述控制器发送的overlay VRF配置消息,在所述第一CPE中建立第一overlayVRF;
接收所述控制器发送的underlay VRF配置消息,在所述第一CPE中建立第一underlayVRF;
接收所述控制器发送的端口关联消息,将所述第一overlay VRF与所述第一源地址对应的端口和所述第二源地址对应的端口进行关联。
33.根据权利要求30所述的方法,其特征在于,所述方法还包括:
接收第一报文,获取所述第一报文的初始目的地址;
所述第一overlay VRF确定所述初始目的地址对应的内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,将经过内层隧道封装的第一报文发送至与所述第一源地址对应的所述第一underlay VRF;
所述第一underlay VRF确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装,对经过外层隧道封装的第一报文进行转发。
34.一种报文转发的装置,其特征在于,所述装置应用于第一CPE,所述装置包括:
接收模块,用于接收第一报文,获取所述第一报文的初始目的地址;
内层封装模块,用于确定所述初始地址对应的内层隧道的第一源地址和第一目的地址,基于所述第一源地址和所述第一目的地址,对所述第一报文进行内层隧道封装,其中,所述内层隧道为所述第一CPE和所述第二CPE之间的端到端隧道;
外层封装模块,用于确定所述第一目的地址对应的外层隧道的第二源地址和第二目的地址,基于所述第二源地址和所述第二目的地址,对所述经过内层隧道封装的第一报文进行外层隧道封装;
转发模块,用于对经过外层隧道封装的第一报文进行转发。
35.一种报文转发的装置,其特征在于,所述装置应用于GW,所述装置包括:
接收模块,用于接收所述第一CPE发送的第一报文,其中,所述第一报文包括内层隧道封装和外层隧道封装,所述内层隧道为所述第一CPE和所述第二CPE之间的端到端隧道;
解封装模块,用于去除所述第一报文的外层隧道封装;
转发模块,用于基于所述第一报文的内层隧道封装中的第一目的地址,对去除外层隧道封装后的第一报文进行转发,所述第一目的地址关联所述第二CPE。
36.一种报文转发的装置,其特征在于,所述装置应用于第二CPE,所述装置包括:
接收模块,用于接收第一报文,其中,所述第一报文来自于所述第一CPE,且所述第一报文包括内层隧道封装和外层隧道封装,所述内层隧道为所述第一CPE和所述第二CPE之间的端到端隧道;
去除所述第一报文的外层隧道封装;
解封装模块,对所述去除外层隧道封装后的第一报文去除内层隧道封装;
转发模块,用于对去除内层隧道封装后的第一报文进行转发。
37.一种CPE配置的装置,其特征在于,所述装置应用于第一CPE,所述装置包括:
接收模块,用于接收所述RR发送的所述关联所述GW的第二目的地址,基于所述第二源地址和所述第二目的地址,建立外层隧道;
封装模块,用于接收所述RR发送的关联所述第二CPE的第一目的地址,基于所述第一源地址和所述第一目的地址,建立内层隧道,所述内层隧道为所述第一CPE和所述第二CPE之间的端到端隧道;
生成模块,用于生成所述内层隧道在所述第一CPE中的路由信息,所述路由信息包括所述第一目的地址与所述第二源地址和第二目的地址的对应关系。
38.一种第一CPE,其特征在于,所述第一CPE包括处理器和存储器,其中,所述存储器用于存储指令,所述处理器用于执行所述指令,以实现如权利要求1-14或26-33所述的方法。
39.一种GW,其特征在于,所述GW包括处理器和存储器,其中,所述存储器用于存储指令,所述处理器用于执行所述指令,以实现如权利要求15-17所述的方法。
40.一种第二CPE,其特征在于,所述第二CPE包括处理器和存储器,其中,所述存储器用于存储指令,所述处理器用于执行所述指令,以实现如权利要求18-25所述的方法。
41.一种网络系统,其特征在于,所述网络系统包括如权利要求38所述的第一CPE、如权利要求39所述的GW以及如权利要求40所述的第二CPE。
CN202011598688.XA 2020-12-29 2020-12-29 报文转发的方法、装置和网络系统 Pending CN114760167A (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN202011598688.XA CN114760167A (zh) 2020-12-29 2020-12-29 报文转发的方法、装置和网络系统
JP2023539748A JP2024500548A (ja) 2020-12-29 2021-11-25 パケット転送方法および装置、ならびにネットワークシステム
EP21913647.0A EP4250649A1 (en) 2020-12-29 2021-11-25 Packet forwarding method and apparatus, and network system
PCT/CN2021/133170 WO2022142905A1 (zh) 2020-12-29 2021-11-25 报文转发的方法、装置和网络系统
US18/341,630 US20230336377A1 (en) 2020-12-29 2023-06-26 Packet forwarding method and apparatus, and network system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011598688.XA CN114760167A (zh) 2020-12-29 2020-12-29 报文转发的方法、装置和网络系统

Publications (1)

Publication Number Publication Date
CN114760167A true CN114760167A (zh) 2022-07-15

Family

ID=82260187

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011598688.XA Pending CN114760167A (zh) 2020-12-29 2020-12-29 报文转发的方法、装置和网络系统

Country Status (5)

Country Link
US (1) US20230336377A1 (zh)
EP (1) EP4250649A1 (zh)
JP (1) JP2024500548A (zh)
CN (1) CN114760167A (zh)
WO (1) WO2022142905A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115334045A (zh) * 2022-08-12 2022-11-11 迈普通信技术股份有限公司 报文转发方法、装置、网关设备及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101662409B (zh) * 2008-08-28 2012-07-04 华为技术有限公司 一种建立关联保护的方法、系统及节点
CN108632147B (zh) * 2013-06-29 2022-05-13 华为技术有限公司 报文组播的处理方法和设备
US9729348B2 (en) * 2015-06-04 2017-08-08 Cisco Technology, Inc. Tunnel-in-tunnel source address correction
US10778466B2 (en) * 2017-10-02 2020-09-15 Vmware, Inc. Processing data messages of a virtual network that are sent to and received from external service machines
CN110519075B (zh) * 2019-07-24 2022-05-27 浪潮思科网络科技有限公司 基于sdn的物理主机与虚拟云主机的通信系统及方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115334045A (zh) * 2022-08-12 2022-11-11 迈普通信技术股份有限公司 报文转发方法、装置、网关设备及存储介质
CN115334045B (zh) * 2022-08-12 2023-12-19 迈普通信技术股份有限公司 报文转发方法、装置、网关设备及存储介质

Also Published As

Publication number Publication date
EP4250649A1 (en) 2023-09-27
JP2024500548A (ja) 2024-01-09
US20230336377A1 (en) 2023-10-19
WO2022142905A1 (zh) 2022-07-07

Similar Documents

Publication Publication Date Title
KR102139712B1 (ko) 패킷 프로세싱 방법 및 디바이스
US10015046B2 (en) Methods and apparatus for a self-organized layer-2 enterprise network architecture
CN109923838A (zh) 桥接远程孤岛的弹性vpn
US20130182651A1 (en) Virtual Private Network Client Internet Protocol Conflict Detection
CN110290093A (zh) Sd-wan网络架构及组网方法、报文转发方法
CN104022936B (zh) 一种隧道建立方法和装置
US11575439B1 (en) Apparatus and method for joint profile-based slicing of mobile access and optical backhaul
US8611358B2 (en) Mobile network traffic management
CN110324159B (zh) 链路配置方法、控制器和存储介质
CN114124618B (zh) 一种报文传输方法及电子设备
US20070165603A1 (en) Access network system, subscriber station device, and network terminal device
JP2021530892A (ja) 通信方法及び通信装置
CN112654049A (zh) 用于配置无线通信覆盖扩展系统的方法及实现所述方法的无线通信覆盖扩展系统
US10455387B2 (en) Network-based Machine-to-Machine (M2M) private networking system
US20230336377A1 (en) Packet forwarding method and apparatus, and network system
KR20170076064A (ko) 소프트웨어 정의 네트워크에서 서브넷을 지원하는 방법, 장치 및 컴퓨터 프로그램
CN108259633B (zh) 实现管理报文三层通信的方法、系统及装置
CN114710975B (zh) 一种用于多域间传输多传输网络上下文标识的方法、基站、网元及装置
CN113163276A (zh) 路由信息的发布方法、装置及系统
WO2018121443A1 (zh) 报文传输方法及装置
CN112910791B (zh) 导流系统及其方法
CN108471374A (zh) 数据报文的转发方法及装置
CN113923075A (zh) 一种数据传输方法和装置
CN108259292B (zh) 建立隧道的方法及装置
CN106817727B (zh) 一种多个可搬移无线宽带系统的传输组网方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination