Data Processing Method, Apparatus, Electronic Device and Readable Medium for Cloud Services

By directly sending the display data to the second server in the series connection between the user equipment and multiple cloud services on the first client and transmitting it, the problem of high computing power and network requirements of cloud service is solved, and more efficient data transmission and lower latency are achieved.

CN116346890BActive Publication Date: 2025-07-18ALIBABA (CHINA) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310216760.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-03-01
Publication Date
2025-07-18
Estimated Expiration
2043-03-01

AI Technical Summary

Technical Problem

When the user equipment is connected in series with multiple cloud services, the prior art has problems such as high computing power requirements for cloud service, high network requirements and large content display delay.

Method used

In the running scenario of the first client in series usage scenario, the display data is sent directly to the second server, and the data is sent to the second client through the second server, avoiding the first client and the second server from performing additional processing operations, such as decompression and graphics component calls.

Benefits of technology

It improves data transmission efficiency, reduces data transmission delay, saves data transmission costs, reduces computing power and network demand for cloud services, and reduces content display delay.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116346890B_ABST
    Figure CN116346890B_ABST
Patent Text Reader

Abstract

The present application provides a data processing method, apparatus, electronic device and readable medium for cloud services, including: obtaining display data sent by a first server of a first cloud service. When the running scenario of the first client is a cascaded usage scenario, sending the display data to a second server, where the second server is used to send the display data to a second client corresponding to the second server; wherein, the cascaded usage scenario includes: the second server and the first client run in the same second cloud service. It is possible to improve the data transmission efficiency, reduce the computing power requirements and network requirements for cloud services, and reduce the content display latency while realizing the transmission of display data of the cascaded first cloud service.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of network technologies, and particularly to a method, apparatus, electronic device, and readable medium for data processing of cloud services. Background Art

[0002] Currently, with the continuous development of network technologies, cloud services have been more and more widely applied. Among them, cloud services refer to services provided on the cloud by cloud computing providers.

[0003] In a usage scenario, a user will use a local user device to serially connect multiple cloud services. For example, the local user device is directly connected to Cloud Service 1 through the client of Cloud Service 1, and Cloud Service 1 is connected to Cloud Service 2 through the client of Cloud Service 2, so as to achieve an indirect connection between the user device and Cloud Service 2. In this case of serial use, when the data of Cloud Service 2 needs to be sent to the user device, it requires complex processing by the client and the intermediate cloud service, resulting in high computing power requirements and high network requirements for the cloud service, and a large delay in the content of Cloud Service 2 reaching the user device for display. Summary of the Invention

[0004] Embodiments of the present application provide a method for data processing of cloud services to solve the problems of high computing power requirements, high network requirements, and large content display delay of cloud services.

[0005] Correspondingly, embodiments of the present application also provide a data processing apparatus, an electronic device, and a machine-readable medium for cloud services to ensure the implementation and application of the above method.

[0006] To solve the above problems, embodiments of the present application disclose a method for data processing of cloud services, which is applied to a first client. The method includes:

[0007] Obtaining display data sent by a first server of a first cloud service;

[0008] When the running scenario of the first client is a serial use scenario, sending the display data to a second server; wherein, the display data is used for the second server to send to a second client corresponding to the second server; the serial use scenario includes: the second server and the first client run in the same second cloud service.

[0009] Embodiments of the present application also disclose a method for data processing of cloud services, which is applied to a second server. The method includes:

[0010] Receive the display data sent by the first client when the running scenario is the series usage scenario; wherein, the display data is obtained by the first client from the first server of the first cloud service; the series usage scenario includes: the second server and the first client run in the same second cloud service;

[0011] Forward the display data to the second client, where the second client is the client corresponding to the second server.

[0012] An embodiment of the present application also discloses a data processing device for a cloud service, which is applied to the first client, and the device includes:

[0013] An acquisition module, configured to acquire the display data sent by the first server of the first cloud service;

[0014] A first sending module, configured to send the display data to the second server when the running scenario of the first client is the series usage scenario; wherein, the display data is used for the second server to send to the second client corresponding to the second server; the series usage scenario includes: the second server and the first client run in the same second cloud service.

[0015] An embodiment of the present application also discloses a data processing device for a cloud service, which is applied to the second server, and the device includes:

[0016] A receiving module, configured to receive the display data sent by the first client when the running scenario is the series usage scenario; wherein, the display data is obtained by the first client from the first server of the first cloud service; the series usage scenario includes: the second server and the first client run in the same second cloud service;

[0017] A second sending module, configured to forward the display data to the second client, where the second client is the client corresponding to the second server.

[0018] An embodiment of the present application also discloses an electronic device, including: a processor; and a memory, on which executable code is stored, and when the executable code is executed, the processor is caused to execute one or more of the methods in the embodiments of the present application.

[0019] An embodiment of the present application also discloses one or more machine-readable media, on which executable code is stored, and when the executable code is executed, the processor is caused to execute one or more of the methods in the embodiments of the present application.

[0020] Compared with the related art, the embodiments of the present application include the following advantages:

[0021] In the embodiments of the present application, by obtaining the display data sent by the first server of the first cloud service, when the running scenario of the first client is a series usage scenario and the second server and the first client run on the same cloud service, that is, the second server is the server of the next-level cloud service of the first cloud service, the display data is directly sent to the second server, and the second server sends the display data to the second client corresponding to the second server, so that the display data of the first cloud service used in series can be transmitted in the case of series connection.

[0022] At the same time, since the display does not require complex processing, that is, the first client does not need to perform additional processing operations on the display data. For example, operations such as decompression and calling graphics components for display are not required. As the server of the next-level cloud service of the first cloud service, the second server also does not need to perform additional processing operations. For example, operations such as calling an image capture component for image capture and encoding compression are not required. Therefore, while realizing the transmission of the display data of the indirectly connected first cloud service, the data transmission efficiency can be improved, and the data transmission delay can be reduced. At the same time, the data transmission cost can be saved, the computing power and network requirements for the cloud service can be reduced, and the requirements for the computing power and network of the cloud service can be lowered. And because the data delay is reduced, to a certain extent, the content display delay can be reduced, and the problem of untimely content display can be avoided, which will lead to a large operation delay for the first cloud service. BRIEF DESCRIPTION OF THE DRAWINGS

[0023] Figure 1 is a schematic structural diagram corresponding to the data processing method provided in the embodiments of the present application;

[0024] Figure 2 is a schematic diagram of an application scenario provided in the embodiments of the present application;

[0025] Figure 3 is a comparative schematic diagram of a data processing process provided in the embodiments of the present application;

[0026] Figure 4 is another schematic diagram of an application scenario provided in the embodiments of the present application;

[0027] Figure 5 is yet another schematic diagram of an application scenario provided in the embodiments of the present application;

[0028] Figure 6 is a flowchart of the steps of a data processing method for a cloud service provided in the embodiments of the present application;

[0029] Figure 7 is a flowchart of the steps of another data processing method for a cloud service provided in the embodiments of the present application;

[0030] Figure 8It is a flowchart of steps of another data processing method for cloud services provided by an embodiment of the present application;

[0031] Figure 9 It is an interaction schematic diagram of a data transmission process provided by an embodiment of the present application;

[0032] Figure 10 It is a block diagram of a data processing device for cloud services provided by an embodiment of the present application;

[0033] Figure 11 It is a block diagram of another data processing device for cloud services provided by an embodiment of the present application;

[0034] Figure 12 It is a schematic structural diagram of a device provided by an embodiment of the present application. Detailed implementation manners

[0035] To make the above objects, features, and advantages of the present application more obvious and understandable, the present application will be further described in detail below with reference to the accompanying drawings and specific implementation manners.

[0036] To enable those skilled in the art to better understand the present application, the following concepts related to the present application are described:

[0037] Cloud desktop: Also known as virtual desktop and remote desktop. It is a convenient and secure virtual desktop service on the cloud provided by cloud computing vendors. It supports the rapid and convenient creation, deployment, unified management, and operation and maintenance of desktop environments. It can provide users with a secure, high-performance, and low-cost desktop office system.

[0038] Cloud application: It is a desktop application program service on the cloud provided by cloud computing vendors. It supports running application programs that originally ran on desktop computers directly in the cloud system, which can be used to solve the resource requirements of heavy applications and the data security requirements of special applications, and provides users with a convenient and fast application management and distribution mode. Each instance of cloud applications and cloud desktops runs in an independent virtualization environment.

[0039] User device: The local device used by the user himself. For example, it can be the user's own computer, mobile phone, tablet, etc. The operating system on the user device can be called the local system, which corresponds to remote systems such as cloud desktops and cloud applications and refers to the system running on the user's own local device.

[0040] Non-direct connection cloud service: It refers to a cloud service that is indirectly connected to the user device.

[0041] Direct cloud service: It refers to a cloud service directly connected to a user device. The direct connection between the direct cloud service and the user device can be established through a network. The cloud service in the embodiments of this application can be the above-mentioned cloud desktop or cloud application. Among them, a cloud service can be implemented based on cloud devices. The cloud devices can be servers, and there can be multiple cloud devices for a cloud service, that is, a cloud service can be implemented based on a server cluster and deployed and run in the server cluster. The cloud service can adopt a client-server (C / S) structure, and a cloud service has a client and a server. Among them, the client can be responsible for capturing input behaviors such as the user's keyboard and mouse, and transmitting the input events corresponding to the input behaviors to the server. The server can receive the input events sent by the client and inject them into the cloud service system to complete the user's keyboard and mouse operations. The server is also responsible for obtaining the content to be displayed of the cloud service and performing encoding and compression to obtain display data that is convenient for transmission. The content to be displayed of the cloud service can be the content that needs to be displayed to the user on the user device. The client is also responsible for receiving the display data sent by the server and continuing to transmit it, or decompressing and displaying it. Among them, the display data can include compressed data after compression to reduce the data transmission pressure.

[0042] Client of non-direct cloud service: Installed and running in the next-level cloud service. Specifically, it can be installed and run in the cloud device of the next-level cloud service.

[0043] Server of non-direct cloud service: Installed and running in this non-direct cloud service. Specifically, it can be installed and run in the cloud device of this non-direct cloud service. The operations required to be performed by the server of the non-direct cloud service can be specifically executed by the cloud device through the server of the non-direct cloud service therein.

[0044] Client of direct cloud service: Installed and running on the user device. The local system of the user device is directly connected to the direct cloud service, and various application programs are run in this cloud service. Specifically, the client of the direct cloud service can be installed and run in the local system of the user device to connect to the server of the direct cloud service. Among them, the server of the direct cloud service is installed and run in this direct cloud service. Specifically, it can be installed and run in the cloud device of the direct cloud service. The operations required to be performed by the server of the direct cloud service can be specifically executed by the cloud device through the server of the direct cloud service therein.

[0045] Server of direct cloud service: Installed and running in this direct cloud service. Specifically, it can be installed and run in the cloud device of this direct cloud service. The operations required to be performed by the server of the direct cloud service can be specifically executed by the cloud device through the server of the direct cloud service therein.

[0046] First cloud service: Any one of multiple cloud services to which user devices are serially connected. The first client is the client of the first cloud service, and the first server is the server of the first cloud service. When there is a lower-level cloud service for the first cloud service, the first cloud service is a non-direct connection cloud service. Correspondingly, the operating scenario in which the first client is located is a serial usage scenario, the first client is the client of the non-direct connection cloud service, and the first server is the server of the non-direct connection cloud service. When there is no lower-level cloud service for the first cloud service, the first cloud service is a direct connection cloud service, then the operating scenario in which the first client is located is not a serial usage scenario, the first client is the client of the direct connection cloud service, and the first server is the server of the direct connection cloud service. Each step in the embodiments of the present application may specifically be executed by the cloud device running the first client through the first client therein.

[0047] First server: The server running in the first cloud service. For example, when the first cloud service is Cloud Desktop 2, the first server may be the server of Cloud Desktop 2.

[0048] First client: The client capable of obtaining display data from the first server; one first client obtains display data from one first server.

[0049] Second cloud service: When there is a lower-level cloud service for the first cloud service, the second cloud service represents the lower-level cloud service of the first cloud service, and this lower-level cloud service belongs to multiple cloud services to which user devices are serially connected. The client of the second cloud service can be called the second client, and the server of the second cloud service can be called the second server. If there is a lower-level cloud service for the first cloud service, then there are a second server and a first client running in the same second cloud service. Correspondingly, it can be determined that the first cloud service is indirectly connected to the user device. That is, when a cloud service has a lower-level cloud service, it can be determined that the operating scenario of the client of this cloud service is a serial usage scenario. Conversely, it can be determined that it is not in a serial usage scenario.

[0050] Second server: The server running in the second cloud service. For example, when the second cloud service is Cloud Desktop 1, the second server may be the server of Cloud Desktop 1.

[0051] Second client: The client capable of obtaining display data from the second server.

[0052] Display data: In the embodiments of the present application, the display data in the first server is data used to be sent to the second client. When the second client is a client installed in the local system, this display data is also used to be displayed in this client of the local system.

[0053] The data processing method in the embodiments of this application can be specifically applied to the scenario of multi-level cascading of cloud services. In this usage scenario, the content to be displayed of a non-directly connected cloud service is transmitted to the next-level cloud service, and the next-level cloud service continues to transmit it downward until it reaches the user device. In this way, the user device can display the content to be displayed of the non-directly connected cloud service. For the content to be displayed of a directly connected cloud service, it can be directly transmitted downward to the user device. In this way, the user device can display the display data of the directly connected cloud service. In one way, specifically, the server of the non-directly connected cloud service obtains the display data of the content to be displayed, and then transmits it to the client of the non-directly connected cloud service. After the client of the non-directly connected cloud service decompresses the display data, it calls the image display component to first display the content to be displayed on the screen of the next-level cloud service, where the screen of the next-level cloud service can be provided by the cloud device of the next-level cloud service. Then, the server of the next-level cloud service calls the function of the operating system to intercept the image of the displayed content, and then encodes and compresses it to obtain the compressed display data, and then continues to transmit it downward. Taking the example of a user device cascading two cloud desktops, assume that the user device connects to Cloud Desktop 1 through the Cloud Desktop 1 client in the local system. Cloud Desktop 2 client and Cloud Desktop 1 server are running in Cloud Desktop 1, and Cloud Desktop 2 is connected through the Cloud Desktop 2 client. Cloud Desktop 2 server is running in Cloud Desktop 2. Cloud Desktop 1 is a directly connected cloud service, and Cloud Desktop 2 is a non-directly connected cloud service. In the cascading usage scenario, the Cloud Desktop 2 server obtains the content to be displayed of Cloud Desktop 2, encodes and compresses it to obtain the display data. Then it sends it to the Cloud Desktop 2 client through the network. The Cloud Desktop 2 client needs to decompress the received display data, and then calls the graphics display function of the operating system to first display the content to be displayed of Cloud Desktop 2 on the screen of Cloud Desktop 1 through the graphics component. And the Cloud Desktop 1 server needs to call the image interception function of the operating system to obtain the content to be displayed on the screen of Cloud Desktop 1, encode and compress it to obtain the display data, and send it to the Cloud Desktop 1 client through the network. The user device can decompress and display the received display data through the locally running Cloud Desktop 1 client, so as to finally display the content to be displayed of Cloud Desktop 2 on the user device.

[0054] In the above processing method, the data transmitted to the cloud desktop 1 itself is compressed display data, and the display data finally sent by the server of the cloud desktop 1 to the client of the cloud desktop 1 is also compressed display data. There are many unnecessary processing operations in the whole processing process, and the processing flow is long. The client of the cloud desktop 2 needs to perform decompression and call the graphics component for display operations, and the server of the cloud desktop 1 needs to perform operations of calling the image capture component for image capture and encoding compression. Therefore, in the case of cascaded usage scenarios, the data transmission delay is large, the data transmission cost is high, and the computing power and network requirements for cloud services are large, resulting in high consumption of computing power resources and network resources. At the same time, due to the large delay, the content display is not timely, which will further lead to a large operation delay for non-directly connected cloud services.

[0055] In the data processing method of the embodiment of the present application, after the first client obtains the display data sent by the first server of the first cloud service, it will determine the running scenario where the first client is located. When the running scenario where the first client is located is a cascaded usage scenario, that is, when the second server and the first client run on the same second cloud service, the first client, as a client of a non-directly connected cloud service, sends the display data to the second server. As the server of the next-level cloud service, the second server can obtain the display data that can be directly transmitted further by receiving the display data sent by the first client, and continue to transmit it to the second client. Since the first client, as a client of a non-directly connected cloud service, does not need to perform decompression and call the graphics component for display operations, and the second server, as the server of the next-level cloud service, also does not need to perform operations of calling the image capture component for image capture and encoding compression, it is possible to improve the data transmission efficiency and reduce the data transmission delay while realizing the transmission of the display data of the cascaded cloud services. At the same time, it is possible to save the data transmission cost, reduce the computing power and network requirements for cloud services, and reduce the consumption of computing power resources and network resources. And because the data delay is reduced, to a certain extent, the content display delay can be reduced, avoiding untimely content display, which will further lead to a large operation delay for the first cloud service.

[0056] The application scenarios involved in the present application will be specifically described below.

[0057] Refer to Figure 1, which shows the architecture schematic diagram corresponding to the data processing method provided by the embodiments of the present application, including a user device and M cloud services connected in series to the user device. Among them, Cloud Service 1 is directly connected to the user device, and Cloud Service 1 is a directly connected cloud service. Cloud Services 2 - M are all indirectly connected to the user device, and Cloud Services 2 - M are all non-directly connected cloud services. In the embodiments of the present application, the client of Cloud Service 1 is deployed on the user device, the server of Cloud Service 1 and the client of Cloud Service 2 are deployed on Cloud Service 1, the server of Cloud Service 2 and the client of Cloud Service 3 are deployed on Cloud Service 2, ……, the server of Cloud Service M - 1 and the client of Cloud Service M are deployed on Cloud Service M - 1.

[0058] For Figure 1 any client of Cloud Services 2 - M among them, the client and the server of the next-level cloud service run in the next-level cloud service. That is, for Figure 1 any client of Cloud Services 2 - M among them, the running scenario where this client serves as the first client is a series usage scenario. This client can establish a communication connection with the second server and send the display data to the second server. Among them, the second server is the server of the next-level cloud service. The next-level cloud service of a cloud service can be the cloud service among these multiple cloud services that is connected to this cloud service and is closer to the user device. The upper-level cloud service of a cloud service can be the cloud service among these multiple cloud services that is connected to this cloud service and is farther from the user device. For example, the upper-level cloud service of Cloud Service 2 is Cloud Service 3, and the next-level cloud service of Cloud Service 2 is Cloud Service 1. Among them, M is an integer greater than or equal to 2.

[0059] Exemplarily, for the content to be displayed of Cloud Service M, the server of Cloud Service M can obtain the content to be displayed of Cloud Service M, perform encoding and compression, and use it as display data. Then it is sent to the client of Cloud Service M through the network. The client of Cloud Service M, as the first client, can send the received display data to the server of Cloud Service M - 1, thereby improving the data transmission efficiency and reducing the data transmission delay.

[0060] Further, as a non-directly connected cloud service, the server of cloud service M-1 can continue to send the received display data to the client of cloud service M-1. The client of cloud service M-1 can repeat the above operation, continue to establish a communication connection with the server of the next-level cloud service M-2, and send the received display data to the server of cloud service M-2 based on the established communication connection. By directly transmitting the display data level by level downward, when the display data is transmitted to the client of cloud service 1, the client of cloud service 1, as the client of the directly connected cloud service, is not deployed in the upper-level cloud service together with the server of the upper-level cloud service, that is, it is not in a series usage scenario. Therefore, the received display data can be decompressed and rendered for display, so that the user can view the content to be displayed of cloud service M through the local user device. Similarly, the content to be displayed of other non-directly connected cloud services can be directly transmitted in the above manner and finally transmitted to the client of cloud service 1.

[0061] Of course, when the user operates data in the client of cloud service 1, it can be transmitted to cloud service M in the opposite direction of the above display data transmission manner through this series connection method. The server of cloud service M responds to the operation data accordingly, and then the server of cloud service M generates display data and transmits it to the client of cloud service 1 through the above series connection method.

[0062] Taking a cloud desktop as an example, referring to Figure 2 , it shows a schematic diagram of an application scenario provided by an embodiment of the present application. In this scenario, the server of cloud desktop 2 can obtain the content to be displayed of cloud desktop 2, encode and compress it to obtain display data. Then it is sent to the client of cloud desktop 2 in cloud desktop 1 through the network. In cloud desktop 1, the client of cloud desktop 2 can receive the display data sent by the server of cloud desktop 2 through the network to obtain the display data. Then, a communication connection is established with the server of cloud desktop 1 in cloud desktop 1. Based on the established communication connection, the display data is sent to the server of cloud desktop 1. In this way, unnecessary processing of the display data of cloud desktop 2 in cloud desktop 1 can be reduced, thereby reducing the consumption of processing resources and reducing the subsequent operation latency of cloud desktop 2. Then, the server of cloud desktop 1 can send the display data to the client of cloud desktop 1 in the user device. The client of cloud desktop 1 displays the content to be displayed of cloud desktop 2 on the user device.

[0063] For the content to be displayed on the cloud desktop 1, the server of the cloud desktop 1 can obtain the content to be displayed on the cloud desktop 1, perform encoding and compression, and obtain the display data. Then, it is sent to the client of the cloud desktop 1 in the user device through the network. Since the client of the cloud desktop 1 is not in a cascaded usage scenario, the client of the cloud desktop 1 can not perform a forwarding operation, but display the content to be displayed on the cloud desktop 1 on the user device. When the content to be displayed on each cloud desktop is displayed on the user device, the content to be displayed on the non-directly connected cloud desktop is displayed in the interface of the next-level cloud desktop, and the content to be displayed on the directly connected cloud desktop is displayed in the interface of the local system of the user device.

[0064] Refer to Figure 3 , which shows a comparison schematic diagram of a data processing process provided by an embodiment of the present application. In the existing processing method, the server of the cloud desktop 2 can obtain the content to be displayed on the cloud desktop 2, perform encoding and compression, and obtain the display data. Then, it is sent to the client of the cloud desktop 2 through the network. In the existing processing method, the client of the cloud desktop 2 needs to decompress the display data received through the network, and then call the graphics component of the operating system to display the content to be displayed on the cloud desktop 2. For the server of the cloud desktop 1, it needs to obtain the content to be displayed, then perform encoding and compression to obtain the display data again, and send it to the client of the cloud desktop 1 installed in the local system through the network. The local system of the user device can decompress and display the display data received through the network through the client of the cloud desktop 1 running locally, so as to finally display the content to be displayed on the cloud desktop 2 on the user device. Figure 3 The bold arrow in [reference] corresponds to the data processing method provided by the embodiment of the present application. In the embodiment of the present application, after the client of the cloud desktop 2 receives the display data through the network operation, it can directly send the display data to the server of the cloud desktop 1, and the server of the cloud desktop 1 can directly send the display data to the client of the cloud desktop 1 installed in the local system through the network operation, thereby avoiding unnecessary redundant operations, improving the data transmission efficiency, and reducing the data transmission delay. At the same time, it can save the data transmission cost, reduce the computing power and network requirements for cloud services, and reduce the consumption of computing power resources and network resources. And because the data delay is reduced, to a certain extent, the problem that the content display is not timely and then leads to a large operation delay for the cloud desktop can be avoided.

[0065] Refer to Figure 4, which shows another schematic diagram of an application scenario provided by an embodiment of the present application. In this application scenario, the content to be displayed on the cloud desktop 2 is displayed in the interface of the cloud desktop 1. At the same time, the interface of the cloud desktop 1 may also include the content to be displayed on the cloud desktop 1, and the interface of the cloud desktop 1 is located in the interface of the local system of the user device. That is, the content to be displayed on the cloud desktop 1 is displayed in the interface of the local system through the interface of the cloud desktop 1. Exemplarily, the content to be displayed on the cloud desktop 2 may be a page of a logistics query application, and the content to be displayed on the cloud desktop 1 may be a page of a game application. Correspondingly, the user can, based on the user device, use the game application in the cloud desktop 1 while performing logistics queries in the cloud desktop 2.

[0066] Referring to Figure 5 , which shows still another schematic diagram of an application scenario provided by an embodiment of the present application. In this application scenario, the user device is connected in series with the cloud desktop 1 and the cloud desktop 2. At the same time, the user device is connected in series with the cloud desktop 1 and the cloud desktop 3. The cloud desktop 1 includes the client of the cloud desktop 2, the client of the cloud desktop 3, and the server of the cloud desktop 1. When data is transmitted, for a group of cloud desktops connected in series: the cloud desktop 1 and the cloud desktop 2, the server of the cloud desktop 2 can obtain the content to be displayed on the cloud desktop 2, perform encoding and compression to obtain display data. Then, it is sent to the client of the cloud desktop 2 in the cloud desktop 1 through the network. The client of the cloud desktop 2 can receive the display data sent by the server of the cloud desktop 2 through the network. Since the client of the cloud desktop 2 is in a series usage scenario, the display data can be continued to be sent to the server of the cloud desktop 1. Then, the server of the cloud desktop 1 can send the display data to the client of the cloud desktop 1 in the user device. Since the client of the cloud desktop 1 is not in a series usage scenario, the client of the cloud desktop 1 can display the content to be displayed on the cloud desktop 2 on the user device.

[0067] For another group of cloud desktops connected in series: cloud desktop 1 and cloud desktop 3, the next-level cloud desktop of cloud desktop 3 is cloud desktop 1. The same data processing method can be adopted. The server of cloud desktop 3 can obtain the content to be displayed on cloud desktop 3, perform encoding and compression to obtain the display data. Then, it is sent to the client of cloud desktop 3 in cloud desktop 1 through the network. The client of cloud desktop 3 can receive the display data sent by the server of cloud desktop 3 through the network. Since the client of cloud desktop 3 is in a series usage scenario, the display data can be continuously sent to the server of cloud desktop 1. Next, the server of cloud desktop 1 can send the display data to the client of cloud desktop 1 in the user device. Since the client of cloud desktop 1 is not in a series usage scenario, the client of cloud desktop 1 can display the content to be displayed on cloud desktop 3 on the user device. In the embodiments of the present application, for any group of cloud desktops connected in series to the user device, the clients of the non-directly connected cloud desktops in the group of cloud desktops can directly establish a communication connection and directly transmit the display data, which can improve the data transmission efficiency of any group of cloud desktops and reduce the data transmission delay.

[0068] The data processing method of the cloud service involved in the present application will be described in detail below.

[0069] Referring to Figure 6 , which shows a step flowchart of a data processing method of a cloud service provided by an embodiment of the present application, applied to a first client. The method includes:

[0070] Step 101, obtain the display data sent by the first server of the first cloud service.

[0071] Among them, the first client can be the client of any cloud service among multiple cloud services connected in series to the user device. The first server can actively send the display data to the first client. Among them, the display data can be the data to be sent to the second client, and the display data can include compressed data. Correspondingly, the first client can obtain it by receiving the display data sent by the first server.

[0072] The display data can be compressed data. The display data may be generated by the first server according to the content to be displayed on the first cloud service, or may be data sent by the client of the upper-level cloud service of the first cloud service received by the first server. Specifically, when the first cloud service is the highest-level cloud service, the display data sent by the first server can be: the display data generated by the first server according to the content to be displayed on the first cloud service. When the first cloud service is not the highest-level cloud service, the display data sent by the first server can be: the display data generated by the first server according to the content to be displayed on the first cloud service, or the data sent by the client of the upper-level cloud service of the first cloud service received by the first server.

[0073] Step 102: When the running scenario of the first client is a cascaded usage scenario, send the display data to the second server; wherein, the display data is used for the second server to send to the second client corresponding to the second server; the cascaded usage scenario includes: the second server and the first client run in the same second cloud service.

[0074] In the embodiment of the present application, if the running scenario of the first client is a cascaded usage scenario, it indicates that the second server and the first client run in the same second cloud service, that is, the first cloud service has a lower-level cloud service, and the lower-level cloud service of the first cloud service is this second cloud service. Therefore, the first client of the first cloud service can continue to send the display data to the second server, and then, the second server can continue to transmit the display data to the second client corresponding to the second server.

[0075] It should be noted that if the first client is not in the cascaded usage scenario, it indicates that the second server and the first client do not run in the same second cloud service, and the first client runs in the user device, that is, the first cloud service does not have a lower-level cloud service. Therefore, the first client can not forward the display data, and the first client can decompress the display data and perform rendering display based on the decompressed display data.

[0076] It should be noted that in the embodiment of the present application, the relationship between the client of the cloud service and the server of the cloud service can be a relationship of multiple clients to one server or one client to one server. The client of a cloud service obtains the display data from the server of this cloud service and does not directly obtain the display data from the server of other cloud services. For example, the second client of the second cloud service needs to obtain the display data from the second server of the second cloud service and does not directly obtain the display data from the first server of the first cloud service, then it needs to obtain it based on the second server of the second cloud service. Moreover, for a server of a cloud service to obtain the data of the server of another cloud service, it needs to obtain it through the client of the other cloud service and does not directly obtain it from the server of the other cloud service. For example, if the second server of the second cloud service wants to obtain the display data of the first server, it needs to obtain the display data in the first server through the first client of the first cloud service.

[0077] In summary, in the embodiments of the present application, by obtaining the display data sent by the first server of the first cloud service, when the running scenario of the first client is a series usage scenario and the second server and the first client run on the same cloud service, that is, the second server is the server of the next-level cloud service of the first cloud service, the display data is directly sent to the second server, so that the second server can send the display data to the second client corresponding to the second server, and thus, in the case of a series connection, the display data of the first cloud service used in series can be transmitted.

[0078] At the same time, since no complex processing is required, that is, the first client does not need to perform additional processing operations on the display data, for example, operations such as decompression and calling a graphics component for display, and the second server, as the server of the next-level cloud service of the first cloud service, also does not need to perform additional processing operations, for example, operations such as calling an image capture component for image capture and encoding compression. Therefore, while realizing the transmission of the display data of the indirectly connected first cloud service, the data transmission efficiency can be improved, and the data transmission delay can be reduced. At the same time, the data transmission cost can be saved, the computing power and network requirements for the cloud service can be reduced, and the requirements for the computing power and network of the cloud service can be lowered. And because the data delay is reduced, to a certain extent, the content display delay can be reduced, and the problem of untimely content display can be avoided, which may otherwise lead to a large operation delay for the first cloud service.

[0079] Refer to Figure 7 , which shows a flowchart of the steps of another data processing method for cloud services provided by the embodiments of the present application, applied to the first client. The method includes:

[0080] Step 201, obtain the display data sent by the first server of the first cloud service.

[0081] Specifically, the implementation manner of this step can refer to the above step 101 and will not be elaborated here.

[0082] Step 202, send a communication connection request to the second server.

[0083] In the embodiments of the present application, a communication connection request can be used to request the establishment of a communication connection with a second server. The communication connection established with the second server can be a connection capable of data transmission. By establishing a communication connection, a data transmission channel is established between the two, so that the first client can transmit display data transparently to the second server, thereby ensuring the data transmission efficiency. It should be noted that the execution timing of establishing a communication connection is not unique. The first client can first establish a communication connection and directly send it based on the established communication connection after receiving the display data, thereby improving the data sending efficiency. Of course, it is also possible to establish a communication connection after receiving the display data, which can avoid the problem that the established communication connection fails and causes the sending to fail. Among them, directly sending the display data to the second server is equivalent to transparently transmitting the display data to the second server.

[0084] Specifically, the connection type of the established communication connection can be set according to actual needs. Exemplarily, the connection request can be used to request the establishment of a Transmission Control Protocol (TCP) connection, a Hypertext Transfer Protocol (HTTP) connection, or a socket connection, etc., with the second server. In this step, by actively sending a communication connection request to the second server, that is, actively sending a connection request to the server of the next-level cloud service of the first cloud service, a communication connection can be established between the first client and the second server, thereby facilitating the subsequent stable and convenient sending of the display data to be transmitted to the second server.

[0085] Step 203: When a communication connection is established with the second server through a communication connection request, determine that the running scenario of the first client is a series usage scenario.

[0086] If the first client establishes a communication connection with the second server through a communication connection request, it can be determined that the display data can be sent to the second server subsequently. And if the communication connection is successfully established, it can be determined that there is a next-level cloud service for the first cloud service, and the first client of the first cloud service and the second server of the second cloud service run in the same second cloud service. Therefore, in this case, it can be determined that the running scenario of the first client is a series usage scenario.

[0087] Conversely, if the first client is not in a series usage scenario, the first client cannot establish a communication connection with the second server by sending a communication connection request to the second server. Therefore, when the communication connection request fails to successfully establish a communication connection with the second server, it can be determined that the running scenario of the first client is not a series usage scenario.

[0088] It should be noted that in the embodiments of the present application, when the first client is installed on a user device, it can also determine that the running scenario is not a series usage scenario. Conversely, when it is not installed on a user device but on a cloud service, it obtains a preset server process name from the cloud service where the first client is installed. If the preset server process name is obtained, it determines that the running scenario of the first client is a series usage scenario. Herein, the preset server process name can be the process name of the server of the cloud service where the first client is installed.

[0089] Step 204, when the running scenario of the first client is a series usage scenario, send the display data to the second server; wherein, the second server is used to send the display data to the second client corresponding to the second server; the series usage scenario includes: the second server and the first client run in the same second cloud service.

[0090] In summary, in the embodiments of the present application, by obtaining the display data sent by the first server of the first cloud service, sending a communication connection request to the second server, and when establishing a communication connection with the second server through the communication connection request, determining that the running scenario of the first client is a series usage scenario. In this way, to a certain extent, it can ensure the accuracy of the determined running scenario and ensure that the display data can be normally sent directly to the second server subsequently. And when the running scenario is a series usage scenario, the display data is directly sent to the second server, and the second server sends the display data to the second client corresponding to the second server, thereby enabling the transmission of the display data of the first cloud service used in series in the case of a series connection.

[0091] Optionally, in the embodiments of the present application, the communication connection request may include: the first identity information of the first client. In the embodiments of the present application, after sending the communication connection request to the second server, the following steps may also be executed:

[0092] Step 301, if a target response message returned by the second server is received, establish a communication connection with the second server; wherein, the target response message is generated by the second server after verifying the first identity information of the first client in response to the communication connection request.

[0093] Among them, after receiving the communication connection request, the second server can perform a first authentication on the first client that sends the communication connection request in response to the communication connection request. If the first client passes the first authentication, the target response information is generated and returned to the first client to indicate that the communication connection request has been received and consent to establish a communication connection with the first client. On the contrary, if the first client fails to pass the first authentication, the communication connection request can be discarded without responding to the communication connection request, that is, refusing to establish a communication connection with the first client. Further, the second server can also generate response information indicating the refusal to establish a connection and return it to the first client to facilitate the first client to timely learn about the connection establishment situation.

[0094] Specifically, the first identity information carried in the communication connection request can be the identity information of the first client. Correspondingly, after receiving the communication connection request, the second server can parse the communication connection request and extract the first identity information from the parsed communication connection request. Then, the extracted first identity information is compared with the preset client identity information with connection permission. If the preset client identity information contains the first identity information extracted this time, it is determined that the first client passes the first authentication. On the contrary, if the preset client identity information does not contain the first identity information extracted this time, it is determined that the first client fails to pass the first authentication.

[0095] In the embodiments of the present application, if the first client receives the target response information returned by the second server, it can determine that it has passed the first authentication of the second server, and then can continue to establish a communication connection with the second server. In the embodiments of the present application, the first client can send the display data to the second server based on the established communication connection and using a preset data transmission protocol. Among them, the preset data transmission protocol can be set according to the actual situation. For example, in the case where multiple cloud desktops are connected in series to the user device, the preset data transmission protocol can be the cloud desktop transmission protocol. Optionally, in one implementation, the first client can create a data sending process, and the second server can create a data obtaining process. Sending the display data to the second server based on the established communication connection may include: creating a data sending process in the first client; and having the data sending process perform inter-process communication with the data obtaining process based on the communication connection to send the display data to the second server. Among them, the data sending process can also be called the content sending process, and the data obtaining process can also be called the content obtaining process. The data sending process in the first client can send the display data to the data obtaining process through the established data transmission channel by means of inter-process communication mechanism, thereby realizing sending the display data to the second server. In the embodiments of the present application, by creating a data sending process and sending it in the form of inter-process communication based on the created data sending process, the sending efficiency can be ensured to a certain extent, and the first client can perform other processing operations based on other processes while sending, thereby ensuring the processing efficiency of the first client.

[0096] And first send a communication connection request. Only when the first authentication of the second server is passed, that is, when the second server agrees to establish a communication connection with the first client, will the operation of establishing a communication connection continue. Thus, to a certain extent, it can avoid the problem of wasting processing resources due to unnecessary establishment operations caused by failed authentication.

[0097] Optionally, in another embodiment of the present application, the target response information may include the second identity information of the second server. In the embodiments of the present application, if the target response information returned by the second server is received, the steps of establishing a communication connection with the second server may specifically include:

[0098] Step 401, if the target response information is received, verify the second identity information of the second server.

[0099] Step 402, when the verification of the second identity information is passed, establish a communication connection with the second server.

[0100] In an embodiment of the present application, when the first client receives the target response information returned by the second server, it can determine that it has passed the first identity verification of the second server. To further ensure the connection security, the first client can perform a second identity verification on the second server to achieve two-way identity authentication between the first client and the second server.

[0101] Specifically, the second identity information carried in the target response information may be the identity information of the server itself that receives the communication connection request. Correspondingly, after receiving the target response information, the first client can parse the target response information and extract the second identity information from the parsed target response information. Then, compare the extracted second identity information with the preset server identity information. If there is a server identity information in the preset server identity information that is consistent with the second identity information extracted this time, and this server identity information is the server identity information of the second cloud service, it is determined that the second identity verification is passed. Otherwise, it can be determined that the second server fails the second identity verification.

[0102] If the second identity verification is passed, it can be determined that the server is the server required to be connected this time. Therefore, a communication connection can be established with this server. Specifically, a confirmation message can be returned to this server to establish a communication connection with this server. If the second identity verification fails, it can be determined that there is an error, and this server is not the server required to be connected this time. Therefore, a communication connection may not be established with this server. Specifically, a rejection message can be returned to this server to end the current establishment process.

[0103] In an embodiment of the present application, the first client only establishes a communication connection with the second server after further performing the second identity verification and passing the second identity verification, that is, only when two-way identity authentication is performed between the first client and the second server, a communication connection is established with the second server. In this way, the security of the established communication connection can be ensured to a greater extent, and further ensure the secure transmission of display data.

[0104] Optionally, in another embodiment of the present application, the foregoing step 202 of sending a communication connection request to the second server includes: sub-step 2021 of sending a communication connection request to the preset port number of the second server.

[0105] Correspondingly, the foregoing step 203 of determining that the running scenario of the first client is a series usage scenario when establishing a communication connection with the second server through the communication connection request includes: sub-step 2031 of determining that the running scenario of the first client is a series usage scenario when establishing a communication connection with the second server based on the preset port number through the communication connection request.

[0106] In the embodiment of the present application, the preset port number may be a pre-agreed port number. The preset port number may be the port number of a specified port, and the specified port may be the network port of the local system of the second server. The specified port can be set according to actual needs, and the embodiment of the present application does not limit the specified port. For example, a port can be randomly selected from the network ports of the local system of the server as the specified port. Specifically, after the second server is started, it can listen on the specified port, and thus implement listening on the specified port number. After the first client is started by the user, in response to a connection instruction, based on the preset port number, it can send a communication connection request to the preset port number, and then send the communication connection request to the specified port of the second server to attempt to connect to the specified port listened on by the second server, so as to establish a communication connection between the first client and the second server.

[0107] If the first client successfully establishes a communication connection with the second server based on the preset port number through the communication connection request, it can be determined that there is a next-level cloud service for the first cloud service, and the first client of the first cloud service and the second server of the second cloud service run in the same second cloud service. Therefore, in this case, it can be determined that the running scenario where the first client is located is a cascaded usage scenario. On the contrary, if the first client is not in the cascaded usage scenario, the first client cannot establish a communication connection with the second server based on the preset port number by sending a communication connection request to the second server. Therefore, in the case where the communication connection request fails to successfully establish a communication connection with the second server based on the preset port number, it can be determined that the running scenario where the first client is located is not a cascaded usage scenario. In this way, the accuracy of the determined running scenario can be ensured to a greater extent, and it can be ensured that the display data can be directly sent to the second server normally subsequently.

[0108] In the embodiment of the present application, after the specified port of the second server listens to the request sent to the specified port, it can obtain and process the request. It should be noted that after the communication connection is established, the first client and the second server can sense the cascaded usage scenario of the cloud service. At this time, the first client will not decode and draw the actual display content corresponding to the display data on the screen of the second cloud service, but will directly transfer the display data to the second server based on the established communication connection.

[0109] In the embodiments of the present application, the first client sends a communication connection request to a specified port of the second server based on a preset port number. Since the second server listens on the specified port to obtain connection requests, to a certain extent, it can ensure that the communication connection request can be received by the server in a timely manner, thereby ensuring the establishment efficiency of the communication connection. It should be noted that in the embodiments of the present application, the communication connection between the first client and the second server can also be established through the inter-process communication function provided by the operating system, and the embodiments of the present application do not limit this.

[0110] Optionally, in the embodiments of the present application, the step of sending the display data to the second server may include: sending the display data to a preset port number for the second server to obtain the display data through the preset port number. Among them, the first client sending the display data to the preset port number can achieve sending the display data to the specified port. Correspondingly, the second server can obtain the received display data from the specified port through the preset port number. In this way, it can ensure the data transmission efficiency to a certain extent and ensure the security of data transmission.

[0111] Refer to Figure 8 , which shows a flowchart of the steps of another data processing method for cloud services provided by the embodiments of the present application, applied to the second server, including:

[0112] Step 501, receive the display data sent by the first client when it determines that it is in a series usage scenario; where the display data is obtained by the first client from the first server of the first cloud service; the series usage scenario includes: the second server and the first client run in the same second cloud service.

[0113] Specifically, the implementation manner of this step can refer to the foregoing related description and will not be elaborated here.

[0114] Step 502, forward the display data to the second client, where the second client is the client corresponding to the second server.

[0115] Specifically, the implementation manner of this step can refer to the foregoing related description and will not be elaborated here.

[0116] In summary, in the embodiments of the present application, when receiving the display data sent by the first client in the case where the running scenario is the serial usage scenario, the display data is forwarded to the second client. Thus, in the case of serial connection, the display data of the first cloud service used in series can be transmitted. At the same time, since no complex processing is required, that is, the first client does not need to perform additional processing operations on the display data. For example, operations such as decompression and calling a graphics component for display are not required. The second server, as the server of the next-level cloud service of the first cloud service, also does not need to perform additional processing operations. For example, operations such as calling an image capture component for image capture and encoding compression are not required. Therefore, while realizing the transmission of the display data of the indirectly connected first cloud service, the data transmission efficiency can be improved, and the data transmission delay can be reduced. At the same time, the data transmission cost can be saved, the computing power and network requirements for the cloud service can be reduced, and the requirements for the computing power and network of the cloud service can be lowered. And because the data delay is reduced, to a certain extent, the content display delay can be reduced, and the problem of untimely content display can be avoided, which will lead to a large operation delay for the first cloud service.

[0117] Optionally, in the embodiments of the present application, it may further include:

[0118] Step 601, monitor a preset port number.

[0119] Step 602, when receiving a communication connection request sent by the first client at the preset port number, return a target response message to establish a communication connection with the first client.

[0120] Specifically, the implementation manners of Step 601 to Step 602 may refer to the foregoing related descriptions and will not be elaborated herein.

[0121] In the embodiments of the present application, the second server obtains a communication connection request by monitoring a preset port number, and when receiving a communication connection request sent by the first client at the preset port number, it can directly return a target response message to establish a communication connection with the first client without performing identity verification, which can ensure to a certain extent that the communication connection request can be received and responded in a timely manner, and thus ensure the establishment efficiency of the communication connection.

[0122] Optionally, in the embodiments of the present application, it may further include:

[0123] Step 604, monitor a preset port number.

[0124] Step 605, when receiving a communication connection request sent by the first client at the preset port number, verify the first identity information of the first client included in the communication connection request, and generate a target response message after the first identity information is verified.

[0125] Step 606: Return the target response information to establish a communication connection with the first client.

[0126] In the embodiments of the present application, the second server obtains a communication connection request by listening to a preset port number. When a communication connection request sent by the first client is received at the preset port number, the communication connection request may include the identity information of the first client. Then, the second server can extract the first identity information from the communication connection request, and then verify the first identity information. After the first identity information is verified, the target response information is generated, and then the target response information is generated. Among them, the embodiments of the present application do not limit the method of identity verification, such as using a blacklist / whitelist mechanism, etc.

[0127] After generating the target response information, return the target response information to establish a communication connection with the first client. Since the first client is authenticated first and then the target response information is generated, the information security can be improved to a certain extent, and it can also prevent a certain client that is not in a cascaded scenario from connecting to the second server, saving the resources of the second server.

[0128] Optionally, in the embodiments of the present application, the step of receiving the display data sent by the first client when the running scenario is a cascaded usage scenario may include: receiving the display data sent by the first client when the running scenario is a cascaded usage scenario through a preset port number. Among them, the first client can send the display data to the preset port number. Correspondingly, since the second server listens to the preset port number, the display data can be received in time through the preset port number. In this way, the data transmission efficiency can be ensured to a certain extent.

[0129] In the embodiments of the present application, the second server continues to send the received display data to the second client. The second client can continue to send the display data to the third server of the third cloud service when the second cloud service is not a direct connection cloud service, that is, when the second client of the second cloud service is in a cascaded usage scenario, and send the display data to the third client corresponding to the third server through the third server of the third cloud service until the display data is sent to the client of the direct connection cloud service. Among them, the third cloud service is the next-level cloud service of the second cloud service, and the client of the direct connection cloud service is installed on the user device, and the client of the direct connection cloud service is used to display according to the received display data.

[0130] In the embodiments of the present application, if the second cloud service is not a direct connection cloud service, it indicates that the display data sent to the second server needs to be transmitted further downward to ensure that the display data transmitted this time can ultimately be transmitted to the client of the direct connection cloud service, thereby ensuring that the display data can be displayed to the user on the user device. In the embodiments of the present application, the second server can first send the received display data to the second client. If the second cloud service is a direct connection cloud service, the display data has currently been transmitted to the client of the cloud service installed locally on the user device. Accordingly, the second client, as the client of the direct connection cloud service, can display according to the received display data. For example, the client of the direct connection cloud service can decompress the received display data and then render and display the decompressed display data.

[0131] Conversely, if the second cloud service is not a direct connection cloud service, the display data has not currently been transmitted to the client of the cloud service installed locally on the user device. Accordingly, the second client, as the client of the non-direct connection cloud service, can continue to forward the display data downward to the third server in the manner described above. Figure 5 The third server sends the received display data to the third client. The third client can continue to send the display data to the server of the next-level cloud service when the third cloud service is not a direct connection cloud service, that is, when the third client is also in the cascaded usage scenario. By continuously forwarding downward until the display data is transmitted to the client of the cloud service installed locally on the user device. In this way, it can be ensured that the display data transmitted this time can ultimately be transmitted to the client of the direct connection cloud service, thereby ensuring that the display data can be displayed to the user on the user device.

[0132] Optionally, in another embodiment of the present application, the display data may include content data to be displayed and display attribute data, where the display attribute data is used to indicate the display position and display size; the client directly connected to the cloud service is specifically configured to decompress the display data, and display the content data to be displayed in the display data after decompression at the display position and in the display size. Among them, the content data to be displayed is the data required to draw the content to be displayed. Among them, the content to be displayed may be a page, a picture, etc. The display attributes may include a display position attribute and a display size attribute. The display attribute data may include position attribute information and size attribute information. The position attribute information may be used to characterize the display position of the content to be displayed in the display interface, and the size attribute information may be used to characterize the display size of the content to be displayed in the display interface. For example, the position attribute information may be used to characterize the display width and display length of the content to be displayed in the display interface. After the display data transmitted this time is finally transmitted to the client directly connected to the cloud service, the client directly connected to the cloud service may first decompress the display data, and then extract the content data to be displayed, the position attribute information, and the size attribute information from it. Determine the display position according to the position attribute information, determine the display size according to the size attribute information, and finally display the content data to be displayed at the display position and in the display size. Among them, the content data to be displayed may be displayed in the application window of the display interface, and the content to be displayed may be drawn based on the application window where the content data to be displayed is located. At the same time, the size of the application window may be set to the display size, and the position of the application window may be set at the display position. In the embodiment of the present application, the display attribute data is used as a part of the display data and transmitted, so that the content to be displayed can be finally displayed according to the set display position and display size, thereby improving the display effect to a certain extent.

[0133] Refer to Figure 9, which shows an interaction schematic diagram of a data transmission process provided by an embodiment of the present application. Among them, Cloud Desktop 1 is a directly connected cloud service, and Cloud Desktop 2 is a non-directly connected cloud service. The server of Cloud Desktop 1 can monitor a specified port. After the client of Cloud Desktop 2 is started, it can establish a communication connection with the server of Cloud Desktop 1 based on mutual authentication. The client of Cloud Desktop 2 can specifically establish a connection by sending a communication connection request to the specified port. The specific connection establishment process can refer to the foregoing description and will not be elaborated here. After successfully establishing a communication connection, the client of Cloud Desktop 2 can send display data to the server of Cloud Desktop 1. The server of Cloud Desktop 1 can finally send the received display data to the client of Cloud Desktop 1. Among them, the display data can be data obtained by encoding and compressing the content to be displayed on Cloud Desktop 2 by the server of Cloud Desktop 2. The display data can include the content data to be displayed and display attribute data. In this way, it can be convenient for the client of Cloud Desktop 1 to know the display position and size of the content to be displayed on Cloud Desktop 2 on the screen of the user device.

[0134] Optionally, in another embodiment of the present application, the display data may include: data obtained by encoding and compressing the content to be displayed on the first cloud service by the first server. In this case, the display data received by the first client is the data corresponding to the content to be displayed on the first cloud service. Among them, the first server can obtain the content to be displayed on the first cloud service by taking a screenshot, which can conveniently present the display content of the cloud service to the user. Further, by encoding and compressing the content to be displayed on the first cloud service, the transmission speed can be improved. In the embodiment of the present application, after the first server encodes and compresses the content to be displayed on the first cloud service, display data is obtained. The obtained display data is used as the display data for this transmission and transmitted downward, which can ensure that the content to be displayed on the first cloud service can finally be displayed to the user.

[0135] Optionally, in another embodiment of the present application, the display data includes: display data sent by the client of the upper-level cloud service received by the first server. In this case, the display data received by the first client is the data corresponding to the content to be displayed on other cloud services. In the embodiment of the present application, the display data sent by the client of its upper-level cloud service received by the first server is used as the display data for this transmission and transmitted downward, which can ensure that the display data of other cloud services can be successfully transmitted and ensure that the content to be displayed on other cloud services can finally be displayed to the user.

[0136] It should be noted that in the embodiments of the present application, the cloud services in the multiple cloud services connected in series by the user equipment can be cloud desktops, or they can also be cloud applications. That is, the data processing method in the embodiments of the present application can be applied to the usage scenario where the user equipment is connected in series to multiple cloud desktops, can also be applied to the usage scenario where the user equipment is connected in series to multiple cloud services, or can also be applied to the scenario where the user equipment is connected in series to cloud services and cloud applications, that is, the multiple cloud services connected in series include both cloud desktops and cloud applications at the same time. In this way, the applicable scope of the data processing method in the embodiments of the present application can be expanded.

[0137] Referring to Figure 10 , a block diagram of a data processing device for a cloud service of the present application is shown, which is applied to a first client and includes:

[0138] An obtaining module 701, configured to obtain display data sent by a first server of a first cloud service;

[0139] A first sending module 702, configured to send the display data to a second server when the running scenario of the first client is a series usage scenario; wherein, the display data is used for the second server to send to a second client corresponding to the second server; the series usage scenario includes: the second server and the first client run in the same second cloud service.

[0140] Optionally, the device further includes:

[0141] A second sending module, configured to send a communication connection request to the second server;

[0142] A determining module, configured to determine that the running scenario of the first client is a series usage scenario when a communication connection is established with the second server through the communication connection request.

[0143] Optionally, the second sending module is specifically configured to:

[0144] Send a communication connection request to a preset port number of the second server;

[0145] The determining module is specifically configured to:

[0146] Determine that the running scenario of the first client is a series usage scenario when a communication connection is established with the second server based on the preset port number through the communication connection request.

[0147] Optionally, the first sending module 702 is specifically configured to:

[0148] Send the display data to the preset port number for the second server to obtain the display data through the preset port number.

[0149] Optionally, the communication connection request includes: the first identity information of the first client; the apparatus further includes:

[0150] A establishing module, configured to establish a communication connection with the second server if receiving a target response message returned by the second server; wherein, the target response message is generated by the second server in response to the communication connection request and after the verification of the first identity information is passed.

[0151] Optionally, the target response message includes: the second identity information of the second server; the establishing module is specifically configured to:

[0152] If receiving the target response message, verify the second identity information of the second server;

[0153] In the case where the verification of the second identity information is passed, establish a communication connection with the second server.

[0154] Optionally, the cloud service is a cloud desktop service.

[0155] In summary, in the embodiments of the present application, by obtaining the display data sent by the first server of the first cloud service, when the running scenario where the first client is located is a series usage scenario, the second server and the first client run on the same cloud service, that is, when the second server is the server of the next-level cloud service of the first cloud service, the display data is directly sent to the second server, so as to send the display data to the second client corresponding to the second server through the second server, and further, in the case of realizing series connection, the display data of the first cloud service used in series can be transmitted.

[0156] At the same time, since no complex processing is required, that is, the first client does not need to perform additional processing operations on the display data, for example, operations such as decompression and calling a graphics component for display, and the second server, as the server of the next-level cloud service of the first cloud service, also does not need to perform additional processing operations, for example, operations such as calling an image capture component for image capture and encoding and compression, therefore, while realizing the transmission of the display data of the indirectly connected first cloud service, the data transmission efficiency can be improved, and the data transmission delay can be reduced. At the same time, the data transmission cost can be saved, the computing power and network requirements for the cloud service can be reduced, and the requirements for the computing power and network of the cloud service can be lowered. And because the data delay is reduced, to a certain extent, the content display delay can be reduced, and the problem that the content display is not timely, which will lead to a large operation delay for the first cloud service, can be avoided.

[0157] Referring to Figure 11 , a block diagram of another data processing apparatus of the cloud service of the present application is shown, which is applied to the second server and includes:

[0158] A receiving module 801, configured to receive display data sent by a first client when the running scenario is a series connection scenario; wherein, the display data is obtained by the first client from a first server of a first cloud service; the series connection scenario includes: a second server and the first client run in the same second cloud service;

[0159] A second sending module 802, configured to forward the display data to a second client, where the second client is the client corresponding to the second server.

[0160] Optionally, the apparatus further includes:

[0161] A monitoring module, configured to monitor a preset port number;

[0162] A generating module, configured to, when a communication connection request sent by the first client is received at the preset port number, verify first identity information of the first client included in the communication connection request, and generate a target response message after the first identity information is verified;

[0163] A returning module, configured to return the target response message to establish a communication connection with the first client.

[0164] Optionally, the receiving module 801 is specifically configured to: receive, through a preset port number, display data sent by the first client when the running scenario is a series connection scenario.

[0165] In summary, in the embodiment of the present application, the display data sent by the first client when the running scenario is a series connection scenario is received, and the display data is forwarded to the second client, so that the display data of the first cloud service used in series can be transmitted in the case of a series connection. At the same time, since no complex processing is required, that is, the first client does not need to perform additional processing operations on the display data, for example, operations such as decompression and calling a graphics component for display, and the second server, as the server of the next-level cloud service of the first cloud service, also does not need to perform additional processing operations, for example, operations such as calling an image capture component for image capture and encoding and compression, therefore, while realizing the transmission of the display data of the indirectly connected first cloud service, the data transmission efficiency can be improved, and the data transmission delay can be reduced. At the same time, the data transmission cost can be saved, the computing power and network requirements for the cloud service can be reduced, and the requirements for the computing power and network of the cloud service can be reduced. And since the data delay is reduced, to a certain extent, the content display delay can be reduced, and the problem that the content display is not timely, which may lead to a large operation delay for the first cloud service, can be avoided.

[0166] The embodiments of the present application also provide a non - volatile readable storage medium, in which one or more modules (programs) are stored. When the one or more modules are applied to a device, the device can be caused to execute the instructions of the method steps in the embodiments of the present application.

[0167] The embodiments of the present application provide one or more machine - readable media, on which instructions are stored. When executed by one or more processors, the electronic device is caused to execute one or more of the methods as described in the above embodiments. In the embodiments of the present application, the electronic device includes various types of devices such as terminal devices and servers (clusters).

[0168] The embodiments of the present application can be implemented as a device configured with any suitable hardware, firmware, software, or any combination thereof. The device may include electronic devices such as terminal devices and servers (clusters). Figure 12 Schematically shown is an exemplary device 1000 that can be used to implement the various embodiments described in the embodiments of the present application.

[0169] For one embodiment, Figure 12 Shown is the exemplary device 1000, which has one or more processors 1002, a control module (chipset) 1004 coupled to at least one of the (one or more) processors 1002, a memory 1006 coupled to the control module 1004, a non - volatile memory (Non Volatile Memory, NVM) / storage device 1008 coupled to the control module 1004, one or more input / output devices 1010 coupled to the control module 1004, and a network interface 1012 coupled to the control module 1004.

[0170] The processor 1002 may include one or more single - core or multi - core processors. The processor 1002 may include any combination of general - purpose processors or special - purpose processors (such as graphics processors, application processors, baseband processors, etc.). In some embodiments, the device 1000 can function as the terminal device, server (cluster), etc. described in the embodiments of the present application.

[0171] In some embodiments, the device 1000 may include one or more computer - readable media (e.g., memory 1006 or NVM / storage device 1008) having instructions 1014 and one or more processors 1002 combined with the one or more computer - readable media and configured to execute the instructions 1014 to implement modules so as to perform the actions described in the present application.

[0172] For one embodiment, the control module 1004 may include any suitable interface controller to provide any suitable interface to at least one of the processor(s) 1002 and / or any suitable device or component communicating with the control module 1004.

[0173] The control module 1004 may include a memory controller module to provide an interface to the memory 1006. The memory controller module may be a hardware module, a software module, and / or a firmware module.

[0174] The memory 1006 may be used to load and store data and / or instructions 1014 for the device 1000, for example. For one embodiment, the memory 1006 may include any suitable volatile memory, such as, for example, suitable Dynamic Random Access Memory (DRAM). In some embodiments, the memory 1006 may include Double Data Rate Fourth Synchronous Dynamic Random Access Memory (DDR4 SDRAM).

[0175] For one embodiment, the control module 1004 may include one or more input / output controllers to provide an interface to the NVM / storage device 1008 and the input / output device(s) 1010.

[0176] For example, the NVM / storage device 1008 may be used to store data and / or instructions 1014. The NVM / storage device 1008 may include any suitable non-volatile memory (such as, for example, flash memory) and / or may include any suitable non-volatile storage device(s) (such as, for example, one or more Hard-Disk Drives (HDDs), one or more Compact Disk (CD) drives, and / or one or more Digital Video Disk (DVD) drives).

[0177] The NVM / storage device 1008 may include storage resources that are physically part of a device on which the device 1000 is mounted, or it may be accessible by the device without being part of the device. For example, the NVM / storage device 1008 may be accessed via the input / output device(s) 1010 over a network.

[0178] (One or more) input / output devices 1010 can provide an interface for device 1000 to communicate with any other suitable device. The input / output devices 1010 can include communication components, audio components, sensor components, etc. The network interface 1012 can provide an interface for device 1000 to communicate through one or more networks. Device 1000 can wirelessly communicate with one or more components of a wireless network according to any of one or more wireless network standards and / or protocols, such as accessing a wireless network based on a communication standard, such as a Wireless Fidelity (WiFi) network, a second generation (2G) mobile communication technology network, a third generation (3G) mobile communication technology network, a fourth generation (4G) mobile communication technology network, a fifth generation (5G) mobile communication technology network, etc., or a combination thereof for wireless communication.

[0179] For one embodiment, at least one of (one or more) processors 1002 can be logically packaged with one or more controllers of the control module 1004 (e.g., a memory controller module). For one embodiment, at least one of (one or more) processors 1002 can be logically packaged with one or more controllers of the control module 1004 to form a System in a Package (SiP). For one embodiment, at least one of (one or more) processors 1002 can be logically integrated on the same die with one or more controllers of the control module 1004. For one embodiment, at least one of (one or more) processors 1002 can be logically integrated on the same die with one or more controllers of the control module 1004 to form a System on Chip (SoC).

[0180] In various embodiments, device 1000 can be, but is not limited to: a server, a desktop computing device, or a mobile computing device (e.g., a laptop computing device, a handheld computing device, a tablet computer, a netbook, etc.) and other terminal devices. In various embodiments, device 1000 can have more or fewer components and / or a different architecture. For example, in some embodiments, device 1000 includes one or more cameras, a keyboard, a Liquid Crystal Display (LCD) screen (including a touch screen display), a non-volatile memory port, multiple antennas, a graphics chip, an Application-Specific Integrated Circuit (ASIC), and a speaker.

[0181] Among them, a main control chip can be used as a processor or a control module in the detection device. Sensor data, position information, etc. are stored in a memory or an NVM / storage device. The sensor group can be used as an input / output device, and the communication interface can include a network interface.

[0182] For the device embodiments, since they are basically similar to the method embodiments, the description is relatively simple. For related parts, refer to the partial description of the method embodiments.

[0183] It should be noted that all actions of obtaining signals, information, or data in this application are carried out on the premise of complying with the corresponding data protection regulations and policies of the country where it is located and with the authorization given by the owner of the corresponding device.

[0184] Each embodiment in this specification is described in a progressive manner. Each embodiment focuses on the differences from other embodiments. For the same or similar parts among the embodiments, reference can be made to each other.

[0185] The embodiments of the present application are described with reference to the flowcharts and / or block diagrams of the methods, terminal devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or block in the flowchart and / or block diagram can be implemented by computer program instructions, and the combination of the processes and / or blocks in the flowchart and / or block diagram can also be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general computer, a special computer, an embedded processor, or other programmable data processing terminal devices to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing terminal devices generate a device for implementing the functions specified in one or more processes in the flowchart and / or one or more blocks in the block diagram.

[0186] These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing terminal device to work in a specific manner, so that the instructions stored in the computer-readable memory generate a manufactured product including an instruction device, and the instruction device implements the functions specified in one or more processes in the flowchart and / or one or more blocks in the block diagram.

[0187] These computer program instructions can also be loaded onto a computer or other programmable data processing terminal device, so that a series of operation steps are executed on the computer or other programmable terminal device to generate a computer-implemented process. Therefore, the instructions executed on the computer or other programmable terminal device provide steps for implementing the functions specified in one or more processes in the flowchart and / or one or more blocks in the block diagram.

[0188] Although the preferred embodiments of the embodiments of the present application have been described, those skilled in the art can make additional changes and modifications to these embodiments once they learn the basic creative concepts. Therefore, the appended claims are intended to be construed as including the preferred embodiments and all changes and modifications that fall within the scope of the embodiments of the present application.

[0189] Finally, it should also be noted that in this text, relational terms such as first and second are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the term "comprising", "including" or any other variant thereof is intended to cover non-exclusive inclusion, so that a process, method, article or terminal device comprising a series of elements not only includes those elements, but also includes other elements not expressly listed, or also includes elements inherent to such process, method, article or terminal device. Without further limitation, an element defined by the statement "comprising an..." does not exclude the presence of additional identical elements in the process, method, article or terminal device comprising the element.

[0190] The above has introduced in detail a data processing method, device, electronic device and readable medium for a cloud service provided by the present application. Specific examples are used in this text to elaborate on the principle and implementation manner of the present application. The description of the above embodiments is only used to help understand the method and its core idea of the present application; at the same time, for those of ordinary skill in the art, according to the idea of the present application, there will be changes in the specific implementation manner and application scope. In summary, the content of this specification should not be construed as a limitation to the present application.

Claims

1. A data processing method for cloud services, characterized in that, Applied to the first client, the method includes: Obtain display data sent by the first server of the first cloud service; the first client does not perform operations of decompressing the display data and invoking a graphics component for display. In the case where the running scenario of the first client is a series usage scenario, send the display data to the second server; wherein, the display data is used for the second server to send to the second client corresponding to the second server; the series usage scenario includes: the second server and the first client run in the same second cloud service; the second server does not perform operations of invoking an image capture component to capture an image and encoding and compressing the display data.

2. The method according to claim 1, characterized in that, The method further includes: Send a communication connection request to the second server. In the case of establishing a communication connection with the second server through the communication connection request, determine that the running scenario of the first client is a series usage scenario.

3. The method according to claim 2, wherein The sending of the communication connection request to the second server includes: Send a communication connection request to the preset port number of the second server. In the case of establishing a communication connection with the second server through the communication connection request, determining that the running scenario of the first client is a series usage scenario includes: In the case of establishing a communication connection with the second server based on the preset port number through the communication connection request, determine that the running scenario of the first client is a series usage scenario.

4. The method according to claim 3, characterized in that, The sending of the display data to the second server includes: Send the display data to the preset port number for the second server to obtain the display data through the preset port number.

5. The method according to claim 2, characterized in that, The communication connection request includes the first identity information of the first client; the method further includes: If receiving the target response information returned by the second server, establish a communication connection with the second server. Wherein, the target response information is generated by the second server in response to the communication connection request and after passing the verification of the first identity information.

6. The method according to claim 5, characterized in that The target response information includes: the second identity information of the second server; the if receiving the target response information returned by the second server and establishing a communication connection with the second server includes: If receiving the target response information, verify the second identity information of the second server. In the case where the verification of the second identity information passes, establish a communication connection with the second server.

7. The method according to any one of claims 1-6, characterized in that, The cloud service is a cloud desktop service.

8. A data processing method for cloud services, characterized in that, Applied to the second server, the method includes: Receive display data sent by the first client in the case where the running scenario is a series usage scenario; wherein, the display data is obtained by the first client from the first server of the first cloud service; the series usage scenario includes: the second server and the first client run in the same second cloud service; the first client does not perform operations of decompressing the display data and invoking a graphics component for display; the second server does not perform operations of invoking an image capture component to capture an image and encoding and compressing the display data. Forward the display data to the second client, where the second client is the client corresponding to the second server.

9. The method according to claim 8, wherein The method further includes: Listening on a preset port number; When a communication connection request sent by the first client is received on the preset port number, verifying the first identity information of the first client included in the communication connection request, and generating a target response message after the verification of the first identity information passes; Return the target response message to establish a communication connection with the first client.

10. The method according to claim 9, wherein The receiving the display data sent by the first client when the running scenario is a cascaded usage scenario includes: Receiving, through the preset port number, the display data sent by the first client when the running scenario is a cascaded usage scenario.

11. A data processing device for cloud services, characterized in that, Applied to the first client, the device includes: An acquisition module, configured to acquire display data sent by the first server of the first cloud service; the first client does not perform operations of decompressing the display data and invoking a graphics component for display; A first sending module, configured to send the display data to the second server when the running scenario of the first client is a cascaded usage scenario; wherein, the display data is used for the second server to send to the second client corresponding to the second server; the cascaded usage scenario includes: the second server and the first client run in the same second cloud service; the second server does not perform operations of invoking an image capture component to capture an image and encoding and compressing the display data.

12. A data processing device for cloud services, characterized in that, Applied to the second server, the device includes: A receiving module, configured to receive display data sent by the first client when the running scenario is a cascaded usage scenario; wherein, the display data is acquired by the first client from the first server of the first cloud service; the cascaded usage scenario includes: the second server and the first client run in the same second cloud service; the first client does not perform operations of decompressing the display data and invoking a graphics component for display; the second server does not perform operations of invoking an image capture component to capture an image and encoding and compressing the display data; A second sending module, configured to forward the display data to the second client, where the second client is the client corresponding to the second server.

13. An electronic device, characterized in that, Includes: A processor; And A memory, on which executable code is stored, and when the executable code is executed, the processor is caused to execute the method according to any one of claims 1 to 10.

14. One or more machine-readable media, on which executable code is stored, and when the executable code is executed, the processor is caused to execute the method according to any one of claims 1 to 10.

Citation Information

Patent Citations

  • Information processing method and electronic equipment

    CN104348885A

  • Cloud service calling method and device

    CN111552568A