一种报文传输的方法和装置的制造方法

文档序号:9828135阅读:356来源:国知局
一种报文传输的方法和装置的制造方法
【技术领域】
[0001]本发明涉及通信技术领域,尤其涉及一种报文传输的方法和装置。
【背景技术】
[0002]随着虚拟化与云计算技术的不断成熟,越来越多的云服务提供商开始提供云服务,允许企业按需租用资源和服务,仓Il建企业自己的VDC(Virtual Data Center,虚拟数据中心)或者VPC(Virtual Private Cloud,虚拟私有云)网络,帮助企业节省建设成本、提高业务敏捷性。因此,很多企业开始将大部分IT应用向公有云迀移,并将公有云和私有云互联,构建安全统一的企业混合云。针对VPC网络,对于网络层面,就是对物理网络进行逻辑抽象,构架弹性可扩展的多租户虚拟私有网络,允许租户在虚拟私有网络中预配置一个采用逻辑隔离的部分,让租户在自己定义的虚拟私有网络中启动云资源。
[0003]如图1所示,为VPC网络的组网示意图,不同VPC之间不能够直接进行通信。如果不同VPC之间需要通信,则不同VPC之间交互的报文需要经过Internet (互联网)转发,即每个VPC看到的对端均为Internet上的资源。
[0004]例如,当VPCl内物理服务器上的虚拟机向VPC2内物理服务器上的虚拟机发送报文时,VPCl内的虚拟机将报文发送给VPCl内的Internet网关1,Internet网关I将报文发送到Internet。Internet内的网络设备基于报文的目的IP地址将报文发送给VPC2内的Internet网关2,Internet网关2将报文发送给VPC2内的虚拟机。
[0005]在上述实施方式中,即使针对同一个物理机房内的不同VPC之间交互的报文也需要经过Internet的转发,从而增加了物理机房与Internet之间的流量负载。而且,在报文经过Internet转发时,会造成业务访问的时延,容易出现丢包等问题,影响业务的使用体验。

【发明内容】

[0006]本发明提供一种报文传输的方法,所述方法包括:
[0007]软件定义网络SDN控制器预先向第一虚拟私有云VPC内的第一虚拟交换机下发第一流表,所述第一流表用于指示所述第一虚拟交换机在接收到所述第一 VPC内的第一虚拟机发送给第二 VPC内的第二虚拟机的报文时,利用预先与设置于所述第一 VPC和所述第二VPC之间的虚拟路由器建立的虚拟可扩展局域网VXLAN隧道,将所述报文发送给所述虚拟路由器;
[0008]所述SDN控制器在接收到所述第一虚拟交换机上送的所述第一虚拟机发送给所述第二虚拟机的首报文时,根据所述首报文中携带的所述第二虚拟机的IP地址获得所述第二虚拟机在所述第二 VPC内对应的第二虚拟交换机,并生成第二流表和第三流表;
[0009]所述SDN控制器将所述第二流表下发给所述虚拟路由器,所述第二流表用于指示所述虚拟路由器在接收到所述报文时,利用预先与所述第二虚拟交换机建立的VXLAN隧道,将所述报文发送给所述第二虚拟交换机;
[0010]所述SDN控制器将所述第三流表下发给所述第二虚拟交换机,所述第三流表用于指示所述第二虚拟交换机在接收到所述报文时,将所述报文发送给所述第二虚拟机。
[0011]本发明提供一种报文传输的装置,所述报文传输的装置应用在软件定义网络SDN控制器上,所述报文传输的装置具体包括:
[0012]发送模块,用于预先向第一虚拟私有云VPC内的第一虚拟交换机下发第一流表,所述第一流表用于指示所述第一虚拟交换机在接收到所述第一 VPC内的第一虚拟机发送给第二 VPC内的第二虚拟机的报文时,利用预先与设置于所述第一 VPC和所述第二 VPC之间的虚拟路由器建立的虚拟可扩展局域网VXLAN隧道,将所述报文发送给所述虚拟路由器;
[0013]获得模块,用于在接收到所述第一虚拟交换机上送的所述第一虚拟机发送给所述第二虚拟机的首报文时,根据所述首报文中携带的所述第二虚拟机的IP地址获得所述第二虚拟机在所述第二 VPC内对应的第二虚拟交换机,并生成第二流表和第三流表;
[0014]所述发送模块,还用于将所述第二流表下发给所述虚拟路由器,所述第二流表用于指示所述虚拟路由器在接收到所述报文时,利用预先与所述第二虚拟交换机建立的VXLAN隧道,将所述报文发送给所述第二虚拟交换机;
[0015]将所述第三流表下发给所述第二虚拟交换机,所述第三流表用于指示所述第二虚拟交换机在接收到所述报文时,将所述报文发送给所述第二虚拟机。
[0016]基于上述技术方案,本发明实施例中,通过在需要通信的VPC之间部署虚拟路由器,并使用虚拟路由器传输不同VPC之间的报文,使得不同VPC之间能够直接进行通信,不同VPC之间交互的报文不需要经过Internet转发。上述方式可以解决不同VPC之间交互的报文需要经过Internet转发的问题,减轻物理机房与Internet之间的流量负载,避免业务访冋的时延、丢包等冋题,提尚业务的使用体验。
【附图说明】
[0017]图1是VPC网络的组网示意图;
[0018]图2是本发明一种实施方式中的应用场景示意图;
[0019]图3是本发明一种实施方式中的报文传输的方法的流程图;
[0020]图4是本发明一种实施方式中的报文传输的方法的流程图;
[0021]图5是本发明一种实施方式中的SDN控制器的硬件结构图;
[0022]图6是本发明一种实施方式中的报文传输的装置的结构图。
【具体实施方式】
[0023]针对现有技术中存在的问题,本发明实施例中提出一种报文传输的方法,应用在VPC网络中,且VPC网络包括多个VPC。该方法用在不同VPC之间的通信过程,以针对第一VPC内的第一虚拟机与第二 VPC内的第二虚拟机之间的通信过程为例。以图2为本发明实施例的应用场景示意图,VPC网络包括SDN(Software Defined Network,软件定义网络)控制器、VPCl和VPC2,第一 VPC可以为VPCl,第二 VPC可以为VPC2。当然,在实际应用中,如果VPC网络包括VPC1、VPC2和VPC3,并且三者之间均可以相互通信,对于VPCI而言,既可以与VPC2通信,也可以与VPC3通信,如果VPCl作为第一 VPC,那么,VPC2和VPC3均可以作为第二 VPC。再者,如果VPC网络除包括前面的VPCUVPC2和VPC3外,还包括VPC4,但是VPC4均不与VPC1、VPC2和VPC3通信,那么,在VPCl作为第一 VPC时,VPC4不会作为第二 VPC。
[0024]为了方便描述,以图2所示的只包括VPCl和VPC2的应用场景为例进行说明。在VPCl内的物理服务器I上,创建虚拟机1、虚拟机2以及虚拟交换机I。在VPC2内的物理服务器2上,创建虚拟机3、虚拟机4以及虚拟交换机2。在VPC2内的物理服务器3上,创建虚拟机5、虚拟机6以及虚拟交换机3。其中,虚拟交换机具体可以为OVS (Open vSwitch,开源虚拟交换机)。
[0025]针对虚拟机I与虚拟机3之间的通信过程,则VPCl为第一 VPC,虚拟机I为第一虚拟机,VPC2为第二 VPC,虚拟机3为第二虚拟机。
[0026]在VPCl内还可以包括Internet网关I,针对发送给Internet的报文,虚拟交换机I会将报文发送给Internet网关I,并由Internet网关I将报文发送给Internet。在VPC2内还可以包括Internet网关2,针对发送给Internet的报文,虚拟交换机2/虚拟交换机3会将报文发送给Internet网关2,并由Internet网关2将报文发送给Internet。本发明实施例中对此过程不再赘述。
[0027]本发明实施例中,虚拟机用于提供VPC业务,如WEB业务,数据库业务等。SDN控制器在虚拟机上下发业务配置,以使虚拟机提供相应的业务,如在虚拟机I上下发WEB业务的相关配置,以使虚拟机I提供WEB业务。
[0028]在上述应用场景下,如图3所示,该报文传输的方法可以包括以下步骤:
[0029]步骤301,SDN控制器预先向第一 VPC内的第一虚拟交换机下发第一流表,该第一流表用于指示第一虚拟交换机在接收到第一 VPC内的第一虚拟机发送给第二 VPC内的第二虚拟机的报文时,利用预先与虚拟路由器(设置于第一 VPC和第二 VPC之间的虚拟路由器)建立的VXLAN(Virtual extensible Local Area Network,虚拟可扩展局域网)隧道,将报文发送给虚拟路由器。其中,该第一流表的匹配项包括目的IP地址位于第二 VPC的网段内,动作项包括使用第一虚拟交换机与虚拟路由器之间的VXLAN隧道(该VXLAN隧道可以通过VXLAN标识唯一表示)发送与第一流表的匹配项匹配的报文。
[0030]本发明实施例中,需要预先在第一 VPC和第二 VPC之间设置虚拟路由器,虚拟路由器可以提供与物理路由器相同的功能和体验,如路由、防火墙、VPN (Virtual PrivateNetwork,虚拟专用网络)、QoS (Quality of Service,服务质量)、配置管理等。虚拟路由器可以为VSR(Virtual Services Router,虚拟服务路由器)。
[0031]为了创建虚拟路由器,可以由AFC(Automatic Funct1n Control,自动功能控制)基于NFV(Network Funct1n Virtualizat1n,网络功能虚拟化)技术,实现虚拟路由器的创建。针对需要通信的两个VPC,AFC可以为这两个VPC创建一个虚拟路由器,如当VPCl与VPC2之间需要通信时,则AFC为VPCl和VPC2创建一个虚拟路由
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1