通信方法、装置、电子设备和存储介质制造方法及图纸

技术编号:24010300 阅读:35 留言:0更新日期:2020-05-02 01:31
本公开提供了一种通信方法,包括:响应于接收到创建虚拟机的指令,获取配置信息,所述配置信息包括命名管道信息;在所述配置信息指示创建命名管道的情况下,基于所述命名管道信息创建命名管道,其中,所述命名管道作为所述虚拟机的虚拟接口设备的控制通道;以及开启所述命名管道,使得宿主机与所述虚拟机之间通过所述命名管道进行通信。本公开还提供了一种通信装置、一种电子设备、一种计算机可读存储介质和计算机程序产品。

Communication methods, devices, electronic equipment and storage media

【技术实现步骤摘要】
通信方法、装置、电子设备和存储介质
本公开涉及计算机
,更具体地,涉及一种通信方法和一种通信装置、电子设备和存储介质。
技术介绍
虚拟化技术是构建云计算基础架构不可或缺的关键技术之一。I/O虚拟化经历了从全虚拟化到半虚拟化的过程。在半虚拟化技术中,应用最广泛的虚拟化I/O架构为vhost-user。vhost-user通常包括控制信道和数据通道。控制信道用于传递建立数据通道所需的数据结构,控制数据通道的开关和关闭等。在相关技术中,vhost-user控制信道目前只支持unixsocket通信,不支持更多的通信方式。因此,vhost-user控制信道存在通信方式单一的问题。
技术实现思路
有鉴于此,本公开提供了一种通信方法和一种通信装置、电子设备和存储介质。本公开的一个方面提供了一种通信方法,包括:响应于接收到创建虚拟机的指令,获取配置信息,配置信息包括命名管道信息;,基于命名管道信息创建命名管道,其中,命名管道作为虚拟机的虚拟接口设备的控制通道;以及开启命名管道,使得宿主机与所述虚拟机之间通过命名管道进行通信。根据本公开的实施例,基于命名管道信息创建命名管道包括:解析配置信息,以从配置信息中获取命名管道的属性信息;基于属性信息,确定与命名管道对应的设备类和与命名管道的驱动器对应的驱动类;以及将设备类和驱动类注册到qemu面向对象模型中,以完成命名管道的创建。根据本公开的实施例,该方法还包括确定所述虚拟机要向所述宿主机发送的通知消息的类型;在确定所述通知消息的类型为指定类型的情况下,向所述宿主机发送所述通知消息;以及向所述宿主机发送文件描述符,以使得所述宿主机根据所述文件描述符来确定与所述通知消息相关的文件或事件。根据本公开的实施例,该方法还包括在配置信息中包括多个标识信息的情况下,确定配置信息中的标识信息之间是否存在冲突,冲突包括同一标识信息分别与不同虚拟接口设备相对应;在确定标识信息之间存在冲突的情况下,基于同一标识信息创建一个命名管道;以及基于同一标识信息创建的命名管道生成日志,以便向用户通知在创建虚拟机的过程中存在标识信息冲突。根据本公开的实施例,所述配置信息中包括指示信息,所述指示信息用于指示是否由所述宿主机创建所述命名管道,在确定由所述宿主机创建所述命名管道的情况下,所述宿主机根据命名管道信息创建命名管道;或者在确定由所述虚拟机创建所述命名管道的情况下,所述宿主机向虚拟机发送创建指令,以由虚拟机根据所述命名管道信息创建命名管道。本公开的另一个方面提供了一种通信装置,包括:获取模块,用于响应于接收到创建虚拟机的指令,获取配置信息,配置信息包括命名管道信息;创建模块,用于基于命名管道信息创建命名管道,其中,命名管道作为虚拟机的虚拟接口设备的控制通道,用于使宿主机与虚拟机之间能够相互通信;以及控制模块,用于开启命名管道,使得宿主机与虚拟机之间通过所述命名管道进行通信。根据本公开的实施例,创建模块包括:解析子模块,用于解析配置信息,以从配置信息中获取所述命名管道的属性信息;确定子模块,基于属性信息,确定与命名管道对应的设备类和与命名管道的驱动器对应的驱动类;以及注册子模块,用于将设备类和驱动类注册到QOM模型中,以完成命名管道的创建。根据本公开的实施例,该方法还包括确定模块,用于确定所述虚拟机要向所述宿主机发送的通知消息的类型;第一发送模块,用于在确定所述通知消息的类型为指定类型的情况下,向所述宿主机发送所述通知消息;第二发送模块,用于向所述宿主机发送文件描述符,以使得所述宿主机根据所述文件描述符来确定与所述通知消息相关的文件或事件。本公开的另一个方面提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如上所述的任意一项的方法。本公开的另一方面提供了一种计算机可读存储介质,存储有计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。本公开的另一方面提供了一种计算机程序,所述计算机程序包括计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。根据本公开的实施例,可以至少部分地解决vhost-user控制信道存在通信方式单一的问题,并因此可以实现丰富vhost-user控制信道通信方式的技术效果。附图说明通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:图1示意性示出了根据本公开实施例的可以应用通信方法的示例性系统架构;图2示意性示出了根据本公开实施例的在qemu-options.hx文件中增加命名管道的定义的示例图;图3示意性示出了根据本公开实施例的通信方法的流程图;图4示意性示出了根据本公开实施例的在操作创建命名管道的方法流程图;图5示意性示出了根据本公开另一实施例的通信方法的流程图;图6示意性示出了根据本公开另一实施例的通信方法的流程图;图7示意性示出了根据本公开另一实施例的通信方法的示意图;图8示意性示出了根据本公开实施例的通信装置的框图;以及图9示意性示出了根据本公开实施例的电子设备的方框图。具体实施方式以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。本公开的实施例提供了一种通信方法,包括:响应于接收到创建虚拟机的指令,获取配置信息,所述配置信息包括命名管道信息;在所述配置信息指示创建本文档来自技高网...

【技术保护点】
1.一种通信方法,包括:/n响应于接收到创建虚拟机的指令,获取配置信息,所述配置信息包括命名管道信息;/n基于所述命名管道信息创建命名管道,其中,所述命名管道作为所述虚拟机的虚拟接口设备的控制通道;以及/n开启所述命名管道,使得宿主机与所述虚拟机之间通过所述命名管道进行通信。/n

【技术特征摘要】
1.一种通信方法,包括:
响应于接收到创建虚拟机的指令,获取配置信息,所述配置信息包括命名管道信息;
基于所述命名管道信息创建命名管道,其中,所述命名管道作为所述虚拟机的虚拟接口设备的控制通道;以及
开启所述命名管道,使得宿主机与所述虚拟机之间通过所述命名管道进行通信。


2.根据权利要求1所述的方法,其中,所述基于所述命名管道信息创建命名管道包括:
解析所述配置信息,以从所述配置信息中获取所述命名管道的属性信息;
基于所述属性信息,确定与所述命名管道对应的设备类和与所述命名管道的驱动器对应的驱动类;以及
将所述设备类和所述驱动类注册到qemu面向对象模型中,以完成所述命名管道的创建。


3.根据权利要求1所述的方法,还包括:
确定所述虚拟机要向所述宿主机发送的通知消息的类型;
在确定所述通知消息的类型为指定类型的情况下,向所述宿主机发送所述通知消息;以及
向所述宿主机发送文件描述符,以使得所述宿主机根据所述文件描述符来确定与所述通知消息相关的文件或事件。


4.根据权利要求1所述的方法,还包括:
在所述配置信息中包括多个标识信息的情况下,确定所述配置信息中的标识信息之间是否存在冲突,所述冲突包括同一标识信息分别与不同虚拟接口设备相对应;
在确定所述标识信息之间存在冲突的情况下,基于所述同一标识信息创建一个命名管道;以及
基于所述同一标识信息创建的命名管道生成日志,以便向用户通知在创建所述虚拟机的过程中存在标识信息冲突。


5.根据权利要求1所述的方法,其中,所述配置信息中包括指示信息,所述指示信息用于指示是否由所述宿主机创建所述命名管道,
在确...

【专利技术属性】
技术研发人员:李杨胡松
申请(专利权)人:奇安信科技集团股份有限公司网神信息技术北京股份有限公司
类型:发明
国别省市:北京;11

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

1