一种报文传输方法及装置制造方法及图纸

技术编号:19011701 阅读:41 留言:0更新日期:2018-09-22 11:05
一种报文传输方法及装置,用以避免在实现租户隔离时出现资源占用率高和规格受限的问题。目标网络节点根据针对目标租户设置的每个虚拟机的私有IP地址对应的转换IP地址,确定目标虚拟机的私有IP地址对应的目标转换IP地址,将所述目标虚拟机待传输的IP报文中的所述目标虚拟机的私有IP地址转换成所述目标转换IP地址,然后将处理后的IP报文发送给网关设备;所述网关设备确定所述目标虚拟机的私有IP地址对应的目标公网IP地址,将接收到的IP报文中的所述目标转换IP地址替换为所述目标公网IP地址,发送给公网中的设备。这样,可以通过不同租户的不同虚拟机的唯一的转换IP地址,实现租户隔离。

【技术实现步骤摘要】
一种报文传输方法及装置
本申请涉及通信
,尤其涉及一种报文传输方法及装置。
技术介绍
云计算是一种动态易扩展的通过互联网提供虚拟化资源的计算方式,在云计算环境中,支持多个租户使用统一的资源。为了保证租户数据的安全性,需要对租户进行隔离,使租户内部的虚拟机可以相互通信,而租户之间的虚拟机相互隔离,即租户隔离。目前,实现租户隔离的方法,通常有如下两种:第一种方法:通过协议栈的命名空间(namespace)进行租户隔离。令每个租户对应的虚拟机所在的虚拟网络对应一个namespace,由namespace隔离保证不同的虚拟网络的会话状态隔离,从而实现租户隔离。但是,这种方法中namespace资源占用率高,会影响系统性能。第二种方法:通过内核的连接跟踪域地址(conntrackzoneid)进行租户隔离。每个租户对应的虚拟机所在的虚拟网络对应一个zoneid,而不同的zoneid对应不同的会话状态表,不会相互影响,从而可以实现租户隔离。但是,conntrackzone只有16个比特,规格较小,不能满足租户的需求。综上,现在亟需一种新的方法,在能够实现租户隔离的同时,也可以避免上述方法出现的弊端。
技术实现思路
本申请提供一种报文传输方法及装置,用以避免在实现租户隔离时出现资源占用率高和规格受限的问题。第一方面,本申请提供了一种报文传输方法,应用于包括网关设备和网络节点的通信网络;所述网络节点部署有多个虚拟机,每个虚拟机归属于一个租户,所述多个虚拟机归属于多个租户,该方法包括:目标网络节点获取针对每个租户设置的每个虚拟机的私有互联网协议IP地址对应的转换IP地址;在确定目标虚拟机待传输的第一IP报文,所述第一IP报文的源地址为所述目标虚拟机的私有IP地址后,在所述多个租户中,确定所述目标虚拟机所归属的目标租户,并根据针对所述目标租户设置的每个虚拟机的私有IP地址对应的转换IP地址,确定所述目标虚拟机的私有IP地址对应的目标转换IP地址;然后将所述第一IP报文中的所述目标虚拟机的私有IP地址替换为所述目标转换IP地址,得到第二IP报文,将所述第二IP报文发送给所述网关设备;所述网关设备获取针对每个租户设置的每个虚拟机的私有IP地址对应的转换IP地址,以及获取针对每个租户设置的每个虚拟机的私有IP地址对应的公网IP地址;并根据针对每个租户设置的每个虚拟机的私有IP地址对应的转换IP地址,确定对应所述目标转换地址的目标虚拟机所归属的目标租户;然后根据针对所述目标租户设置的每个虚拟机的私有IP地址对应的公网IP地址,确定所述目标虚拟机的私有IP地址对应的目标公网IP地址;进而将所述第二IP报文中的所述目标转换IP地址替换为所述目标公网IP地址,得到第三IP报文,将所述第三IP报文发送给公网中的设备。其中,针对不同租户设置的虚拟机的私有IP地址对应的转换IP地址不同,且针对同一租户设置的不同虚拟机的私有IP地址对应的转换IP地址不同;所述目标网络节点为所述网络节点中的任一个。相对于现有技术中由于不同租户的虚拟机可能有相同的私有IP地址,在将虚拟机的私有IP地址转换成公网IP地址后,一个租户可能会将与自己的虚拟机具有相同私有IP地址的其他租户的虚拟机的IP报文认为是自己的,会导致不同租户的虚拟机的报文互相影响而传输错误,通过上述方法,不同租户的不同虚拟机的私有IP地址对应一个唯一的转换IP地址,可以在报文传输过程中利用该转换IP地址进行虚拟机的私有IP地址与公网IP地址之间的转换,来实现与虚拟机与公网中的设备的传输,这样可以使得不同租户的报文分别传输时不互相影响,从而实现了租户隔离。同时,在这种方法中,无需为每个租户对应的虚拟网络分配namespace,可以避免资源占用率的问题;并且每个虚拟机都可以分配到一个转换IP地址,从而可以解决规格受限的问题,可以满足租户需求。在一个可能的设计中,每个虚拟机的私有IP地址对应的转换IP地址所在的网段与该虚拟机的私有IP地址所在的网段不同。这样可以使得任一个转换IP地址都是独一无二的,进而可以实现租户隔离。在一种可能的设计中,所述目标网络节点中部署有虚拟路由器(virtualrouter,vrouter),所述目标网络节点中的所述vrouter将所述第一IP报文的所述目标虚拟机的私有IP地址替换为所述目标转换IP地址。在一个可能的设计中,所述目标网络节点将所述处理后的第一IP报文发送给所述网关设备之前,可以为所述处理后的第一IP报文封装虚拟局域网标签(vlantag);或者为所述处理后的第一IP报文封装可扩展虚拟局域网头部(vxlanheader)。在一种可能的设计中,所述目标网络节点中部署有虚拟交换机(vswitch),所述目标网络节点中的所述vswitch执行上述封装操作。在一个可能的设计中,所述网关设备接收到所述第二IP报文时,需要先去掉IP报文中的vlantag或者vxlanheader。在一个可能的设计中,所述目标网络节点通过物理设备将所述第二IP报文转发给所述网关设备。这样可以使得所述第二IP报文成功传输至所述网关设备。在一个可能的设计中,所述网关设备接收到目的地址为所述目标公网IP地址的第四IP报文后,确定所述目标公网IP地址对应的所述目标转换IP地址;将所述第四IP报文中的所述目标公网IP地址替换为所述目标转换IP地址,得到第五IP报文,并将所述第五IP报文发送给所述目标网络节点;然后所述目标网络节点确定对应所述目标转换IP地址的所述目标虚拟机的私有IP地址;将所述第五IP报文中的所述目标转换IP地址替换为所述目标虚拟机的私有IP地址,得到第六IP报文,并将所述第六IP报文发送给所述目标虚拟机。通过上述方法,所述目标网络节点上的所述目标虚拟机可以成功接收到公网中的设备回复的报文。并且在报文传输过程中,由于采用了所述目标虚拟机的私有IP地址对应的唯一的转换IP地址进行了地址替换,这样可以使不同租户的不同虚拟机接收报文时不互相影响,从而可以实现租户隔离。在一个可能的设计中,所述目标网络节点中存储有映射关系表,具体的所述映射关系表中可以是租户的标识、虚拟机的标识(可选的,虚拟机的标识可以用虚拟机的端口标识表示)、虚拟机的私有IP地址、转换IP地址的映射关系,所述映射关系表表明了针对每个租户设置的虚拟机的私有IP地址对应的转换IP地址,所述目标网络节点可以通过所述映射关系表获取针对每个租户设置的虚拟机的私有IP地址对应的转换IP地址。在一个可能的设计中,所述目标网络节点中存储的所述映射关系可以是预先配置好的,也可以是通过外部的控制设备创建后发送给所述目标网络节点的。通过上述方法,所述目标网络节点可以成功获取到针对每个租户设置的每个虚拟机的私有IP地址对应的转换IP地址。第二方面,本申请还提供了一种网络节点,该网络节点具有实现上述方法实例中目标网络节点的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。在一个可能的设计中,所述网络节点的结构中包括获取单元、处理单元和发送单元,这些单元可以执行上述方法示例中的相应功能,具体参见方法示例中的详细描述,此处不做赘述。在一个可能的设计中,所述网络节点的结构本文档来自技高网...
一种报文传输方法及装置

【技术保护点】
1.一种报文传输方法,其特征在于,应用于包括网关设备和网络节点的通信网络;所述网络节点部署有多个虚拟机,每个虚拟机归属于一个租户,所述多个虚拟机归属于多个租户,所述方法包括:目标网络节点获取针对每个租户设置的每个虚拟机的私有互联网协议IP地址对应的转换IP地址,其中,针对不同租户设置的虚拟机的私有IP地址对应的转换IP地址不同,且针对同一租户设置的不同虚拟机的私有IP地址对应的转换IP地址不同;所述目标网络节点为所述网络节点中的任一个;所述目标网络节点确定目标虚拟机待传输的第一IP报文,所述第一IP报文的源地址为所述目标虚拟机的私有IP地址;所述目标网络节点在所述多个租户中,确定所述目标虚拟机所归属的目标租户,并根据针对所述目标租户设置的每个虚拟机的私有IP地址对应的转换IP地址,确定所述目标虚拟机的私有IP地址对应的目标转换IP地址;所述目标网络节点将所述第一IP报文中的所述目标虚拟机的私有IP地址替换为所述目标转换IP地址,得到处理后的第一IP报文;所述目标网络节点将所述处理后的第一IP报文发送给所述网关设备。

【技术特征摘要】
1.一种报文传输方法,其特征在于,应用于包括网关设备和网络节点的通信网络;所述网络节点部署有多个虚拟机,每个虚拟机归属于一个租户,所述多个虚拟机归属于多个租户,所述方法包括:目标网络节点获取针对每个租户设置的每个虚拟机的私有互联网协议IP地址对应的转换IP地址,其中,针对不同租户设置的虚拟机的私有IP地址对应的转换IP地址不同,且针对同一租户设置的不同虚拟机的私有IP地址对应的转换IP地址不同;所述目标网络节点为所述网络节点中的任一个;所述目标网络节点确定目标虚拟机待传输的第一IP报文,所述第一IP报文的源地址为所述目标虚拟机的私有IP地址;所述目标网络节点在所述多个租户中,确定所述目标虚拟机所归属的目标租户,并根据针对所述目标租户设置的每个虚拟机的私有IP地址对应的转换IP地址,确定所述目标虚拟机的私有IP地址对应的目标转换IP地址;所述目标网络节点将所述第一IP报文中的所述目标虚拟机的私有IP地址替换为所述目标转换IP地址,得到处理后的第一IP报文;所述目标网络节点将所述处理后的第一IP报文发送给所述网关设备。2.如权利要求1所述的方法,其特征在于,每个虚拟机的私有IP地址对应的转换IP地址所在的网段与该虚拟机的私有IP地址所在的网段不同。3.如权利要求1或2所述的方法,其特征在于,所述目标网络节点将所述处理后的第一IP报文发送给所述网关设备之前,所述方法还包括:所述目标网络节点为所述处理后的第一IP报文封装虚拟局域网标签vlantag;或者所述目标网络节点为所述处理后的第一IP报文封装可扩展虚拟局域网头部vxlanheader。4.如权利要求1-3任一项所述的方法,其特征在于,所述目标网络节点将所述处理后的第一IP报文发送给所述网关设备,包括:所述目标网络节点通过物理设备将所述处理后的第一IP报文转发给所述网关设备。5.如权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:所述目标网络节点接收所述网关设备发送的第二IP报文,所述第二IP报文的目的地址为所述目的转换IP地址;所述目标网络节点确定对应所述目标转换IP地址的所述目标虚拟机的私有IP地址;所述目标网络节点将所述第二IP报文中的所述目标转换IP地址替换为所述目标虚拟机的私有IP地址,得到处理后的第二IP报文;所述目标网络节点将所述处理后的第二IP报文发送给所述目标虚拟机。6.一种报文传输方法,其特征在于,应用于包括网关设备和网络节点的通信网络;所述网络节点部署有多个虚拟机,每个虚拟机归属于一个租户,所述多个虚拟机归属于多个租户,所述方法包括:所述网关设备接收目标网络节点发送的第一IP报文,所述第一IP报文的源地址为目标转换IP地址;所述目标网络节点为所述网络节点中的任一个;所述网关设备获取针对每个租户设置的每个虚拟机的私有IP地址对应的转换IP地址,以及获取针对每个租户设置的每个虚拟机的私有IP地址对应的公网IP地址;其中,针对不同租户设置的虚拟机的私有IP地址对应的转换IP地址不同,且针对同一租户设置的不同虚拟机的私有IP地址对应的转换IP地址不同;所述网关设备根据针对每个租户设置的每个虚拟机的私有IP地址对应的转换IP地址,确定对应所述目标转换地址的目标虚拟机所归属的目标租户;所述网关设备根据针对所述目标租户设置的每个虚拟机的私有IP地址对应的公网IP地址,确定所述目标虚拟机的私有IP地址对应的目标公网IP地址;所述网关设备将所述第一IP报文中的所述目标转换IP地址替换为所述目标公网IP地址,得到处理后的第一IP报文;所述网关设备将所述处理后的第一IP报文发送给公网中的设备。7.如权利要求6所述的方法,其特征在于,每个虚拟机的私有IP地址对应的转换IP地址所在的网段与该虚拟机的私有IP地址所在的网段不同。8.如权利要求6或7所述的方法,其特征在于,所述网关设备接收所述目标网络节点发送的第一IP报文,包括:所述网关设备接收所述目标网络节点通过物理设备转发的所述第一IP报文。9.如权利要求6-8任一项所述的方法,其特征在于,所述方法还包括:所述网关设备接收目的地址为所述目标公网IP地址的第二IP报文;所述网关设备确定所述目标公网IP地址对应的所述目标转换IP地址;所述网关设备将所述第二IP报文中的所述目标公网IP地址替换为所述目标转换IP地址,得到处理后的第二IP报文;所述网关设备将所述处理后的第二IP报文发送给所述目标网络节点。10.一种网络节点,其特征在于,应用于包括网关设备和网络节点的通信网络;所述网络节点部署有多个虚拟机,每个虚拟机归属于一个租户,所述多个虚拟机归属于多个租户,所述网络节点包括:通信接口,用于接收和发送报文;处理器,用于执行以下操作:获取针对每个租户设...

【专利技术属性】
技术研发人员:朱娜饶飞
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1