采用单一端口进行多VDI服务代理的方法与流程

文档序号:34363034发布日期:2023-06-04 18:25阅读:121来源:国知局
采用单一端口进行多VDI服务代理的方法与流程

本发明涉及虚拟桌面基础架构领域,更具体地说,本发明涉及采用单一端口进行多vdi服务代理的方法。


背景技术:

1、目前vdi服务代理基于业务功能实现的核心方法,是通过vdi虚拟桌面基础架构的客户端和服务器之间,存在多个连接通道,包括键鼠通道、图像通道、音频播放通道、录音通道、usb通道,客户端至少会连接一个基础通道和一个桌面传输协议服务,且不同的客户端会根据实际负载情况和数据处理服务连接到不同的vdi虚拟机,不同的客户端分配对应的云桌面服务ip也不一样,当服务器和客户端都处于在局域网里面时,连接和端口可以随意开放,满足上述需求,具有服务器资源利用率高、集中部署减少维护、数据隔离信息安全,以及统一监视和管理用户的优势。

2、但随着当前互联网大环境的变化,远程办公越来越普遍,在远程办公的环境下,通过互联网访问vdi云桌面,为了安全考虑,一般都会通过代理服务器,代理服务器需要开放多个端口,才能对于后端的多个vdi虚拟机,基于每个虚拟机都是对应一个服务,就存在端口数量不够并且端口安全也会降低的问题,而对于客户端和服务器的连接存在多组连接通道的应用,也是不利于代理和映射的,当只开放单一端口时,又会存在端口无法知道客户端连接哪个vdi虚拟机,造成业务无法访问的问题。


技术实现思路

1、为了克服现有技术的上述缺陷,本发明的实施例提供采用单一端口进行多vdi服务代理的方法,通过一种对tcp代理的内容解析方法来解决在开放单一端口的场景下可以支持后端批量vdi虚拟机服务、代理、映射的方法,以解决上述背景技术中提出的问题。

2、为实现上述目的,本发明提供如下技术方案:本发明提供采用单一端口进行多vdi服务代理的方法,该系统包括客户端模块、服务器端模块和数据代理模块,客户端模块包括客户端单元和vdi虚拟机单元,服务器端模块包括vdi代理服务器单元、数据接收发送单元、防火墙端口单元、虚拟桌面基础架构单元,数据代理模块工作在操作系统的应用层,不需要进行连接劫持和其他特殊网络配置,客户端和vdi虚拟机单元独立运行,包括下列步骤:

3、步骤so1、通过客户端连接在防火墙端口d上,将客户端登录的ip地址和数据信息转发到数据代理模块中,由数据代理模块在客户机和服务器之间建立的tcp网络连接上进行tcp三次握手信息的识别并进行业务区分,进一步连接到相应的vdi虚拟机上;

4、步骤so2、接着由vdi代理服务器对客户端发起的请求进行代理回复,完成tcp三次握手,由于三次握手中并不携带具体的协议数据,因此不会对客户端造成影响,当客户端认为三次握手完成后,它会发送真正的协议数据请求,由于每个vdi虚拟机都有自己的唯一标识,所述标识通过名字、uuid常见的算法生成;

5、步骤so3、基于协议数据中,vdi虚拟机的协议在第一个包中就传达了需要连接的虚拟机的标识,最后代理服务器收到该“协议数据”后,按照特定的解析方法进行解析,即可计算出该客户端需要连接的真正vdi虚拟机是哪个,服务运行在哪个端口;

6、步骤so4、最后代理服务器按照计算出来的服务器,直接发起三次握手请求,当vdi虚拟机认为三次握手完成后,将之前b-2中收到的“协议数据”再完整的发送给对应的vdi虚拟机,在两边tcp握手完成交互后,代理模块就可以按照此连接正确转发数据即可,不再需要对数据进行任何解析,也不会影响后续的转发性能,整个方案在不改动防火墙、服务器和虚拟机的情况下,通过增加数据代理模块,在tcp三次握手后的对协议数据解析,完成了对后端vdi虚拟机的正确代理。

7、在一个优选地实施方式中,在一个优选地实施方式中,所述客户端模块中包括客户端单元和vdi虚拟机单元,客户端单元包括数据输入单元和数据输出单元,以及用于连接到vdi服务器的网络连接,通过连接服务器并进行认证用户输入的密码和id,进入虚拟桌面,vdi虚拟机单元向用户提供虚拟桌面环境,并根据客户端的认证信息将用户终端的vdi环境和数据提供给vdi认证联动网关,为用户提供一对一的vdi虚拟机服务。

8、在一个优选地实施方式中,所述数据代理模块工作在操作系统的应用层,不需要进行连接劫持和其它特殊网络配置,并且数据代理模块为一个逻辑层,它可以运行在单独的一个物理服务器上,也可以和其它的公用一个物理服务器,通过将客户端连接在防火墙上的端口转发到数据代理模块中,由数据代理模块在客户机和服务器之间建立的tcp网络连接上进行tcp三次握手信息的识别并进行业务区分,进一步连接到相应的vdi虚拟机上,包括下列步骤:

9、步骤so5、通过客户端连接在防火墙端口d上,将客户端登录的ip地址和数据信息转发到数据代理模块中,由数据代理模块在客户机和服务器之间建立的tcp网络连接上进行tcp三次握手信息的识别并进行业务区分,进一步连接到相应的vdi虚拟机上;

10、步骤so6、接着由vdi代理服务器对客户端发起的请求进行代理回复,完成tcp三次握手,由于三次握手中并不携带具体的协议数据,因此不会对客户端造成影响,当客户端认为三次握手完成后,它会发送真正的协议数据请求,由于每个vdi虚拟机都有自己的唯一标识,所述标识通过名字、uuid常见的算法生成;

11、步骤so7、基于协议数据中,vdi虚拟机的协议在第一个包中就传达了需要连接的虚拟机的标识,最后代理服务器收到该“协议数据”后,按照特定的解析方法进行解析,即可计算出该客户端需要连接的真正vdi虚拟机是哪个,服务运行在哪个端口;

12、步骤so8、最后代理服务器按照计算出来的服务器,直接发起三次握手请求,当vdi虚拟机认为三次握手完成后,将之前a-2中收到的“协议数据”再完整的发送给对应的vdi虚拟机,在两边tcp握手完成交互后,代理模块就可以按照此连接正确转发数据即可,不再需要对数据进行任何解析,也不会影响后续的转发性能,整个方案在不改动防火墙、服务器和虚拟机的情况下,通过增加数据代理模块,在tcp三次握手后的对协议数据解析,完成了对后端vdi虚拟机的正确代理。

13、在一个优选地实施方式中,所述服务器模块中包括vdi代理服务器单元、数据接收发送单元、防火墙端口单元、虚拟桌面基础架构单元,包括下列步骤;

14、步骤so9、数据接收发送单元:当用户在客户端桌面登录虚拟化软件后,建立套接字并完成网络连接,通过数据接收发送单元把信息传送到远程主机上,对于远程主机发送来的信息,通过数据接收发送单元本地主机需要进行接受处理;

15、步骤so10、虚拟桌面基础架构单元:通过运行若干windows虛拟机的vmwareserver,用户以一对一的方式连接到他们的vdi虚拟机,基于安装windows刀片的刀片式服务器,用户以一对一的方式连接到刀片服务器,在数据中心的服务器运行相应操作系统,将用户的桌面进行虚拟化,用户通过客户端设备的瘦客户计算协议与虚拟桌面连接,让用户访问他们的桌面就像是访问传统的本地安装桌面一样;

16、步骤so11、防火墙端口单元:通过在防火墙中开放端口来解决在开放单一端口的场景下支持后端批量vdi虚拟机映射,具有网络安全保护的作用,入侵者必须首先穿越防火墙的安全防线,才能接触目标计算机,并且防火墙上的端口会对流经它的网络通信进行扫描,过滤攻击和封锁病毒,让客户的网络环境更加安全;

17、步骤so12、vdi代理服务器单元:先接收数据接收发送模块传输来的上行数据,将上行数据分包粘包处理之后,解析客户端自定义协议的包头信息,根据包头信息,分发到对应的数据服务器,vdi代理服务器收到各数据服务器传送来的下行数据之后,添加自定义协议包头信息,发送到数据接收发送单元,数据接收发送单元将下行数据分包粘包处理,解析自定义协议包头信息,根据包头信息分流为多组数据,分别发送到对应的本地tcp,本地tcp将数据接收发送单元发来的下行数据转发到对应的vdi虚拟机中。

18、本发明的技术效果和优点:

19、本发明采用了数据代理模块,数据代理模块工作在操作系统的应用层,通过将客户端连接在防火墙上的端口转发到数据代理模块中,由数据代理模块在客户机和服务器之间建立的tcp网络连接上进行tcp三次握手信息的识别并进行业务区分,进一步连接到相应的vdi虚拟机上,在tcp三次握手信息识别确认后,进行协议数据解析,完成对后端vdi虚拟机的正确代理,解决了代理服务器需要开放多个端口才能让客户端和服务器的连接存在多组连接通道应用的问题。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1