CN115225427B - 一种传输数据报文的方法和装置 - Google Patents

一种传输数据报文的方法和装置 Download PDF

Info

Publication number
CN115225427B
CN115225427B CN202110426644.7A CN202110426644A CN115225427B CN 115225427 B CN115225427 B CN 115225427B CN 202110426644 A CN202110426644 A CN 202110426644A CN 115225427 B CN115225427 B CN 115225427B
Authority
CN
China
Prior art keywords
vpn
igp
routing information
identifier
message
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.)
Active
Application number
CN202110426644.7A
Other languages
English (en)
Other versions
CN115225427A (zh
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 CN202110426644.7A priority Critical patent/CN115225427B/zh
Publication of CN115225427A publication Critical patent/CN115225427A/zh
Application granted granted Critical
Publication of CN115225427B publication Critical patent/CN115225427B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/16Time-division multiplex systems in which the time allocation to individual channels within a transmission cycle is variable, e.g. to accommodate varying complexity of signals, to vary number of channels transmitted
    • H04J3/1605Fixed allocated frame structures
    • H04J3/1652Optical Transport Network [OTN]
    • 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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/32Flooding

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

本申请提供了一种传输数据报文的方法和装置,该方法包括:第一PE设备接收来自第二PE设备通过泛洪方式发送的第一IGP报文,第一IGP报文携带第一标识,第一标识用于标识第一VPN。当第一PE设备根据第一标识确定自身也属于第一VPN时,第一PE设备建立与第二PE设备的IGP单播连接,并通过IGP单播连接接收来自于第二PE设备的第一路由信息,第一路由信息包括第二PE设备在第一VPN的UNI获取的私网路由信息,其中,第一路由信息可以用于第一PE设备转发数据报文。本申请的数据传输的方法,通过IGP实现了VPN的构建和私网路由信息发布,不需要使用边界网关协议BGP,降低VPN技术实现的复杂性。

Description

一种传输数据报文的方法和装置
技术领域
本申请涉及通信领域,更具体地,涉及一种传输数据报文的方法和装置。
背景技术
虚拟专用网络(virtual private network,VPN)利用公用网络,通过隧道技术等手段在公用网络中建立虚拟专用网络,从而实现安全的数据传输。在以太虚拟私网(ethernet virtual private network,EVPN)技术中,供应商边缘(provider edge,PE)设备和供应商(provider,P)设备构建了承载网络,即公用网络,用户边缘(customer edge,CE)设备接入PE设备,构建了私网。
现有的内部网关协议(interior gateway protocol,IGP)用于构建域内路由,保证公用网络内各个PE设备和P设备之间的路由联通性。当属于不同私网的CE设备之间需要进行数据传输时,可以使用边界网关协议(border gateway protocol,BGP)在公用网络内建立VPN,再通过BGP消息向VPN的对等体(peer)发布私网路由信息,从而使得属于不同私网内的CE设备可以通过该VPN传输数据。
然而,当前的技术方案中,VPN的建立和私网路由信息的发布均需要基于BGP,且VPN对等体的建立和VPN的构建需要手工配置,使得通过VPN技术进行数据传输时配置的复杂度高。
发明内容
本申请提供一种传输数据报文的方法和装置,通过IGP建立VPN并实现私网路由信息发布,从而实现数据传输,实现方式简单。
第一方面,提供了一种传输数据报文的方法,包括:第一供应商边缘PE设备接收来自于第二PE设备通过泛洪方式发送的第一内部网关协议IGP报文,所述第一IGP报文携带第一标识,所述第一标识用于标识第一虚拟专用网络VPN。当所述第一PE设备根据所述第一标识确定自身属于所述第一VPN时,所述第一PE设备建立与所述第二PE设备的IGP单播连接,并通过所述IGP单播连接接收来自于所述第二PE设备的第一路由信息,所述第一路由信息包括所述第二PE设备在所述第一VPN的用户网络接口UNI获取的私网路由信息。其中,所述第一路由信息用于:当所述第一PE设备在所述第一VPN的UNI接收到第一数据报文时,所述第一PE设备根据所述第一路由信息将所述第一数据报文转发至所述第二PE设备。
本申请提供的数据传输的方法,第一PE设备接收来自第二PE设备通过泛洪方式发送的第一IGP报文,第一IGP报文中携带第一标识,该第一标识用于标识第一虚拟专用网络VPN,第一PE设备确定第二PE设备属于第一VPN。当第一PE设备根据该第一标识确定自身也属于第一VPN时,第一PE设备可以与第二设备建立IGP单播连接,并通过该IGP单播连接接收来自第二PE设备的第一私网路由信息,该第一私网路由信息包括第二PE设备在第一VPN的用户网络接口UNI获取的私网路由信息。其中,第一路由信息可以用于当第一PE设备在第一VPN的UNI接收到第一数据报文时,第一PE设备可以根据第一路由信息将第一数据报文转发至第二PE设备。本申请的数据传输的方法,通过IGP实现了VPN的构建和私网路由信息发布,不需要使用边界网关协议BGP,降低VPN技术实现的复杂性。
结合第一方面,在第一方面的某些实现方式中,所述第一PE设备建立与所述第二PE设备的IGP单播连接,包括:所述第一PE设备通过泛洪方式发送第二IGP报文,所述第二IGP报文携带所述第一标识,以使得所述第二PE设备根据所述第二IGP报文确定第一映射关系,所述第一映射关系用于纪录所述第一PE设备和所述第一VPN的对应关系。
结合第一方面,在第一方面的某些实现方式中,所述第一PE设备通过所述IGP单播连接接收来自于所述第二PE设备的第一路由信息,包括:所述第一PE设备接收来自于所述第二PE设备的第三IGP报文,所述第三IGP报文携带所述第一标识和所述第一路由信息,其中,所述第三IGP报文是所述第二PE设备根据所述第一映射关系确定向所述第一PE设备发送的。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:所述第一PE设备根据所述第一IGP报文确定第二映射关系,所述第二映射关系用于纪录所述第二PE设备和所述第一VPN的对应关系。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:所述第一PE设备根据所述第二映射关系确定向所述第二PE设备发送第二路由信息,所述第二路由信息包括所述第一PE设备在所述第一VPN的UNI获取的私网路由信息。所述第一PE设备发送第四IGP报文,所述第四IGP报文携带所述第一标识和所述第二路由信息。
结合第一方面,在第一方面的某些实现方式中,所述第一IGP报文还携带第一指示信息,所述第一指示信息用于指示加入所述第一标识所标识的VPN。
结合第一方面,在第一方面的某些实现方式中,所述第二IGP报文还携带第一指示信息,所述第一指示信息用于指示加入所述第一标识所标识的VPN。
结合第一方面,在第一方面的某些实现方式中,所述第三IGP报文还携带第二指示信息,所述第二指示信息用于指示启用所述第一路由信息。
结合第一方面,在第一方面的某些实现方式中,所述第四IGP报文还携带第二指示信息,所述第二指示信息用于指示启用所述第二路由信息。
应理解,第二指示信息可以用于指示启用IGP报文中携带的路由信息,当该IGP报文为第三IGP报文,第二指示信息用于指示启用第三IGP报文中携带的路由信息,即所述第一路由信息。类似的,当该IGP报文为第四IGP报文,第二指示信息用于指示启用第四IGP报文中携带的路由信息,即所述第二路由信息。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:所述第一PE设备接收第五IGP报文,所述第五IGP报文携带所述第一标识、第三路由信息和第三指示信息,所述第三路由信息包括所述第一路由信息中的部分或全部,所述第三指示信息用于指示撤销所述第三路由信息。所述第一PE设备根据所述第五IGP报文删除所述第三路由信息。
结合第一方面,在第一方面的某些实现方式中,所述第一PE设备根据所述第一标识确定自身属于所述第一VPN,包括:当所述第一PE设备确定本地包括所述第一标识时,所述第一PE设备确定自身属于所述第一VPN。或者,当所述第一PE设备配置有所述第一标识时,所述第一PE设备确定自身属于所述第一VPN。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:当所述第一PE设备识别到所述第一标识被删除时,所述第一PE设备断开与所述第二PE设备IGP单播连接。
结合第一方面,在第一方面的某些实现方式中,所述第一PE设备断开与所述第二PE设备IGP单播连接,包括:所述第一PE设备通过泛洪方式发送第六IGP报文,所述第六IGP报文携带所述第一标识和第四指示信息,所述第四指示信息用于指示退出所述第一标识所标识的VPN,以使得所述第二PE设备根据所述第六IGP报文删除所述第一映射关系。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:所述第一PE设备增加第一发布标识,所述第一发布标识用于标记所述第二路由信息。所述第一PE设备根据所述第一发布标识将所述第二路由信息添加至所述第四IGP报文。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:所述第一PE设备通过所述第一VPN的UNI接收第一数据报文。所述第一PE设备确定所述第一路由信息包括所述第一数据报文的目的地址,所述第一PE设备在所述第一数据报文中添加所述第一标识。所述第一PE设备将携带所述第一标识的所述第一数据报文传输至所述第二PE设备。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:所述第一PE设备接收来自于所述第二PE设备的第二数据报文,所述第二路由信息包括所述第二数据报文的目的地址。
结合第一方面,在第一方面的某些实现方式中,所述第一私网路由信息包括媒体接入控制MAC地址信息或互联网协议IP地址信息。
结合第一方面,在第一方面的某些实现方式中,所述第一PE设备和所述第二PE设备为光传送网络OTN设备。
第二方面,提供了一种传输数据报文的装置,包括:收发模块,用于接收来自于第二PE设备通过泛洪方式发送的第一内部网关协议IGP报文,所述第一IGP报文携带第一标识,所述第一标识用于标识第一虚拟专用网络VPN。所收发模块还用于:当根据所述第一标识确定自身属于所述第一VPN时,建立与所述第二PE设备的IGP单播连接,并通过所述IGP单播连接接收来自于所述第二PE设备的第一路由信息,所述第一路由信息包括所述第二PE设备在所述第一VPN的用户网络接口UNI获取的私网路由信息。其中,所述第一路由信息用于:当所述第一PE设备在所述第一VPN的UNI接收到第一数据报文时,所述第一PE设备根据所述第一路由信息将所述第一数据报文转发至所述第二PE设备。
本申请提供的数据传输的装置,可以接收来自第二PE设备的第一IGP报文,第一IGP报文中携带第一标识,该第一标识用于标识第一虚拟专用网络VPN,可以确定第二PE设备也属于第一VPN。当根据该第一标识确定自身也属于第一VPN时,从而与第二设备建立IGP单播连接,并通过该IGP单播连接接收来自第二PE设备的第一私网路由信息,该第一私网路由信息包括第二PE设备在第一VPN的用户网络接口UNI获取的私网路由信息。其中,第一路由信息可以用于当第一PE设备在第一VPN的UNI接收到第一数据报文时,第一PE设备可以根据第一路由信息将第一数据报文转发至第二PE设备。本申请的数据传输的装置,通过IGP实现了VPN的构建和私网路由信息发布,不需要使用边界网关协议BGP,降低VPN技术实现的复杂性。
结合第二方面,在第二方面的某些实现方式中,所述收发模块具体用于:通过泛洪方式发送第二IGP报文,所述第二IGP报文携带所述第一标识,以使得所述第二PE设备根据所述第二IGP报文确定第一映射关系,所述第一映射关系用于纪录所述第一PE设备和所述第一VPN的对应关系。
结合第二方面,在第二方面的某些实现方式中,所述收发模块具体用于:接收来自于所述第二PE设备的第三IGP报文,所述第三IGP报文携带所述第一标识和所述第一路由信息,其中,所述第三IGP报文是所述第二PE设备根据所述第一映射关系确定向所述第一PE设备发送的。
结合第二方面,在第二方面的某些实现方式中,所述装置还包括处理模块,所述处理模块用于:根据所述第一IGP报文确定第二映射关系,所述第二映射关系用于纪录所述第二PE设备和所述第一VPN的对应关系。
结合第二方面,在第二方面的某些实现方式中,所述处理模块还用于:根据所述第二映射关系确定向所述第二PE设备发送第二路由信息,所述第二路由信息包括所述第一PE设备在所述第一VPN的UNI获取的私网路由信息。所收发模块还用于:发送第四IGP报文,所述第四IGP报文携带所述第一标识和所述第二路由信息。
结合第二方面,在第二方面的某些实现方式中,所述第一IGP报文还携带第一指示信息,所述第一指示信息用于指示加入所述第一标识所标识的VPN。
结合第二方面,在第二方面的某些实现方式中,所述第二IGP报文还携带第一指示信息,所述第一指示信息用于指示加入所述第一标识所标识的VPN。
结合第二方面,在第二方面的某些实现方式中,所述第三IGP报文还携带第二指示信息,所述第二指示信息用于指示启用所述第一路由信息。
结合第二方面,在第二方面的某些实现方式中,所述第四IGP报文还携带第二指示信息,所述第二指示信息用于指示启用所述第二路由信息。
应理解,第二指示信息可以用于指示启用IGP报文中携带的路由信息,当该IGP报文为第三IGP报文,第二指示信息用于指示启用第三IGP报文中携带的路由信息,即所述第一路由信息。类似的,当该IGP报文为第四IGP报文,第二指示信息用于指示启用第四IGP报文中携带的路由信息,即所述第二路由信息。
结合第二方面,在第二方面的某些实现方式中,所收发模块还用于:接收第五IGP报文,所述第五IGP报文携带所述第一标识、第三路由信息和第三指示信息,所述第三路由信息包括所述第一路由信息中的部分或全部,所述第三指示信息用于指示撤销所述第三路由信息。所述处理模块还用于:根据所述第五IGP报文删除所述第三路由信息。
结合第二方面,在第二方面的某些实现方式中,所述处理模块还用于:根据所述第一标识确定自身属于所述第一VPN。
结合第二方面,在第二方面的某些实现方式中,所述处理模块具体用于:当确定本地包括所述第一标识时,确定自身属于所述第一VPN。或者,当配置有所述第一标识时,确定自身属于所述第一VPN。
结合第二方面,在第二方面的某些实现方式中,所收发模块还用于:当所述第一PE设备识别到所述第一标识被删除时,所述第一PE设备断开与所述第二PE设备IGP单播连接。
结合第二方面,在第二方面的某些实现方式中,所收发模块具体用于:通过泛洪方式发送第六IGP报文,所述第六IGP报文携带所述第一标识和第四指示信息,所述第四指示信息用于指示退出所述第一标识所标识的VPN,以使得所述第二PE设备根据所述第六IGP报文删除所述第一映射关系。
结合第二方面,在第二方面的某些实现方式中,所述处理模块还用于:增加第一发布标识,所述第一发布标识用于标记所述第二路由信息,以及根据所述第一发布标识将所述第二路由信息添加至所述第四IGP报文。
结合第二方面,在第二方面的某些实现方式中,所收发模块还用于:通过所述第一VPN的UNI接收第一数据报文。所述处理模块还用于:确定所述第一路由信息包括所述第一数据报文的目的地址,以及在所述第一数据报文中添加所述第一标识。所收发模块还用于:将携带所述第一标识的所述第一数据报文传输至所述第二PE设备。
结合第二方面,在第二方面的某些实现方式中,所收发模块还用于:接收来自于所述第二PE设备的第二数据报文,所述第二路由信息包括所述第二数据报文的目的地址。
结合第二方面,在第二方面的某些实现方式中,所述第一私网路由信息包括媒体接入控制MAC地址信息或互联网协议IP地址信息。
结合第二方面,在第二方面的某些实现方式中,所述装置为光传送网络OTN设备。
第三方面,提供了一种传输数据报文的装置,所述装置具有实现上述方法中第一PE设备行为的功能。所述功能可以基于硬件实现,也可以基于硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
在一个可能的设计中,该装置的结构中包括处理器和接口,所述处理器被配置为支持第一PE设备执行上述方法中相应的功能。
所述第一PE设备还可以包括存储器,所述存储器用于与处理器耦合,其保存第一PE设备必要的程序指令和数据。
在另一个可能的设计中,所述装置包括:处理器、发送器、接收器、随机存取存储器、只读存储器以及总线。其中,处理器通过总线分别耦接发送器、接收器、随机存取存储器以及只读存储器。其中,当需要运行第一PE设备时,通过固化在只读存储器中的基本输入/输出系统或者嵌入式系统中的bootloader引导系统进行启动,引导第一PE设备进入正常运行状态。在第一PE设备进入正常运行状态后,在随机存取存储器中运行应用程序和操作系统,使得该处理器执行第一方面或第一方面的任意可能的实现方式中的方法。
第四方面,提供了一种传输数据报文的装置,所述装置包括:主控板和接口板,进一步,还可以包括交换网板。所述装置用于执行第一方面或第一方面的任意可能的实现方式中的方法。具体地,所述装置包括用于执行第一方面或第一方面的任意可能的实现方式中的方法的模块。
第五方面,提供一种传输数据报文的装置,所述装置包括控制模块和第一转发子设备。所述第一转发子设备包括:接口板,进一步,还可以包括交换网板。所述第一转发子设备用于执行第四方面中的接口板的功能,进一步,还可以执行第四方面中交换网板的功能。所述控制模块中包括接收器、处理器、发送器、随机存取存储器、只读存储器以及总线。其中,处理器通过总线分别耦接接收器、发送器、随机存取存储器以及只读存储器。其中,当需要运行控制模块时,通过固化在只读存储器中的基本输入/输出系统或者嵌入式系统中的bootloader引导系统进行启动,引导控制模块进入正常运行状态。在控制模块进入正常运行状态后,在随机存取存储器中运行应用程序和操作系统,使得该处理器执行第四方面中主控板的功能。
可以理解的是,在实际应用中,该传输数据报文的装置可以包含任意数量的接口,处理器或者存储器。
第六方面,提供了一种计算机程序产品,该计算机程序产品包括:计算机程序代码,当该计算机程序代码在计算机上运行时,使得计算机执行上述第一方面或第一方面的任一种可能执行的方法。
第七方面,提供了一种计算机可读介质,该计算机可读介质存储有程序代码,当该计算机程序代码在计算机上运行时,使得计算机执行上述第一方面或第一方面的任一种可能执行的方法。这些计算机可读存储包括但不限于如下的一个或者多个:只读存储器(read-only memory,ROM)、可编程ROM(programmable ROM,PROM)、可擦除的PROM(erasablePROM,EPROM)、Flash存储器、电EPROM(electrically EPROM,EEPROM)以及硬盘驱动器(harddrive)。
第八方面,提供一种芯片,该芯片包括处理器与数据接口,其中,处理器通过该数据接口读取存储器上存储的指令,以执行第一方面或第一方面任意一种可能的实现方式中的方法。在具体实现过程中,该芯片可以以中央处理器(central processing unit,CPU)、微控制器(micro controller unit,MCU)、微处理器(micro processing unit,MPU)、数字信号处理器(digital signal processing,DSP)、片上系统(system on chip,SoC)、专用集成电路(application-specific integrated circuit,ASIC)、现场可编程门阵列(fieldprogrammable gate array,FPGA)或可编辑逻辑器件(programmable logic device,PLD)的形式实现。
第九方面,提供了一种传输数据报文的设备,包括处理器。该处理器与存储器耦合,可用于执行存储器中的指令,以实现上述第一方面或第一方面中任一种可能实现方式中的方法。其中,该设备还包括存储器。其中,该设备还包括通信接口,处理器与通信接口耦合。
在一种实现方式中,该设备为第一PE设备。所述通信接口可以是收发器,或,输入/输出接口。
其中,该收发器可以为收发电路。其中,该输入/输出接口可以为输入/输出电路。
第十方面,提供了一种传输数据报文的系统,该系统包括上述传输数据报文的装置。
附图说明
图1是本申请的一种应用场景的示意图。
图2是本申请实施例的一种数据报文传输的方法的示意性流程图。
图3是本申请实施例的一种数据报文传输的方法的又一示意性流程图。
图4是本申请实施例提供的第一数据报文的几种格式的示意图。
图5是本申请实施例提供的TOTN的格式的示意图。
图6是本申请实施例的一种IGP报文的格式的示意图。
图7是本申请实施例的一种IGP报文的格式的又一示意图。
图8是本申请实施例的一种IGP报文的格式的再一示意图。
图9是本申请实施例的一种IGP报文的格式的再一示意图。
图10是本申请实施例的一种IGP报文的格式的再一示意图。
图11是本申请实施例的一种IGP报文的格式的再一示意图。
图12是本申请实施例提供的传输数据报文的装置的示意性框图。
图13是本申请实施例的第一PE设备2000的硬件结构示意图。
具体实施方式
为便于理解本申请实施例,下面首先本申请实施例中涉及到的术语或概念做简单介绍。
骨干网:即公用网路,是用来连接多个区域或地区的高速网络,骨干网一般都是广域网,其覆盖的范围从几十公里到几千公里,不同的网络供应商都拥有自己的骨千网,用以连接其位于不同区域的网络。
私网:一般指局域网。私网内的设备之间具备连通性,并且私网内的设备间的连通性不需通过公用网络实现。私网一般通过用户边缘(customer edge,CE)设备连接到公用网络,一个私网可以包含多个CE,但一个CE只属于一个私网。
多协议标签交换(Multi-Protocol Label Switching,MPLS):是新一代的高速骨干网络交换标准,用于数据包的快速交换和路由。MPLS是利用标签(label)进行数据转发的。当数据报文进入网络时,要为其分配固定长度的短的标签,即将数据报文的互联网协议(Internet protocol,IP)地址映射为具有固定长度的标签,并将该标签与数据报文封装在一起,在数据报文转发过程中,交换设备可以根据数据报文的标签进行转发。
虚拟专用网络(virtual private network,VPN):指的是在公用网络(即骨干网)上,不用区域的设备建立虚拟专用网络。不同区域的任意两个设备之间的连接并没有传统专网所需的端到端的物理链路,而是架构在公用网络服务商所提供的网络平台之上的逻辑网络,用户数据在逻辑链路中传输。不同区域的设备之间可以采用了隧道(Tunnel)技术、加解密技术、密钥管理技术等实现数据传输。
二层VPN和三层VPN:VPN诞生后,在通讯领域又区分出了L2VPN和L3VPN两个分支。二层VPN(Layer 2VPN,L2VPN)与七层结构中的第二层(即数据链路层,L2)有着密切的关系。L2VPN指的是,构成VPN的隧道封装在数据链路层完成,客户将其三层路由映射到数据链路层的网络。对于MPLS L2VPN来说,数据包接入到该网络后,对数据报文进行二层头部的重封装,增加MPLS头部信息,通过事先创建的隧道(传递通道)进行二层交换,一站一站的传递到目的地。三层VPN(Layer 3VPN,L3VPN)与七层结构中的第三层(即网络层,也称为IP层,简称为L3)有着密切的关系。L3VPN是一种基于路由方式的VPN解决方案,使用类似传统路由的方式进行IP分组的转发,在路由器接收到IP数据包以后,通过在转发表查找IP数据包的目的地址,然后使用预先建立的标签交换路径(label switching path,LSP)进行IP数据跨运营商骨干的传送。
公网路由转发表与VPN路由转发表:公网路由表包括所有PE和P设备的路由,由骨干网的路由协议或静态路由产生,VPN路由表包括属于该VPN的路由,通过CE与PE之间或者两个PE之间的VPN路由信息交互获得。
VPN列表:纪录VPN ID和对端PE设备之间的对应关系,可以根据该表查询和本设备属于某个VPN的所有对端PE设备。
隧道(Tunnel)技术:隧道可以理解为点到点的连接通道,隧道技术的实质是采用隧道协议,用一种网络层的协议来传输另一种网络层协议,实现两个节点间的安全通信,也就是使数据报文在公共网络上的专用隧道内传输。例如,VPN-端的节点(设备1)采用隧道协议将其他协议的数据报文重新封装为另一种协议的数据报文,被重新封装的数据报文可以在两个节点之间的隧道中传输至VPN的另一个节点(设备2),然后,设备2采用同样的隧道协议,将其接收到的数据报文解封装,从而完成数据报文的传输。
泛洪(flooding):是一种数据流传递技术,指一个设备将从相邻的设备接收到的数据包转发给多个其他相邻的设备。例如,假如设备1在网络上与设备2、设备3、设备4、设备5相邻,设备1从设备2接收到一个数据包,则设备1将该数据包转发给设备3、设备4、设备5,这个过程称为泛洪。其中,所谓相邻,是指两个设备逻辑上直接连接,中间不间隔其他同类设备。
链路状态报文(link state packet,LSP):是中间系统到中间系统(intermediatesystem to intermediate system,ISIS)协议中各链路之间用于宣告链路和链路状态的数据包,转发不依靠路由计算,一有链路断开或有其他路由传来的LSP,路由就会更新链路状态表,并转发LSP。
TLV,一种可变长度的数据结构,其中T表示类型(Type),L表示长度(Lenth),V表示值(Value)。其中,Type和Length的长度固定,一般为2或4个字节,Value的长度即其中的L(Length)所取的长度。
下面将结合附图,对本申请中的技术方案进行描述。
图1是本申请的一种应用场景的示意图。如图1所示,该应用场景包括运营商边缘(provider edge,PE)设备(例如,PE设备1和PE设备2)、运营商(provider,P)设备和用户边缘(customer edge,CE)设备(例如,CE设备1、CE设备2、CE设备3和CE设备4)。PE设备与P设备均可以为路由器、交换机,或者均为光传送网络(optical transport network,OTN)设备,CE设备可以为用户主机,也可以是路由器或交换机。PE设备1、PE设备2与P设备组成骨干网,即公用网络,一个PE设备可以与至少一个CE设备相连接,组成私网。例如,CE设备1和2可以分别接入PE设备1,组成一个私网,CE设备3和4可以分别接入PE设备2,组成又一个私网。在这些设备组成的物理网络中,可以建立虚拟专用网络(virtual private network,VPN),例如VPN 1和VPN 2,CE设备1和CE设备3之间可以基于VPN 1进行数据传输,CE设备2和CE设备4之间可以基于VPN 2进行数据传输。通过VPN使得来自CE设备1的数据不会传送至CE设备4,来自CE设备3的数据不会传输至CE设备2,从而实现业务隔离。应理解,同在VPN 1内的节点除了CE设备1、CE设备3、PE设备1和PE设备2,还可以有其他节点,例如,与CE设备1在一个私网内并且也属于VPN 1的其他客户设备,还有连通PE设备1和PE设备2的P设备。对于VPN 2内的节点,情况也是类似的。
应理解,图1的应用场景只是为了举例说明,并不构成对本申请应用场景的限制。在图1中还可以包括其他的P设备和PE设备,而每个PE设备还可以再接入其他CE设备,在PE1的私网中,也可以包括其他设备与CE1同在VPN 1内。
图2是本申请实施例的一种数据报文传输的方法的示意性流程图。图2所示的方法可以由图1中的系统执行。
S210,当第二PE设备根据第一标识确定自身属于第一虚拟专用网络VPN时,第二PE设备生成第一内部网关协议IGP报文,第一IGP报文携带第一标识,其中,第一标识用于标识第一虚拟专用网络VPN。
在一种可能的实现方式中,第二PE设备根据第一标识确定自身属于第一VPN,可以通过以下方式实现:当第二PE设备确定本地包括第一标识时,第二PE设备确定自身属于第一VPN。或者,当第二PE设备配置有第一标识时,第二PE设备确定自身属于第一VPN。
也就是说,在本申请实施例中,第一标识可以是为PE设备配置的标识,也可以是PE设备本地包括的标识,第一标识用于标记一个唯一的VPN,其可以用虚拟专用网络标识符(virtual private network identitier,VPN ID)表示,例如,VPN 1或VPN 2。也可以用以太网VPN实例(ethernet VPN instance,EVI)ID表示,例如,EVI 1或EVI 2。一个VPN ID表示一个唯一的VPN交换域,对应一个VPN实例。例如,PE设备1和PE设备2均需要加入VPN 1,可以为PE设备1和PE设备2分别配置VPN 1。PE设备1和PE设备3均需要加入VPN 2,可以再为PE设备1和PE设备3分别配置VPN 2。
应理解,EVI ID和VPN ID均可以表示一个唯一的VPN实例,本申请中不作区分。
当第二PE设备根据第一标识确定自身属于第一VPN时,第二PE设备可以生成第一IGP报文,该第一IGP报文携带该第一标识,第二PE设备可以将该第一IGP报文通过泛洪方式发送。
S220,第一PE设备接收来自于第二PE设备的第一IGP报文。
第一IGP报文经过公网内一个或多个设备的转发,会到达第一PE设备。
S230,当第一PE设备根据第一标识确定自身属于第一VPN时,第一PE设备与第二PE设备建立IGP单播连接,并通过IGP单播连接接收来自于第二PE设备的第一路由信息,第一路由信息包括第二PE设备在第一VPN的用户-网络接口(user to network interface,UNI)获取的私网路由信息。
当第一PE设备根据第一标识确定自身属于第一VPN时,第一PE设备接收到第二PE设备发送的第一IGP报文,获知第二PE设备也属于第一VPN,因此第一PE设备可以和第二PE设备建立IGP单播连接,并通过IGP单播连接获得第二PE设备在第一VPN内的私网路由信息。
本申请提供的数据传输的方法,第一PE设备接收来自第二PE设备的第一IGP报文,第一IGP报文中携带第一标识,该第一标识用于标识第一虚拟专用网络VPN,第一PE设备确定第二PE设备属于第一VPN,当第一PE设备根据第一标识确定自身也属于第一VPN时,从而可以与第二设备建立IGP单播连接,并通过该IGP单播连接接收来自第二PE设备的第一私网路由信息,该第一私网路由信息包括第二PE设备在第一VPN的用户网络接口UNI获取的私网路由信息。应理解,第一路由信息可以用于当第一PE设备在第一VPN的UNI接收到第一数据报文时,第一PE设备可以根据第一路由信息将第一数据报文转发至第二PE设备。也就是说,第一路由信息可以用于实现PE设备之间的数据传输。
本申请的数据传输的方法,通过IGP实现了VPN的构建和私网路由信息发布,不需要使用边界网关协议BGP,降低VPN技术实现的复杂性。
另一方面,本申请实施例中扩展IGP报文,其携带VPN的标识,并使用泛洪技术,使得PE设备能够自动发现和其属于同一VPN的其他PE设备,减少手工配置的复杂性,从而使得VPN的建立简单易行。
应理解,在本申请实施例中,VPN与PE设备的用户网络接口UNI具有挂接关系,因此可以通过VPN ID所对应的UNI获得属于该VPN ID的私网路由信息。
作为示例,可以通过以下方式配置VPN ID和UNI接口的挂接关系。
方式1:将PE设备的UNI接口与VPN ID关联起来,UNI可以对应某个物理端口(port)。
例如,PE设备配置VPN 1之后,可以为VPN 1配置两个UNI接口,UNI 1和UNI 2,再将UNI1 1和物理端口1挂接,将UNI 2和物理端口2挂接。通过这种方式,使得PE设备1上的物理端口1和物理端口2属于VPN 1,其他UNI对应的物理端口不属于VPN 1,因此其他UNI上的业务不会通过VPN 1传输,实现和VPN 1隔离。
方式2:将PE设备的UNI接口与物理端口+虚拟局域网(virtual local areanetwork,VLAN)进行关联。
例如:PE设备配置VPN 1之后,可以为VPN 1配置两个UNI接口,UNI 1和UNI 2,再将UNI1 1与物理端口1+vlan 1挂接,将UNI1 2与物理端口2+vlan1挂接。通过这种方式,使得物理端口1和物理端口2上的vlan 1报文属于VPN 1,其他的UNI对应的物理端口、或者物理端口1和物理端口2上的非vlan 1报文不属于VPN 1,也不会通过VPN 1传输,实现和VPN 1隔离。
应理解,上述挂接关系只是为了举例说明,本申请对PE设备的UNI与VPN ID的关联方式不作限定。
在一种可能的实现方式中,第一PE设备和第二PE设备可以执行如图3所示的步骤S231至S233建立IGP单播连接。
S231,当第一PE设备根据第一标识确定自身属于第一VPN时,第一PE设备生成第二IGP报文,第二IGP报文携带第一标识,其中,第一标识用于标识第一虚拟专用网络VPN。
在一种可能的实现方式中,第一PE设备根据第一标识确定自身属于第一VPN,可以通过以下方式实现:当第一PE设备确定本地包括第一标识时,第一PE设备确定自身属于第一VPN。或者,当第一PE设备配置有第一标识时,第一PE设备确定自身属于第一VPN。
也就是说,在本申请实施例中,第一标识可以是为PE设备配置的标识,也可以是PE设备本地包括的标识。
S232,第二PE设备接收来自第一PE设备的第二IGP报文。
第一PE设备可以将该第二IGP报文通过泛洪方式发送,经过公网内一个或多个设备的转发,第二IGP报文会到达第二PE设备。
S233,第二PE设备可以根据第二IGP报文确定第一映射关系,第一映射关系用于纪录第一PE设备和第一VPN的对应关系。
第二PE设备收到第二IGP报文,根据第二IGP报文确定第一PE设备也属于第一VPN,因此,第二PE设备可以确定第一映射关系,第一映射关系用于纪录第一PE设备和第一VPN的对应关系。
本申请通过携带第一标识的IGP报文和泛洪技术实现VPN建立,不需要使用边界网关协议BGP,降低VPN技术实现的复杂性。
另一方面,本申请提供的方法,能够使得PE设备能够自动发现和其属于同一VPN的其他PE设备,减少手工配置的复杂性,从而使得VPN的建立简单易行。
在一种可能的实现方式中,第一PE设备和第二PE设备还可以执行如图3所示的步骤S234至S235,从而通过IGP单播连接接收第一路由信息。
S234,第二PE设备根据第一映射关系确定向第一PE设备发送第一路由信息。
第二PE设备可以根据第一映射关系确定和其属于第一VPN的第一PE设备,当第二PE设备获得第一路由信息时,通过第一映射关系确定该第一路由信息的接收者,即第一PE设备。
S235,第二PE设备向第一PE设备发送第三IGP报文,第三IGP报文携带第一标识和该第一路由信息。
第二PE设备可以生成第三IGP报文,通过第三IGP报文携带第一标识和第一路由信息,再将第三IGP报文发送给第一PE设备。
本申请实施例中,通过IGP报文实现VPN内的私网路由信息发布,不需要使用边界网关协议BGP,降低VPN技术实现的复杂性。
应理解,本申请实施例中,PE设备可以通过建立的映射关系确定该VPN ID内的PE设备,当PE设备获得某个VPN ID对应的私网路由信息,PE设备可以先确定该私网路由信息的接收者,即该VPN ID内的PE设备,再将该路由信息发布给这些PE设备,从而实现私网路由信息的自动发布。
在一种可能的实现方式中,如图3所示,该方法还包括:
S240,第一PE设备根据第一IGP报文确定第二映射关系,第二映射关系用于纪录第二PE设备和第一VPN的对应关系。
S250,第一PE设备根据第二映射关系确定向第二PE设备发送第二路由信息,第二路由信息包括第一PE设备在第一VPN的UNI获取的私网路由信息。
S260,第一PE设备发送第四IGP报文,第四IGP报文携带第一标识和第二路由信息。
第一PE设备确定第二映射关系以及发送第二私网路由信息的具体过程与第二PE设备确定第一映射关系以及发送第一私网路由信息的具体过程类似,可以参考前文S233至S235的描述,在此不再赘述。
在一种可能的实现方式中,第一IGP报文还携带有第一指示信息,第一指示信息用于指示加入第一标识所标识的VPN。类似的,第二IGP报文还携带有第一指示信息,第一指示信息用于指示加入第一标识所标识的VPN。
本申请实施例中,可以扩展IGP报文,其携带VPN的标识和指示加入VPN的信息,使得其他PE设备可以根据该IGP报文自动发现和其属于同一VPN的PE设备,从而不需要使用边界网关协议BGP,降低VPN技术实现的复杂性。
在一种可能的实现方式中,第三IGP报文还携带有第二指示信息,第二指示信息用于指示启用第三IGP报文中的路由信息,即第一路由信息。类似的,第四IGP报文还携带有第二指示信息,第二指示信息用于指示启用第四IGP报文中的路由信息,即第二路由信息。
本申请实施例中,可以扩展IGP报文,其携带私网路由信息和指示启用私网路由信息的信息,使得PE设备可以通过IGP报文实现私网路由信息发布,从而不需要使用边界网关协议BGP,降低VPN技术实现的复杂性。
在一种可能的实现方式中,如图3所示,本申请实施例的方法还可以用于撤销私网路由信息。
S270,第二PE设备发送第五IGP报文,第五IGP报文携带第一标识、第三路由信息和第三指示信息,第三路由信息包括第一路由信息中的部分或全部,第三指示信息用于指示撤销第三路由信息。
作为示例,当第二PE设备识别到第一VPN中有部分路由地址不可用等情况时,第二PE设备可以发送第五IGP报文,通过第五IGP报文携带不可用的路由地址信息和第一标识,并将其发送至第一PE设备。其中,第五IGP报文还第三指示信息,第三指示信息用于指示撤销路由信息。
S280,第一PE设备根据第五IGP报文删除第三路由信息。
第一PE设备可以根据第五IGP报文中的路由信息和第三指示信息更新VPN路由转发表,即将第三路由信息所在的行删除。
类似的,当第一PE设备识别到第一VPN中有部分路由地址不可用时,也可以通过类似的方式,实现私网路由信息的自动撤销。
本申请实施例,扩展IGP,使其也可以携带私网路由信息和指示撤销私网路由信息的信息,使得PE设备可以通过IGP报文实现私网路由信息撤销,从而不需要使用边界网关协议BGP,降低VPN技术实现的复杂性。
在一种可能的实现方式中,如图3所示,本申请实施例的方法还可以用于退出VPN。
S290,当第一PE设备识别到第一标识被删除时,第一PE设备断开与第二PE设备IGP单播连接。
当第一PE设备识别到第一标识被删除时,表示第一PE设备需要退出第一VPN,第一PE设备可以断开与第二PE设备IGP单播连接。
第一PE设备断开与第二PE设备IGP单播连接。具体可以通过如下方式实现:
S291,第一PE设备通过泛洪方式发送第六IGP报文,第六IGP报文携带第一标识和第四指示信息,第四指示信息用于指示退出第一标识所标识的VPN。
第一PE设备可以通过第六IGP报文向所有PE设备公告其需要退出第一VPN。
第六IGP报文经过公网内一个或多个设备的转发,会到达第二PE设备。
S292,第二PE设备根据第六IGP报文删除第一映射关系。
第二PE设备可以根据第六IGP报文确定第一PE设备需要退出第一VPN,因此可以删除本地已建立的第一映射关系。
本申请实施例中,扩展IGP报文,其携带VPN的标识和指示退出VPN的信息,使得其他PE设备可以自动发现和某一PE设备需要退出VPN,从而删除VPN ID和该PE设备的映射关系,不需要使用边界网关协议BGP,降低VPN技术实现的复杂性。
类似的,第二PE设备也可以通过类似的方式实现VPN退出。
在一种可能的实现方式中,第一PE设备可以增加第一发布标识,第一发布标识用于标记第二路由信息。进一步,第一PE设备根据第一发布标识将第二路由信息添加至第四IGP报文。
也就是说,第一PE设备可以使用第一发布标识对从UNI获得的私网路由进行标识,只有UNI获得的私网路由信息才需发布至和其在同一VPN的PE设备(即对端PE设备),而从对端PE设备接收的第二路由信息,将不会再向对端PE设备发布。
类似的,第二PE设备可以通过类似的方式为从UNI获得的私网路由进行标识。
在一种可能的实现方式中,如图3所示,VPN建立完成后,可以通过VPN传输数据报文,实现业务隔离。
S2100,第一PE设备通过第一VPN的UNI接收第一数据报文。
当第一PE设备接收到第一数据报文时,第一PE设备可以根据第一数据报文所在的UNI接口确定其属于第一VPN。
S2110,第一PE设备确定第一路由信息包括第一数据报文的目的地址。
应理解,第一PE设备获得第一私网路由信息后,第一PE设备可以将第一私网路由信息加入本地VPN路由转发表,并在VPN路由转发表中列出第一VPN所对应的第一私网路由信息,以及第一私网路由信息所对应的出接口,即第二PE设备。也就是说,当收到的数据报文的目的地址为第一私网路由信息中的地址时,第一PE设备会将其转发至第二PE设备。
当第一PE设备接收到第一数据报文时,在VPN路由转发表查找对应的VPN,即第一VPN,在该VPN对应的路由地址中查找第一数据报文的目的地址,进一步确定第一VPN对应的路由信息包括第一数据报文的目的地址。
应理解,第一PE设备还可以在第一数据报文中添加第一标识,该第一标识可以用于标记第一数据报文所属的VPN。
示例地,第一PE设备可以在第一数据报文中添加报头,该报头中包括第一标识。
S2120,第一PE设备将携带第一标识的第一数据报文传输至第二PE设备。
第一PE设备将携带第一标识的第一数据报文传输给第二PE设备,使得第二PE设备可以根据第一标识确定第一数据报文所属的VPN,并转发至所属VPN内的目的地址对应的端口。
应理解,第二PE设备收到携带第一标识的第一数据报文后,可以根据第一标识确定第一数据报文所属的VPN,即第一VPN,因此,可以将第一数据报文在本地配置的第一VPN对应的、第一数据报文的目的地址所对应的UNI接口进行转发,从而到达第一VPN内的目的设备。也就是说,通过第一标识可以标记数据报文所属的VPN,在接收端按数据报文所属的VPN实现业务隔离。
类似的,第二PE设备也可以通过类似的方式将收到的第二数据报文传输至第一PE设备,由第一PE设备发送给其私网内属于第一VPN的目的地址对应的端口,具体方法可以参照上文S2100至S2120。
本申请的数据传输的方法,通过IGP实现了VPN的构建和私网路由信息发布,从而进行数据传输,实现业务隔离,降低了VPN技术实现的复杂性。
应理解,数据报文通过公网从第一PE设备(或第二PE设备)转发至第二PE设备(或第一PE设备)的具体方法可以参考现有技术,也可以使用本领域的技术人员研发的其他技术,本申请不作限定。在分组网络中,作为示例,可以使用环回Loopback地址(Loopback IP)作为PE设备的标识,使用MPLS或基于互联网协议第6版的分段路由(Segment Routingversion 6,SRv6)等作为穿越网络的外层标签。在光传送网络OTN中,作为示例,可以使用透明OTN节点标识符(transparent OTN node identifier,TOTN NID)作为PE设备的标识。
在一种可能的实现方式中,第一私网路由信息包括媒体接入控制MAC地址信息或互联网协议IP地址信息。类似的,第二私网路由信息包括媒体接入控制MAC地址信息或互联网协议IP地址信息。
换而言之,本申请中的私网路由地址可以是MAC地址,也可以是IP地址。因此,本申请实施例提供的方法,可以用于二层VPN的构建、私网路由信息发布和数据传输,也可以用于三层VPN的构建、私网路由信息发布和数据传输,即L2VPN和L3VPN都兼容,具有更高的灵活性。
在一种可能的实现方式中,第一PE设备和第二PE设备可以是光传送网络OTN设备。
本申请实施例提供的方法,可以用于普通分组网络,PE设备为路由器,也可以用于光传送网络(optical transport network,OTN),PE设备为OTN设备。
需要说明的是,在OTN中,第一数据报文中添加的报头可以称为TOTN头,当第一PE设备接收到第一数据报文时,第一PE设备可以为第一数据报文添加TOTN头,该TOTN头可以包括第一标识和PE设备的标识,可选地,该PE设备的标识可以是TOTN NID。应理解,该TOTN头是独立于第一数据报文的,由于携带TOTN头的第一数据报文中包含了第一标识和PE设备的ID,故该TOTN头可以用于第一数据报文在公网内转发。
当第二PE设备收到添加了TOTN头的第一数据报文时,第二PE设备可以根据TOTN头中的第一标识确定第一数据报文所属的VPN,并在该VPN内进行数据报文转发,实现业务隔离。
本申请实施例提供的数据传输的方法,通过在数据报文的报头中承载数据报文在公网内传输的信息和VPN的信息,且该报头与数据报文相互独立,因此可以实现与数据报文格式无关的数据传输,即和数据报文解耦,灵活性较高。
进一步,本申请的方法可以统一L2VPN和L3VPN中的数据传输,即L2VPN和L3VPN都适用,具有更高的兼容性。
可选地,图4是本申请实施例提供的第一数据报文的几种格式的示意图。在UNI侧,第一PE设备接收到的第一数据报文的格式可以为如图4(a)、图4(b)、图4(c)所示。携带第一标识的第一数据报文可以如图4(d)、图4(e)、图4(f)所示。在图4中,NNI表示网络-网络接口(network to network interface),DA表示目的地址(destination address),SA表示源地址(source address)。第一数据报文的净荷即payload。LSP表示标签交换路径(labelswitching path,LSP),即第一数据报文对应的标签,PW表示伪线(pseudo wire,PW),即隧道对应的标签。
在一种可能的方式中,TOTN头的格式可以为图5所示的格式。在图5中,TOTN以太类型(ether type)用于识别TOTN头,ctrl字段用于携带控制信息,dst TOTN NID表示目的PE设备的标识,src TOTN NID表示源PE设备的标识,EVI ID表示全局唯一的VPN标识,即第一标识。
对于第二数据报文,情况是类似的,在此不再赘述。
由图4和图5可见,TOTN头与业务报文相互独立,因此可以实现与数据报文格式无关的数据传输,即和数据报文解耦。
应理解,在本申请实施例中,第一IGP报文、第二IGP报文和第六IGP报文都是通过泛洪的方式发送,经过公网内一个或多个设备的转发,到达各个PE设备,也就是说,图2中的S220、图3中的S220、S232和S291,只是表示报文的收端、发端,并非是第一PE设备和第二PE设备之间通过点对点的方式发送这些IGP报文。
作为一种可能的实现方式,上述方法还包括:第二PE设备周期性的发送第一IGP报文。
可以配置第一IGP报文的发送周期,第二PE设备可以定期将携带VPN标识的第一IGP报文进行泛洪,使得其他PE设备可以定期更新本地建立的映射关系,维护VPN的稳定性。
类似的,第一PE设备也可以周期性的发送第二IGP报文和第六IGP报文。
作为一种可能的实现方式,上述方法还包括:第二PE设备周期性的发送第三IGP报文。
可以配置第三IGP报文的发送周期,第二PE设备可以定期将第一私网路由信息发送至第一PE设备,使得第一PE设备可以定期更新本地建立的VPN路由转发表,通过这种方式,可以实现对私网路由信息的不断更新。
类似的,第二PE设备周期性的发送第五IGP报文,第一PE设备也可以周期性的发送第四IGP报文。
在一种可能的实现方式中,第一IGP报文、第三IGP报文和第五IGP报文还携带第二PE设备的标识,第二IGP报文、第四IGP报文和第六IGP报文还携带第一PE设备的标识。
应理解,在本申请实施例中,第二PE设备获取第一私网路由信息的方法,以及第一PE设备获取第二私网路由信息的方法可以是MAC地址学习的方式,也可以是IP地址学习。具体方式可以参考现有技术,在此不再赘述。
下面结合图6至图11对本申请的传输数据报文的具体实现方式进行描述。
下文以中间系统到中间系统(intermediate system to intermediate system,ISIS)协议为例,对本申请的方法进行详细说明。ISIS系统是常用的内部网关协议(interior gateway protocol,IGP)中的一种,在ISIS系统中,可以通过对链路状态报文(link state packet,LSP)扩展,使其携带第一指示信息、第二指示信息、第三指示信息或第四指示信息,同时,还可以通过类型长度值(type length value,TLV)字段来携带第一标识、第一私网路由信息或第二私网路由信息。
首先,当需要在OTN设备1(第一PE设备的一例)和OTN设备2(第二PE设备的一例)建立VPN时,可以为OTN设备1和OTN设备2中分别配置VPN 1(第一标识的一例)。OTN设备2上的VPN 1标识可以触发OTN设备2生成LSP#1(第一IGP报文的一例),其中,LSP#1携带VPN 1。OTN设备2可以将LSP#1通过泛洪的方式发送。
LSP#1泛洪后,经过公网内其他设备的转发,OTN设备1会收到LSP#1,OTN设备1将LSP#1中的VPN标识和自身的VPN标识进行对比,均为VPN 1,从而确认OTN设备2属于VPN 1。OTN设备1可以和OTN设备2建立IGP单播连接,通过IGP单播连接接收OTN设备2在第一VPN内的私网路由信息(第一路由信息的一例)。
作为一种可能的实现方式,OTN设备1可以和OTN设备2建立IGP单播连接可以通过以下方式。
OTN设备1上的VPN 1标识可以触发OTN设备1生成LSP#2(第二IGP报文的一例),其中,LSP#2携带VPN 1。OTN设备1可以将LSP#2通过泛洪的方式发送。LSP#2泛洪后,经过公网内其他设备的转发,OTN设备2会收到LSP#2,OTN设备1将LSP#2中的VPN标识和自身的VPN标识进行对比,均为VPN 1,从而确认OTN设备1属于VPN 1。
作为示例,OTN设备2也可以生成VPN列表,纪录VPN 1和OTN设备1的对应关系(第一映射关系的一例)。OTN设备2的VPN列表1可以包括表1中的信息。
表1
作为一种可能的实现方式,OTN设备1通过IGP单播连接接收OTN设备2在第一VPN内的私网路由信息可以使用以下方式。
OTN设备2可以学习UNI的私网路由信息,而UNI和VPN ID具有关联关系,因此OTN设备2可以获得VPN 1内的私网路由信息。OTN设备2根据VPN列表1确定VPN1内的对端PE设备为OTN设备1,因此生成LSP#3(第三IGP报文的一例),然后通过发送LSP#3将OTN设备2获得的VPN 1内的私网路由信息1(第一路由信息的一例)发送至OTN设备1。
作为一种可能的实现方式,OTN设备1也可以根据LSP#1和自身的VPN 1标识生成VPN列表2,纪录VPN 1和OTN设备2的对应关系(第二映射关系的一例),OTN设备1的VPN列表2可以包括表2中的信息。
表2
VPN ID 对端PE设备
VPN 1 OTN设备2
类似的,OTN设备1也可以通过UNI获得的VPN 1内的私网路由信息2(第二路由信息的一例),然后生成LSP#4(第四IGP报文的一例),并根据VPN列表2将LSP#4发送给OTN设备2,其中,LSP#4中携带VPN 1和私网路由信息2。
对于其他PE设备来说,如果其本地并未包括VPN 1,则不会生成携带VPN 1的IGP报文,而收到报文LSP#1和LSP#2后,也可能只是参与泛洪过程,不会有OTN设备1和OTN设备2中生成和发送携带VPN 1的LSP的过程,以及建立VPN列表的操作。
本申请的数据传输的方法,通过IGP实现了VPN的构建和私网路由信息发布,不需要使用边界网关协议BGP,降低VPN技术实现的复杂性。
另一方面,本申请实施例中扩展IGP报文,其携带VPN的标识,并使用泛洪技术,使得PE设备能够自动发现和其属于同一VPN的其他PE设备,减少手工配置的复杂性,从而使得VPN的建立简单易行。
在一种可能的实现方式中,LSP#1和LSP#2还可以携带指示加入VPN的信息(第一指示信息的一例)。
作为示例,OTN设备2生成的LSP#1的格式可以如图6所示。在图6中,dst表示泛洪地址,src表示IGP报文的生成者和源发送者,即OTN设备2的地址。“类型”字段用于携带第一指示信息,即指示加入VPN的信息,作为示例,指示加入VPN的信息可以是“VPN加入”。使用TLV字段携带VPN的标识,例如,VPN 1。
OTN设备1收到LSP#1后,根据报文中的第一指示信息确定OTN设备2要加入VPN,根据TLV字段VPN为VPN 1,从而确定OTN设备2要加入VPN 1。OTN设备1本地包括VPN 1,因此可以在本地建立VPN列表1。
类似的,OTN设备1生成的LSP#2的格式可以如图7所示。OTN设备2收到LSP#2后,根据报文中的第一指示信息和TLV字段确定OTN设备1要加入VPN 1。从而可以在本地建立VPN列表1。
应理解,表示第一指示信息还可以是“加入VPN”、“加入”等,或者是其他预设置的方式,例如使用“1”作为指示加入VPN的信息,此时PE设备生成的LSP#1和LSP#4中的“类型”字段中携带的信息可以为数字“1”。
作为一种可能的实现方式,也可以设置当LSP中的“类型”字段为空时,或者当LSP中的没有“类型”字段时,表示要加入VPN,本申请对此不做限定。
作为一种可能的实现方式,上述方法还包括:OTN设备1的UNI与VPN 1具有关联关系,OTN设备1通过这些UNI获取私网路由信息2。OTN设备1可以生成VPN路由转发表,纪录获得的私网路由信息2。
应理解,获得私网路由信息的方式可以通过路由器或交换机的MAC地址学习的方式,也可以通过IP地址学习。具体方式可以参考现有技术,本申请对此不做限定。
作为示例,假如OTN设备1获得VPN 1内的私网路由信息2包括mac 1和mac 2,其对应的出接口分别为port 1和port 2,OTN设备1可以生成如表3所示的VPN路由转发表。
表3
进一步,OTN设备1还可以在VPN路由转发表中增加第一发布标识,该标识用于标记UNI获得的私网路由信息。作为示例,该第一发布标识可以是表3中发布标识“Y”,当OTN设备1向对端PE设备发布私网路由信息时,可以根据发布标识确定该第一发布标识对应的私网路由信息需要携带至IGP报文。
作为一种可能的实现方式,OTN设备1可以在VPN 1对应的UNI获得新的私网路由信息时,立即生成LSP#4,该LSP#4中携带有新获得的私网路由信息,然后OTN设备1通过LSP#4将获得的私网路由信息发送至OTN设备2。例如,当OTN设备1本地的VPN路由转发表为表3所示时,其生成的LSP#4中包括mac 1和mac 2以及VPN 1。
在一种可能的实现方式中,LSP#4中还包括指示启用路由信息的标识(第二指示信息的一例)。作为示例,LSP#4的格式可以如图8所示。其中,dst表示该报文的目的地址,此信息可以根据VPN列表中的远端通告者确定,即OTN设备2的地址。src表示该报文的源地址,即OTN设备1的地址。可以使用“类型”字段携带指示启用路由信息的信息,即第二指示信息,作为示例,第二指示信息可以是“私网发布”。使用TLV字段携带VPN的标识,即VPN 1。使用MACTLV字段携带私网路由地址,即mac 1和mac 2。应理解,此处的MAC TLV也可是IP TLV,即表示本地获得了哪些IP地址。下文仅以MAC地址为例进行说明。
类似的,假如OTN设备2获得VPN 1内的私网路由信息包括mac 3、mac 4和mac 5,其对应的出接口分别为port 1、port2和port3,OTN设备2可以生成如表4所示的VPN路由转发表。
表4
OTN设备2也可以在VPN路由转发表中增加第一发布标识,标记UNI获得的私网路由信息。当OTN设备2本地的VPN路由转发表为表4所示时,其生成的LSP#3包括mac3、mac 4和mac 5和VPN 1。类似的,LSP#3中还可以包括指示启用路由信息的信息(第二指示信息的一例)。示例地,LSP#3的格式可以如图9所示。图9中每个字段的含义可以参照图8的描述,在此不再赘述。
当OTN设备1收到LSP#3,根据报文中的第二指示信息确定OTN设备1要启用私网路由地址,根据VPN TLV字段确定为VPN 1,根据MAC TLV字段确定mac 3、mac 4和mac 5,从而确定OTN设备1要启用VPN 1内的mac 3、mac 4和mac 5,且这些地址属于VPN 1。OTN设备1可以将接收到的私网路由信息合并至本地的VPN路由转发表,如表5所示。进一步,OTN设备1可以为接收到的路由信息添加第二发布标识,以作区分,该标识对应的路由地址将不会向对端PE设备发布。例如,该标识可以是表5中的发布标识“N”。
表5
类似的,当OTN设备2收到LSP#4,OTN设备2的VPN路由转发表可以更新为如表6所示。
表6
本申请实施例中,可以扩展IGP报文,其携带私网路由信息和指示启用私网路由信息的信息,使得PE设备可以通过IGP报文实现私网路由信息发布,从而不需要使用边界网关协议BGP,降低VPN技术实现的复杂性。
在一种可能的实现方式中,该方法还包括:当OTN设备2识别到VPN 1中有部分路由地址不可用时,例如,mac 4,OTN设备2可以生成LSP#5(第五IGP报文的一例),通过LSP#5携带mac 4、第一标识和第三指示信息,其中,第三指示信息用于指示撤销路由信息。
作为示例,LSP#5的格式可以如图10所示。其中,dst表示该报文的目的地址,此信息可以根据VPN列表中的远端通告者确定,即OTN设备1的地址。src表示该报文的源地址,即OTN设备2的地址。可以使用“类型”字段携带第三指示信息,即表示撤销路由信息的信息,作为示例,指示撤销路由信息的信息可以是“私网撤销”(第三指示信息的一例)。使用TLV字段携带VPN的标识,即VPN 1。使用MAC TLV字段携带私网路由地址,即mac 4。OTN设备2将LSP#5发送给OTN设备1。
当OTN设备1收到LSP#5,根据报文中的第三指示信息确定OTN设备1要撤销私网路由地址,根据VPN TLV字段确定为VPN 1,根据MAC TLV字段确定mac 4,从而确定OTN设备1要撤销VPN 1内的mac 4。因此,OTN设备1可以更新本地的VPN路由转发表,即删除VPN 1内的mac 4,更新后的VPN路由转发表如表7所示。
表7
在一种可能的实现方式中,该方法还包括:当OTN设备1识别到本地包括的VPN 1被删除时,OTN设备1还可以生成LSP#6(第六IGP报文的一例),LSP#6中携带指示退出VPN的信息(第四指示信息的一例)和VPN 1。
作为示例,LSP#6的格式可以如图11所示。在图11中,dst表示泛洪地址,src表示IGP报文的生成者和源发送者,即OTN设备1的地址。“类型”字段用于携带指示退出VPN的信息,即第四指示信息,作为示例,指示退出VPN的信息可以是“VPN退出”。使用TLV字段携带VPN的标识,例如,VPN 1。
OTN设备2收到LSP#6后,根据报文中的第四指示信息确定OTN设备1要退出VPN,根据TLV字段VPN为VPN 1,从而确定OTN设备1要退出VPN 1。因此可以更新本地建立VPN列表1,即删除已经建立的VPN 1和OTN设备1的对应关系。更新后的VPN列表1可以包括表8中的信息。
表8
VPN ID 对端PE设备
VPN 1
应理解,在这种情况下,虽然OTN设备2的VPN 1没有对端PE设备,但是因为其本地确定本地包括VPN 1的信息,所以OTN设备2仍然是属于VPN 1的。若在某个时刻OTN设备2收到来自OTN设备3的LSP,其携带VPN 1,则OTN设备2仍会将OTN设备3加入本地的VPN列表中。
还应理解,上文仅以OTN设备1和OTN设备2加入VPN 1为例进行说明,并不构成对本申请实施例的限定。本申请实施例可以用于一个PE设备加入多个VPN。示例地,在上文的基础上,类似的,OTN设备1可以和OTN设备2入VPN 1,OTN设备1还可以和OTN设备4(第二PE设备的又一例)加入VPN 2(第一标识的又一例),此时OTN设备1生成的IGP报文可以同时包括VPN1和VPN 2,OTN设备4的IGP报文可以包括VPN 2。在这种情况下,OTN设备1建立的VPN列表中会包括OTN设备2和VPN 2的对应关系、以及OTN设备4和VPN 2的对应关系,OTN设备4建立的VPN列表中会包括OTN设备1和VPN 2的对应关系。
也就是说,当某个PE设备需要加入某个或某些VPN,只需要在本地配置VPN对应的标识,然后生成IGP报文,并将该IGP报文泛洪即可。对于接收端,如果确定本地包括和收到的IGP报文中相同的一个或多个VPN标识时,将会自动将对端设备加入本地的VPN列表。因此,本申请实施例的方法可以用于VPN的自动发现。
作为示例,该方法还包括:可以配置IGP报文的发送周期。例如,当OTN设备2生成LSP#1时,可以以时间周期为T1将LSP#1泛洪。从而使得OTN设备1间隔T1时间对VPN列表进行更新一次,这可以防止在IGP单播连接的建立的过程中,LSP产生丢包等问题。
类似的,当OTN设备1生成LSP#4时,可以以时间周期为T2将LSP#4发送一次。从而使得OTN设备2间隔T2时间对VPN路由转发表进行更新一次,这可以防止在私网路由信息发布的过程中,LSP产生丢包等问题。
类似的,也可以配置其他IGP报文的发送周期,能够维护VPN列表和VPN路由转发表的稳定性。
此外,若配置了LSP#3和LSP#4的周期,该周期还可以用于向对端PE设备通告撤销私网路由信息。作为示例,可以配置老化机制,即超过n个周期未收到对端PE设备的私网路由信息,则视为对端PE设备的私网路由信息已经撤销。例如,对OTN设备1来说,可以配置超过4个周期未收到LSP#3,即视为OTN设备2中的mac 3、mac 4和mac 5已经退出VPN 1,则OTN设备1可以在本地的VPN路由转发表中将mac3、mac 4和mac 5删除。这可以防止在私网路由信息撤销的过程中,IGP报文产生丢包等问题。
作为示例,该方法还包括:OTN设备2从VPN 1对应的UNI接收数据报文#1(第二数据报文的一例),假如数据报文#1的目的地址为mac 1,OTN设备2可以根据UNI确定数据报文#1属于VPN 1。OTN设备2查询本地的VPN路由转发表,可以是表6或表7,确定VPN 1内mac 1地址对应的出接口为OTN设备1,因此确定要将数据报文#1转发至OTN设备1。
应理解,OTN设备2还可以在数据报文#1中添加报头,该报头中携带VPN 1。示例地,数据报文#1的格式可以为如图4所示的格式,该报头的格式可以为如图5所示的格式。当携带VPN 1的数据报文#1经过公网内设备的转发,到达OTN设备1时,OTN设备1根据数据报文#1中报头的信息确定该数据报文属于VPN 1,然后在本地的VPN路由转发表查询到VPN 1内mac1地址的出接口为port 1,从而将数据报文#1从port 1转发出去。
还应理解,上文仅以OTN设备1和OTN设备2加入VPN 1为例进行说明,并不构成对本申请实施例的限定。在上文的示例的基础上,类似的,OTN设备1还可以和OTN设备4加入VPN2,此时OTN设备1建立的VPN列表中还会包括OTN设备4和VPN 2的对应关系。而经过OTN设备4的路由信息发布,OTN设备1更新后的VPN路由表也会包括VPN 2、OTN设备4的私网地址和OTN设备4的对应关系。
需要进一步说明的是,上述第一指示信息、第二指示信息、第三指示信息、第四指示信息的具体形式只是为了举例说明,并不构成对本申请实施例的限制,第一指示信息、第二指示信息、第三指示信息、第四指示信息也可以是其他内容,只要可以指示相应的信息即可。
本申请实施例提供的方法,VPN路由表包括VPN的标识,使得PE设备可以根据VPN的标识实现业务隔离。
还应理解,上文仅以ISIS系统为例对本申请的方法进行说明,这并不构成对本申请的方法的限制。在路由信息协议(routing information protocol,RIP)、开放最短路径优先(open shortest path first,OSPF)协议、内部网关路由协议(interior gatewayrouting protool,IGRP)、增强内部网关路由协议(enhanced interior gateway routingprotocol,EIGRP)等其他IGP中,也可以通过对IGP报文的扩展来实现本申请的方法,例如,在OSPF协议中,第一IGP报文至第六IGP报文可以是链路状态通告(link stateadvertisemen,LSA)报文,可以使用其中某些字段来携带指示信息和第一标识。
上文结合图2至图11详细说明了本申请实施例提供的传输数据报文的方法。下面结合图12、图13详细说明本申请实施例提供的传输数据报文的装置。应理解,方法实施例的描述与装置实施例的描述相互对应,因此,未详细描述的部分可以参见前面方法实施例。
图12是本申请实施例提供的传输数据报文的装置的示意性框图。如图12所示,该装置可以包括处理模块410、收发模块420。
收发模块420,用于接收来自于第二PE设备通过泛洪方式发送的第一内部网关协议IGP报文,第一IGP报文携带第一标识,第一标识用于标识第一虚拟专用网络VPN。
收发模块420还用于:当根据第一标识确定自身属于所述第一VPN时,建立与第二PE设备的IGP单播连接,并通过IGP单播连接接收来自于第二PE设备的第一路由信息,第一路由信息包括第二PE设备在第一VPN的用户网络接口UNI获取的私网路由信息。
可选地,收发模块420具体用于:通过泛洪方式发送第二IGP报文,第二IGP报文携带第一标识,以使得第二PE设备根据第二IGP报文确定第一映射关系,第一映射关系用于纪录第一PE设备和第一VPN的对应关系。
可选地,收发模块420具体用于:接收来自于第二PE设备的第三IGP报文,第三IGP报文携带第一标识和第一路由信息,其中,第三IGP报文是第二PE设备根据第一映射关系确定向第一PE设备发送的。
可选地,处理模块410,用于根据第一IGP报文确定第二映射关系,第二映射关系用于纪录第二PE设备和第一VPN的对应关系。
可选地,处理模块410还用于:根据第二映射关系确定向第二PE设备发送第二路由信息,第二路由信息包括第一PE设备在第一VPN的UNI获取的私网路由信息。收发模块420还用于:发送第四IGP报文,第四IGP报文携带第一标识和第二路由信息。
可选地,第一IGP报文还携带第一指示信息,第一指示信息用于指示加入第一标识所标识的VPN。
可选地,第二IGP报文还携带第一指示信息,第一指示信息用于指示加入第一标识所标识的VPN。
可选地,第三IGP报文还携带第二指示信息,第二指示信息用于指示启用第一路由信息。
可选地,第四IGP报文还携带第二指示信息,第二指示信息用于指示启用第二路由信息。
可选地,收发模块420还用于:接收第五IGP报文,第五IGP报文携带第一标识、第三路由信息和第三指示信息,第三路由信息包括第一路由信息中的部分或全部,第三指示信息用于指示撤销第三路由信息。处理模块410还用于:根据第五IGP报文删除第三路由信息。
可选地,处理模块410还用于:根据所述第一标识确定自身属于所述第一VPN。
可选地,处理模块410具体用于:当确定本地包括所述第一标识时,确定自身属于所述第一VPN。或者,当配置有所述第一标识时,确定自身属于所述第一VPN。
可选地,收发模块420还用于:当识别到第一标识被删除时,断开与第二PE设备IGP单播连接。
可选地,收发模块420具体用于:通过泛洪方式发送第六IGP报文,第六IGP报文携带第一标识和第四指示信息,第四指示信息用于指示退出第一标识所标识的VPN,以使得第二PE设备根据第六IGP报文删除第一映射关系。
可选地,处理模块410还用于:增加第一发布标识,第一发布标识用于标记第二路由信息。根据第一发布标识将第二路由信息添加至第四IGP报文。
可选地,收发模块420还用于:通过第一VPN的UNI接收第一数据报文。处理模块410还用于:确定第一路由信息包括第一数据报文的目的地址,在所述第一数据报文中添加所述第一标识。收发模块420还用于:将携带所述第一标识的第一数据报文传输至第二PE设备。
可选地,收发模块420还用于:接收来自于第二PE设备的第二数据报文,第二路由信息包括第二数据报文的目的地址。
可选地,第一私网路由信息包括媒体接入控制MAC地址信息或互联网协议IP地址信息。
可选地,该装置为光传送网络OTN设备。
图13是本申请实施例的第一PE设备2000的硬件结构示意图。图13所示第一PE设备2000可以执行上述实施例的方法中第一PE设备执行的相应步骤。
如图13所示,第一PE设备2000包括处理器2001、存储器2002、接口2003和总线2004。其中接口2003可以通过无线或有线的方式实现,具体来讲可以是网卡。上述处理器2001、存储器2002和接口2003通过总线2004连接。
接口2003具体可以包括发送器和接收器,用于第一PE设备实现上述收发。
处理器2001用于执行上述实施例中由第一PE设备进行的处理。例如根据第一IGP报文确定第二映射关系;和/或用于本文所描述的技术的其他过程。存储器2002包括操作系统20021和应用程序20022,用于存储程序、代码或指令,当处理器或硬件设备执行这些程序、代码或指令时可以完成方法实施例中涉及第一PE设备的处理过程。可选的,存储器2002可以包括只读存储器(read-only memory,ROM)和随机存取存储器(random accessmemory,RAM)。其中,ROM包括基本输入/输出系统(basic input/output system,BIOS)或嵌入式系统;RAM包括应用程序和操作系统。当需要运行第一PE设备2000时,通过固化在ROM中的BIOS或者嵌入式系统中的bootloader引导系统进行启动,引导第一PE设备2000进入正常运行状态。在第一PE设备2000进入正常运行状态后,运行在RAM中的应用程序和操作系统,从而,完成方法实施例中涉及第一PE设备2000的处理过程。
可以理解的是,图13仅仅示出了第一PE设备2000的简化设计。在实际应用中,第一PE设备可以包含任意数量的接口,处理器或者存储器。
本申请实施例还提供了一种计算机可读介质,该计算机可读介质存储有程序代码,当该计算机程序代码在计算机上运行时,使得计算机执行上述第一PE设备执行的方法。这些计算机可读存储包括但不限于如下的一个或者多个:只读存储器(read-only memory,ROM)、可编程ROM(programmable ROM,PROM)、可擦除的PROM(erasable PROM,EPROM)、Flash存储器、电EPROM(electrically EPROM,EEPROM)以及硬盘驱动器(hard drive)。
本申请实施例还提供了一种芯片系统,应用于第一PE设备中,该芯片系统包括:至少一个处理器、至少一个存储器和接口电路,接口电路负责芯片系统与外界的信息交互,至少一个存储器、接口电路和至少一个处理器通过线路互联,至少一个存储器中存储有指令;指令被至少一个处理器执行,以进行上述各个方面的的方法中第一PE设备的操作。
在具体实现过程中,该芯片可以以中央处理器(central processing unit,CPU)、微控制器(micro controller unit,MCU)、微处理器(micro processing unit,MPU)、数字信号处理器(digital signal processing,DSP)、片上系统(system on chip,SoC)、专用集成电路(application-specific integrated circuit,ASIC)、现场可编程门阵列(fieldprogrammable gate array,FPGA)或可编辑逻辑器件(programmable logic device,PLD)的形式实现。
本申请实施例还提供了一种计算机程序产品,应用于第一PE设备中,计算机程序产品包括一系列指令,当指令被运行时,以进行上述各个方面的的方法中第一PE设备的操作。
本申请将围绕包括多个设备、组件、模块等的系统来呈现各个方面、实施例或特征。应当理解和明白的是,各个系统可以包括另外的设备、组件、模块等,并且/或者可以并不包括结合附图讨论的所有设备、组件、模块等。此外,还可以使用这些方案的组合。
另外,在本申请实施例中,“示例的”、“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用示例的一词旨在以具体方式呈现概念。
本申请实施例中,“相应的(corresponding,relevant)”和“对应的(corresponding)”有时可以混用,应当指出的是,在不强调其区别时,其所要表达的含义是一致的。
本申请实施例描述的网络架构以及业务场景是为了更加清楚地说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:包括单独存在A,同时存在A和B,以及单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (28)

1.一种传输数据报文的方法,其特征在于,包括:
第一供应商边缘PE设备接收来自于第二PE设备通过泛洪方式发送的第一内部网关协议IGP报文,所述第一IGP报文携带第一标识,所述第一标识用于标识第一虚拟专用网络VPN;
当所述第一PE设备根据所述第一标识确定自身属于所述第一VPN时,所述第一PE设备建立与所述第二PE设备的IGP单播连接,并通过所述IGP单播连接接收来自于所述第二PE设备的第一路由信息,所述第一路由信息包括所述第二PE设备在所述第一VPN的用户网络接口UNI获取的私网路由信息;
其中,所述第一路由信息用于:当所述第一PE设备在所述第一VPN的UNI接收到第一数据报文时,所述第一PE设备根据所述第一路由信息将所述第一数据报文转发至所述第二PE设备。
2.根据权利要求1所述的方法,其特征在于,所述第一PE设备建立与所述第二PE设备的IGP单播连接,包括:
所述第一PE设备通过泛洪方式发送第二IGP报文,所述第二IGP报文携带所述第一标识,以使得所述第二PE设备根据所述第二IGP报文确定第一映射关系,所述第一映射关系用于记录所述第一PE设备和所述第一VPN的对应关系。
3.根据权利要求2所述的方法,其特征在于,所述第一PE设备通过所述IGP单播连接接收来自于所述第二PE设备的第一路由信息,包括:
所述第一PE设备接收来自于所述第二PE设备的第三IGP报文,所述第三IGP报文携带所述第一标识和所述第一路由信息,其中,所述第三IGP报文是所述第二PE设备根据所述第一映射关系确定向所述第一PE设备发送的。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一PE设备根据所述第一IGP报文确定第二映射关系,所述第二映射关系用于记录所述第二PE设备和所述第一VPN的对应关系。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
所述第一PE设备根据所述第二映射关系确定向所述第二PE设备发送第二路由信息,所述第二路由信息包括所述第一PE设备在所述第一VPN的UNI获取的私网路由信息;
所述第一PE设备发送第四IGP报文,所述第四IGP报文携带所述第一标识和所述第二路由信息。
6.根据权利要求1所述的方法,其特征在于,所述第一IGP报文还携带第一指示信息,所述第一指示信息用于指示加入所述第一标识所标识的VPN。
7.根据权利要求3所述的方法,其特征在于,所述第三IGP报文还携带第二指示信息,所述第二指示信息用于指示启用所述第一路由信息。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一PE设备接收第五IGP报文,所述第五IGP报文携带所述第一标识、第三路由信息和第三指示信息,所述第三路由信息包括所述第一路由信息中的部分或全部,所述第三指示信息用于指示撤销所述第三路由信息;
所述第一PE设备根据所述第五IGP报文删除所述第三路由信息。
9.根据权利要求1所述的方法,其特征在于,所述第一PE设备根据所述第一标识确定自身属于所述第一VPN,包括:
当所述第一PE设备确定本地包括所述第一标识时,所述第一PE设备确定自身属于所述第一VPN;或,
当所述第一PE设备配置有所述第一标识时,所述第一PE设备确定自身属于所述第一VPN。
10.根据权利要求2所述的方法,其特征在于,所述方法还包括:
当所述第一PE设备识别到所述第一标识被删除时,所述第一PE设备断开与所述第二PE设备IGP单播连接。
11.根据权利要求10所述的方法,其特征在于,所述第一PE设备断开与所述第二PE设备IGP单播连接,包括:
所述第一PE设备通过泛洪方式发送第六IGP报文,所述第六IGP报文携带所述第一标识和第四指示信息,所述第四指示信息用于指示退出所述第一标识所标识的VPN,以使得所述第二PE设备根据所述第六IGP报文删除所述第一映射关系。
12.根据权利要求5所述的方法,其特征在于,所述方法还包括:
所述第一PE设备增加第一发布标识,所述第一发布标识用于标记所述第二路由信息;
所述第一PE设备根据所述第一发布标识将所述第二路由信息添加至所述第四IGP报文。
13.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一PE设备通过所述第一VPN的UNI接收所述第一数据报文;
所述第一PE设备确定所述第一路由信息包括所述第一数据报文的目的地址;
所述第一PE设备在所述第一数据报文中添加所述第一标识;
所述第一PE设备将携带所述第一标识的所述第一数据报文传输至所述第二PE设备。
14.根据权利要求5所述的方法,其特征在于,所述方法还包括:
所述第一PE设备接收来自于所述第二PE设备的第二数据报文,所述第二路由信息包括所述第二数据报文的目的地址。
15.根据权利要求1所述的方法,其特征在于,所述私网路由信息包括媒体接入控制MAC地址信息或互联网协议IP地址信息。
16.根据权利要求1至15中任一项所述的方法,其特征在于,所述第一PE设备为光传送网络OTN设备。
17.一种传输数据报文的装置,其特征在于,包括:
收发模块,用于接收来自于第二PE设备通过泛洪方式发送的第一内部网关协议IGP报文,所述第一IGP报文携带第一标识,所述第一标识用于标识第一虚拟专用网络VPN;
所收发模块还用于:当根据所述第一标识确定自身属于所述第一VPN时,建立与所述第二PE设备的IGP单播连接,并通过所述IGP单播连接接收来自于所述第二PE设备的第一路由信息,所述第一路由信息包括所述第二PE设备在所述第一VPN的用户网络接口UNI获取的私网路由信息;
其中,所述第一路由信息用于:当所述装置在所述第一VPN的UNI接收到第一数据报文时,所述装置根据所述第一路由信息将所述第一数据报文转发至所述第二PE设备。
18.根据权利要求17所述的装置,其特征在于,所述收发模块具体用于:
通过泛洪方式发送第二IGP报文,所述第二IGP报文携带所述第一标识,以使得所述第二PE设备根据所述第二IGP报文确定第一映射关系,所述第一映射关系用于记录所述装置和所述第一VPN的对应关系。
19.根据权利要求18所述的装置,其特征在于,所述收发模块具体用于:
接收来自于所述第二PE设备的第三IGP报文,所述第三IGP报文携带所述第一标识和所述第一路由信息,其中,所述第三IGP报文是所述第二PE设备根据所述第一映射关系确定向所述装置发送的。
20.根据权利要求17所述的装置,其特征在于,所述第一IGP报文还携带第一指示信息,所述第一指示信息用于指示加入所述第一标识所标识的VPN。
21.根据权利要求19所述的装置,其特征在于,所述第三IGP报文还携带第二指示信息,所述第二指示信息用于指示启用所述第一路由信息。
22.根据权利要求17所述的装置,其特征在于,所收发模块还用于:
接收第五IGP报文,所述第五IGP报文携带所述第一标识、第三路由信息和第三指示信息,所述第三路由信息包括所述第一路由信息中的部分或全部,所述第三指示信息用于指示撤销所述第三路由信息;
所述装置还包括处理模块,所述处理模块用于:根据所述第五IGP报文删除所述第三路由信息。
23.根据权利要求18所述的装置,其特征在于,所收发模块还用于:
当识别到所述第一标识被删除时,断开与所述第二PE设备IGP单播连接。
24.根据权利要求23所述的装置,其特征在于,所收发模块具体用于:通过泛洪方式发送第六IGP报文,所述第六IGP报文携带所述第一标识和第四指示信息,所述第四指示信息用于指示退出所述第一标识所标识的VPN,以使得所述第二PE设备根据所述第六IGP报文删除所述第一映射关系。
25.根据权利要求17所述的装置,其特征在于,所收发模块还用于:
通过所述第一VPN的UNI接收所述第一数据报文;
处理模块还用于:确定所述第一路由信息包括所述第一数据报文的目的地址;以及,
在所述第一数据报文中添加所述第一标识;
所收发模块还用于:将携带所述第一标识的所述第一数据报文传输至所述第二PE设备。
26.根据权利要求17至25中任一项所述的装置,其特征在于,所述装置为光传送网络OTN设备。
27.一种传输数据报文的设备,其特征在于,包括:
存储器,所述存储器用于存储指令;
处理器,所述处理器用于从所述存储器中调用并运行所述指令,使得所述设备执行权利要求1至15中任一项所述的方法。
28.一种传输数据报文的系统,其特征在于,包括如权利要求17至26中任一项所述的装置。
CN202110426644.7A 2021-04-20 2021-04-20 一种传输数据报文的方法和装置 Active CN115225427B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110426644.7A CN115225427B (zh) 2021-04-20 2021-04-20 一种传输数据报文的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110426644.7A CN115225427B (zh) 2021-04-20 2021-04-20 一种传输数据报文的方法和装置

Publications (2)

Publication Number Publication Date
CN115225427A CN115225427A (zh) 2022-10-21
CN115225427B true CN115225427B (zh) 2024-05-17

Family

ID=83605767

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110426644.7A Active CN115225427B (zh) 2021-04-20 2021-04-20 一种传输数据报文的方法和装置

Country Status (1)

Country Link
CN (1) CN115225427B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1822598A (zh) * 2005-02-16 2006-08-23 阿尔卡特公司 Ip到虚拟专用局域网业务的互通
US7830787B1 (en) * 2001-09-25 2010-11-09 Cisco Technology, Inc. Flooding control for multicast distribution tunnel
WO2016150394A1 (zh) * 2015-03-25 2016-09-29 华为技术有限公司 一种用于传输组播协议报文的方法、设备及系统
CN110830352A (zh) * 2018-08-07 2020-02-21 中兴通讯股份有限公司 一种vpn跨域的实现方法、装置和边界节点

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7830787B1 (en) * 2001-09-25 2010-11-09 Cisco Technology, Inc. Flooding control for multicast distribution tunnel
CN1822598A (zh) * 2005-02-16 2006-08-23 阿尔卡特公司 Ip到虚拟专用局域网业务的互通
WO2016150394A1 (zh) * 2015-03-25 2016-09-29 华为技术有限公司 一种用于传输组播协议报文的方法、设备及系统
CN110830352A (zh) * 2018-08-07 2020-02-21 中兴通讯股份有限公司 一种vpn跨域的实现方法、装置和边界节点

Also Published As

Publication number Publication date
CN115225427A (zh) 2022-10-21

Similar Documents

Publication Publication Date Title
CN110784411B (zh) 建立bier转发表项的方法、装置和系统
CN111865898B (zh) 基于流规则协议的通信方法、设备和系统
US10003531B2 (en) Method for establishing tunnel, method for allocating label, device and network system
CN107637031B (zh) 用于网络业务的路径计算单元中央控制器
US7463597B1 (en) Spanning tree protocol synchronization within virtual private networks
US10637768B1 (en) Enabling non-flexible-algorithm routers to participate in flexible-algorithm routing protocols
US7136374B1 (en) Transport networks supporting virtual private networks, and configuring such networks
US8151000B1 (en) Transparently providing layer two (L2) services across intermediate computer networks
US8861547B2 (en) Method, apparatus, and system for packet transmission
US20040037296A1 (en) Method for setting up QoS supported bi-directional tunnel and distributing L2VPN membership information for L2VPN using extended LDP
CN111865783B (zh) 用于计算机网络的方法和网络设备
US20230300070A1 (en) Packet Sending Method, Device, and System
CN114465946B (zh) 获取转发表项的方法、装置以及系统
CN112511444A (zh) 一种组播流量传输方法、装置、通信节点及存储介质
WO2012116545A1 (en) Multiprotocol label switching (mpls) virtual private network (vpn) over routed ethernet backbone
CN115550252A (zh) 路由发布和转发报文的方法、装置、设备和存储介质
WO2014032494A1 (en) Discovering a peer provider edge (pe) of a virtual private lan service (vpls) instance
CN115225427B (zh) 一种传输数据报文的方法和装置
CN112838985B (zh) 一种异构网络通信方法、系统和控制器
Wu et al. Research on the application of cross-domain VPN technology based on MPLS BGP
WO2006056131A1 (fr) Procede de realisation d'intercommunication entre les differents reseaux vpn l3
Joseph et al. Network convergence: Ethernet applications and next generation packet transport architectures
CN114520762A (zh) BIERv6报文的发送方法以及第一网络设备
CN116886663A (zh) 基于rfc 8317的e-tree实现方式、装置和通信设备

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
GR01 Patent grant
GR01 Patent grant