Data processing method, system and electronic device based on cloud desktop

By using ASP Server for data diversion and permission control, data security issues when multiple clients operate cloud desktops are resolved, and safe and efficient multi-person collaborative operations are achieved.

CN115952480BActive Publication Date: 2025-09-23ALIBABA (CHINA) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310038167.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-01-10
Publication Date
2025-09-23
Estimated Expiration
2043-01-10

AI Technical Summary

Technical Problem

Data security issues are prone to occur when multiple clients operate cloud desktops.

Method used

Data is distributed through the Adaptive Streaming Protocol (ASP) service component ASP Server, and the identification information and device type matching are determined based on the client's operation permission information. The upstream control flow channels of different collaborators are controlled to achieve secure data processing.

Benefits of technology

It improves data security during multi-person collaborative operations on cloud desktops and avoids conflicts and data leaks caused by parallel operations of multiple clients.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115952480B_ABST
    Figure CN115952480B_ABST
Patent Text Reader

Abstract

The present application provides a data processing method, system, and electronic device based on a cloud desktop, relating to the field of cloud computing technology. The method comprises: a server receiving data to be processed for a cloud desktop sent from a client; obtaining identification information of the slave client and the device type corresponding to the data to be processed; if the identification information and the device type match based on the operation permission information of the slave client configured by the master client, the server performs corresponding processing on the data to be processed. In this embodiment, the server determines whether the identification information of the slave client and the device type corresponding to the data to be processed match based on the operation permission information, and processes the data to be processed sent by the slave client with operation permission, thereby improving data security.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of cloud computing technology, and in particular to a data processing method, system, and electronic device based on a cloud desktop. Background Art

[0002] Cloud desktop, also known as desktop virtualization or cloud computer, is a new model that replaces traditional computers. After adopting cloud desktop, users no longer need to purchase a computer host. The central processing unit (CPU), memory, hard disk and other components contained in the host are all virtualized in the back-end server. A single physical server can virtualize multiple virtual hosts. The mainstream front-end equipment uses a thin client to connect to the monitor and keyboard and mouse. After the user installs the thin client, he accesses the virtual host on the back-end server through a unique communication protocol to achieve interactive operations. Cloud desktop not only supports the replacement of traditional computers, but also supports other smart devices such as mobile phones and tablets to access on the Internet. The cloud desktop streaming protocol enables multiple clients to establish a streaming connection with the same cloud desktop at the same time, share and operate the same cloud desktop, and realize multi-person online collaborative office, online design and distance education, etc. However, data security issues are prone to occur when multiple clients operate cloud desktops. Summary of the Invention

[0003] The embodiments of the present application provide a data processing method, system, and electronic device based on a cloud desktop to solve the data security problems that are prone to occur when multiple clients operate a cloud desktop.

[0004] In a first aspect, an embodiment of the present application provides a data processing method based on a cloud desktop, the method being applied to a server deployed by the cloud desktop, comprising:

[0005] Receive data to be processed for the cloud desktop sent from the client;

[0006] Obtain identification information from the client and the device type corresponding to the data to be processed;

[0007] If it is determined based on the operation authority information from the client that the identification information and the device type match, the data to be processed is processed accordingly to implement the function of the cloud desktop corresponding to the data to be processed.

[0008] In a second aspect, an embodiment of the present application provides a data processing method based on a cloud desktop, which is applied to a primary client and includes:

[0009] Configure the operation permission information from the client and send it to the server so that the server obtains the identification information from the client and the device type corresponding to the data to be processed sent from the client, and if the server determines that the identification information and the device type match based on the operation permission information, the server processes the data to be processed accordingly to realize the function of the cloud desktop corresponding to the data to be processed.

[0010] In a third aspect, an embodiment of the present application provides a data processing method based on a cloud desktop, which is applied to a client and includes:

[0011] Sending the data to be processed for the cloud desktop to the server so that the server obtains the identification information from the client and the device type corresponding to the data to be processed, and if the server determines that the identification information and the device type match based on the operation authority information from the client, the server processes the data to be processed accordingly to realize the function of the cloud desktop corresponding to the data to be processed.

[0012] In the fourth aspect, an embodiment of the present application provides a data processing system based on a cloud desktop, the system including a server, a master client and a slave client deployed by the cloud desktop; the server is used to execute the methods in the above-mentioned first aspect and various implementation methods of the first aspect; the master client is used to execute the method in the above-mentioned second aspect; and the slave client is used to execute the method in the above-mentioned third aspect.

[0013] In a fifth aspect, an embodiment of the present application provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory, wherein the processor implements any of the above methods when executing the computer program.

[0014] In a sixth aspect, an embodiment of the present application provides a computer-readable storage medium, in which a computer program is stored. When the computer program is executed by a processor, any of the above methods is implemented.

[0015] Compared with the prior art, this application has the following advantages:

[0016] This application provides a cloud desktop-based data processing method, system, and electronic device. A server receives pending data for the cloud desktop sent from a client; obtains identification information from the client and the device type corresponding to the pending data; and if the identification information and the device type match based on the operating permission information from the client, the server processes the pending data accordingly. In this embodiment, the server determines whether the identification information from the client and the device type corresponding to the pending data match based on the operating permission information, and processes the pending data sent from the client with operating permission, thereby improving data security.

[0017] The above description is only an overview of the technical solution of this application. In order to more clearly understand the technical means of this application, it can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of this application more obvious and easy to understand, the specific implementation methods of this application are listed below. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] In the accompanying drawings, unless otherwise specified, the same reference numerals throughout the multiple drawings represent the same or similar components or elements. These drawings are not necessarily drawn to scale. It should be understood that these drawings only depict some embodiments according to the present application and should not be regarded as limiting the scope of the present application.

[0019] Figure 1 A schematic diagram of an application scenario of the cloud desktop-based data processing method provided in this application;

[0020] Figure 2 A schematic diagram of an ASP Server splitting streaming data according to an embodiment of the present application;

[0021] Figure 3 This is a flow chart of a cloud desktop-based data processing method according to an embodiment of the present application;

[0022] Figure 4 This is a signaling diagram of the data interaction process between the master client, slave client and server in one embodiment of the present application;

[0023] Figure 5 A schematic diagram of offloading data corresponding to a port channel according to an embodiment of the present application;

[0024] Figure 6 This is a schematic diagram of the data processing process of the adaptive streaming protocol ASP offload collaborative authority controller according to an embodiment of the present application;

[0025] Figure 7 This is a flow chart of a cloud desktop-based data processing method according to an embodiment of the present application;

[0026] Figure 8 This is a flow chart of a cloud desktop-based data processing method according to an embodiment of the present application;

[0027] Figure 9 This is a structural block diagram of a cloud desktop-based data processing device according to an embodiment of the present application;

[0028] Figure 10 This is a structural block diagram of a cloud desktop-based data processing device according to an embodiment of the present application;

[0029] Figure 11 A structural block diagram of a cloud desktop-based data processing device according to an embodiment of the present application; and

[0030] Figure 12 A block diagram of an electronic device used to implement an embodiment of the present application. DETAILED DESCRIPTION

[0031] Hereinafter, only certain exemplary embodiments are briefly described. As will be appreciated by those skilled in the art, the described embodiments may be modified in various ways without departing from the spirit or scope of the present application. Therefore, the drawings and description are to be regarded as illustrative in nature and not restrictive.

[0032] To facilitate understanding of the technical solutions of the embodiments of the present application, the following describes the related technologies of the embodiments of the present application. The following related technologies can be combined with the technical solutions of the embodiments of the present application as optional solutions, and all of them fall within the scope of protection of the embodiments of the present application.

[0033] Figure 1 This is a schematic diagram of an application scenario of the cloud desktop-based data processing method provided in this application. The cloud desktop can specifically include virtualized desktop resources allocated by the enterprise to employees for cloud office use, or it can be a cloud-based virtualized desktop resource used for multi-person collaboration in scenarios such as online design and distance education. In this embodiment, the cloud desktop is deployed in the form of a virtual machine on a physical server. Figure 1 The cloud desktop Guest OS shown represents the virtual machine operating system of the cloud desktop. The method in this embodiment can be implemented using the Adaptive Streaming Protocol (ASP) service component ASP Server. The ASP Server is deployed in the virtual machine and is used to perform data streaming, allowing multiple clients to simultaneously establish streaming connections with the same cloud desktop and share operations on the same cloud desktop.

[0034] In this embodiment, the client where the mainstream is located (the corresponding user is the resource owner) is the master client, and the master client pre-configures the operation authority information of each slave client, such as Figure 1 The resource owner sets the collaboration policy. The operation permission information includes a first association between the device type that the slave client has operation permission for and the slave client's identification information. The slave clients include: Client 1 for the collaborative stream (the corresponding user is Collaborator 1 with mouse access), Client 2 for the collaborative stream (the corresponding user is Collaborator 2 with microphone access), and Client 3 for the collaborative stream (the corresponding user is Collaborator 3 without control rights). The master client and slave clients log in to the cloud desktop separately.

[0035] The ASP offload collaborative permission controller in the ASP Server receives the operation permission information of multiple slave clients sent by the master client, and notifies each slave client to open the channel corresponding to the device type for which they have operation permission based on the operation permission information. The ASP offload collaborative permission controller can replicate and distribute downlink data, and distribute downlink streaming data to the master client and multiple slave clients through a broadcast strategy. The downlink streaming data can include screenshot data and audio and video data of the display area in the cloud desktop. The ASP offload collaborative permission controller can also control the uplink control flow channel switches of different collaborators. The master client can open multiple channels, including: input channel, record channel, port channel, etc. The ASP offload collaborative permission controller notifies the slave client to open the channel corresponding to the device type for which they have operation permission based on the operation permission information. For example, if slave client 1 has the right to use the mouse, the input channel corresponding to the mouse will be opened; if slave client 2 has the right to use the microphone, the record channel corresponding to the microphone will be opened; and slave client 3 without control rights has no right to open the channel.

[0036] ASP Server splits the streaming data, such as Figure 2 As shown, the display channel is associated with the display, and the data corresponding to the display is transmitted through the display channel, for example, the screenshot data of the display area of ​​the cloud desktop. The playback channel is associated with the sound card, and the data corresponding to the sound card is transmitted through the playback channel, for example, data that needs to play sound for recording, video recording, etc. The record channel is associated with the microphone, and the data corresponding to the microphone is transmitted through the record channel. The input channel is associated with the mouse and keyboard, and the data corresponding to the mouse and keyboard is transmitted through the input channel. The port channel is associated with other external devices, and other external devices are devices that need to be redirected by the Universal Serial Bus (USB) port, such as printers, cameras, and scanners. Among them, the display channel and the playback channel can be used for the transmission of downlink data, that is, the server sends data to the main client and the slave client. The record channel and the input channel can be used for the transmission of uplink data, that is, the main client and the slave client send data to the server. The port channel can be used for the transmission of uplink data and downlink data.

[0037] After the master client and the slave client establish a connection with the cloud desktop, each slave client can upload the data to be processed through the channel corresponding to the device type with operation permission. After the ASP diversion collaborative permission controller receives the data to be processed sent by the slave client, it obtains the identification information of the slave client and the device type corresponding to the data to be processed, and determines whether the identification information and the device type match based on the operation permission information of the slave client. If they match, the data to be processed is processed accordingly. For example, if the data to be processed is the operation data of the mouse or keyboard, the operation data of the mouse or keyboard is processed to obtain visual data, and the visual data is sent to the master client and the slave client, so that the users of the master client and the slave client can view the cloud desktop display content after the mouse or keyboard operation.

[0038] In this embodiment, by configuring the operation permission information from the client, determining whether the identification information from the client and the device type corresponding to the data to be processed match based on the operation permission information, and processing the data to be processed sent by the client with operation permission, data security can be improved.

[0039] The present application embodiment provides a data processing method based on cloud desktop, such as Figure 3 FIG2 is a flow chart of a data processing method based on a cloud desktop according to an embodiment of the present application. The method is applied to a server deployed by the cloud desktop, including:

[0040] Step S301: receiving data to be processed for the cloud desktop sent from the client.

[0041] Step S302: Obtain identification information from the client and the device type corresponding to the data to be processed.

[0042] Step S303: If it is determined based on the operation authority information from the client that the identification information and the device type match, the data to be processed is processed accordingly to implement the function of the cloud desktop corresponding to the data to be processed.

[0043] The data to be processed may be operational data generated by operating the cloud desktop through a device, such as text input via a keyboard or object control via a mouse. After receiving the data to be processed, the server parses the data and, based on the parsing results, obtains the client's identification information and the device type corresponding to the data to be processed. Device types include at least one of the following: mouse, keyboard, microphone, printer, camera, and scanner.

[0044] Based on the operation permission information of the slave client, it is determined whether the identification information and the device type match. The operation permission information indicates which types of devices the slave client has control permission for. If the identification information and the device type match, it means that the slave client sending the data to be processed has control permission for that type of device. The data to be processed is then processed accordingly. For example, if the data to be processed is keyboard operation data, the keyboard operation data is processed to obtain visualization data. The visualization data is then sent to the master client and the slave client, allowing the users of the master client and the slave client to view a line of text entered by the user of the slave client through keyboard operation displayed in the display area of ​​the cloud desktop.

[0045] The cloud desktop-based data processing method provided in an embodiment of the present application receives data to be processed for the cloud desktop sent from a client; obtains identification information from the client and the device type corresponding to the data to be processed; and if it is determined based on the operation permission information that the identification information and the device type match, then the data to be processed is processed accordingly. In this embodiment, whether the identification information from the client and the device type corresponding to the data to be processed match is determined based on the operation permission information, and the data to be processed sent from the client with operation permission is processed, thereby improving data security.

[0046] In one implementation, before determining that the identification information and the device type match based on the operation permission information from the client, the method also includes: establishing a first association relationship between the device type of the external device and the corresponding channel type; obtaining the device type corresponding to the data to be processed, including: determining the channel type corresponding to the data to be processed; and determining the device type corresponding to the data to be processed based on the channel type and the first association relationship.

[0047] In actual applications, the server uses the ASP Server to split streaming data and establish a first association between device types and channels. A channel can be a channel for uplink data transmission. A record channel is associated with a microphone, and data corresponding to the microphone is transmitted through the record channel. An input channel is associated with a mouse and keyboard, and data corresponding to the mouse and keyboard is transmitted through the input channel. A port channel is associated with other external devices, such as printers, cameras, and scanners, that require USB port redirection.

[0048] After parsing the data to be processed, the channel type corresponding to the data to be processed is obtained. According to the channel type, the corresponding device type is searched in the first association relationship to obtain the operation data of the type of device of which the data to be processed belongs.

[0049] In one implementation, the channel type includes a port channel, the port channel corresponds to multiple ports, and the first association relationship includes a second association relationship between a device type and a port; obtaining the device type corresponding to the data to be processed includes: determining the port corresponding to the data to be processed; and determining the device type corresponding to the data to be processed based on the port and the second association relationship.

[0050] If the channel type is a port channel, when the server establishes a first association between the channel type and the device type, the first association includes a second association between the port corresponding to the port channel and the device type. The port channel corresponds to multiple ports, and different ports can be identified by port numbers. Different ports are associated with different device types. For example, port Port0 is associated with a printer device, port Port1 is associated with a scanner device, and port Port2 is associated with a camera device. If the data to be processed corresponds to a port channel, the data packet header contains a port number. After parsing the data to be processed, the port number can be obtained. By querying the second association based on the port number, the device type corresponding to the data to be processed can be obtained.

[0051] In one implementation, before determining whether the identification information and the device type match based on the operation permission information of the slave client, the method also includes: obtaining operation permission information corresponding to multiple slave clients from the master client in advance; the operation permission information includes a third association relationship between the device type that the slave client has operation permission and the identification information of the slave client.

[0052] In actual applications, after the server authenticates the master client and slave clients, it obtains the slave client's operation permission information from the master client. This operation permission information may be configured by the master client for multiple slave clients and sent to the server. The operation permission information includes a third association between the device types for which the multiple slave clients have operation permissions and the slave client's identification information. For example, slave client 1 has mouse usage permissions; slave client 2 has microphone usage permissions; and slave client 3 has no device usage permissions.

[0053] In one implementation, before receiving the to-be-processed data for the cloud desktop sent from the client, the method further includes: notifying the client to open a channel corresponding to a device type with operation permission according to the operation permission information.

[0054] The server sends notification messages to multiple slave clients based on their respective operating permissions. These clients then activate the uplink channels corresponding to the device types for which they have permission, and then send data to the server through their corresponding uplink channels. For example, if slave client 1 has mouse access, it activates the corresponding input channel; if slave client 2 has microphone access, it activates the corresponding record channel. Slave client 3, which lacks control rights, has no access to the uplink channel and can only receive downlink data from the server through the downlink channel.

[0055] In this embodiment, notification messages are sent to multiple slave clients based on the operation permission information corresponding to the multiple slave clients. The multiple slave clients open the uplink channels corresponding to the device types with operation permissions according to the notification messages, and send data through the uplink channels with their respective operation permissions. Different clients have different operation permissions, which can avoid conflicts caused by parallel operations of multiple clients.

[0056] In one example, the signaling diagram of the data interaction process between the master client, the slave client and the server is as follows: Figure 4 In this embodiment, the Owner Client is the master client, Collaborator Client 1 and Collaborator Client 2 are slave clients, and the Server traffic diversion controller of the ASP cloud desktop is deployed in the server. Users Owner, Collaborator 1 and Collaborator 2 log in to their respective clients. The master client and the cloud desktop establish a connection, as shown in the following figure. Figure 4 As shown in: (1) The resource owner client connects to the guest cloud desktop and establishes an ASP mainstream connection. The two slave clients establish connections with the cloud desktop respectively, as shown in Figure 4 As shown in: (2.1) Collaborator 1's client connects to the Guest cloud desktop, establishes an ASP collaborative flow connection, and obtains downstream streaming data; (2.2) Like Collaborator 1, Collaborator 2 connects to the Guest cloud desktop, similarly establishes an ASP collaborative flow connection, and obtains downstream streaming data. The master client configures the operation permission information of the slave client, as shown in Figure 4 As shown in (3.1), the resource owner sets the collaboration policy, allowing collaborator 1 to control the keyboard and mouse, and allowing collaborator 2 to use the microphone. The server notifies the two slave clients to open the channels corresponding to the device types for which they have operation permissions, based on the operation permission information from the client. Figure 4 As shown in: (3.2) The flow controller notifies the collaborator 1 client to open the uplink input channel through the ASP stream; (3.3) It notifies the collaborator 2 client to open the record channel. Each slave client sends the data to be processed to the server through its own opened channel, as shown in Figure 4 As shown in the figure: Collaborator 1 performs mouse operations, (4.1) the mouse control flow is upstreamed to the shunt controller through the ASP stream input channel; Collaborator 2 uses the microphone, (4.2) the microphone data is upstreamed to the shunt controller through the record channel.

[0057] In one implementation, the device type includes a mouse or a keyboard, and the data to be processed includes the operation data of the mouse or keyboard; if the identification information and the device type match based on the operation permission information of the slave client, the data to be processed is processed accordingly, including: processing the operation data of the mouse or keyboard to obtain visualization data, and sending the visualization data to the master client and the slave client.

[0058] After the master client and the slave client establish a connection with the cloud desktop, each slave client can upload the data to be processed through the channel corresponding to the device type with operation permission. After the server receives the data to be processed sent by the slave client, it determines whether the identification information of the slave client and the device type match based on the operation permission information of the slave client. If they match, the data to be processed is processed accordingly. For example, if the data to be processed is the operation data of the mouse or keyboard, the operation data of the mouse or keyboard is processed to obtain visualization data, and the visualization data is sent to the master client and the slave client, so that the users of the master client and the slave client can view the display content of the display area of ​​the cloud desktop after the mouse or keyboard operation.

[0059] In one implementation, the device type includes a microphone, and the data to be processed includes audio data obtained through the microphone; if the identification information and the device type match based on the operation permission information of the slave client, the data to be processed is processed accordingly, including: storing the audio data or sending the audio data to the master client and the slave client for playback.

[0060] For example, the user from the client collects audio data through the microphone and sends it to the server. After receiving the audio data sent from the client, the server parses it. According to the analysis result, it is known that the channel type corresponding to the data is recordchannel. According to the operation permission information, it is determined that the slave client has the authority to control the microphone. According to the channel type and the first association relationship, it can be known that the device corresponding to the data is a microphone. The audio data is stored or sent as downlink data to the main client and the slave client for playback.

[0061] In one implementation, the device type includes a device that requires port redirection; the number of slave clients is multiple; if the identification information and the device type match based on the operation permission information from the client, the data to be processed is processed accordingly, including: merging data packets of the multiple data to be processed sent separately from the client, and sending the merged data packets to the drivers of the multiple devices that require port redirection corresponding to the multiple slave clients through the ports corresponding to the port identifiers carried in the multiple data to be processed.

[0062] Port redirection can include redirection of multiple ports, such as USB ports, serial ports, parallel ports, etc. Taking the devices redirected by USB ports as an example, the devices can include any of the following: printers, cameras, and scanners.

[0063] For the pending data corresponding to the device that needs to be port redirected, multiple data packets sent from the client are merged to obtain a merged data packet. According to the port corresponding to the port identifier carried in the merged data packet, the merged data packet is sent to the drivers of the multiple devices corresponding to the client that need to be port redirected. The driver then unpacks the data and drives the external device to process the unpacked data separately before outputting it.

[0064] In one example, a schematic diagram of splitting the data corresponding to the port channel is shown in FIG. Figure 5As shown. Client a is connected to cloud peripheral A. Cloud peripheral A receives data dataA corresponding to Port1 via port USB-A. Cloud peripheral A includes multiple ports Port1, Port2, and Port1N. Client a sends data dataA corresponding to port Port1 of cloud peripheral A to the adaptive streaming protocol component ASP Server in the cloud desktop. Client b is connected to cloud peripheral B. Cloud peripheral B receives data dataB corresponding to port1 via port USB-B. Cloud peripheral B includes multiple ports Port1, Port2, and Port1N. Client b sends data corresponding to port Port1 of cloud peripheral B to the adaptive streaming protocol component ASP Server in the cloud desktop. ASP Server packages dataA and dataB and, based on the port identifier carried in the combined data packet and the pipe PIPE1 corresponding to Port1, sends the combined data packet to the drivers of the external devices on clients a and b that require port redirection. The drivers then unpack the data and drive the external devices to process the unpacked data dataA and dataB separately before outputting them. It is understandable that the data corresponding to the port channel involves not only uplink data processing but also downlink data processing. The above processing process is the uplink data processing process, and the downlink data processing process is the opposite of the above processing process, which will not be repeated here.

[0065] Wherein, cloud peripherals A and B may be printers, and dataA and dataB are printer data. Before dataA and dataB are packaged, the adaptive streaming protocol ASP offload collaborative permission controller is used to determine whether slave client a and slave client b have printer control permissions.

[0066] Figure 6 This is a diagram of the data processing process of the adaptive streaming protocol ASP offload collaborative authority controller. Figure 5 , from client a and client b, any client is used as the collaborator client, and the printer data is sent to the ASP split collaborative authority controller (as shown in the printer data uplink in the figure). The ASP split collaborative authority controller first identifies the collaborator, identifies the client's identification information from the printer data, as shown in the identification data clientID in the figure, and then identifies the channel type, identifies the data as the port channel port channel (as shown in the identification data as portchannel data in the figure), and then identifies the port number port number, identifies the port number as 0, and queries the association between the port and the device, as shown in the figure. Figure 6The query device mapping table shown in the figure identifies that the device corresponding to port 0 is a printer device. The operation permission information configured by the main client is used to determine whether the collaborator client has the authority to control the printer, that is, whether the identification information of the collaborative client and the printer device match. If not, the owner is allowed. If not, the data is discarded and no response is given. If allowed, the data is packaged (the data shown in the figure continues to be processed by asp pack) and the following is executed. Figure 5 The data processing steps after packaging are shown.

[0067] The present application also provides a data processing method based on cloud desktop, such as Figure 7 The flowchart of a cloud desktop-based data processing method according to an embodiment of the present application is shown. The method is applied to a primary client and includes:

[0068] Step S701, configure the operation permission information from the client and send it to the server, so that the server obtains the identification information from the client and the device type corresponding to the data to be processed sent from the client, and if the server determines that the identification information and the device type match based on the operation permission information, the server performs corresponding processing on the data to be processed to realize the function of the cloud desktop corresponding to the data to be processed.

[0069] The execution subject in this embodiment is the master client, and the data interaction processing process between the master client, the slave client and the server is the same as the processing process in the above method embodiment, which will not be repeated here.

[0070] In a cloud desktop-based data processing method provided in an embodiment of the present application, a master client configures the operation permission information of a slave client and sends it to a server, so that the server obtains the identification information of the slave client and the device type corresponding to the data to be processed sent from the client. If the server determines that the identification information and the device type match based on the operation permission information, the server then processes the data to be processed accordingly to implement the cloud desktop function corresponding to the data to be processed. In this embodiment, the server determines whether the identification information of the slave client and the device type corresponding to the data to be processed match based on the operation permission information configured by the master client, and processes the data to be processed sent by the slave client with operation permission, thereby improving data security.

[0071] The present application embodiment provides a data processing method based on cloud desktop, such as Figure 8 The flowchart of a data processing method based on a cloud desktop according to an embodiment of the present application is shown. The method is applied to a client and includes:

[0072] Step S801, sending the data to be processed for the cloud desktop to the server, so that the server obtains the identification information from the client and the device type corresponding to the data to be processed, and if the server determines that the identification information and the device type match based on the operation authority information from the client, the server processes the data to be processed accordingly to realize the function of the cloud desktop corresponding to the data to be processed.

[0073] The execution subject in this embodiment is the slave client, and the data interaction processing process between the master client, the slave client and the server is the same as the processing process in the above method embodiment, which will not be repeated here.

[0074] The cloud desktop-based data processing method provided in an embodiment of the present application sends data to be processed for the cloud desktop from a client to a server, so that the server obtains the identification information of the slave client and the device type corresponding to the data to be processed. If the server determines that the identification information and the device type match based on the operation permission information of the slave client, the server then processes the data to be processed accordingly to implement the cloud desktop function corresponding to the data to be processed. In this embodiment, the server determines whether the identification information of the slave client and the device type corresponding to the data to be processed match based on the operation permission information configured by the master client, and processes the data to be processed sent by the slave client with operation permission, which can improve data security.

[0075] Corresponding to the application scenario and method of the method provided in the embodiment of the present application, the embodiment of the present application also provides a data processing device based on a cloud desktop. Figure 9 FIG2 is a block diagram of a data processing device based on a cloud desktop according to an embodiment of the present application, which includes:

[0076] The receiving module 901 is configured to receive data to be processed for the cloud desktop sent from the client.

[0077] The acquisition module 902 is configured to acquire identification information from the client and the device type corresponding to the data to be processed.

[0078] The processing module 903 is used to process the data to be processed accordingly if it is determined based on the operation authority information from the client that the identification information and the device type match, so as to realize the function of the cloud desktop corresponding to the data to be processed.

[0079] The cloud desktop-based data processing device provided in an embodiment of the present application receives data to be processed for the cloud desktop sent from a client; obtains identification information from the client and the device type corresponding to the data to be processed; and if it is determined based on operation permission information that the identification information and the device type match, then processes the data to be processed accordingly. In this embodiment, by determining whether the identification information from the client and the device type corresponding to the data to be processed match based on the operation permission information, and processing the data to be processed sent from the client with operation permission, data security can be improved.

[0080] In one implementation, the device is also used to: establish a first association relationship between the device type of the external device and the corresponding channel type before determining the match between the identification information and the device type based on the operation permission information from the client; when the acquisition module 902 obtains the device type corresponding to the data to be processed, it is used to: determine the channel type corresponding to the data to be processed; and determine the device type corresponding to the data to be processed based on the channel type and the first association relationship.

[0081] In one implementation, the channel type includes a port channel, the port channel corresponds to multiple ports, and the first association relationship includes a second association relationship between a device type and a port; when obtaining the device type corresponding to the data to be processed, the acquisition module 902 is used to: determine the port corresponding to the data to be processed; and determine the device type corresponding to the data to be processed based on the port and the second association relationship.

[0082] In one implementation, the device is also used to: before determining the match between identification information and device type based on the operation permission information of the slave client, obtain operation permission information corresponding to multiple slave clients from the master client in advance; the operation permission information includes a third association relationship between the device type that the slave client has operation permission and the identification information of the slave client.

[0083] In one implementation, the device is further configured to: before receiving the to-be-processed data for the cloud desktop sent from the client, notify the client to open a channel corresponding to the device type with operation permission according to the operation permission information.

[0084] In one implementation, the device type includes a mouse or a keyboard, and the data to be processed includes operation data of the mouse or keyboard; the processing module 903 is used to: process the operation data of the mouse or keyboard to obtain visualization data, and send the visualization data to the master client and the slave client.

[0085] In one implementation, the device type includes a microphone, and the data to be processed includes audio data acquired through the microphone; the processing module 903 is configured to store the audio data or send the audio data to the master client and the slave client for playback.

[0086] In one implementation, the device type includes a device that requires port redirection; the number of slave clients is multiple; and the processing module 903 is used to: merge data packets of multiple data to be processed sent separately from the clients, and send the merged data packets to the drivers of the multiple devices that require port redirection corresponding to the clients through the ports corresponding to the port identifiers carried in the multiple data to be processed.

[0087] The functions of each module in each device in the embodiment of the present application can be referred to the corresponding description in the above method, and have corresponding beneficial effects, which will not be repeated here.

[0088] Corresponding to the application scenario and method of the method provided in the embodiment of the present application, the embodiment of the present application also provides a data processing device based on a cloud desktop. Figure 10 FIG2 is a block diagram of a data processing device based on a cloud desktop according to an embodiment of the present application, which includes:

[0089] Configuration module 1001 is used to configure the operation permission information from the client and send it to the server, so that the server obtains the identification information from the client and the device type corresponding to the data to be processed sent from the client, and if the server determines that the identification information and the device type match based on the operation permission information, the server performs corresponding processing on the data to be processed to realize the function of the cloud desktop corresponding to the data to be processed.

[0090] The cloud desktop-based data processing device provided in an embodiment of the present application configures operation permission information from a client and sends it to a server, so that the server obtains the identification information of the client and the device type corresponding to the data to be processed sent from the client. If the server determines that the identification information and the device type match based on the operation permission information, the server processes the data to be processed accordingly to implement the cloud desktop function corresponding to the data to be processed. In this embodiment, the server determines whether the identification information of the slave client and the device type corresponding to the data to be processed match based on the operation permission information configured by the master client, and processes the data to be processed sent by the slave client with operation permission, thereby improving data security.

[0091] The functions of each module in each device in the embodiments of the present application can be found in the corresponding description in the above method, and have corresponding beneficial effects, which will not be repeated here.

[0092] Corresponding to the application scenario and method of the method provided in the embodiment of the present application, the embodiment of the present application also provides a data processing device based on a cloud desktop. Figure 11 FIG2 is a block diagram of a data processing device based on a cloud desktop according to an embodiment of the present application, which includes:

[0093] The sending module 1101 is used to send the data to be processed for the cloud desktop to the server, so that the server obtains the identification information from the client and the device type corresponding to the data to be processed. If the server determines that the identification information and the device type match based on the operation authority information from the client, the server processes the data to be processed accordingly to realize the function of the cloud desktop corresponding to the data to be processed.

[0094] The cloud desktop-based data processing device provided in an embodiment of the present application sends data to be processed for the cloud desktop to a server, so that the server obtains the identification information of the slave client and the device type corresponding to the data to be processed. If the server determines that the identification information and the device type match based on the operation permission information of the slave client, the server then processes the data to be processed accordingly to implement the cloud desktop function corresponding to the data to be processed. In this embodiment, the server determines whether the identification information of the slave client and the device type corresponding to the data to be processed match based on the operation permission information configured by the master client, and processes the data to be processed sent by the slave client with operation permission, thereby improving data security.

[0095] The functions of each module in each device in the embodiments of the present application can be found in the corresponding description in the above method, and have corresponding beneficial effects, which will not be repeated here.

[0096] Corresponding to the application scenario and method of the method provided in the embodiment of the present application, the embodiment of the present application also provides a data processing system based on a cloud desktop. The system includes: a server, a master client, and a slave client.

[0097] The server is used to: receive the data to be processed for the cloud desktop sent from the client; obtain the identification information from the client and the device type corresponding to the data to be processed; if it is determined based on the operation permission information from the client that the identification information and the device type match, the data to be processed is processed accordingly to realize the function of the cloud desktop corresponding to the data to be processed.

[0098] In addition, various implementations of the server for executing the method have been described in detail in the above method embodiments and will not be repeated here.

[0099] The master client is used to: configure the operation permission information of the slave client and send it to the server. The operation permission information includes a first association between the device type for which the slave client has operation permission and the identification information of the slave client; the operation permission information is used by the server to determine whether the identification information and the device type corresponding to the data to be processed sent from the client match. If they match, the server will process the data to be processed accordingly to realize the function of the cloud desktop corresponding to the data to be processed.

[0100] The slave client is used to: send the data to be processed for the cloud desktop to the server, so that the server obtains the identification information of the slave client and the device type corresponding to the data to be processed, and if the server determines that the identification information and the device type match based on the operation authority information of the slave client, the server processes the data to be processed accordingly to realize the function of the cloud desktop corresponding to the data to be processed.

[0101] The data interaction processing process between the master client, the slave client and the server involved in this embodiment is the same as the processing process in the above method embodiment, and will not be repeated here.

[0102] Figure 12 FIG. 1 is a block diagram of an electronic device for implementing an embodiment of the present application. Figure 12 As shown, the electronic device includes: a memory 1210 and a processor 1220. The memory 1210 stores a computer program that can be run on the processor 1220. When the processor 1220 executes the computer program, the method in the above embodiment is implemented. The number of the memory 1210 and the processor 1220 can be one or more.

[0103] The electronic device also includes:

[0104] The communication interface 1230 is used to communicate with external devices and perform data exchange transmission.

[0105] If the memory 1210, the processor 1220, and the communication interface 1230 are implemented independently, the memory 1210, the processor 1220, and the communication interface 1230 can be connected to each other via a bus and communicate with each other. The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 12 Only one thick line is used in the diagram, but this does not mean that there is only one bus or one type of bus.

[0106] Optionally, in a specific implementation, if the memory 1210, the processor 1220 and the communication interface 1230 are integrated on a chip, the memory 1210, the processor 1220 and the communication interface 1230 can communicate with each other through an internal interface.

[0107] An embodiment of the present application provides a computer-readable storage medium storing a computer program, which implements the method provided in the embodiment of the present application when the program is executed by a processor.

[0108] An embodiment of the present application also provides a chip, which includes a processor for calling and executing instructions stored in the memory from the memory, so that a communication device equipped with the chip executes the method provided in the embodiment of the present application.

[0109] An embodiment of the present application also provides a chip, including: an input interface, an output interface, a processor and a memory. The input interface, the output interface, the processor and the memory are connected through an internal connection path. The processor is used to execute the code in the memory. When the code is executed, the processor is used to execute the method provided in the embodiment of the application.

[0110] It should be understood that the processor may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor, etc. It is worth noting that the processor may be a processor that supports the Advanced RISC Machines (ARM) architecture.

[0111] Furthermore, optionally, the above-mentioned memory may include a read-only memory and a random access memory. The memory may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. Among them, the non-volatile memory may include a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may include a random access memory (RAM), which is used as an external cache. By way of example but not limitation, many forms of RAM are available. For example, static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link DRAM (SLDRAM) and direct memory bus random access memory (DR RAM).

[0112] In the above embodiments, all or part of the embodiments may be implemented using software, hardware, firmware, or any combination thereof. When implemented using software, all or part of the embodiments may be implemented in the form of a computer program product. A computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the processes or functions according to the present application are generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in a computer-readable storage medium or transferred from one computer-readable storage medium to another.

[0113] In the description of this specification, the reference terms "one embodiment," "some embodiments," "example," "specific example," or "some examples" mean that the specific features, structures, materials, or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present application. Moreover, the specific features, structures, materials, or characteristics described may be combined in any appropriate manner in any one or more embodiments or examples. In addition, those skilled in the art may combine and combine different embodiments or examples described in this specification, as well as features of different embodiments or examples, unless they are mutually inconsistent.

[0114] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features being referred to. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one such feature. Throughout the description of this application, "plurality" means two or more, unless otherwise specifically defined.

[0115] Any process or method described in the flowchart or otherwise described herein can be understood to represent a module, segment or portion of code comprising one or more executable instructions for implementing the steps of a specific logical function or process. The scope of the preferred embodiments of the present application includes other implementations in which the functions may be performed in a different order than shown or discussed, including performing the functions substantially simultaneously or in reverse order depending on the functions involved.

[0116] The logic and / or steps described in the flowchart or otherwise described herein, for example, can be considered as an ordered list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by an instruction execution system, apparatus or device (such as a computer-based system, a system including a processor or other system that can fetch instructions from an instruction execution system, apparatus or device and execute instructions), or used in combination with such instruction execution systems, apparatuses or devices.

[0117] It should be understood that various parts of the present application can be implemented using hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented using software or firmware stored in a memory and executed by a suitable instruction execution system. All or part of the steps of the above embodiment method can be completed by instructing the relevant hardware through a program, which can be stored in a computer-readable storage medium. When the program is executed, it includes one or a combination of the steps of the method embodiment.

[0118] In addition, the functional units in the various embodiments of the present application may be integrated into a single processing module, or each unit may exist physically separately, or two or more units may be integrated into a single module. The aforementioned integrated modules may be implemented in the form of hardware or in the form of software functional modules. If the aforementioned integrated modules are implemented in the form of software functional modules and sold or used as independent products, they may also be stored in a computer-readable storage medium. The storage medium may be a read-only memory, a magnetic disk, or an optical disk, etc.

[0119] The above is merely an exemplary embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any person skilled in the art can easily conceive of various modifications or substitutions within the technical scope described in this application, and such modifications or substitutions should be included in the scope of protection of the present application. Therefore, the scope of protection of the present application should be based on the scope of protection of the claims.

Claims

1. A data processing method based on cloud desktop, characterized in that: The method is applied to a server deployed on a cloud desktop, and the method includes: Establishing a first association relationship between a device type of an external device and a corresponding channel type; Acquire operation permission information corresponding to a plurality of slave clients respectively from the master client in advance; the operation permission information includes a third association relationship between a device type for which the slave client has operation permission and identification information of the slave client; Notify the slave client according to the operation permission information to open a channel corresponding to the device type with operation permission; Receive data to be processed for the cloud desktop sent from the client; Acquiring the identification information of the slave client and the device type corresponding to the data to be processed, including: determining the channel type corresponding to the data to be processed; and determining the device type corresponding to the data to be processed based on the channel type and the first association relationship; If it is determined according to the operation authority information from the client that the identification information matches the device type, the data to be processed is processed accordingly to implement a function of the cloud desktop corresponding to the data to be processed.

2. The method according to claim 1, characterized in that The channel type includes a port channel, the port channel corresponds to a plurality of ports, and the first association relationship includes a second association relationship between a device type and a port; Obtaining the device type corresponding to the data to be processed includes: Determine the port corresponding to the data to be processed; The device type corresponding to the data to be processed is determined according to the port and the second association relationship.

3. The method according to any one of claims 1-2, characterized in that The device type includes a mouse or a keyboard, and the data to be processed includes operation data of the mouse or the keyboard; If it is determined according to the operation authority information from the client that the identification information matches the device type, the data to be processed is processed accordingly, including: The operation data of the mouse or keyboard is processed to obtain visual data, and the visual data is sent to the master client and the slave client.

4. The method according to any one of claims 1 to 2, characterized in that The device type includes a microphone, and the data to be processed includes audio data acquired by the microphone; If it is determined according to the operation authority information from the client that the identification information matches the device type, the data to be processed is processed accordingly, including: The audio data is stored or sent to the master client and the slave client for playback.

5. The method according to any one of claims 1-2, characterized in that The device type includes a device requiring port redirection; the number of the slave clients is multiple; if it is determined based on the operation authority information of the slave client that the identification information matches the device type, the data to be processed is processed accordingly, including: The plurality of data to be processed sent from the client are combined into data packets, and the combined data packets are sent to the drivers of the devices requiring port redirection corresponding to the plurality of clients through the ports corresponding to the port identifiers carried in the plurality of data to be processed.

6. A data processing method based on cloud desktop, characterized in that: The method is applied to a master client, and includes: Configuring and sending operation permission information from the slave client to the server, the operation permission information including a third association between the device type for which the slave client has operation permission and the identification information of the slave client, so that the server notifies the slave client to open a channel corresponding to the device type for which the slave client has operation permission based on the operation permission information; and obtaining the identification information of the slave client and the data to be processed sent by the client; The server determines the channel type corresponding to the data to be processed; determines the device type corresponding to the data to be processed based on the channel type and a first association relationship, wherein the first association relationship is used to characterize the relationship between the device type of the external device and the corresponding channel type; and if the server determines that the identification information and the device type match based on the operation permission information, the server performs corresponding processing on the data to be processed to realize the function of the cloud desktop corresponding to the data to be processed.

7. A data processing method based on cloud desktop, characterized in that: The method is applied to a slave client, and includes: receiving a notification message sent by a server to a slave client according to operation authority information corresponding to the slave client, wherein the operation authority information includes a third association between a device type for which the slave client has operation authority and identification information of the slave client; Open a channel corresponding to a device type with operation permission according to a notification message; send data to be processed for a cloud desktop to a server, so that the server determines the channel type corresponding to the data to be processed and obtains identification information from a client, and determines the device type corresponding to the data to be processed according to the channel type and a first association relationship, wherein the first association relationship is used to characterize the relationship between the device type of an external device and the corresponding channel type, and if the server determines that the identification information and the device type match according to the operation permission information, the server performs corresponding processing on the data to be processed to realize the function of the cloud desktop corresponding to the data to be processed.

8. A data processing system based on cloud desktop, characterized in that: The system includes a server, a master client and a slave client deployed by a cloud desktop; the server is used to execute the method described in any one of claims 1 to 5; the master client is used to execute the method described in claim 6; and the slave client is used to execute the method described in claim 7.

9. An electronic device, characterized in that: The method comprises a memory, a processor and a computer program stored in the memory, wherein the processor implements the method according to any one of claims 1 to 7 when executing the computer program.

10. A computer-readable storage medium, wherein a computer program is stored in the computer-readable storage medium, and when the computer program is executed by a processor, the method according to any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Data sharing method and device based on cloud application, electronic equipment and storage medium

    CN114928641A

  • Protograph Quasi-Cyclic Polar Codes and Related Low-Density Generator Matrix Family

    US20220278698A1