WO2021008185A1 - 数据传输方法、装置及服务器 - Google Patents
数据传输方法、装置及服务器 Download PDFInfo
- Publication number
- WO2021008185A1 WO2021008185A1 PCT/CN2020/086348 CN2020086348W WO2021008185A1 WO 2021008185 A1 WO2021008185 A1 WO 2021008185A1 CN 2020086348 W CN2020086348 W CN 2020086348W WO 2021008185 A1 WO2021008185 A1 WO 2021008185A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- request
- server
- data processing
- processing device
- instruction
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/452—Remote windowing, e.g. X-Window System, desktop virtualisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/239—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
- H04N21/2393—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/24—Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
Definitions
- the present disclosure relates to the field of cloud computing technology, and in particular to data transmission methods, devices, and servers.
- Cloud desktop technology refers to the technology in which users remotely access the server through the client, and the server provides the desktop image of the current server host to the remote client in a virtual manner.
- the server transmits the image to the user through the screen copy, and the user obtains the desktop image sequence. After the image is compressed, it is transmitted to the cloud terminal through the network, and the terminal decodes the desktop image content.
- the server side often needs to support a large number of client-side 3D image rendering jobs at the same time, which requires very high graphics processing unit (GPU) resources on the server side, but the existing servers generally do not have such powerful GPU resources, even those without 3D rendering capabilities.
- GPU graphics processing unit
- the server needs to be interrupted. During the interrupted period of time, the server will consume a certain amount of time and cost, and the configuration upgrade process needs to transform the interior of the server rack. This process is also very cumbersome. difficult.
- the embodiments of the present disclosure provide a data transmission method, device, and server, which can solve the problems that the server cannot support a large number of 3D image rendering tasks in the current cloud desktop technology and the difficulty of upgrading the server is very high.
- the technical solution is as follows:
- a data transmission method including:
- the server receives the client's request forwarded by the data processing device
- the server obtains the instructions corresponding to the image rendering;
- the instructions include: graphics card configuration instructions, special effects instructions, and drawing instructions;
- the server transmits the instruction to the data processing device so that the data processing device transmits the image data to the client after completing the image rendering according to the instruction; wherein, there is no need to perform image rendering according to the instruction in the server.
- the method further includes:
- the server processes the request according to the request and then transmits the processing result to the data processing device so that the data processing device forwards it to the client.
- the server acquiring the instruction corresponding to image rendering includes:
- the server intercepts the drawing instructions sent by the D3D RT program in the server's operating system to the user mode display driver;
- the server intercepts the graphics card configuration instructions and special effect instructions sent by the graphics kernel subsystem in the server's operating system to the display miniport driver.
- the server operating system generates instructions in accordance with the client's request for 3D image rendering. By intercepting the instructions, the server can be used to perform 3D image rendering, with minimal changes and no burden on the server.
- a data transmission method including:
- the data processing device receives the client's request
- the data processing device sends the client's request to the server;
- the data processing device receives the instruction corresponding to the image rendering sent by the server;
- the instructions include: graphics card configuration instructions, special effects instructions, and drawing instructions;
- the data processing device completes image rendering through the graphics card of the data processing device according to the instruction
- the data processing device sends the image data obtained after the image rendering is completed to the client.
- the data processing device performs image rendering through the graphics card of the data processing device according to the instruction, including:
- the user mode display driver in the operating system of the data processing device converts the drawing instructions into instructions that can be recognized by the graphics card and is executed by the graphics card of the data processing device;
- the display miniport driver in the operating system of the data processing device obtains the graphics card configuration instructions and special effect instructions and executes them by the graphics card of the data processing device.
- the data processing device may be configured with the same operating system as the server, and after receiving the instruction corresponding to the image rendering sent by the server, the image rendering is completed through the graphics card configured by itself according to the instruction execution flow in the operating system.
- the method further includes:
- the data processing device receives the processing result obtained after the server processes the request according to the request;
- the data processing device sends the processing result to the client.
- a server including:
- the receiving module is used to receive the client's request forwarded by the data processing device
- the obtaining module is used to obtain instructions corresponding to image rendering when the request is an image rendering request; wherein the instructions include: graphics card configuration instructions, special effects instructions, and drawing instructions;
- the transmission module is used to transmit the instruction to the data processing device so that the data processing device transmits the image data to the client after completing the image rendering according to the instruction; wherein, there is no need to perform image rendering according to the instruction in the server.
- the server further includes:
- the processing module is configured to, when the request is a request other than the image rendering request, call the transmission module to transmit the processing result to the data processing device after processing the request according to the request, so that the data processing device forwards the data processing device to the client.
- the obtaining module is specifically used for:
- a data processing device includes:
- Communication module processor, graphics card, and memory; the data processing device communicates with the client and server respectively through the communication module; the communication module includes: request receiving module, request forwarding module, instruction receiving module, image acquisition module and image transmission Module
- Request receiving module used to receive client requests
- the request forwarding module is used to send the client's request to the server
- the instruction receiving module is used to receive the instruction corresponding to the image rendering sent by the server by the data processing device when the request is an image rendering request; wherein the instructions include: graphics card configuration instructions, special effects instructions and drawing instructions;
- the memory is used to cache the instruction corresponding to the image rendering received from the server and the image obtained after the image rendering is completed;
- the processor is used to instruct the graphics card to complete image rendering according to instructions
- the image acquisition module is used to acquire the image obtained after the image rendering is completed
- the image transmission module is used to send the image obtained after the image rendering is completed to the client.
- the processor is specifically configured to:
- the user mode display driver in the operating system of the data processing device converts the drawing instructions into instructions that can be recognized by the graphics card and is executed by the graphics card of the data processing device;
- the display miniport driver in the operating system of the data processing device obtains the graphics card configuration instructions and special effect instructions and executes them by the graphics card of the data processing device.
- the data processing device may be configured with the same operating system as the server, and after receiving the instruction corresponding to the image rendering sent by the server, the image rendering is completed through the graphics card configured by itself according to the instruction execution flow in the operating system.
- the image acquisition module is further used to: when the request is a request other than an image rendering request, acquire an image sent by the server after processing according to the request;
- the image transmission module is also used to: send the image sent by the server and obtained after processing according to the request to the client.
- the data processing device receives the client's request and forwards it to the server; when the request is an image rendering request, the server obtains the instruction corresponding to the image rendering; wherein the instruction includes: graphics card configuration Instructions, special effects instructions, and drawing instructions; the server transmits the instructions to the data processing device, and the data processing device transmits the image data to the client after completing the image rendering through its own graphics card according to the instructions; among them, there is no need to perform image processing in the server according to the instructions Rendering. Therefore, the workload of the server is greatly reduced, and even a large number of client-side 3D image rendering tasks can be supported without a graphics processor, and there is no need to upgrade the server.
- FIG. 1 is a schematic diagram of the system architecture of an embodiment of the present disclosure
- Figure 2 is an existing WDDM drive model architecture diagram
- FIG. 3 is a schematic flowchart of a data transmission method provided by an embodiment of the present disclosure
- FIG. 4 is a diagram of the architecture of the WDDM drive model of the server operating system in an embodiment of the present disclosure
- FIG. 5 is a schematic flowchart of another data transmission method provided by an embodiment of the present disclosure.
- FIG. 6 is a schematic structural diagram of a server provided by an embodiment of the present disclosure.
- FIG. 7 is a schematic structural diagram of a data processing device provided by an embodiment of the present disclosure.
- FIG. 8 is a schematic diagram of an implementation effect provided by an embodiment of the present disclosure.
- FIG. 1 A schematic diagram of the system architecture of the embodiment of the present disclosure is shown in Figure 1, where the server and the client communicate through a data processing device, and the client’s request and the server’s response are forwarded by the data processing device, and both the data processing device and the server need Configure an operating system that supports the Windows Display Driver Model (WDDM).
- WDDM Windows Display Driver Model
- WDDM is a display driver architecture supported in the Windows Vista operating system developed by Microsoft.
- WDDM is an innovation of the display driver structure in the Windows XP operating system. While supporting new solutions, graphics and applications, it can provide users with a desktop experience with better performance and higher reliability.
- Figure 2 is a schematic diagram of the architecture of the WDDM drive model.
- the operating system will call the relevant interface functions of the D3D RT (Direct 3D runtime) program, and at the same time send the parameters related to image rendering to the D3D RT program. Graphics card configuration parameters), special effects parameters (parameters related to special effects) and drawing parameters.
- the D3D RT program will interact with the User-Mode Display Driver (UMDD) to obtain the status of the graphics card, and pass drawing instructions to the User-Mode Display Driver (the drawing instructions are generated according to the drawing parameters).
- UMDD User-Mode Display Driver
- the mode display driver After the mode display driver translates the received drawing command, it will put the translated command into the memory to facilitate the display miniport driver to read the translated command.
- the user mode display driver will Notify the D3D RT program instruction translation is completed, at this time, the D3D RT program will use the graphics kernel subsystem (Direct Graphics kernel subsysterm or Dxgkrnl.sys) to notify the display miniport driver to get the translated instructions from the memory, and access them through direct memory (Direct Memory Access, DMA)) method is transferred to the video memory of the graphics card for execution by the graphics card; on the other hand, the D3D RT program generates graphics card configuration instructions (graphics card configuration instructions generated based on graphics card configuration parameters) and special effect instructions (special effect instructions generated based on special effect parameters) ) Is passed to the graphics kernel subsystem.
- graphics kernel subsystem Direct Graphics kernel subsysterm or Dxgkrnl.sys
- DMA Direct Memory Access
- the graphics hardware supplier must provide a user mode display driver and a display miniport driver.
- the user-mode display driver is a dynamic link library loaded at runtime by Microsoft Direct3D (a set of 3D graphics programming interface developed by Microsoft on the Microsoft Windows operating system, which is part of DirectX and is currently widely supported by various graphics card manufacturers) (Dynamic Link Library, DLL).
- the display miniport driver communicates with the DirectX (Multimedia Programming Interface created by Microsoft Corporation) graphics kernel subsystem.
- the graphics kernel subsystem is a system file that the operating system completes image display management, and it participates in all image generation management of the system.
- the embodiment of the present disclosure provides a data transmission method. As shown in FIG. 3, the method includes the following steps:
- the server receives a request from the client forwarded by the data processing device.
- the server and the client communicate through the data processing device.
- the client's request and the server's response are forwarded through the data processing device.
- the data processing device is configured with the same operating system as that on the server, for example, both are installed There are operating systems that support WDDM.
- the server obtains an instruction corresponding to the image rendering; where the instruction includes: a graphics card configuration instruction, a special effect instruction, and a drawing instruction.
- the server acquiring the instruction corresponding to the image rendering in step 102 may specifically include:
- the server intercepts the drawing instructions sent by the D3D RT program in the server's operating system to the user mode display driver;
- the server intercepts the graphics card configuration instructions and special effect instructions sent by the graphics kernel subsystem in the server's operating system to the display miniport driver.
- FIG. 4 shows the WDDM drive model architecture for the server provided in the embodiments of the disclosure.
- a user is added between the D3D RT program in the server's operating system and the user mode display driver.
- Mode filter driver or use virtual driver.
- a kernel mode filter driver or use virtual driver
- the user mode filter driver is used to intercept the drawing instructions transmitted from the D3D RT program to the user mode display driver.
- the user mode filter driver is equivalent to a bridge between the D3D RT program and the user mode display driver. It monitors the commands between them, but does not change the content of the commands themselves.
- the D3D RT program in the operating system of the server when the D3D RT program in the operating system of the server receives the image rendering request sent by the application layer, it will first notify the user mode display driver (such as DrawPrimitive), and the user mode display driver will The received drawing instructions are converted and processed to obtain instructions that the graphics card can recognize, and the graphics memory transferred to the graphics card by DMA is executed by the graphics card.
- the user mode filter driver is used to intercept the drawing instructions before the user mode display driver executes the instruction conversion processing action.
- the kernel mode filter driver is used to intercept the graphics card configuration instructions and special effect instructions sent by the graphics kernel subsystem to the display miniport driver. These instructions are received from the application layer by the D3D RT program and passed to the graphics kernel subsystem.
- a virtual server is set in the WDDM drive model architecture in the operating system of the virtualized server.
- the user mode filter driver is used to act as a user mode display driver in order to intercept drawing instructions
- a virtual display miniport driver is used to act as a display miniport driver in order to configure instructions and special effects instructions for the graphics card.
- the server transmits the instruction to the data processing device so that the data processing device transmits the image data to the client after completing the image rendering according to the instruction; wherein, there is no need to perform image rendering according to the instruction in the server.
- the user mode filter driver sends the intercepted drawing instructions to the data processing device
- the kernel mode filter driver sends the intercepted graphics card configuration instructions and special effect instructions to the data processing device.
- the data processing device operating system uses the data processing device itself according to the aforementioned instructions.
- the graphics card completes the image rendering. Specifically, the operating system of the data processing device completes the image rendering process through the graphics card according to the instructions related to the image rendering, and only needs to refer to the relevant technical data of the graphics rendering image, which will not be described in detail here.
- the data processing device has image rendering capabilities, that is, it is equipped with a graphics processing unit (GPU). According to actual conditions, if there are many 3D image rendering requirements from the client, the data processing device can be equipped with several graphics cards.
- GPU graphics processing unit
- the method further includes:
- the server transmits the processing result to the data processing device after processing the request according to the request, so that the data processing device forwards the data processing device to the client.
- the data processing device receives the request from the client and forwards it to the server; when the request is an image rendering request, the server obtains the instruction corresponding to the image rendering; wherein the instructions include: graphics card configuration instructions, special effects instructions And drawing instructions; the server transmits the instructions to the data processing device, and the data processing device transmits the image data to the client after completing the image rendering through the graphics card configured by itself according to the instructions; wherein, the server does not need to perform image rendering according to the instructions. Therefore, the workload of the server is greatly reduced, and even a large number of client-side 3D image rendering tasks can be supported without a graphics processor, and there is no need to upgrade the server.
- the embodiment of the present disclosure provides another data transmission method. As shown in FIG. 5, the method includes the following steps:
- the data processing device receives a request from a client.
- the data processing device sends the client's request to the server.
- the data processing device receives an instruction corresponding to the image rendering sent by the server; where the instruction includes: a graphics card configuration instruction, a special effect instruction, and a drawing instruction.
- the data processing device completes image rendering through the graphics card of the data processing device according to the instruction.
- the data processing device sends the image data obtained after the image rendering is completed to the client.
- step 204 specifically includes:
- the user mode display driver in the operating system of the data processing device converts the drawing instructions into instructions that can be recognized by the graphics card and is executed by the graphics card of the data processing device;
- the display miniport driver in the operating system of the data processing device obtains the graphics card configuration instructions and special effect instructions and executes them by the graphics card of the data processing device.
- the Microsoft Windows operating system installed on the data processing device supports the WDDM drive model architecture, and the user mode display driver in the data processing device operating system converts the received drawing instructions Obtain instructions that can be recognized by the graphics card and transfer them to the graphics memory of the graphics card through direct memory access (DMA).
- DMA direct memory access
- the image rendering process performed by the data processing device is implemented based on the WDDM model framework shown in FIG. 2.
- the data processing device receives instructions (including configuration instructions for the graphics card, special effects instructions, and drawing instructions) sent by the server through the network ,
- the drawing instruction is composed of one or more functions containing specific parameters, and these functions can be reproduced in the operating system of the data processing device to complete the final 3D image rendering work.
- the received drawing commands are: func1 (parameter 1, parameter 2, parameter 3); func2 (parameter 1, parameter 2); func3 (parameter 1, parameter 2, parameter 3, parameter 4); among them, func1, func2 , Func3 are three exemplary function names given to distinguish different functions.
- the data processing device can execute the three functions in the drawing instruction to perform 3D image rendering (that is, the function reproduction process).
- the method may further include:
- the data processing device receives the processing result obtained by the server after processing the request according to the request.
- the data processing device sends the processing result to the client.
- the data processing device receives the client's request and forwards it to the server; when the request is an image rendering request, the data processing device receives the instruction corresponding to the image rendering sent by the server, where the instruction includes: a graphics card Configuration instructions, special effects instructions, and drawing instructions; the data processing device completes image rendering through the graphics card of the data processing device according to the instructions; the data processing device sends the image data obtained after the image rendering is completed to the client. Therefore, the workload of the server is greatly reduced, and even a large number of client-side 3D image rendering tasks can be supported without a graphics processor, and there is no need to upgrade the server.
- the server 60 includes:
- the receiving module 601 is used to receive the client's request forwarded by the data processing device;
- the obtaining module 602 is configured to obtain instructions corresponding to image rendering when the request is an image rendering request; the instructions include: graphics card configuration instructions, special effects instructions, and drawing instructions;
- the transmission module 603 is configured to transmit the instruction to the data processing device so that the data processing device transmits the image data to the client after completing the image rendering according to the instruction; wherein, there is no need to perform image rendering according to the instruction in the server.
- the server 60 may further include:
- the processing module 604 is configured to, when the request is a request other than the image rendering request, call the transmission module 603 to transmit the processing result to the data processing device after processing the request according to the request, so that the data processing device forwards the data processing device to the client.
- the obtaining module 602 is specifically configured to:
- the data processing device receives the request from the client and forwards it to the server; when the request is an image rendering request, the server obtains the instructions corresponding to the image rendering; wherein the instructions include: graphics card configuration instructions, special effects instructions and drawing Instruction; the server transmits the instruction to the data processing device, and the data processing device transmits the image data to the client after completing the image rendering through the graphics card configured by itself according to the instruction; wherein, the server does not need to perform image rendering according to the instruction. Therefore, the workload of the server is greatly reduced, and even a large number of client-side 3D image rendering tasks can be supported without a graphics processor, and there is no need to upgrade the server.
- the data processing device 70 includes:
- the request receiving module 7011 is used to receive the client's request
- the request forwarding module 7012 is used to send the client's request to the server;
- the instruction receiving module 7013 is configured to receive the instruction corresponding to the image rendering sent by the server by the data processing device when the request is an image rendering request; wherein the instructions include: graphics card configuration instructions, special effects instructions, and drawing instructions;
- the memory 704 is configured to cache the instruction corresponding to the image rendering received from the server and the image obtained after the image rendering is completed;
- the processor 702 is configured to instruct the graphics card to complete image rendering according to instructions
- the image acquisition module 7014 is used to acquire an image obtained after image rendering is completed
- the image transmission module 7015 is used to send the image obtained after the image rendering is completed to the client.
- the processor 702 is specifically configured to:
- the user mode display driver in the operating system of the data processing device converts the drawing instructions into instructions that can be recognized by the graphics card and is executed by the graphics card of the data processing device;
- the display miniport driver in the operating system of the data processing device obtains the graphics card configuration instructions and special effect instructions and executes them by the graphics card of the data processing device.
- the data processing device is configured with an operating system that supports WDDM, and after receiving the instruction corresponding to the image rendering sent by the server, the image rendering is completed through the graphics card configured by itself according to the instruction execution flow in the operating system.
- the image acquisition module 7014 is further configured to: when the request is a request other than an image rendering request, acquire an image sent by the server after processing according to the request;
- the image transmission module 7015 is also used to: send the image sent by the server and obtained after processing according to the request to the client.
- FIG. 8 is a detailed schematic diagram of implementation effects provided by the embodiments of the disclosure.
- the data processing device receives the request from the client and forwards it to the server; when the request is an image rendering request, the data processing device receives the instruction corresponding to the image rendering sent by the server, where the instruction includes: a graphics card Configuration instructions, special effect instructions, and drawing instructions; the data processing device completes image rendering through the graphics card of the data processing device according to the instructions; the data processing device sends the image data obtained after the image rendering is completed to the client. Therefore, the workload of the server is greatly reduced, and even a large number of client-side 3D image rendering tasks can be supported without a graphics processor, and there is no need to upgrade the server.
- the embodiment of the present disclosure also provides a computer-readable storage medium.
- the non-transitory computer-readable storage medium may be a read-only memory (Read Only). Memory, ROM), random access memory (Random Access Memory, RAM), CD-ROM, magnetic tape, floppy disk and optical data storage device, etc.
- the storage medium stores computer instructions for executing the data transmission method described in the embodiment corresponding to FIG. 3/5, which will not be repeated here.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Graphics (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
- Processing Or Creating Images (AREA)
Abstract
Description
Claims (10)
- 一种数据传输方法,其特征在于,包括:服务器接收数据处理装置转发的客户端的请求;当所述请求为图像渲染请求时,所述服务器获取所述图像渲染对应的指令;其中,所述指令包括:显卡配置指令、特效指令及绘图指令;所述服务器将所述指令传输给所述数据处理装置以使所述数据处理装置根据所述指令完成图像渲染后将图像数据传输给所述客户端;其中,在所述服务器内不需要根据所述指令进行图像渲染。
- 根据权利要求1所述的方法,其特征在于,所述方法还包括:当所述请求为除所述图像渲染请求以外的请求时,所述服务器根据所述请求进行处理后将所述处理结果传输给所述数据处理装置以使所述数据处理装置转发给所述客户端。
- 根据权利要求1所述的方法,其特征在于,所述服务器获取所述图像渲染对应的指令,包括:所述服务器截获所述服务器的操作系统中的D3D RT程序向用户模式显示驱动程序发送的所述绘图指令;所述服务器截获所述服务器的操作系统中的图形内核子系统向显示微型端口驱动程序发送的所述显卡配置指令以及所述特效指令。
- 一种数据传输方法,其特征在于,包括:数据处理装置接收客户端的请求;所述数据处理装置向服务器发送所述客户端的请求;当所述请求为图像渲染请求时,所述数据处理装置接收所述服务器发送的所述图像渲染对应的指令;其中,所述指令包括:显卡配置指令、特效指令及绘图指令;所述数据处理装置根据所述指令通过所述数据处理装置的显卡完成图像渲染;所述数据处理装置将完成图像渲染后得到的图像数据发送给所述客户端。
- 根据权利要求4所述的方法,其特征在于,所述方法还包括:当所述请求为除所述图像渲染请求以外的请求时,所述数据处理装置接收所述服务器根据所述请求进行处理后得到的处理结果;所述数据处理装置将所述处理结果发送给所述客户端。
- 一种服务器,其特征在于,包括:接收模块,用于接收数据处理装置转发的客户端的请求;获取模块,用于当所述请求为图像渲染请求时,获取所述图像渲染对应的指令;其中,所述指令包括:显卡配置指令、特效指令及绘图指令;传输模块,用于将所述指令传输给所述数据处理装置以使所述数据处理装置根据所述指令完成图像渲染后将图像数据传输给所述客户端;其中,在所述服务器内不需要根据所述指令进行图像渲染。
- 根据权利要求6所述的服务器,其特征在于,所述服务器还包括:处理模块,用于当所述请求为除所述图像渲染请求以外的请求时,根据所述请求进行处理后调用所述传输模块将所述处理结果传输给所述数据处理装置以使所述数据处理装置转发给所述客户端。
- 根据权利要求6所述的服务器,其特征在于,所述获取模块具体用于:截获所述服务器的操作系统中的D3D RT程序向用户模式显示驱动程序发送的所述绘图指令;截获所述服务器的操作系统中的图形内核子系统向显示微型端口驱动程序发送的所述显卡配置指令以及所述特效指令。
- 一种数据处理装置,其特征在于,包括:通信模块、处理器、显卡、及存储器;所述数据处理装置通过所述通信模块分别与客户端和服务器之间进行通信;所述通信模块包括:请求接收模块、请求转发模块、指令接收模块、图像采集模块和图像传输模块;所述请求接收模块,用于接收所述客户端的请求;所述请求转发模块,用于向所述服务器发送所述客户端的请求;所述指令接收模块,用于当所述请求为图像渲染请求时,所述数据处理 装置接收所述服务器发送的所述图像渲染对应的指令;其中,所述指令包括:显卡配置指令、特效指令及绘图指令;所述存储器,用于缓存从所述服务器接收到的所述图像渲染对应的指令以及完成图像渲染后得到的图像;所述处理器,用于根据所述指令指示所述显卡完成图像渲染;所述图像采集模块,用于采集所述完成图像渲染后得到的图像;所述图像传输模块,用于将所述完成图像渲染后得到的图像发送给所述客户端。
- 根据权利要求9所述的数据处理装置,其特征在于,所述图像采集模块还用于:当所述请求为除所述图像渲染请求以外的请求时,采集所述服务器发送的根据所述请求进行处理后得到的图像;相应的,所述图像传输模块还用于:将所述服务器发送的根据所述请求进行处理后得到的图像发送给所述客户端。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910640112.6 | 2019-07-16 | ||
CN201910640112.6A CN110545415A (zh) | 2019-07-16 | 2019-07-16 | 数据传输方法、装置及服务器 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021008185A1 true WO2021008185A1 (zh) | 2021-01-21 |
Family
ID=68709630
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2020/086348 WO2021008185A1 (zh) | 2019-07-16 | 2020-04-23 | 数据传输方法、装置及服务器 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110545415A (zh) |
WO (1) | WO2021008185A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110557624A (zh) * | 2019-07-16 | 2019-12-10 | 西安万像电子科技有限公司 | 数据传输方法、装置及服务器 |
CN110545415A (zh) * | 2019-07-16 | 2019-12-06 | 西安万像电子科技有限公司 | 数据传输方法、装置及服务器 |
CN111354063B (zh) * | 2020-03-10 | 2023-09-08 | 深信服科技股份有限公司 | 一种三维元素渲染方法、桌面云服务端及桌面云系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102254292A (zh) * | 2010-05-20 | 2011-11-23 | 盛乐信息技术(上海)有限公司 | 远程3d指令渲染系统及方法 |
CN104765636A (zh) * | 2014-01-02 | 2015-07-08 | 华为技术有限公司 | 一种远程桌面图像的合成方法和装置 |
US20160055613A1 (en) * | 2014-03-13 | 2016-02-25 | Huawei Technologies Co., Ltd. | Image Processing Method, Virtual Machine, and Virtual Machine System |
CN107329723A (zh) * | 2017-07-13 | 2017-11-07 | 山东超越数控电子有限公司 | 一种实现DirectDraw加速的方法 |
CN109508212A (zh) * | 2017-09-13 | 2019-03-22 | 深信服科技股份有限公司 | 图形渲染方法、设备及计算机可读存储介质 |
CN110545415A (zh) * | 2019-07-16 | 2019-12-06 | 西安万像电子科技有限公司 | 数据传输方法、装置及服务器 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2165259A1 (en) * | 2007-10-20 | 2010-03-24 | Citrix Systems, Inc. | Methods and systems for remoting three dimensional graphical data |
US9069622B2 (en) * | 2010-09-30 | 2015-06-30 | Microsoft Technology Licensing, Llc | Techniques for load balancing GPU enabled virtual machines |
US9348552B2 (en) * | 2011-11-16 | 2016-05-24 | Cisco Technology, Inc. | Network appliance for transcoding or enriching virtual desktop infrastructure desktop images |
TWI482118B (zh) * | 2012-10-18 | 2015-04-21 | Wistron Corp | 處理圖形運算負載平衡之方法及系統 |
CN103888485B (zh) * | 2012-12-19 | 2018-03-09 | 华为技术有限公司 | 云计算资源的分配方法、装置及系统 |
US9665921B2 (en) * | 2012-12-29 | 2017-05-30 | Futurewei Technologies, Inc. | Adaptive OpenGL 3D graphics in virtual desktop infrastructure |
WO2015042430A1 (en) * | 2013-09-19 | 2015-03-26 | Citrix Systems, Inc. | Transmitting hardware-rendered graphical data |
-
2019
- 2019-07-16 CN CN201910640112.6A patent/CN110545415A/zh active Pending
-
2020
- 2020-04-23 WO PCT/CN2020/086348 patent/WO2021008185A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102254292A (zh) * | 2010-05-20 | 2011-11-23 | 盛乐信息技术(上海)有限公司 | 远程3d指令渲染系统及方法 |
CN104765636A (zh) * | 2014-01-02 | 2015-07-08 | 华为技术有限公司 | 一种远程桌面图像的合成方法和装置 |
US20160055613A1 (en) * | 2014-03-13 | 2016-02-25 | Huawei Technologies Co., Ltd. | Image Processing Method, Virtual Machine, and Virtual Machine System |
CN107329723A (zh) * | 2017-07-13 | 2017-11-07 | 山东超越数控电子有限公司 | 一种实现DirectDraw加速的方法 |
CN109508212A (zh) * | 2017-09-13 | 2019-03-22 | 深信服科技股份有限公司 | 图形渲染方法、设备及计算机可读存储介质 |
CN110545415A (zh) * | 2019-07-16 | 2019-12-06 | 西安万像电子科技有限公司 | 数据传输方法、装置及服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN110545415A (zh) | 2019-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021008183A1 (zh) | 数据传输方法、装置及服务器 | |
WO2021008185A1 (zh) | 数据传输方法、装置及服务器 | |
US9798565B2 (en) | Data processing system and method having an operating system that communicates with an accelerator independently of a hypervisor | |
US10057364B2 (en) | Method and apparatus for remotely running application program | |
US9063793B2 (en) | Virtual server and virtual machine management method for supporting zero client by providing host interfaces from classified resource pools through emulation or direct connection modes | |
US9135024B2 (en) | Playing multimedia content at remote graphics display client | |
CN105122210B (zh) | Gpu虚拟化的实现方法及相关装置和系统 | |
WO2020119316A1 (zh) | 终端系统构架、通信系统及通信方法、存储介质 | |
US8872835B2 (en) | Prevention of DoS attack by a rogue graphics application | |
US8799900B1 (en) | Sharing webcam between guest and host OS | |
CN110458748A (zh) | 数据传输方法、服务器及客户端 | |
WO2022041507A1 (zh) | 3d渲染方法及系统 | |
CN111522670A (zh) | 一种用于Android系统的GPU虚拟化方法、系统及介质 | |
CN109033328B (zh) | 一种访问请求处理方法、装置、设备及可读存储介质 | |
JP7384900B2 (ja) | 仮想マシン・メモリの安全なアクセス | |
KR20150080567A (ko) | 다중-플랫폼 모바일 및 다른 컴퓨팅 디바이스 및 방법 | |
US20130204924A1 (en) | Methods and apparatuses for providing application level device transparency via device devirtualization | |
US11750749B1 (en) | Method to use native scanning properties dialog to scan in scanner redirection | |
US11716428B1 (en) | Method of dynamically mapping scanner names from client to agent | |
US9519493B2 (en) | Populating a client device with graphical images specific to a machine | |
CN113784049A (zh) | 安卓系统虚拟机的摄像头调用方法、电子设备和存储介质 | |
CN110442389B (zh) | 一种多桌面环境共享使用gpu的方法 | |
US20230195491A1 (en) | Device emulation in remote computing environments | |
US10733689B2 (en) | Data processing | |
WO2023216621A1 (zh) | 云桌面的图像处理方法、装置、服务器和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 20839739 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20839739 Country of ref document: EP Kind code of ref document: A1 |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20839739 Country of ref document: EP Kind code of ref document: A1 |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 14-10-2022) |