串并口映射的方法、云终端及虚拟机的制作方法

文档序号:9551252阅读:964来源:国知局
串并口映射的方法、云终端及虚拟机的制作方法
【技术领域】
[0001]本发明涉及通信技术领域,尤其涉及一种串并口映射的方法、云终端及虚拟机。
【背景技术】
[0002]在云终端连接虚拟机时,很多场景下虚拟机的用户都需要使用云终端的本地串并口设备。但现有技术中大多数的虚拟桌面协议对于云终端的串并口设备映射的支持比较匮乏,如远程桌面协议(Remote Desktop Protocol, RDP)、虚拟机软件Pcoip协议及独立计算环境简单协议(Simple Protocol for Independent Computing Environment, SPICE)等虚拟桌面协议一般缺少对云终端的串并口设备映射的支持;还有一些虚拟桌面协议,如Citrix等虚拟桌面协议,虽然支持云终端的串并口设备映射,但是Citrix的支持程度较低,其应用往往受到限制,不能满足当下的需求。
[0003]上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。

【发明内容】

[0004]本发明的主要目的在于解决通过网络通信的方式将云终端的串并口设备映射到虚拟机上的技术问题。
[0005]为实现上述目的,本发明提供的一种串并口映射的方法,应用于云终端中,所述串并口映射的方法包括以下步骤:
[0006]当串并口设备插入云终端时,获取所述串并口设备的设备信息,并确认所述串并口设备是否需要映射到虚拟机中;
[0007]若是,则发送一映射请求至虚拟机,绑定所述串并口设备并与所述虚拟机建立连接;
[0008]获取所绑定的串并口设备的地址信息,将所述地址信息发送给所述虚拟机;
[0009]当所述虚拟机利用所述地址信息与所述云终端建立网络通信后,接收所述虚拟机发送的获取所述设备信息的指令,根据所述指令将所述设备信息通过所述网络通信的方式发送给所述虚拟机,以使所述串并口设备映射到所述虚拟机中。
[0010]优选地,所述当串并口设备插入云终端时,获取所述串并口设备的设备信息,并确认所述串并口设备是否需要映射到虚拟机中的步骤包括:
[0011 ] 获取预先设置的配置信息;
[0012]判断所述配置信息是否与所述设备信息相对应;
[0013]若是,则确认所述串并口设备需要映射到所述虚拟机中。
[0014]优选地,所述绑定所述串并口设备并与所述虚拟机建立连接的步骤包括:
[0015]将所述云终端的串并口设备驱动替换为映射驱动,以绑定所述串并口设备;
[0016]利用虚拟桌面协议与所述虚拟机建立连接。
[0017]优选地,所述串并口映射的方法还包括:
[0018]接收所述虚拟机通过所述网络通信的方式发送的网络包,所述网络包中包括使用所述串并口设备的请求信息;
[0019]利用所述映射驱动对所述网络包进行解析,得到urb数据包;
[0020]将所述urb数据包发送给底层驱动,利用所述底层驱动根据所述urb数据包与所述串并口设备进行数据交互。
[0021 ] 此外,为实现上述目的,本发明还提供一种串并口映射的方法,应用于虚拟机中,所述串并口映射的方法包括以下步骤:
[0022]当接收到云终端的映射请求时,与所述云终端建立连接,接收所述云终端发送的串并口设备的地址信息;
[0023]通过所述地址信息与所述云终端建立网络通信,并通过所述网络通信的方式向所述云终端发送获取所述串并口设备的设备信息的指令;
[0024]接收所述云终端根据所述指令发送的设备信息并显示,将虚拟机的串并口设备主控驱动替换为映射驱动,以使所述串并口设备映射到所述虚拟机中。
[0025]优选地,,所述串并口映射的方法还包括:
[0026]所述虚拟机的驱动通过所述网络通信的方式将网络包发送给所述云终端,所述网络包包括使用所述串并口设备的请求;
[0027]其中,所述虚拟机的驱动包括上层驱动及所述映射驱动,所述虚拟机的驱动通过所述网络通信的方式将网络包发送给所述云终端的步骤包括:
[0028]所述虚拟机的上层驱动发起使用所述串并口设备的请求,根据所述请求生成urb数据包,将所述urb数据包发送给所述映射驱动;
[0029]利用所述映射驱动将所述urb数据包封装为网络包;
[0030]通过所述网络通信的方式将所述网络包发送给所述云终端。
[0031]优选地,通过所述地址信息与所述云终端建立网络通信,并通过所述网络通信的方式向所述云终端发送获取所述并口设备的设备信息的指令的步骤包括:
[0032]通过IP地址及端口信息与所述云终端建立套接字通信,并通过所述套接字通信的方式向所述云终端发送获取所述并口设备的设备信息的指令。
[0033]此外,为实现上述目的,本发明还提供一种云终端,所述云终端包括:
[0034]确认模块,用于当串并口设备插入云终端时,获取所述串并口设备的设备信息,并确认所述串并口设备是否需要映射到虚拟机中;
[0035]绑定模块,用于若是,则发送一映射请求至虚拟机,绑定所述串并口设备并与所述虚拟机建立连接;
[0036]获取模块,用于获取所绑定的串并口设备的地址信息,将所述地址信息发送给所述虚拟机;
[0037]发送模块,用于当所述虚拟机利用所述地址信息与所述云终端建立网络通信后,接收所述虚拟机发送的获取所述设备信息的指令,根据所述指令将所述设备信息通过所述网络通信的方式发送给所述虚拟机,以使所述串并口设备映射到所述虚拟机中。
[0038]优选地,所述确认模块包括:
[0039]获取单元,用于获取预先设置的配置信息;
[0040]判断单元,用于判断所述配置信息是否与所述设备信息相对应;
[0041]确认单元,用于若是,则确认所述串并口设备需要映射到所述虚拟机中。
[0042]优选地,所述绑定模块包括:
[0043]替换单元,用于将所述云终端的串并口设备驱动替换为映射驱动,以绑定所述串并口设备;
[0044]连接单元,用于利用虚拟桌面协议与所述虚拟机建立连接。
[0045]优选地,所述云终端还包括:
[0046]接收模块,用于接收所述虚拟机通过所述网络通信的方式发送的网络包,所述网络包中包括使用所述串并口设备的请求信息;
[0047]解析模块,用于利用所述映射驱动对所述网络包进行解析,得到urb数据包;
[0048]交互模块,用于将所述urb数据包发送给底层驱动,利用所述底层驱动根据所述urb数据包与所述串并口设备进行数据交互。
[0049]此外,为实现上述目的,本发明还提供一种虚拟机,所述虚拟机包括:
[0050]接收模块,用于当接收到云终端的映射请求时,与所述云终端建立连接,接收所述云终端发送的串并口设备的地址信息;
[0051]建立模块,用于通过所述地址信息与所述云终端建立网络通信,并通过所述网络通信的方式向所述云终端发送获取所述串并口设备的设备信息的指令;
[0052]替换模块,用于接收所述云终端根据所述指令发送的设备信息并显示,将虚拟机的串并口设备主控驱动替换为映射驱动,以使所述串并口设备映射到所述虚拟机中。
[0053]优选地,所述虚拟机还包括:
[0054]发送模块,用于通过所述网络通信的方式将网络包发送给所述云终端,所述网络包包括使用所述串并口设备的请求;
[0055]其中,所述虚拟机的驱动包括上层驱动及所述映射驱动,所述发送模块包括:
[0056]请求单元,用于将所述虚拟机的上层驱动发起使用所述串并口设备的请求,根据所述请求生成urb数据包,将所述urb数据包发送给所述映射驱动;
[0057]封装单元,用于利用所述映射驱动将所述urb数据包封装为网络包;
[0058]发送单元,用于通过所述网络通信的方式将所述网络包发送给所述云终端。
[0059]优选地,所述建立模块具体用于通过IP地址及端口信息与所述云终端建立套接字通信,并通过所述套接字通信的方式向所述云终端发送获取所述并口设备的设备信息的指令。
[0060]本发明一种串并口映射的方法、云终端及虚拟机,通过预置于云终端中的配置信息来确认串并口设备是否要映射到虚拟机中,如果需要映射,则与虚拟机建立连接,通过该连接将串并口设备的地址信息发送给虚拟机,以便虚拟机与云终端建立网络通信,因此,本发明例基于网络通信的串并口映射方案,只要虚拟机和云终端的网络通信运行正常且安装了相应的应用程序即可实现串并口映射,不针对特定的虚拟机协议,其应用更加广泛。
【附图说明】
[0061]图1为本发明串并口映射的方法第一实施例的流程示意图;
[0062]图2为图1中步骤S101的细化流程示意图;
[0063]图3为图1中步骤S102的细化流程示意图;
[0064]图4为本发明串并口映射的方法第二实施例的流程示意图;
[0065]图5为本发明串并口映射的方法第三实施例的流程示意
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1