一种基于FPGA优化虚拟桌面传输的方法与流程

文档序号:18188328发布日期:2019-07-17 05:27阅读:313来源:国知局
一种基于FPGA优化虚拟桌面传输的方法与流程

本发明属于虚拟桌面技术领域,特别涉及一种基于fpga优化虚拟桌面传输的方法。



背景技术:

随着云计算技术的发展,桌面云技术也正在迅速发展,桌面云采用的是云终端加上服务器的运行模式,数据的存储和运算都集中在服务器上面,根据每个终端的需求不同,实现智能分配。保证了性能的有效利用,降低了在pc采购上的投入,在服务器未达到上限时,只需增加终端就可以了。并且数据是存储在服务器上的,不论是意外断电,还是操作失误导致终端突然无法使用,都能有效的保证数据不丢失,降低了突发状况造成的不必要损失。而集中化带来的另一个好处,就是后期维护的便利。云终端本身采用一体化设计,无需维护,所以只需保证服务器的正常运转就足够。

桌面云与传统的pc相比虽然有很多优势,但是存在无法支持超高清分辨率视频流畅播放的问题,对于广域网无法支持桌面流畅操作,对于单台服务器同时运行多个虚拟机播放视频会导致物理资源消耗过大,用户体验会非常差,这显著制约了桌面云的快速发展。



技术实现要素:

针对现有技术存在的问题,本发明公开一种基于fpga优化虚拟桌面传输的方法。

本发明的技术方案如下:

一种基于fpga优化虚拟桌面传输的方法,包括:

其中,实现上述方法包括服务器端、客户端和spiceserver端;

所述服务器端加装有带有万兆网口的fpga卡;可以直接连接交换机进行网络通信;

改造spiceserver端:让其将取出的桌面和视频直接调用fpga进行视频图像压缩,压缩完成后直接通过所述网口发送到客户端中,在客户端中利用硬件特性进行解压显示;

对于键鼠、usb等其它通道的信息直接通过fpga进行发送,此方法实现对spice协议的全兼容,这样服务器端将需要大量压缩计算的工作卸载到fpga中实现,且fpga的处理速度比物理cpu要高很多,一方面可以满足业务软件对物理资源的需求,另一方面可以提高用户体验,实现超高清视频的流畅播放。

根据本发明优选的,所述基于fpga优化虚拟桌面传输的方法还包括:

定制fpga加速卡,用于利用压缩算法将视频和图像压缩封装在内、将tcp/ip协议栈封装在内;在所述fpga加速卡的内核驱动层编写驱动程序以实现压缩发送和直接发送两种接口,所述fpga卡作为一个网卡使用,用以直接进行网络通信。

根据本发明优选的,对改造spiceserver端添加对于所述fpga加速卡的支持:

当没有fpga加速卡时,所有通道数据通过所述fpga卡正常收发,不能实现优化加速;当有fpga加速卡时,所有通信通道通过fpga加速卡进行通信,实现视频和图像的优化加速。

根据本发明优选的,在建立视频和图像信息通道时,直接调用fpga相关的接口,将从虚拟机直接提取未压缩的原始数据,发送到fpga加速卡,加速卡进行视频和图像的压缩,由fpga加速卡直接发送。本发明将原本需要物理cpu处理的视频和图像压缩工作,直接调用fpga相关的接口,将从虚拟机直接提取未压缩的原始数据,发送到fpga加速卡,并由fpga加速卡进行视频和图像的压缩,为了防止产生瓶颈,数据不再回传到服务器内存中,由fpga加速卡直接发送,从而达到视频图像优化加速的目的。

根据本发明优选的,所述基于fpga优化虚拟桌面传输的方法还包括基于spice虚拟桌面传输协议:

其中,桌面云场景中是一个服务器连接至少一个客户端,每一个客户端显示虚拟桌面,所述客户端与服务器之间通过spice虚拟桌面传输协议实现虚拟桌面的传输;在服务器端运行spiceserver端,在客户端中运行spiceclient;

所述spice虚拟桌面传输协议包括视频、图像、音频、键鼠、usb多个通信通道,每一个通道是针对不同的功能实现,每一个通信通道分别为一个socket。为了提升用户体验,对视频通信通道和图像通信通道进行优化。

本发明的技术优势在于:

本发明所述的方法不但可以保证超高视频播放,还可以同时降低对物理资源的消耗。本发明的主要目的是解决虚拟化环境中用户桌面体验差的问题,基于spice虚拟桌面传输协议,提出了一种基于fpga优化虚拟桌面传输的方法。

附图说明

图1:本发明桌面云架构图;

图2:本发明spice协议通道示意图;

图3:本发明fpga加速优化示意图。

具体实施方式

为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明,但不限于此。

实施例、

如图1所示,桌面云场景中是一个服务器端可以连接多个客户端,每一个终端设备有一个虚拟桌面,客户端与服务器端之间通过spice协议实现虚拟桌面的传输,在服务器端运行spiceserver,在客户端中运行spiceclient,两者按照spice协议相互配合共同完成虚拟桌面的传输。

如图2所示,spice协议分为视频、图像、音频、键鼠、usb、其它等多个通信通道,每一个通信通道是针对不同的功能实现,每一个通道都是一个socket。为了提升用户体验,主要针对视频和图像这两个传输数量最大的通道进行优化。

如图3所示,物理硬件定制一个专用的fpga加速卡,将视频压缩(h.264/h.265)和图像压缩(jpeg/lz/quic)等压缩算法封装在内,同时将tcp/ip协议栈也封装在内,并在内核驱动层编写相关驱动,实现压缩发送和直接发送两种接口,在系统中fpga卡作为一个网卡使用,可以直接进行网络通信。

改造spiceserver添加对于fpga加速卡的支持,当没有加速卡时,所有通道数据通过网卡正常收发,不能实现优化加速。当有加速卡时,所有通道通过fpga加速卡进行通信,实现视频和图像的优化加速。

在建立视频和图像通道时,将原本需要物理cpu处理的视频和图像压缩工作,直接调用fpga相关的接口,将从虚拟机直接提取未压缩的原始数据,发送到fpga加速卡,加速卡进行视频和图像的压缩,为了防止产生瓶颈,数据不再回传到服务器内存中,由fpga加速卡直接发送,从而达到视频图像优化加速的目的。



技术特征:

技术总结
一种基于FPGA优化虚拟桌面传输的方法,包括:其中,实现上述方法包括服务器端、客户端和SPICE Server端;所述服务器端加装有带有万兆网口的FPGA卡;改造SPICE Server端:让其将取出的桌面和视频直接调用FPGA进行视频图像压缩,压缩完成后直接通过所述网口发送到客户端中;在客户端中利用硬件特性进行解压显示;对于键鼠、USB等其它通道的信息直接通过FPGA进行发送,本发明所述的方法不但可以保证超高视频播放,还可以同时降低对物理资源的消耗。本发明的主要目的是解决虚拟化环境中用户桌面体验差的问题,基于SPICE虚拟桌面传输协议,提出了一种基于FPGA优化虚拟桌面传输的方法。

技术研发人员:刘毅枫;王则陆;赵莹;侯亚杰
受保护的技术使用者:山东超越数控电子股份有限公司
技术研发日:2019.03.31
技术公布日:2019.07.16
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1