CN108293022A - 一种报文传输的方法、装置和系统 - Google Patents

一种报文传输的方法、装置和系统 Download PDF

Info

Publication number
CN108293022A
CN108293022A CN201580084787.7A CN201580084787A CN108293022A CN 108293022 A CN108293022 A CN 108293022A CN 201580084787 A CN201580084787 A CN 201580084787A CN 108293022 A CN108293022 A CN 108293022A
Authority
CN
China
Prior art keywords
virtual machine
address
message
tunnel terminal
network element
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.)
Granted
Application number
CN201580084787.7A
Other languages
English (en)
Other versions
CN108293022B (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 Cloud Computing 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
Publication of CN108293022A publication Critical patent/CN108293022A/zh
Application granted granted Critical
Publication of CN108293022B publication Critical patent/CN108293022B/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
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2592Translation of Internet protocol [IP] addresses using tunnelling or encapsulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2521Translation architectures other than single NAT servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/30Managing network names, e.g. use of aliases or nicknames
    • H04L61/3015Name registration, generation or assignment
    • H04L61/3025Domain name generation or assignment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2514Translation of Internet protocol [IP] addresses between local and global IP addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提供一种重叠网络中报文传输的实现方法、装置和系统,在传统物理网络上承载大二层逻辑网络,建立逻辑网络与物理网络之间IP地址映射,在逻辑网络与物理网络的分界点IP隧道终端上实现网络地址转换与反向网络地址转换,同时扩展IP选项以携带源端网元标识和目的端网元标识,通过IP隧道使上层逻辑网络内虚拟机经过下层物理网络与对端虚拟机完成互通。本申请以源端虚拟机和目的虚拟机的网元标识取代冗余的报文封装,降低了网络传输消耗的带宽,无需报文嵌套,报文的结构简单,网络可视性好。

Description

一种报文传输的方法、装置和系统 技术领域
本发明涉及通信领域,尤其是涉及一种报文传输的方法、装置和系统。
背景技术
新一代数据中心是软件定义的数据中心,为了满足业务扩展和虚拟机在线迁移的需求,新一代数据中心需要支持尽量大的二层网络。VXLAN(Virtual Extensible Local Area Network,虚拟可扩展局域网)技术为典型的重叠网络的技术。VXLAN将原始以太帧封装于UDP(User Data Protocol,用户数据报协议)报文之中。使用VXLAN技术,可以对二层网络在三层范围进行扩展,使虚拟机可以在互相连通的三层网络范围内迁移,而不需要改变IP地址和MAC(Media Access Control,介质访问控制)地址,从而既保证了业务的连续性,又为大规模多租户的云环境提供了充足的虚拟网络分区资源。但是,采用VXLAN技术对原始报文进行封装,带来了报文封装开销,使得在后续的数据包的传输过程中引起过多的网络带宽消耗,此外,由于在部分网络中,UDP传输不可用,导致在这些网络中VXLAN技术无法使用。
发明内容
本发明的目的在于提供一种报文传输的方法、装置和系统,以解决使用VXLAN技术带来的封装开销过大、网络带宽消耗过多,以及部分网络不适用VXLAN技术的问题。
一方面,本发明实施例提供了一种报文传输的方法,第一IP隧道终端接收第一虚拟机发送给第二虚拟机的原始报文,更改原始报文携带的源IP地址和目的IP地址,具体的,将所述原始报文的源IP地址替换为所述第一IP隧道终端的IP地址,将所述原始报文的目的IP地址替换为与所述第二虚拟机相连的第二IP隧道终端的IP地址,进一步的,第一IP隧道终端在原始报文的IP选项中添加所述第一虚拟机的网元标识和所述第二虚拟机的网元标识,经过对原始报文的上述修改和添加,生成了改装报文,将所述改装报文通过网络发送给所述第二IP隧道终端;所述改装报文经过网络路由到第二虚拟机所在的第二隧道终端,所述第二IP隧道终端接收所述改装报文,根据所述IP选项携带的所述第一虚拟机的网元标识,将所述改装报文的源IP地址替换为所述第一虚拟机的IP地址以及将所述改装报文的源MAC地址替换为所述第一虚拟机的MAC地址,根据所述IP选项携带的所述第二虚拟机的网元标识,将所述改装报文的目的IP地址替换为所述第二虚拟机的IP地址,将所述改装报文的目 的MAC地址替换为所述第二虚拟机的MAC地址,通过上述处理,将接收到的改装报文的源地址和目的地址修改为原始报文的源地址和目的地址,所述第二IP隧道终端将处理后的改装报文发送给第二虚拟机。
经过上述流程,第一虚拟机发送的报文被传递到第二虚拟机,从而完成了报文传输过程。在上述报文传输流程中,报文源端的第一IP隧道设备不对原始报文进行嵌套封装,而是修改原始报文的IP选项,在IP选项中添加第一虚拟机的网元标识和第二虚拟机的网元标识,报文目的端的第二IP隧道终端接收到通过IP网络传输的改装报文后,根据IP选项中携带的源虚拟机的网元标识和目的虚拟机的网元标识修改改装报文的源地址信息和目的地址信息,将报文传递到第二虚拟机。通过在报文的IP选项中携带源端和目的端标识,取代了现有技术中对报文进行嵌套封装的方案,从而降低了网络传输消耗的带宽,报文结构简单,网络可视性好,数据转发性能高。需要说明的是,第二IP隧道终端完整的还原了源虚拟机的IP地址和MAC地址,以及目的虚拟机的IP地址和MAC地址,避免了第二虚拟机丢弃修改后的改装报文。
在一种可能的实施方式中,所述第一IP隧道终端和所述第一虚拟机部署在第一服务器上,所述第一IP隧道终端为第一服务器上的虚拟交换机或者物理网卡,该物理网卡为智能网卡,具体报文解析和报文的修改功能,可以修改报文的源地址和目的地址,以及在报文的IP选项中添加网元标识。
IP隧道终端的IP地址和MAC地址为IP隧道终端所在的服务器与外部网络相连的端口的IP地址和MAC地址。具体的,第一IP隧道终端的IP地址和MAC地址为源服务器与源物理交换机相连的接口的IP和MAC;第二IP隧道终端的的IP地址和MAC地址为目的服务器与目的物理交换机相连的接口的IP和MAC。其中,源物理交换机为与原服务器直连的交换机;目的物理交换机为与目的服务器直连的交换机。
在一种可能的实施方式中,与第一IP隧道终端类似,所述第二IP隧道终端和所述第二虚拟机部署在第二服务器上,所述第二IP隧道终端为第二服务器上的虚拟交换机或者物理网卡,该物理网卡为智能网卡,具体报文解析和报文的修改功能,可以修改报文的源地址和目的地址,以及在报文的IP选项中添加网元标识。
在一种可能的实施方式中,第二终端在将改装报文携带的源地址和目的地址还原为原始报文的源地址和目的地址之后,删除所述IP选项中携带的所述第一虚拟机的网元标识和所述第二虚拟机的网元标识。
在一种可能的实施方式中,添加在所述IP选项中的虚拟机的网元标识可以灵活配置,只要可以唯一标识出虚拟机,可以通过该网元标识还原出虚拟机的IP地址和MAC地址即可。 在IP隧道终端上存储虚拟机的地址信息与网元标识的对应关系,通过该对应关系实现虚拟机地址信息的还原。可选的,网元标识可以直接采用虚拟机的MAC地址。具体的,所述第一IP隧道终端和所述第二IP隧道终端存储有虚拟机的地址信息与网元标识之间的对应关系,所述地址信息包括IP地址和MAC地址;在所述原始报文中添加所述第一虚拟机的网元标识和所述第二虚拟机的网元标识之前,所述第一IP隧道终端根据所述对应关系,确定所述第一虚拟机的网元标识和所述第二虚拟机的网元标识;相应地,在所述第二IP隧道终端接收所述改装报文之后,所述第二IP隧道终端根据所述对应关系,获取所述IP选项携带的所述第一虚拟机的网元标识对应的IP地址和MAC地址,以及所述第二虚拟机的网元标识对应的IP地址和MAC地址。
在一种可能的实施方式中,通信双方的虚拟机可能在同一个网段或者不同的网段,虚拟机之间的网络拓扑关系不同时,报文传输过程中目的MAC地址会发生不同变化。当所述第一虚拟机与所述第二虚拟机在同一网段时,所述第一IP隧道终端将所述原始报文的目的MAC地址替换为所述第二IP隧道终端的MAC地址;或者,当所述第一虚拟机与所述第二虚拟机不在同一网段时,所述第一IP隧道终端将所述原始报文的目的MAC地址替换为与所述第一服务器相连的第一网关的MAC地址。需要说明的是,虚拟机所在的上层的逻辑网络可以为二层或者三层、下层的物理网络也可以为二层或三层,通信双方的虚拟机所在的网络结构不同时,报文传输的流程会发生适应性的变化,只要依据现有的通信协议进行报文的转发即可,无论逻辑或物理网络是二层还是三层,本申请提供的在IP选项中携带通信双方网元标识的报文传输的方法同样适用,只要在通信双方分别对应的IP隧道终端上实现报文的解析和修改即可。
更进一步的,为保证通信对端的IP隧道可以正确的还原出原始报文中的通信双方的地址信息,所述IP选项中的内容在所述第一IP隧道终端与所述第二IP隧道终端之间的传输过程中保持不变。
在一种可能的实施方式中,本申请提供的报文的传输方法应用于SDN架构,SDN控制器向通信双方的IP隧道终端下发流表,实现在IP隧道终端上进行报文解析和修改的功能。具体的:
所述第一IP隧道终端接收SDN控制器下发的第一流表,所述第一流表包括映射表和NAT表,所述映射表包括所述第一虚拟机的地址信息与所述第一虚拟机的网元标识的对应关系以及所述第二虚拟机的地址信息与所述第二虚拟机的网元标识的对应关系,所述NAT表用来指示报文转发规则,所述报文转发规则为:将所述原始报文中携带的第一虚拟机的源IP地址和源MAC地址替换为所述第一IP隧道终端的IP地址和MAC地址,将所述原始报文中携带目 的IP地址替换为第二IP隧道终端的IP地址,当所述第一虚拟机与所述第二虚拟机不在同一网段时,将所述原始报文中携带的目的MAC地址替换为与所述第一服务器相连的第一网关的MAC地址,或者,当所述第一虚拟机与所述第二虚拟机在同一网段时,将所述原始报文的目的MAC地址替换为所述第二IP隧道终端的MAC地址;
所述第二IP隧道终端接收所述SDN控制器下发的第二流表,所述第二流表包括RNAT表,用来指示报文转发规则:匹配接收到的改装报文的IP选项中携带的第一虚拟机和第二虚拟机的网元标识,将改装报文的源IP地址和MAC地址替换为第一虚拟机的网元标识对应的IP地址和MAC地址,将改装报文的目的IP地址和MAC地址替换为第二虚拟机的网元标识对应的IP地址和MAC地址。
需要说明的是,当IP隧道终端接收到SDN控制器下的流表后,按照流表中定义的规则和行为(match;action)对接收到的报文进行处理。SDN控制器构建和下发流表的过程遵循与OPENFLOW协议定义的标准的流程,本申请并不进行限定。
又一方面,本发明实施例提供了一种报文传输的系统,包括至少两个服务器、第一IP隧道终端和第二IP隧道终端,每个服务器上运行有至少一个虚拟机,第一IP隧道终端接收到第一虚拟机(报文发送端的源虚拟机)发出的原始报文后,修改原始报文的IP选项,在IP选项中添加第一虚拟机的网元标识和第二虚拟机(报文接收端的目的虚拟机)的网元标识,生成改装报文,报文目的端的第二IP隧道终端接收到通过IP网络传输的改装报文后,根据IP选项中携带的第一虚拟机的网元标识和第二虚拟机的网元标识修改改装报文的源地址信息和目的地址信息,将报文传递到第二虚拟机。
具体的,第一IP隧道终端以及第二IP隧道终端等等执行第一方面中报文传输的方法中的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
再一方面,本发明实施例提供了一种服务器,该服务器上部署有第一虚拟机以及第一IP隧道终端,所述第一虚拟机通过所述的第一IP隧道终端以及第二虚拟机侧的第二IP隧道终端向所述第二虚拟机发送报文,服务器上的第一虚拟机和第一IP隧道终端具体实现上述方法中的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
本发明实施例提供了另一种服务器,该服务器上部署有第二虚拟机以及第二IP隧道终端,所述第二虚拟机通过所述的第二IP隧道终端接收第一虚拟机侧的第一IP隧道终端发送的报文,服务器上的第二虚拟机和第二IP隧道终端具体实现上述报文传输的方法中的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一 个或多个与上述功能相对应的模块。
在一个可能的设计中,服务器的结构中包括处理器和存储器,所述处理器被配置为支持服务器执行上述方法中相应的功能。所述服务器还可以包括存储器,所述存储器用于与处理器耦合,其保存服务器执行上述功能所必要的程序指令和数据。
再一方面,本发明实施例提供了一种计算机存储介质,用于储存为上述服务器上所用的计算机软件指令,其包含用于执行上述方面所设计的程序。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是采用VXLAN技术对原始以太帧进行封装的报文结构示意图;
图2A是本发明实施例提供的一种的重叠网络的结构示意图;
图2B是本发明实施例提供的另一种的重叠网络的结构示意图;
图2C是本发明实施例提供的一种服务器上的虚拟化结构示意图;
图3是本发明实施例提供的一种报文传输的方法流程示意图;
图4是本发明实施例提供的报文的IP数据头的格式示意图;
图5是本发明实施例提供的IP选项的结构示意图;
图6是本发明实施例提供的报文传输过程中,报文中携带的地址信息的变化示意图;
图7是本发明实施例提供的一种SDN网络结构示意图;
图8为所示为本发明实施例提供的计算机设备示意图;
图9是本发明实施例提供的一种报文传输的系统结构示意图;
图10是本发明实施例提供的一种服务器的结构示意图;
图11是本发明实施例提供的另一种服务器的结构示意图。
具体实施方式
下面将结合附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护 的范围。
本发明实施例描述的网络架构以及业务场景是为了更加清楚的说明本发明实施例的技术方案,并不构成对于本发明实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本发明实施例提供的技术方案对于类似的技术问题,同样适用。
隧道技术在两个隧道终端之间提供了一种报文封装手段,上层逻辑网络和下层物理网络在IP隧道终端(IP Tunnel End Point,IPTEP)处交界,由IP隧道终端完成逻辑网络和物理网络之间的地址转换。作为隧道起点的IP隧道终端将原始报文(其报头包含报文发送者的地址和报文接收者的地址)作为数据载荷,封装在隧道报文(封装后的报文)中传输到隧道对端。原始报文中发送者的地址和目的地的地址称为内部地址,隧道报文的地址称为外部地址,外部地址的源地址和目的地址是隧道两端的终端在建立隧道时使用的地址。作为隧道终点的终端对隧道报文进行解封装,得到原始报文,根据原始报文目的地的地址将其向目的地转发。
如图1所示,为采用VXLAN技术对原始以太帧进行封装的报文结构示意图,VXLAN封装的报文头共50字节,因此,采用VXLAN技术对原始报文进行封装,无论原始报文长短都会带来50字节的封装开销,在后续的数据包的传输过程中带来了过多的网络带宽消耗;,同时由于报文嵌套,报文可视性差;此外,由于在部分网络中,UDP传输不可用,导致在这些网络中VXLAN技术无法使用。
本发明实施例提供了一种软件定义的重叠网络中进行报文传输的实现方法,在传统物理网络上承载大二层逻辑网络,在报文传输过程中,报文发送端的IP隧道终端扩展报文的IP选项以携带源端虚拟机和目的端虚拟机的标识,建立逻辑网络与物理网络之间地址映射,在逻辑网络与物理网络的分界点(即IP隧道终端)上实现网络地址转换(Network Address Translation,NAT)与反向网络地址转换(Reverse Network Address Translation,RNAT)。本发明实施例提供的在传统物理网络上承载大二层逻辑网络的实现方法,通过在报文中扩展IP选项来携带源端虚拟机和目的虚拟机的网元标识,避免了对报文使用UDP等协议进行嵌套封装,消除了由于现有技术中由于使用报文封装带来的封装开销,从而降低了网络传输消耗的带宽,同时报文的结构简单,网络可视性好。
需要说明的是,本发明实施例提供了一种报文传输的方法,替代现有报文嵌套封装技术,本申请中以VXLAN为例进行了说明,但本领域技术人员可以理解的是,本申请并不限定于仅针对VXLAN技术,其他报文嵌套封装的场景,本申请同样适用。
如图2A所示,为本发明实施例提供的一种的重叠网络的结构示意图,本发明实施例以两个服务器为例进行说明。每个服务器上运行有多台虚拟机(Virtual Machines,VMs),第 一服务器上的虚拟机和第二服务器上的虚拟机分别通过第一虚拟交换机vSwitch1和第二虚拟交换机vSwitch2接入网络,第一网关和第二网关分别为第一服务器和第二服务器连接物理网络的边缘网关,两个服务器的虚拟交换机之间基于重叠网络建立IP隧道实现互连互通,IP隧道终端为虚拟交换机或者服务器上的物理网卡(该物理网卡为智能网卡,可以实现报文的解析和修改)。在本发明实施例中,虚拟交换机间的隧道为原生IP隧道(Raw IP Tunnel),即报文通过该隧道传输时只做IP选项的扩展,而不对报文使用UDP(User Data Protocol,用户数据报协议)等协议进行嵌套封装。
图2A所示的重叠网络中,底层的物理网络为三层物理网络,如图2B所示,为本发明实施例提供的另一种的重叠网络的结构示意图,底层的物理网络为二层物理网络,服务器通过物理交换机接入二层物理网络,所述物理交换机为服务器接入二层物理网络的接入交换机。本申请对二层和三层物理网络均适用,报文的传输流程依据网络结构的变化进行适应性修改,本申请对此并不进行限定。
如图2C所述,为本发明实施例提供的一种服务器上的虚拟化结构示意图。第一服务器、第二服务器为物理服务器,该物理服务器的底层为硬件层,硬件层主要包括中央处理器(CPU,Central Processing Unit)、内存、硬盘以及网卡等硬件资源,物理服务器的结构和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。服务器虚拟化是在物理服务器上借助虚拟化软件(如VMWare ESX、Citrix XEN)实现多个虚拟机(Virtual Machine,VM)的虚拟化运行环境。安装在服务器上实现虚拟化环境的软件层被称为虚拟机监视器(Virtual Machine Monitor,VMM)。运行在硬件层之上的VMM承担对硬件层中的硬件资源进行调度、分配和管理工作。VMM之上运行多个虚拟机VM,VMM为每个虚拟机提供虚拟化的CPU、内存、存储、IO设备(如网卡)以及以太网交换机等硬件资源,保证多个虚拟机相互隔离运行。在虚拟化运行环境中,VMM为每个虚拟机创建一个虚拟网卡(Virtual Network Interface Card,vNIC),虚拟交换机VSwitch提供了虚拟机之间,以及虚拟机与外部网络之间的通讯能力。对于在VMM中运行的VSwitch,每个虚拟机的虚拟网卡对应到VSwitch的一个逻辑端口上,主机的物理网卡对应于VSwitch与外部物理交换机相连的端口。
结合图2A所示的重叠网络的结构示意图以及图2C所示的服务器上的虚拟化结构示意图,如图3所示,本发明实施例提供了一种报文传输的方法流程示意图。在本发明实施例中,第一虚拟机交换机与第二虚拟交换机之间建立IP隧道,第一虚拟机通过上述IP隧道将报文发送给第二虚拟机,上述IP隧道为原生IP隧道,通过该IP隧道传输的报文的IP选项中携带源第一虚拟机的标识以及第二虚拟机的标识。
在本发明实施例中,示例性的,第一虚拟机的二层地址和三层地址分别是MAC-A和IP-A,第二虚拟机的二层地址和三层地址分别是MAC-B和IP-B。第一虚拟机与第二虚拟机位于上层逻辑网络内,在逻辑网络中属于同一网段。各虚拟机的网元标识可以为全局有效的MAC地址,也可以为软件定义网络(Software Defined Network,SDN)控制器为虚拟机分配的在IP隧道终端范围内有效的网元标识。示例性的,在本发明实施例中,第一虚拟机与第二虚拟机的网元标识分别为NEID-A和NEID-B。
在本发明实施例中,下层物理网络可以为IP承载的骨干网,基于报文的IP数据头进行路由选路,执行数据转发。第一网关和第二网关是IP网络连接第一服务器和第二服务器的边缘网关。需要说明的是,同一IP隧道终端服务范围内的网络通信是逻辑网络的东西向交互,由IP隧道终端完成。跨IPTEP的网络通信是逻辑网络的南北向交互,需由源端虚拟机所在的IP隧道终端将数据包导入物理网络,经物理网络转发至对端IP隧道终端,再由对端IP隧道终端完成分发。在本发明实施例中,第一IP隧道终端IPTEP-1在物理网络中的二层和三层地址分别是MAC-1和IP-1,第二IP隧道终端IPTEP-2在物理网络中的二层和三层地址分别是MAC-4和IP-4。第一IP隧道终端和第二IP隧道终端在逻辑网络中属于不同网段。第一网关是第一IP隧道终端在物理网络中路由的下一跳,第一网关与第一IP隧道终端的对接端口的MAC是MAC-2,IP是IP-2。第二网关是第二IP隧道终端在物理网络中路由的下一跳,第二网关与第二IP隧道终端的对接端口的MAC是MAC-3,IP是IP-3。
如图3所示的实施例,给出了第一虚拟机向第二虚拟机发送报文的流程示意图。具体的,本发明实施例提供重叠网络中报文传输的流程包括:
步骤301:第一虚拟机构造原始报文,将该原始报文的以太数据头中源MAC设置为第一虚拟机的MAC-A、目的MAC设置为第二虚拟机的MAC-B,将该原始报文的IP数据头中的源IP设置为第一虚拟机的IP-A,目的IP设置为第二虚拟机的IP-B。第一虚拟机将该原始报文发送给第一虚拟机所属的第一IP隧道终端进行转发。
步骤302:第一IP隧道终端接收所述第一虚拟机发送的原始报文,将所述原始报文中的逻辑网络的地址替换为物理网络的地址,并在所述原始报文的IP选项中添加第一虚拟机和第二虚拟机的网元标识,从而生成改装报文,将生成的改装报文发送到第一网关做转发处理。具体的,第一IP隧道终端将源MAC由第一虚拟机的MAC-A替换为第一IP隧道终端的MAC-1,目的MAC由MAC-B替换为第一网关的MAC-2,源IP由第一虚拟机的IP-A替换为第一IP隧道终端的IP-1,目的IP由第二虚拟机的IP-B替换为第二IP隧道终端的IP-2;第一IP隧道终端将所述原始报文的源虚拟机的网元标识和目的虚拟机的网元标识填充到所述原始报文的IP选项中,通过上述修改,第一IP隧道终端将所述原始报文修改为改装报文,实现了将 报文数据由逻辑网络传输形态转化为物理网络传输形态。
在一种可能的实施方式中,所述第一IP隧道终端根据该原始报文携带的源和目的端信息,确定源和目的虚拟机的网元标识,将确定的通信双方的网元标识填充至IP数据头内的IP选项中。需要说明的是,第一IP隧道终端可以向SDN控制器获取虚拟机的网元标识以及地址信息,在一种可能的上述方式中,可以直接使用虚拟机的地址信息作为虚拟机的网元标识。现有技术中,SDN控制器上保存有其管理域内被管理设备的信息,如网络设备的端口及其状态、网络的连接拓扑、链路状态等等。当在管理域内的两个网络设备之间建立隧道时,控制器可以根据所保存的信息计算出隧道在这两个端点设备之间的转发路径,其中包括隧道在端点设备上的物理出接口,改装报文在IP网络中具体的传输路径和传输方式可以采用现有技术中的方式,本发明实施例对此并不进行限定。
在一种可能的实施方式中,如图4所示,为本发明实施例提供的报文的IP数据头的格式示意图,IP数据头包含一个标准IP首部,优选定长为20字节。标准IP首部之后为IP选项,该IP选项的大小可以自定义,只要可以携带通信双方的网元标识即可。一般情况下,该IP选项的大小最小可以为4字节,最大不超过40字节。如图5所示,为本发明实施例新增的IP选项的结构示意图,该IP选项包括两个选项,均为多字节选项,其中一个选项用以表示源端网元标识,可选的,该选项码字段值取“10101”;另一个选项用以表示目的端网元标识,可选的,该选项码字段值取“10110”。
步骤303:第一网关接收第一IP隧道终端发送的改装报文,根据改装报文的IP数据头中携带的目的IP地址进行路由转发,将所述改装报文经过IP网络发送至所述第二IP隧道终端所在的第二网关。需要说明的是,在IP网络的转发过程中,报文每次经网关选路后,以太数据头中的MAC都会按当前路由出接口以及下一跳目的端出接口的MAC重新封装,但是IP网络的传输过程中,IP数据头中的IP选项携带的通信双方的网元标识不发生变化;
步骤304:第二网关将改装报文发送给第二IP隧道终端。具体的,第二网关对改装报文的处理同骨干网其它网关一样,第二网关首先进行路由选路,然后根据当前路由出接口和目的端第二IP隧道终端出接口封装源MAC和目的MAC,即将改装报文中携带的源MAC和目的MAC分别修改为第二网关的MAC-3以及第二IP隧道终端的MAC-4。
步骤305:第二IP隧道终端将改装报文的以太数据头和IP数据头中物理网络的地址替换为逻辑网络的地址,就转化后的改装报文发送到所述第二虚拟机。具体的,第二IP隧道终端根据改装报文的IP数据头内IP选项中携带的第一虚拟机的网元标识NEID-A,将改装报文携带的源MAC由第二网关的MAC-3替换为第一虚拟机的MAC-A、源IP由第一IP隧道终端的IP-1替换为第一虚拟机的IP-A;根据改装报文的IP数据头内IP选项中携带的第二虚拟 机的网元标识NEID-B,将目的MAC由MAC-4替换为目的第二虚拟机的MAC-B,目的IP由IP-4替换为目的第二虚拟机的IP-B。至此,完成将该改装报文由物理网络传输形态向逻辑网络传输形态的转化。
与图3的流程示意图相对应,如图6所示,为本发明实施例提供的报文传输过程中,报文中携带的地址信息的变化示意图。图中涉及到的各实体的MAC和IP地址在图中的虚线框中给出,报文传输过程中携带的源端和目的端地址以及IP选项在图中的实线框中给出。
本发明实施例中,报文源端的IP隧道设备不对原始报文进行嵌套封装,而是修改原始报文的IP选项,在IP选项中添加原始报文的源虚拟机的网元标识和目的虚拟机的网元标识,报文目的端的IP隧道终端接收到通过IP网络传输的改装报文后,根据IP选项中携带的源虚拟机的网元标识和目的虚拟机的网元标识修改改装报文的源地址信息和目的地址信息,将报文传递到目的端虚拟机。在上述过程中,通过在报文的IP选项中携带源端和目的端标识,避免IP隧道终端对报文进行嵌套封装,降低了网络传输消耗的带宽,报文结构简单,网络可视性好,数据转发性能高。
在一种可能的实施方式中,上述第一IP隧道设备可以为第一服务器上的源虚拟机所在的虚拟交换机或者为与所述第一服务器相连的物理交换机;上述第二IP隧道设备可以为第二服务器上的源虚拟机所在的虚拟交换机或者为与所述第二服务器相连的物理交换机。
如图7所示,为本发明实施例提供的一种SDN网络结构示意图,本发明实施例以两个服务器为例进行说明。第一服务器和第二服务器分别通过物理机交换机1和物理交换机2接入下层物理网络。每个服务器被虚拟化成多台虚拟机,第一服务器和第二服务器上的虚拟机分别通过本地部署的第一虚拟交换机vSwitch1和第二虚拟交换机vSwitch2接入上层虚拟网络。虚拟交换机向上生成针对VM的虚拟端口,向下将虚拟端口映射到物理端口,从而实现虚拟和物理网络的连接。第一服务器与第二服务器通过报文转发网络设备实现互通,上述报文转发网络设备可以为物理交换机或者网关。在本发明实施例中,虚拟网络由SDN控制器进行集中控制。在一种可能的实现方式中,SDN控制器可以采用分布式部署,多个控制器组成一个集群,对外呈现为一个逻辑控制器。
结合上述SDN网络结构示意图,第一服务器上的VM1与第二服务器上的VM2进行通信,VM1和VM2之间需要建立原生IP隧道。
在本发明实施例中,SDN控制器收集SDN网络拓扑信息,负责VM网元标识的分配与回收,SDN控制器保证VM的网元标识在虚拟机交换机管辖的网络内的有效性与唯一性。一般来说,一台服务器能够虚拟出的虚拟机数量约为几十个,IP选项使用1字节的数据长度即可承载虚拟机的网元标识。当在服务器上创建虚拟机或者有虚拟机迁移到服务器上时,SDN控制器为 该虚拟机分配一个尚未使用的网元标识;当VM从Server上销毁或移除时,控制器回收该VM的网元标识。具体的,各虚拟机交换机与SDN控制器建立连接,当云管理平台创建虚拟机时,SDN控制器为创建的虚拟机分配网元标识,当虚拟机上线后,SDN控制器建立虚拟机与其所在的虚拟机交换机之间的映射关系,向各虚拟机交换机下发流表,各虚拟机交换机根据虚拟机下发的流表进行报文转发处理。需要说明的是,SDN控制器的上述功能可以采用已有的实现方式,本发明实施例对上述功能的实现流程并不进行限定。
图5对应的流程中,源虚拟交换机对原始报文进行修改,生成改装报文,目的虚拟交换机对接收到的改装报文进行还原,根据IP选项中携带的源端和目的端的网元标识将改装报文中的地址信息修改为原始报文中的地址信息。
源虚拟交换机对原始报文做以下处理:
将源虚拟机的地址信息作为网络标识添加到原始报文的IP选项中。具体的,源虚拟交换机记录虚拟机的地址信息与网元标识的对应关系,根据上述对应关系,根据原始报文中携带的源虚拟机的地址信息和目的虚拟机的地址信息,在IP选项中添加源虚拟机的网元标识和目的虚拟机的网元标识。在一种可能的实施方式中,上述对应关系可以为:源虚拟机的MAC地址与源虚拟机的网元标识的对应关系以及目的虚拟机的IP地址与目的虚拟机的网元标识的对应关系。
匹配原始报文的源虚拟机地址信息和目的虚拟机地址信息,将原始报文的源IP和源MAC替换为源服务器与源物理交换机相连的接口的IP和MAC(即为,源虚拟机交换机的IP地址和MAC地址);将原始报文的目的IP替换为目的虚拟机所在的目的服务器与目的物理交换机相连的接口的IP,当物理网络为三层网络时,将原始报文的目的MAC替换为与源服务器相连的网关MAC(跨网段通信),或者,当物理网络为二层网络时,将原始报文的目的MAC替换为目的虚拟机所在的目的服务器与目的物理交换机相连的接口的MAC(同网段通信)。
目的虚拟交换机对接收到的改装报文做以下处理:
根据改装报文的IP选项中携带的源端和目的端的网元标识,将改装报文的源IP和MAC替换为源端网元标识对应的源虚拟机的IP和MAC,将报文的目的IP和MAC替换为目的端网元标识对应的目的虚拟机的IP和MAC,删除所述IP选项中携带的所述第一虚拟机的网元标识和所述第二虚拟机的网元标识,从而生成转化后的改装报文,并转发至目的虚拟交换机与目的虚拟机相连的出接口。
为了在虚拟交换机上实现上述流程中IP选项的添加以及报文地址信息的修改,可以通过在虚拟交换机上建立流表的形式来实现上述功能,具体的,由SDN控制器向源虚拟交换机以及目的虚拟机下发流表。流表的生成和下发可以按照OPENFLOW协议中的定义的流程来实 现,SDN控制器具体通过Flow‐Mod消息用来添加、删除、修改Openflow交换机上的流表,本发明实施例对此不再赘述。
需要说明的是,两个服务器上的虚拟机均可能作为报文的发送方和接收方,因此,在两个服务器上部署的虚拟交换机需要建立映射表,NAT表和RNAT表等流表,示例性的,如下表所示,列出了虚拟交换机上创建的流表及其表项,其中,流表包含两项内容,match和action,match表示匹配条件,action表示当匹配条件满足时执行的动作。
通过上述流表的定义,即可在源端和目的端的虚拟机交换机上实现报文的解析和修改,进行完整本申请给出的报文传输的过程。在上述报文传输流程中,报文源端的IP隧道设备不对原始报文进行嵌套封装,而是修改原始报文的IP选项,在IP选项中添加原始报文的源虚拟机的网元标识和目的虚拟机的网元标识,报文目的端的IP隧道终端接收到通过IP网络传输的改装报文后,根据IP选项中携带的源虚拟机的网元标识和目的虚拟机的网元标识修 改改装报文的源地址信息和目的地址信息,将报文传递到目的端虚拟机。通过在报文的IP选项中携带源端和目的端标识,取代了现有技术中对报文进行嵌套封装的方案,从而降低了网络传输消耗的带宽,报文结构简单,网络可视性好,数据转发性能高。
需要说明的是,第一IP隧道终端、第二IP隧道终端、网关以及SDN控制器可以采用硬件/软件实现,示例性的,如图8所示,为本发明实施例提供的计算机设备示意图。计算机设备800包括至少一个处理器801,通信总线802,存储器803以及至少一个通信接口804。
处理器801可以是一个通用中央处理器(CPU),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本发明方案程序执行的集成电路。
通信总线802可包括一通路,在上述组件之间传送信息。所述通信接口804,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线接入网(RAN),无线局域网(Wireless Local Area Networks,WLAN)等。
存储器803可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
其中,所述存储器803用于存储执行本发明方案的应用程序代码,并由处理器801来控制执行。所述处理器801用于执行所述存储器803中存储的应用程序代码。
在具体实现中,作为一种实施例,处理器801可以包括一个或多个CPU,例如图8中的CPU0和CPU1。
在具体实现中,作为一种实施例,计算机设备800可以包括多个处理器,例如图8中的处理器801和处理器808。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,计算机设备800还可以包括输出设备805和输入设备806。输出设备805和处理器801通信,可以以多种方式来显示信息。例如,输出设备805可以是液晶显示器(liquid crystal display,LCD),发光二级管(light emitting diode, LED)显示设备,阴极射线管(cathode ray tube,CRT)显示设备,或投影仪(projector)等。输入设备806和处理器801通信,可以以多种方式接受用户的输入。例如,输入设备806可以是鼠标、键盘、触摸屏设备或传感设备等。
上述的计算机设备800可以是一个通用计算机设备或者是一个专用计算机设备。在具体实现中,计算机设备800可以是台式机、便携式电脑、网络服务器、掌上电脑(Personal Digital Assistant,PDA)、移动手机、平板电脑、无线终端设备、通信设备、嵌入式设备或有图8中类似结构的设备。本发明实施例不限定计算机设备800的类型。
前述实施例中的第一服务器、第二服务器、第一IP隧道终端、第二IP隧道终端、网关以及SDN控制器可以为图8所示的设备,存储器中存储了一个或多个软件模块,用于实现上述各设备的功能(例如:IP隧道终端的报文解析和修改的功能等)。第一服务器、第二服务器、第一IP隧道终端、第二IP隧道终端、网关以及SDN控制器可以通过处理器以及存储器中的程序代码来实现报文传输的方法。
需要说明的是,图8所示的计算机设备仅仅是给出了报文传输的系统中各部分的可能的硬件实现方式,根据系统各部分功能的不同或者变化,可以对计算机设备的硬件组件进行增删,以使得与系统各部分的功能进行匹配。
与前述方法实施例相对应,如图9所示,为本发明实施例提供的一种报文传输的系统900,包括至少两个服务器(91;92)、第一IP隧道终端915和第二IP隧道终端925,每个服务器(91;92)上运行有至少一个虚拟机(913;923),
所述第一IP隧道终端915,用于端接收第一虚拟机913发送给第二虚拟机923的原始报文,将所述原始报文的源IP地址替换为所述第一IP隧道终端915的IP地址,将所述原始报文的目的IP地址替换为与所述第二虚拟机923相连的第二IP隧道终端925的IP地址,在所述原始报文的IP选项中添加所述第一虚拟机913的网元标识和所述第二虚拟机923的网元标识,生成改装报文,将所述改装报文通过网络发送给所述第二IP隧道终端925;
所述第二IP隧道终端925,用于接收所述改装报文,根据所述IP选项携带的所述第一虚拟机913的网元标识,将所述改装报文的源IP地址替换为所述第一虚拟机913的IP地址以及源MAC地址替换为所述第一虚拟机913的MAC地址,根据所述IP选项携带的所述第二虚拟机923的网元标识,将所述改装报文的目的IP地址替换为所述第二虚拟机923的IP地址,将所述改装报文的目的MAC地址替换为所述第二虚拟机923的MAC地址,将处理后的改装报文发送给第二虚拟机923。
进一步的,所述第一IP隧道终端915部署在第一虚拟机913所在的第一服务器91上,所述第二IP隧道终端925,部署在第二虚拟机923所在的第二服务器92上。
可选的,所述第一IP隧道终端915和所述第二IP隧道终端925为所述物理服务器(91;92)上部署的虚拟交换机或者物理网卡。
所述第二IP隧道终端925,还用于删除所述IP选项中携带的所述第一虚拟机的网元标识和所述第二虚拟机的网元标识。
所述第一IP隧道终端915,具体用于将所述第一虚拟机913的MAC地址作为所述第一虚拟机913的网元标识,将所述第二虚拟机923的MAC地址作为所述第二虚拟机923的网元标识;或者,
所述第一IP隧道终端915,具体用于根据存储的虚拟机的地址信息与网元标识的对应关系,确定所述第一虚拟机913的网元标识和所述第二虚拟机923的网元标识。
当所述第一虚拟机913与所述第二虚拟机923在同一网段时,所述第一IP隧道终端915,还用于将所述原始报文的目的MAC地址替换为所述第二IP隧道终端925的MAC地址;或者,
当所述第一虚拟机913与所述第二虚拟机923不在同一网段时,所述第一IP隧道终端915,还用于将所述原始报文的目的MAC地址替换为与所述第一服务器91相连的第一网关的MAC地址。
所述第一IP隧道终端915,还用于接收SDN控制器下发的第一流表,所述第一流表包括映射表和NAT表,所述映射表包括所述第一虚拟机913的地址信息与所述第一虚拟机913的网元标识的对应关系以及所述第二虚拟机923的地址信息与所述第二虚拟机923的网元标识的对应关系,所述NAT表用来指示报文转发规则,所述报文转发规则为:将所述原始报文中携带的第一虚拟机913的源IP地址和源MAC地址替换为所述第一IP隧道终端915的IP地址和MAC地址,将所述原始报文中携带目的IP地址替换为第二IP隧道终端925的IP地址,当所述第一虚拟机913与所述第二虚拟机923不在同一网段时,将所述原始报文中携带的目的MAC地址替换为与所述第一服务器91相连的第一网关的MAC地址,或者,当所述第一虚拟机913与所述第二虚拟机923在同一网段时,将所述原始报文的目的MAC地址替换为所述第二IP隧道终端925的MAC地址;
所述第二IP隧道终端925,还用于接收所述SDN控制器下发的第二流表,所述第二流表包括RNAT表,用来指示报文转发规则:匹配接收到的改装报文的IP选项中携带的第一虚拟机913和第二虚拟机923的网元标识,将改装报文的源IP地址和MAC地址替换为第一虚拟机913的网元标识对应的IP地址和MAC地址,将改装报文的目的IP地址和MAC地址替换为第二虚拟机923的网元标识对应的IP地址和MAC地址。
与前述方法实施例相对应,如图10所示,为本发明实施例提供的一种服务器91,所述服务器91上部署有第一虚拟机913以及第一IP隧道终端915,所述第一虚拟机913通过所 述的第一IP隧道终端915以及第二虚拟机923侧的第二IP隧道终端925向所述第二虚拟机923发送报文;
所述第一虚拟机913,用于向所述第一IP隧道终端915发送给所述第二虚拟机923的原始报文;
所述第一IP隧道终端915,用于将所述原始报文的源IP地址替换为所述第一IP隧道终端915的IP地址,将所述原始报文的目的IP地址替换为与所述第二虚拟机923相连的第二IP隧道终端925的IP地址,在所述原始报文的IP选项中添加所述第一虚拟机913的网元标识和所述第二虚拟机923的网元标识,从而生成改装报文,将所述改装报文通过网络发送给所述第二IP隧道终端925。
进一步的,所述第一IP隧道终端915,还用于接收SDN控制器下发的第一流表,所述第一流表包括映射表和NAT表,所述映射表包括所述第一虚拟机913的地址信息与所述第一虚拟机913的网元标识的对应关系以及所述第二虚拟机923的地址信息与所述第二虚拟机923的网元标识的对应关系,所述NAT表用来指示报文转发规则,所述报文转发规则为:将所述原始报文中携带的第一虚拟机913的源IP地址和源MAC地址替换为所述第一IP隧道终端915的IP地址和MAC地址,将所述原始报文中携带目的IP地址替换为第二IP隧道终端925的IP地址,当所述第一虚拟机913与所述第二虚拟机923不在同一网段时,将所述原始报文中携带的目的MAC地址替换为与所述第一服务器相连的第一网关的MAC地址,或者,当所述第一虚拟机913与所述第二虚拟机923在同一网段时,将所述原始报文的目的MAC地址替换为所述第二IP隧道终端925的MAC地址。
如图11所示,为本发明实施例提供的一种服务器92,所述服务器92上部署有第二虚拟机923以及第二IP隧道终端925,所述第二虚拟机923通过所述的第二IP隧道终端925接收第一虚拟机913侧的第一IP隧道终端915发送的报文,
所述第二IP隧道终端925,用于接收改装报文,所述改装报文的源IP地址为所述第一IP隧道终端915的IP地址,目的IP地址为所述第二IP隧道终端925的IP地址,所述改装报文的IP选项中携带所述第一虚拟机913的网元标识和所述第二虚拟机923的网元标识;
所述第二IP隧道终端925,还用于根据所述IP选项携带的所述第一虚拟机913的网元标识,将所述改装报文的源IP地址替换为所述第一虚拟机913的IP地址以及源MAC地址替换为所述第一虚拟机913的MAC地址,根据所述IP选项携带的所述第二虚拟机923的网元标识,将所述改装报文的目的IP地址替换为所述第二虚拟机923的IP地址,将所述改装报文的目的MAC地址替换为所述第二虚拟机923的MAC地址;
所述第二IP隧道终端925,还用于将处理后的改装报文发送给所述第二虚拟机923;
所述第二虚拟机923,用于接收所述处理后的改装报文。
进一步的,所述第二IP隧道终端925,还用于接收所述SDN控制器下发的第二流表,所述第二流表包括RNAT表,用来指示报文转发规则:匹配接收到的改装报文的IP选项中携带的第一虚拟机913和第二虚拟机923的网元标识,将改装报文的源IP地址和MAC地址替换为第一虚拟机913的网元标识对应的IP地址和MAC地址,将改装报文的目的IP地址和MAC地址替换为第二虚拟机923的网元标识对应的IP地址和MAC地址。
本发明实施例提供了一种报文传输的方法、装置和系统,第一虚拟机发送的报文被传递到第二虚拟机,从而完成了报文传输过程。在上述报文传输流程中,报文源端的第一IP隧道设备不对原始报文进行嵌套封装,而是修改原始报文的IP选项,在IP选项中添加第一虚拟机的网元标识和第二虚拟机的网元标识,报文目的端的第二IP隧道终端接收到通过IP网络传输的改装报文后,根据IP选项中携带的第一虚拟机的网元标识和第二虚拟机的网元标识修改改装报文的源地址信息和目的地址信息,将报文传递到第二虚拟机。通过在报文的IP选项中携带源端和目的端标识,取代了现有技术中对报文进行嵌套封装的方案,从而降低了网络传输消耗的带宽,报文结构简单,网络可视性好,数据转发性能高。需要说明的是,第二IP隧道终端完整的还原了源虚拟机的IP地址和MAC地址,以及目的虚拟机的IP地址和MAC地址,避免了第二虚拟机丢弃修改后的改装报文。
在图9、10和11对应的实施例中,虚拟机、第一IP隧道终端,以及第二IP隧道终端是以功能单元/功能模块的形式来呈现。这里的“单元/模块”可以指特定应用集成电路(application-specific integrated circuit,ASIC),电路,执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,和/或其他可以提供上述功能的器件。在一个简单的实施例中,本领域的技术人员可以想到虚拟机、第一IP隧道终端,以及第二IP隧道终端可以采用图8所示的形式。例如,第一IP隧道终端和第二IP隧道终端可以通过图8的处理器和存储器来实现。
本发明实施例还提供了一种计算机存储介质,用于储存为上述图9、10和11所示的设备所用的计算机软件指令,其包含用于执行上述方法实施例所设计的程序。通过执行存储的程序,可以实现报文传输的方法。
尽管在此结合各实施例对本发明进行了描述,然而,在实施所要求保护的本发明过程中,本领域技术人员通过查看所述附图、公开内容、以及所附权利要求书,可理解并实现所述公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其他单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能 组合起来产生良好的效果。
本领域技术人员应明白,本发明的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。计算机程序存储/分布在合适的介质中,与其它硬件一起提供或作为硬件的一部分,也可以采用其他分布形式,如通过Internet或其它有线或无线电信系统。
本发明是参照本发明实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管结合具体特征及其实施例对本发明进行了描述,显而易见的,在不脱离本发明的精神和范围的情况下,可对其进行各种修改和组合。相应地,本说明书和附图仅仅是所附权利要求所界定的本发明的示例性说明,且视为已覆盖本发明范围内的任意和所有修改、变化、组合或等同物。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (19)

  1. 一种报文传输的方法,其特征在于,包括:
    第一IP隧道终端接收第一虚拟机发送给第二虚拟机的原始报文;
    所述第一IP隧道终端将所述原始报文的源IP地址替换为所述第一IP隧道终端的IP地址,将所述原始报文的目的IP地址替换为与所述第二虚拟机相连的第二IP隧道终端的IP地址,在所述原始报文的IP选项中添加所述第一虚拟机的网元标识和所述第二虚拟机的网元标识,从而生成改装报文,将所述改装报文通过网络发送给所述第二IP隧道终端;
    所述第二IP隧道终端接收所述改装报文,根据所述IP选项携带的所述第一虚拟机的网元标识,将所述改装报文的源IP地址替换为所述第一虚拟机的IP地址以及将所述改装报文的源介质访问控制MAC地址替换为所述第一虚拟机的MAC地址,根据所述IP选项携带的所述第二虚拟机的网元标识,将所述改装报文的目的IP地址替换为所述第二虚拟机的IP地址,将所述改装报文的目的MAC地址替换为所述第二虚拟机的MAC地址;
    所述第二IP隧道终端将处理后的改装报文发送给第二虚拟机。
  2. 如权利要求1所述的方法,其特征在于,所述第一IP隧道终端和所述第二IP隧道终端分别部署在第一虚拟机和第二虚拟机所在的服务器上。
  3. 如权利要求2所述的方法,其特征在于,所述第一IP隧道终端和所述第二IP隧道终端为各自所在的服务器上部署的虚拟交换机或者物理网卡。
  4. 如权利要求1-3任一所述的方法,其特征在于,在所述第二IP隧道终端将处理后的改装报文发送给第二虚拟机之前,所述方法还包括:
    所述第二IP隧道终端删除所述IP选项中携带的所述第一虚拟机的网元标识和所述第二虚拟机的网元标识。
  5. 如权利要求1-4任一所述的方法,其特征在于,
    所述第一IP隧道终端和所述第二IP隧道终端存储有虚拟机的地址信息与网元标识之间的对应关系,所述地址信息包括IP地址和MAC地址;
    在所述原始报文中添加所述第一虚拟机的网元标识和所述第二虚拟机的网元标识之前,所述方法还包括:
    所述第一IP隧道终端根据所述对应关系,确定所述第一虚拟机的网元标识和所述第二虚拟机的网元标识;
    相应地,在所述第二IP隧道终端接收所述改装报文之后,所述方法还包括:
    所述第二IP隧道终端根据所述对应关系,获取所述IP选项携带的所述第一虚拟机的网 元标识对应的IP地址和MAC地址,以及所述第二虚拟机的网元标识对应的IP地址和MAC地址。
  6. 如权利要求1所述的方法,其特征在于,在之前,所述方法还包括:
    当所述第一IP隧道终端与所述第二IP隧道终端在同一网段时,所述第一IP隧道终端将所述原始报文的目的MAC地址替换为所述第二IP隧道终端的MAC地址;或者,
    当所述第一IP隧道终端与所述第二IP隧道终端在不同网段时,所述第一IP隧道终端将所述原始报文的目的MAC地址替换为所述第一IP隧道终端的第一网关的MAC地址。
  7. 如权利要求1所述的方法,其特征在于,所述IP选项中的内容在所述第一IP隧道终端与所述第二IP隧道终端之间的传输过程中保持不变。
  8. 如权利要求1所述的方法,其特征在于,在第一虚拟机发送所述原始报文之前,所述方法还包括:
    所述第一IP隧道终端接收软件定义网络SDN控制器下发的第一流表,所述第一流表包括映射表和网络地址转换NAT表,所述映射表包括所述第一虚拟机的地址信息与所述第一虚拟机的网元标识的对应关系以及所述第二虚拟机的地址信息与所述第二虚拟机的网元标识的对应关系,所述NAT表用来指示报文转发规则,所述报文转发规则为:将所述原始报文中携带的第一虚拟机的源IP地址和源MAC地址替换为所述第一IP隧道终端的IP地址和MAC地址,将所述原始报文中携带目的IP地址替换为第二IP隧道终端的IP地址,当所述第一虚拟机与所述第二虚拟机不在同一网段时,将所述原始报文中携带的目的MAC地址替换为与所述第一服务器相连的第一网关的MAC地址,或者,当所述第一虚拟机与所述第二虚拟机在同一网段时,将所述原始报文的目的MAC地址替换为所述第二IP隧道终端的MAC地址;
    所述第二IP隧道终端接收所述SDN控制器下发的第二流表,所述第二流表包括反向网络地址转换RNAT表,用来指示报文转发规则:匹配接收到的改装报文的IP选项中携带的第一虚拟机和第二虚拟机的网元标识,将改装报文的源IP地址和MAC地址替换为第一虚拟机的网元标识对应的IP地址和MAC地址,将改装报文的目的IP地址和MAC地址替换为第二虚拟机的网元标识对应的IP地址和MAC地址。
  9. 一种报文传输的系统,其特征在于,包括至少两个服务器、第一IP隧道终端和第二IP隧道终端,每个服务器上运行有至少一个虚拟机,
    所述第一IP隧道终端,用于端接收第一虚拟机发送给第二虚拟机的原始报文,将所述原始报文的源IP地址替换为所述第一IP隧道终端的IP地址,将所述原始报文的目的IP地址替换为与所述第二虚拟机相连的第二IP隧道终端的IP地址,在所述原始报文的IP选项 中添加所述第一虚拟机的网元标识和所述第二虚拟机的网元标识,生成改装报文,将所述改装报文通过网络发送给所述第二IP隧道终端;
    所述第二IP隧道终端,用于接收所述改装报文,根据所述IP选项携带的所述第一虚拟机的网元标识,将所述改装报文的源IP地址替换为所述第一虚拟机的IP地址以及将所述改装报文的源MAC地址替换为所述第一虚拟机的MAC地址,根据所述IP选项携带的所述第二虚拟机的网元标识,将所述改装报文的目的IP地址替换为所述第二虚拟机的IP地址,将所述改装报文的目的MAC地址替换为所述第二虚拟机的MAC地址,将处理后的改装报文发送给第二虚拟机。
  10. 如权利要求9所述的系统,其特征在于,所述第一IP隧道终端和所述第二IP隧道终端分别部署在第一虚拟机和第二虚拟机所在的服务器上。
  11. 如权利要求10所述的系统,其特征在于,所述第一IP隧道终端和所述第二IP隧道终端为所述物理服务器上部署的虚拟交换机或者物理网卡。
  12. 如权利要求9-11任一所述的系统,其特征在于,
    所述第二IP隧道终端,还用于删除所述IP选项中携带的所述第一虚拟机的网元标识和所述第二虚拟机的网元标识。
  13. 如权利要求9-12任一所述的系统,其特征在于,所述第一IP隧道终端和所述第二IP隧道终端存储有虚拟机的地址信息与网元标识之间的对应关系,所述地址信息包括IP地址和MAC地址;
    所述第一IP隧道终端,具体用于根据所述对应关系,确定所述第一虚拟机的网元标识和所述第二虚拟机的网元标识;
    所述第二IP隧道终端,具体用于根据所述对应关系,获取所述IP选项携带的所述第一虚拟机的网元标识对应的IP地址和MAC地址,以及所述第二虚拟机的网元标识对应的IP地址和MAC地址。
  14. 如权利要求9所述的系统,其特征在于,
    当所述第一虚拟机与所述第二虚拟机在同一网段时,所述第一IP隧道终端,还用于将所述原始报文的目的MAC地址替换为所述第二IP隧道终端的MAC地址;或者,
    当所述第一虚拟机与所述第二虚拟机不在同一网段时,所述第一IP隧道终端,还用于将所述原始报文的目的MAC地址替换为与所述第一服务器相连的第一网关的MAC地址。
  15. 如权利要求9所述的系统,其特征在于,
    所述第一IP隧道终端,还用于接收SDN控制器下发的第一流表,所述第一流表包括映射表和NAT表,所述映射表包括所述第一虚拟机的地址信息与所述第一虚拟机的网元标识的 对应关系以及所述第二虚拟机的地址信息与所述第二虚拟机的网元标识的对应关系,所述NAT表用来指示报文转发规则,所述报文转发规则为:将所述原始报文中携带的第一虚拟机的源IP地址和源MAC地址替换为所述第一IP隧道终端的IP地址和MAC地址,将所述原始报文中携带目的IP地址替换为第二IP隧道终端的IP地址,当所述第一虚拟机与所述第二虚拟机不在同一网段时,将所述原始报文中携带的目的MAC地址替换为与所述第一服务器相连的第一网关的MAC地址,或者,当所述第一虚拟机与所述第二虚拟机在同一网段时,将所述原始报文的目的MAC地址替换为所述第二IP隧道终端的MAC地址;
    所述第二IP隧道终端,还用于接收所述SDN控制器下发的第二流表,所述第二流表包括RNAT表,用来指示报文转发规则:匹配接收到的改装报文的IP选项中携带的第一虚拟机和第二虚拟机的网元标识,将改装报文的源IP地址和MAC地址替换为第一虚拟机的网元标识对应的IP地址和MAC地址,将改装报文的目的IP地址和MAC地址替换为第二虚拟机的网元标识对应的IP地址和MAC地址。
  16. 一种服务器,其特征在于,所述服务器上部署有第一虚拟机以及第一IP隧道终端,所述第一虚拟机通过所述的第一IP隧道终端以及第二虚拟机侧的第二IP隧道终端向所述第二虚拟机发送报文;
    所述第一虚拟机,用于向所述第一IP隧道终端发送给所述第二虚拟机的原始报文;
    所述第一IP隧道终端,用于将所述原始报文的源IP地址替换为所述第一IP隧道终端的IP地址,将所述原始报文的目的IP地址替换为与所述第二虚拟机相连的第二IP隧道终端的IP地址,在所述原始报文的IP选项中添加所述第一虚拟机的网元标识和所述第二虚拟机的网元标识,从而生成改装报文,将所述改装报文通过网络发送给所述第二IP隧道终端。
  17. 如权利要求16所述的服务器,其特征在于,
    所述第一IP隧道终端,还用于接收SDN控制器下发的第一流表,所述第一流表包括映射表和NAT表,所述映射表包括所述第一虚拟机的地址信息与所述第一虚拟机的网元标识的对应关系以及所述第二虚拟机的地址信息与所述第二虚拟机的网元标识的对应关系,所述NAT表用来指示报文转发规则,所述报文转发规则为:将所述原始报文中携带的第一虚拟机的源IP地址和源MAC地址替换为所述第一IP隧道终端的IP地址和MAC地址,将所述原始报文中携带目的IP地址替换为第二IP隧道终端的IP地址,当所述第一虚拟机与所述第二虚拟机不在同一网段时,将所述原始报文中携带的目的MAC地址替换为与所述第一服务器相连的第一网关的MAC地址,或者,当所述第一虚拟机与所述第二虚拟机在同一网段时,将所述原始报文的目的MAC地址替换为所述第二IP隧道终端的MAC地址。
  18. 一种服务器,其特征在于,所述服务器上部署有第二虚拟机以及第二IP隧道终端,所述第二虚拟机通过所述的第二IP隧道终端接收第一虚拟机侧的第一IP隧道终端发送的报文,
    所述第二IP隧道终端,用于接收改装报文,所述改装报文的源IP地址为所述第一IP隧道终端的IP地址,目的IP地址为所述第二IP隧道终端的IP地址,所述改装报文的IP选项中携带所述第一虚拟机的网元标识和所述第二虚拟机的网元标识;
    所述第二IP隧道终端,还用于根据所述IP选项携带的所述第一虚拟机的网元标识,将所述改装报文的源IP地址替换为所述第一虚拟机的IP地址以及将所述改装报文的源MAC地址替换为所述第一虚拟机的MAC地址,根据所述IP选项携带的所述第二虚拟机的网元标识,将所述改装报文的目的IP地址替换为所述第二虚拟机的IP地址,将所述改装报文的目的MAC地址替换为所述第二虚拟机的MAC地址;
    所述第二IP隧道终端,还用于将处理后的改装报文发送给所述第二虚拟机;
    所述第二虚拟机,用于接收所述处理后的改装报文。
  19. 如权利要求18所述的服务器,其特征在于,
    所述第二IP隧道终端,还用于接收所述SDN控制器下发的第二流表,所述第二流表包括RNAT表,用来指示报文转发规则:匹配接收到的改装报文的IP选项中携带的第一虚拟机和第二虚拟机的网元标识,将改装报文的源IP地址和MAC地址替换为第一虚拟机的网元标识对应的IP地址和MAC地址,将改装报文的目的IP地址和MAC地址替换为第二虚拟机的网元标识对应的IP地址和MAC地址。
CN201580084787.7A 2015-12-30 2015-12-30 一种报文传输的方法、装置和系统 Active CN108293022B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2015/099964 WO2017113231A1 (zh) 2015-12-30 2015-12-30 一种报文传输的方法、装置和系统

Publications (2)

Publication Number Publication Date
CN108293022A true CN108293022A (zh) 2018-07-17
CN108293022B CN108293022B (zh) 2020-10-09

Family

ID=59224091

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580084787.7A Active CN108293022B (zh) 2015-12-30 2015-12-30 一种报文传输的方法、装置和系统

Country Status (4)

Country Link
US (1) US10757072B2 (zh)
EP (1) EP3386157B1 (zh)
CN (1) CN108293022B (zh)
WO (1) WO2017113231A1 (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111405018A (zh) * 2020-03-10 2020-07-10 创新奇智(上海)科技有限公司 一种文件传输方法、装置、电子设备及存储介质
CN111556131A (zh) * 2020-04-24 2020-08-18 西安万像电子科技有限公司 求救信息处理方法、装置及系统
CN111917596A (zh) * 2020-08-27 2020-11-10 中国平安财产保险股份有限公司 网络接入方法、装置、设备及存储介质
CN112333135A (zh) * 2020-07-16 2021-02-05 北京京东尚科信息技术有限公司 网关确定方法、装置、服务器、分发器、系统及存储介质
CN113302883A (zh) * 2019-01-15 2021-08-24 诺基亚技术有限公司 交换用于数据传输的报头信息
CN113364893A (zh) * 2020-03-06 2021-09-07 华为技术有限公司 数据传输方法、装置及系统
CN113872844A (zh) * 2020-06-30 2021-12-31 华为技术有限公司 建立vxlan隧道的方法及相关设备
CN114448667A (zh) * 2021-12-23 2022-05-06 天翼云科技有限公司 一种数据传输方法、装置及设备
CN115134194A (zh) * 2022-06-22 2022-09-30 北京百度网讯科技有限公司 网络虚拟化的实现方法、系统、装置及程序产品
CN115189987A (zh) * 2022-06-22 2022-10-14 北京百度网讯科技有限公司 网络虚拟化的实现方法、系统、装置及程序产品
CN115883256A (zh) * 2023-02-03 2023-03-31 南京易科腾信息技术有限公司 基于加密隧道的数据传输方法、装置及存储介质
CN115996183A (zh) * 2021-10-15 2023-04-21 中国联合网络通信集团有限公司 流量确定方法及设备
CN116192713A (zh) * 2023-02-21 2023-05-30 中银金融科技有限公司 报文传输链路问题检测方法、装置、设备及介质
WO2024179288A1 (zh) * 2023-02-27 2024-09-06 中兴通讯股份有限公司 虚拟设备间的通信方法、装置、电子设备及存储介质

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9825851B2 (en) 2015-06-27 2017-11-21 Nicira, Inc. Distributing routing information in a multi-datacenter environment
CN107317832B (zh) * 2016-04-27 2020-01-03 新华三技术有限公司 报文转发方法及装置
EP3340581B1 (en) * 2016-12-20 2022-02-23 InterDigital CE Patent Holdings Method for managing service chaining at a network equipment, corresponding network equipment
US10992636B2 (en) * 2017-09-29 2021-04-27 Cisco Technology, Inc. Mitigating network/hardware address explosion in network devices
US10826724B2 (en) * 2018-09-25 2020-11-03 Microsoft Technology Licensing, Llc Flexible unnumbered destination tunnels for virtual networks
US11258729B2 (en) * 2019-02-27 2022-02-22 Vmware, Inc. Deploying a software defined networking (SDN) solution on a host using a single active uplink
US11895092B2 (en) * 2019-03-04 2024-02-06 Appgate Cybersecurity, Inc. Network access controller operation
US11070396B2 (en) * 2019-04-04 2021-07-20 Tata Communications Transformation Services (US) Inc. Virtual cloud exchange system and method
US11218512B2 (en) 2019-04-30 2022-01-04 Palo Alto Networks, Inc. Security policy enforcement and visibility for network architectures that mask external source addresses
CN110266763B (zh) * 2019-05-20 2022-04-12 深圳壹账通智能科技有限公司 跨网段互连的区块链网络实现方法、系统及存储介质
US11709694B2 (en) * 2019-07-15 2023-07-25 Microsoft Technology Licensing, Llc Support of virtual network and non-virtual network connectivity on the same virtual machine
US11550616B2 (en) 2019-08-30 2023-01-10 Nutanix, Inc. Virtual IP support for bare metal cloud infrastructures
US11429411B2 (en) 2019-08-30 2022-08-30 Nutanix, Inc. Fast ARP cache rewrites in a cloud-based virtualization environment
US11438280B2 (en) 2019-08-30 2022-09-06 Nutanix, Inc. Handling IP network addresses in a virtualization system
US11777793B2 (en) 2020-04-06 2023-10-03 Vmware, Inc. Location criteria for security groups
US11088902B1 (en) 2020-04-06 2021-08-10 Vmware, Inc. Synchronization of logical network state between global and local managers
US11683233B2 (en) 2020-04-06 2023-06-20 Vmware, Inc. Provision of logical network data from global manager to local managers
US11870679B2 (en) 2020-04-06 2024-01-09 VMware LLC Primary datacenter for logical router
US11882000B2 (en) 2020-04-06 2024-01-23 VMware LLC Network management system for federated multi-site logical network
US11689455B2 (en) 2020-05-28 2023-06-27 Oracle International Corporation Loop prevention in virtual layer 2 networks
US11962518B2 (en) 2020-06-02 2024-04-16 VMware LLC Hardware acceleration techniques using flow selection
CN116210204A (zh) 2020-07-14 2023-06-02 甲骨文国际公司 用于vlan交换和路由服务的系统和方法
JP7437272B2 (ja) * 2020-09-04 2024-02-22 株式会社日立製作所 処理システム及び方法
US11716383B2 (en) 2020-09-28 2023-08-01 Vmware, Inc. Accessing multiple external storages to present an emulated local storage through a NIC
US11875172B2 (en) 2020-09-28 2024-01-16 VMware LLC Bare metal computer for booting copies of VM images on multiple computing devices using a smart NIC
US12021759B2 (en) 2020-09-28 2024-06-25 VMware LLC Packet processing with hardware offload units
US11593278B2 (en) 2020-09-28 2023-02-28 Vmware, Inc. Using machine executing on a NIC to access a third party storage not supported by a NIC or host
US11601474B2 (en) 2020-09-28 2023-03-07 Vmware, Inc. Network virtualization infrastructure with divided user responsibilities
US11636053B2 (en) 2020-09-28 2023-04-25 Vmware, Inc. Emulating a local storage by accessing an external storage through a shared port of a NIC
US11606310B2 (en) * 2020-09-28 2023-03-14 Vmware, Inc. Flow processing offload using virtual port identifiers
US12015552B2 (en) 2020-12-30 2024-06-18 Oracle International Corporation Layer-2 networking information in a virtualized cloud environment
US11671355B2 (en) 2021-02-05 2023-06-06 Oracle International Corporation Packet flow control in a header of a packet
CN113067719B (zh) * 2021-02-07 2021-12-07 杭州又拍云科技有限公司 一种基于ip协议可选字段的容器公网带宽限制方法
US11777897B2 (en) 2021-02-13 2023-10-03 Oracle International Corporation Cloud infrastructure resources for connecting a service provider private network to a customer private network
US11784851B2 (en) * 2021-06-17 2023-10-10 Arad Networks Method for controlling communication and apparatus using the same
US20230032967A1 (en) * 2021-07-29 2023-02-02 Red Hat, Inc. Establishing process connections utilizing an intermediary broker
US11863376B2 (en) 2021-12-22 2024-01-02 Vmware, Inc. Smart NIC leader election
US11995024B2 (en) 2021-12-22 2024-05-28 VMware LLC State sharing between smart NICs
US11928367B2 (en) 2022-06-21 2024-03-12 VMware LLC Logical memory addressing for network devices
US11899594B2 (en) 2022-06-21 2024-02-13 VMware LLC Maintenance of data message classification cache on smart NIC
US11928062B2 (en) 2022-06-21 2024-03-12 VMware LLC Accelerating data message classification with smart NICs
US12107722B2 (en) 2022-07-20 2024-10-01 VMware LLC Sharing network manager between multiple tenants

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130148541A1 (en) * 2011-08-17 2013-06-13 Nicira, Inc. Distributed logical l3 routing
CN103716245A (zh) * 2012-09-29 2014-04-09 上海贝尔股份有限公司 基于虚拟专用局域网服务的边缘路由器
CN104038422A (zh) * 2013-03-08 2014-09-10 华为技术有限公司 报文转发方法和网关
CN104065555A (zh) * 2009-09-24 2014-09-24 日本电气株式会社 虚拟服务器间通信识别系统和虚拟服务器间通信识别方法
US20140310362A1 (en) * 2013-04-11 2014-10-16 Broadcom Corporation Congestion Management in Overlay Networks
US20150043379A1 (en) * 2013-08-09 2015-02-12 Fujitsu Limited Method of controlling virtual router, computer-readable recording medium, and control device
US8958293B1 (en) * 2011-12-06 2015-02-17 Google Inc. Transparent load-balancing for cloud computing services
CN104935516A (zh) * 2015-06-17 2015-09-23 武汉邮电科学研究院 基于软件定义网络的通信系统及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005062545A1 (en) * 2003-12-22 2005-07-07 Nokia Corporation Method and system for maintaining a secure tunnel in a packet-based communication system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104065555A (zh) * 2009-09-24 2014-09-24 日本电气株式会社 虚拟服务器间通信识别系统和虚拟服务器间通信识别方法
US20130148541A1 (en) * 2011-08-17 2013-06-13 Nicira, Inc. Distributed logical l3 routing
US8958293B1 (en) * 2011-12-06 2015-02-17 Google Inc. Transparent load-balancing for cloud computing services
CN103716245A (zh) * 2012-09-29 2014-04-09 上海贝尔股份有限公司 基于虚拟专用局域网服务的边缘路由器
CN104038422A (zh) * 2013-03-08 2014-09-10 华为技术有限公司 报文转发方法和网关
US20140310362A1 (en) * 2013-04-11 2014-10-16 Broadcom Corporation Congestion Management in Overlay Networks
US20150043379A1 (en) * 2013-08-09 2015-02-12 Fujitsu Limited Method of controlling virtual router, computer-readable recording medium, and control device
CN104935516A (zh) * 2015-06-17 2015-09-23 武汉邮电科学研究院 基于软件定义网络的通信系统及方法

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113302883A (zh) * 2019-01-15 2021-08-24 诺基亚技术有限公司 交换用于数据传输的报头信息
CN113302883B (zh) * 2019-01-15 2022-04-29 诺基亚技术有限公司 用于交换用于数据传输的报头信息的方法和装置
US11368397B2 (en) 2019-01-15 2022-06-21 Nokia Technologies Oy Swapping header information for data transmission
CN113364893A (zh) * 2020-03-06 2021-09-07 华为技术有限公司 数据传输方法、装置及系统
CN111405018A (zh) * 2020-03-10 2020-07-10 创新奇智(上海)科技有限公司 一种文件传输方法、装置、电子设备及存储介质
CN111405018B (zh) * 2020-03-10 2023-04-07 创新奇智(上海)科技有限公司 一种文件传输方法、装置、电子设备及存储介质
CN111556131A (zh) * 2020-04-24 2020-08-18 西安万像电子科技有限公司 求救信息处理方法、装置及系统
CN111556131B (zh) * 2020-04-24 2023-06-23 西安万像电子科技有限公司 求救信息处理方法、装置及系统
CN113872844B (zh) * 2020-06-30 2023-07-18 华为技术有限公司 建立vxlan隧道的方法及相关设备
CN113872844A (zh) * 2020-06-30 2021-12-31 华为技术有限公司 建立vxlan隧道的方法及相关设备
CN112333135B (zh) * 2020-07-16 2022-09-06 北京京东尚科信息技术有限公司 网关确定方法、装置、服务器、分发器、系统及存储介质
CN112333135A (zh) * 2020-07-16 2021-02-05 北京京东尚科信息技术有限公司 网关确定方法、装置、服务器、分发器、系统及存储介质
CN111917596A (zh) * 2020-08-27 2020-11-10 中国平安财产保险股份有限公司 网络接入方法、装置、设备及存储介质
CN111917596B (zh) * 2020-08-27 2023-07-25 中国平安财产保险股份有限公司 网络接入方法、装置、设备及存储介质
CN115996183A (zh) * 2021-10-15 2023-04-21 中国联合网络通信集团有限公司 流量确定方法及设备
CN114448667A (zh) * 2021-12-23 2022-05-06 天翼云科技有限公司 一种数据传输方法、装置及设备
CN114448667B (zh) * 2021-12-23 2023-08-08 天翼云科技有限公司 一种数据传输方法、装置及设备
CN115134194A (zh) * 2022-06-22 2022-09-30 北京百度网讯科技有限公司 网络虚拟化的实现方法、系统、装置及程序产品
CN115189987A (zh) * 2022-06-22 2022-10-14 北京百度网讯科技有限公司 网络虚拟化的实现方法、系统、装置及程序产品
CN115883256A (zh) * 2023-02-03 2023-03-31 南京易科腾信息技术有限公司 基于加密隧道的数据传输方法、装置及存储介质
CN116192713A (zh) * 2023-02-21 2023-05-30 中银金融科技有限公司 报文传输链路问题检测方法、装置、设备及介质
WO2024179288A1 (zh) * 2023-02-27 2024-09-06 中兴通讯股份有限公司 虚拟设备间的通信方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
US10757072B2 (en) 2020-08-25
EP3386157B1 (en) 2020-03-04
CN108293022B (zh) 2020-10-09
US20180309718A1 (en) 2018-10-25
EP3386157A1 (en) 2018-10-10
WO2017113231A1 (zh) 2017-07-06
EP3386157A4 (en) 2019-01-02

Similar Documents

Publication Publication Date Title
CN108293022A (zh) 一种报文传输的方法、装置和系统
CN112217746B (zh) 云计算系统中报文处理的方法、主机和系统
US20220377045A1 (en) Network virtualization of containers in computing systems
KR101840904B1 (ko) 가상화된 네트워크와 비-가상화된 네트워크 간 가상화 게이트웨이
US11394662B2 (en) Availability groups of cloud provider edge locations
CN112398687B (zh) 云计算网络的配置方法、云计算网络系统以及存储介质
CN109716717A (zh) 从软件定义的网络控制器管理虚拟端口信道交换机对等体
US11159344B1 (en) Connectivity of cloud edge locations to communications service provider networks
US20140254603A1 (en) Interoperability for distributed overlay virtual environments
CN107278362A (zh) 云计算系统中报文处理的方法、主机和系统
CN111835878A (zh) 混合云管理方法、装置和计算设备
US10868856B2 (en) Network element and method of running applications in a cloud computing system
US10917460B2 (en) Distributed load-balancing for software defined networks
CN106331206B (zh) 域名管理方法及装置
CN104065553B (zh) 虚拟网络迁移方法和相关设备
US20140279885A1 (en) Data replication for a virtual networking system
CN118592014A (zh) 基于标签的跨区域区段管理
WO2016183832A1 (zh) 一种网络业务实例化的方法及设备
Benomar et al. Extending openstack for cloud-based networking at the edge
WO2023096811A1 (en) Tag-based cross-region segment management
CN117061352A (zh) 多模态虚拟网元的实现方法、装置、设备及介质
CN113407306B (zh) 一种资源管理系统、方法、装置、设备及介质
US11595347B1 (en) Dual-stack network addressing in cloud provider network edge locations
US11743180B2 (en) System and method for routing traffic onto an MPLS network
CN106533720B (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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220224

Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province

Patentee after: Huawei Cloud Computing Technologies Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.