WO2020077832A1 - Cloud desktop access method, apparatus and device, and storage medium - Google Patents

Cloud desktop access method, apparatus and device, and storage medium Download PDF

Info

Publication number
WO2020077832A1
WO2020077832A1 PCT/CN2018/123188 CN2018123188W WO2020077832A1 WO 2020077832 A1 WO2020077832 A1 WO 2020077832A1 CN 2018123188 W CN2018123188 W CN 2018123188W WO 2020077832 A1 WO2020077832 A1 WO 2020077832A1
Authority
WO
WIPO (PCT)
Prior art keywords
tcp
access request
connection
long
cloud desktop
Prior art date
Application number
PCT/CN2018/123188
Other languages
French (fr)
Chinese (zh)
Inventor
穆骏
Original Assignee
平安科技(深圳)有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 平安科技(深圳)有限公司 filed Critical 平安科技(深圳)有限公司
Publication of WO2020077832A1 publication Critical patent/WO2020077832A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services

Definitions

  • the present application relates to the field of cloud desktop access technology, and in particular, to a cloud desktop access method, device, equipment, and storage medium.
  • CloudStack is an open source cloud computing platform with high availability and scalability, as well as an open source cloud computing solution.
  • the platform also has a built-in user interface and programming interface to manage computing resources such as computing, networking, and storage. Therefore, using CloudStack as a foundation, data center operators can quickly and easily create cloud services through existing infrastructure.
  • CloudStack can accelerate the deployment, management and configuration of highly scalable public and private cloud environments.
  • access to the cloud desktop provided by CloudStack usually requires a separate application for accessing the cloud desktop to be installed on the user's machine, that is, in the implementation process, a proxy server to support the work of the application needs to be set, and the proxy server Assist the user machine to interact with the cloud desktop provided by CloudStack, which will undoubtedly increase the implementation cost.
  • a transmission control protocol Transmission
  • TCP Transmission Control Protocol
  • HTTP Hyper Text Transfer Protocol
  • CloudStack Hyper Text Transfer Protocol
  • the main purpose of this application is to provide a cloud desktop access method, device, equipment and storage medium, aiming to solve the high access cost of cloud desktop in the prior art, and user machine resources are prone to appear during the process of accessing the cloud desktop Take up too many questions.
  • the present application provides a cloud desktop access method.
  • the method includes the following steps:
  • the access request is sent to the cloud computing platform, and the response information made by the cloud computing platform is received to achieve access to the cloud desktop provided by the cloud computing platform.
  • the present application also provides a cloud desktop access device, the device including:
  • a page identifier acquisition module configured to receive a cloud desktop access request triggered by a user through a web browser, and extract the page identifier of the web browser from the access request;
  • a TCP long connection search module configured to search for a TCP long connection required for communication between the web browser and the cloud desktop from a pre-built TCP connection pool according to the page identifier;
  • the cloud desktop access module is used to send the access request to the cloud computing platform using the long TCP connection, and receive the response information made by the cloud computing platform to implement access to the cloud desktop provided by the cloud computing platform .
  • the present application also proposes a cloud desktop access device, the device includes: a memory, a processor, and a cloud desktop accessible on the memory and capable of running on the processor.
  • Read instructions the cloud desktop access readable instructions are configured to implement the steps of the cloud desktop access method described above.
  • the present application also proposes a storage medium on which the cloud desktop access readable instructions are stored, and the cloud desktop access readable instructions are implemented by the processor as described above Steps of the cloud desktop access method.
  • the cloud desktop access method, device, device, and storage medium of this embodiment access the cloud desktop provided by the cloud platform by using web browsing, so that there is no need to separately install a cloud desktop access application on the user's machine, and therefore also in the implementation process There is no need to additionally set up a proxy server to support the work of accessing the cloud desktop application, thereby effectively reducing the access cost of the cloud desktop.
  • the TCP length required for the web browser initiating the cloud desktop access request to communicate with the cloud desktop is found from the pre-built TCP connection pool according to the web browser's page identifier Connection, directly use the existing TCP long connection to exchange with the cloud desktop, to achieve access to the cloud desktop, in the process of accessing the cloud desktop, there is no need to repeatedly perform the operation of creating a TCP connection, just use it for reuse, so that Effectively reduce the occupation of user machine resources and solve the problem of flickering and jamming of user machine operation interface.
  • FIG. 1 is a schematic structural diagram of a cloud desktop access device of a hardware operating environment according to an embodiment of the present application
  • FIG. 2 is a schematic flowchart of a first embodiment of a cloud desktop access method according to this application;
  • FIG. 3 is a schematic flowchart of a second embodiment of a cloud desktop access method according to this application.
  • FIG. 4 is a structural block diagram of a first embodiment of a cloud desktop access device of the present application.
  • FIG. 1 is a schematic structural diagram of a cloud desktop access device of a hardware operating environment according to an embodiment of the present application.
  • the cloud desktop access device may include: a processor 1001, such as a central processor (Central Processing Unit, CPU), communication bus 1002, user interface 1003, network interface 1004, memory 1005.
  • the communication bus 1002 is used to implement connection communication between these components.
  • the user interface 1003 may include a display screen (Display), an input unit such as a keyboard (Keyboard), and the optional user interface 1003 may also include a standard wired interface and a wireless interface.
  • the network interface 1004 may optionally include a standard wired interface and a wireless interface (such as a wireless fidelity (WIreless-FIdelity, WI-FI) interface).
  • WIreless-FIdelity WI-FI
  • the memory 1005 may be a high-speed random access memory (Random Access Memory (RAM) memory can also be a stable non-volatile memory (Non-Volatile Memory, NVM), such as disk storage.
  • RAM Random Access Memory
  • NVM Non-Volatile Memory
  • the memory 1005 may optionally be a storage device independent of the foregoing processor 1001.
  • FIG. 1 does not constitute a limitation on the cloud desktop access device, and may include more or less components than shown, or combine certain components, or arrange different components .
  • the memory 1005 as a storage medium may include an operating system, a network communication module, a user interface module, and a cloud desktop access program (that is, cloud desktop access readable instructions).
  • the network interface 1004 is mainly used for data communication with the cloud computing platform; the user interface 1003 is mainly used for data interaction with the user; the processor in the cloud desktop access device of this application 1001.
  • the storage 1005 may be provided in a cloud desktop access device.
  • the cloud desktop access device calls the cloud desktop access readable instructions stored in the memory 1005 through the processor 1001, and executes the cloud desktop provided by the embodiment of the present application. Access method.
  • FIG. 2 is a schematic flowchart of a first embodiment of a cloud desktop access method of the present application.
  • the cloud desktop access method includes the following steps:
  • Step S10 Receive a cloud desktop access request triggered by a user through a web browser, and extract a page identifier of the web browser from the access request.
  • the execution subject in this embodiment is the user machine used by the user.
  • the user machine may be any terminal device capable of accessing the network, such as a personal computer, a smart phone, a tablet computer, etc., which are not listed here one by one, and there is no limitation on this.
  • the aforementioned web browser namely Web browser, referred to as Web browser
  • Web browser is a Hyper Text Markup language (Hyper Text Markup Language, HTML) developed to display the HTML file content of the web server or file system, and allow users to interact with these files, a software that usually comes on the user's machine, so in this case by using a web browser to trigger An access request to access the cloud desktop, that is, a remote desktop access protocol based on noVNC, which realizes the interactive operation between the user machine and the cloud desktop provided by the cloud computing platform (CloudStack).
  • HTML Hyper Text Markup Language
  • the noVNC mentioned above is a remote desktop access protocol opposite to VNC.
  • the use of the VNC remote desktop access protocol must install the corresponding application program on the user, that is, the method used by the existing user machine to access the cloud desktop; and noVNC does not need to install a separate application on the user machine to access the cloud desktop Program, so there is no need to additionally set a proxy server to support the work of accessing the cloud desktop application during the implementation process, which not only facilitates the convenience of creating cloud services based on CloudStack, but also effectively reduces the implementation cost.
  • Hypertext Transfer Protocol HyperText Transfer Protocol, HTTP.
  • the content carried in the access request may specifically be various information carried in the HTTP request, such as the request header and the request body.
  • the purpose of extracting the page identifier of the web browser from the access request is to enable CloudStack to recognize the operating system, version, and CPU of the user machine
  • the types, the version of the web browser, the rendering engine of the web browser, the language of the web browser, the plug-ins of the web browser, etc., are not listed here one by one, and there is no restriction on this.
  • step S20 according to the page identifier, a long TCP connection required for communication between the web browser and the cloud desktop is searched from a pre-built TCP connection pool.
  • TCP Transmission Control Protocol
  • TCP Transmission Control Protocol
  • TCP Transmission Control Protocol
  • the TCP connection needs to complete three handshakes during the establishment process, and the release process needs to complete the four handshake. Therefore, the establishment of each TCP connection requires resource consumption and time consumption.
  • the TCP long connection After the TCP long connection is established, even if the communication parties (user machine and cloud desktop) complete a read and write operation, the TCP long connection will not be automatically closed, so subsequent read and write operations can continue to take the TCP long connection In this way, there is no need to repeatedly perform the creation operation during the entire process of the user machine accessing the cloud desktop, so it can effectively reduce the occupation of the user machine resources.
  • a TCP connection pool for storing these long TCP connections can be constructed in advance , So that after receiving the access request triggered by the user through the web browser, directly find the TCP long connection required for the communication between the web browser and the cloud desktop from the TCP connection pool according to the web page identifier extracted from the access request That's it.
  • a key-value pair will be used, and the unique page identifier will be stored in the record table as the key information required for retrieval. key area, and then store the identification number of the TCP long connection corresponding to each page ID into the value area corresponding to the key where each page ID is stored. Therefore, when searching for the TCP long connection required for communication between the web browser and the cloud desktop, first use the page identifier to search for the TCP long connection corresponding to the page identifier from a pre-recorded TCP long connection record table Identify and then carry out subsequent search operations, which is not only convenient to search, but also easy to expand and manage.
  • the TCP long connection corresponding to the identification number is found from the pre-built TCP connection pool according to the identification number, and the found
  • the long TCP connection serves as a long TCP connection required for communication between the web browser and the cloud desktop.
  • each TCP long connection will have its own identification number, so according to the found identification number, the TCP long corresponding to the identification number can be quickly and accurately found from the pre-built TCP connection pool connection.
  • the number of long TCP connections added in the pre-built TCP connection pool is limited, so there may be found TCP long connection is currently in use. Therefore, before using the found TCP long connection as the TCP long connection required for the web browser to communicate with the cloud desktop, you can also first determine whether the found TCP long connection is idle. If it is in idle state, it is directly used for multiplexing; otherwise, a long TCP connection is recreated.
  • TCP long connection is created as the TCP long connection required for the web browser to communicate with the cloud desktop, and the created TCP The identification number of the long connection is updated to the TCP long connection record table.
  • the cloud computing platform After receiving the handshake request sent by the user machine, the cloud computing platform makes a handshake response so that the user machine determines that the cloud computing platform has successfully received the handshake request.
  • the first parameter information fed back is specifically the parameter types and specific formats that the cloud computing platform can support, such as the digital types (integer, floating point, currency) that support various system versions (32-bit or 64-bit) Etc.), date type (format: XX year-XX month-XX day), string type, no longer list one by one here, nor limit this.
  • digital types integer, floating point, currency
  • system versions 32-bit or 64-bit
  • date type format: XX year-XX month-XX day
  • string type no longer list one by one here, nor limit this.
  • the second parameter information mentioned here is the type of parameters that the user machine can support, the specific format, etc. It can also be a digital type (integer, float) that supports various system versions (32-bit or 64-bit) Point type, currency type, etc.), date type (format: XX year-XX month-XX day), string type, no longer list them one by one, and do not limit them.
  • the process of accessing the cloud desktop is an interaction process between the user machine and the cloud computing platform
  • the selected parameters need to be supported by both, such as a string type parameter that takes up 10 bytes of storage space. Therefore, by performing intersection processing on the first parameter information and the second parameter information here, the parameters in the candidate parameter set obtained are parameters supported by both parties.
  • any one of the parameters from the candidate parameter set is selected as a parameter required for establishing a long TCP connection to complete the handshake operation.
  • any one parameter from the alternative parameter set can be used as the parameter required for establishing a long TCP connection to complete the handshake operation.
  • the user machine when the user machine completes the handshake operation with the cloud computing platform and starts to access the cloud desktop, it initiates an HTTP request to the cloud computing platform through the pre-bound HTTP server address or IP port, and the cloud computing platform responds to the HTTP request.
  • the user machine returns the HTML file of the cloud desktop, and then the user machine executes the JS (that is, javascrip, a scripting language belonging to the network) script in the HTML file to complete the creation of the TCP long connection.
  • JS that is, javascrip, a scripting language belonging to the network
  • the TCP long connection existing in the above TCP connection pool may be specifically created when the user machine first receives the access request, and when the TCP long connection is idle, the The TCP long connection periodically sends heartbeat packets to ensure that the TCP long connection can always be in a connected state during use.
  • Step S30 Use the TCP long connection to send the access request to the cloud computing platform, and receive the response information made by the cloud computing platform to implement access to the cloud desktop provided by the cloud computing platform.
  • the implementation of the access operation to the cloud desktop provided by the cloud computing platform is roughly as follows:
  • the communication channel between the web browser and the cloud desktop is connected and connected
  • the cloud computing platform will push the cloud desktop related data to the user machine through the TCP long connection.
  • the user machine can render the cloud desktop by triggering a callback mechanism to perform the rendering operation on the data
  • the user can operate the cloud service virtual device (hereinafter referred to as a virtual machine) built on CloudStack through the cloud desktop presented in the web browser.
  • the user machine After detecting the user's operation in the web browser, the user machine encapsulates the data generated during the operation of the cloud desktop into the agreed data format according to the pre-agreed data format, and then communicates through the TCP long connection The channel is sent to the cloud computing platform.
  • the cloud computing platform interprets the data sent by the user machine according to the agreed data packet protocol, and then executes the data packet to control the virtual machine.
  • the cloud desktop access method provided by this embodiment uses web browsing to access the cloud desktop provided by the cloud platform, so that there is no need to separately install an application to access the cloud desktop on the user machine. There is no need to additionally set up a proxy server that supports the work of accessing the cloud desktop application, thereby effectively reducing the access cost of the cloud desktop.
  • the TCP length required for the web browser initiating the cloud desktop access request to communicate with the cloud desktop is found from the pre-built TCP connection pool according to the web browser's page identifier Connection, directly use the existing TCP long connection to exchange with the cloud desktop, to achieve access to the cloud desktop, in the process of accessing the cloud desktop, there is no need to repeatedly perform the operation of creating a TCP connection, just use it for reuse, so that Effectively reduce the occupation of user machine resources and solve the problem of flickering and jamming of user machine operation interface.
  • FIG. 3 is a schematic flowchart of a second embodiment of a cloud desktop access method according to this application.
  • the cloud desktop access method of this embodiment further includes:
  • Step S00 Determine whether the access request meets the preset requirements.
  • whether the access request meets the preset requirement is determined according to the preset access request rule.
  • access request rules may specifically include the standard format of the access request, the fields required to be carried, and the adopted protocol, which are not listed here one by one, nor are they limited.
  • step S30 is entered to perform the operation of sending the access request to the cloud computing platform using the TCP long connection, so as to ensure that After receiving the access request, the cloud computing platform can make a correct response to ensure that the cloud desktop access can proceed smoothly.
  • step S00 may also include:
  • Step S40 Obtain the abnormal log file corresponding to the access request, and send the access request and the abnormal log file to the terminal device of the administrator.
  • management personnel mentioned in this embodiment may specifically be workers who create cloud services based on CloudStack.
  • the terminal device of the management personnel may specifically be a development device used by the management personnel, such as a personal computer, a server, etc., which will not be listed here one by one, and there is no limitation on this.
  • the exception log file and the pre-stored compare the normal log files and mark the inconsistent content to obtain the marked version of the abnormal log file; then send the access request and the marked version of the abnormal log file to the terminal device of the administrator, so that the The management personnel can locate the reason that the access request does not meet the preset requirements based on the access request and the abnormal log file of the marked version.
  • the local parameters of the user machine can also be sent to the terminal device of the manager together, so that The management personnel use the same user machine and the same version of the web browser to trigger the access request to access the cloud desktop, reproduce the problem encountered by the user, and thus can better solve the problem.
  • the local parameters of the user machine are various parameter information recorded under the "About this machine" function option in the setting interface of the phone, such as the network connected to the mobile phone, the total capacity, Available capacity, version, operator, model, serial number, wireless LAN address, etc., are not listed here, nor are there any restrictions.
  • the operation may be performed automatically by the user machine, or after determining that the access request does not meet the preset requirements, first An abnormal prompt pops up on the operation interface of the user machine, reminds the user that the current access request is illegal, and reminds the user to re-initiate the access request, while allowing the user machine to perform the operation in step S40.
  • the method may further include the following operations: The first system time of the machine, reporting the first system time to the assessment system for evaluating the manager; receiving the abnormal release notification sent by the manager's terminal device, and triggering a test access request through the web browser Operation to obtain a test access request; determine the test access request according to a preset judgment rule, and determine that the test access request meets the preset requirements; obtain the second system time of the machine, and set the second system time
  • the time is reported to the assessment system for assessing the management personnel, so that the assessment system determines the time taken by the management personnel to resolve the abnormality according to the first system time and the second system time, and will resolve the abnormality
  • the time used serves as a reference factor for the performance evaluation of the managers.
  • the cloud service created based on CloudStack can be component-developed according to the function and independently deployed, which can facilitate the later modification of any function, and after the modification, there is no need to update the entire service, greatly reducing the cloud
  • the degree of coupling of the various functional modules in the service improves convenience for subsequent horizontal expansion.
  • the cloud desktop access method before using the found TCP long connection to send the access request to the cloud computing platform, by judging the access request, before determining that the Only when the requirements are set, will the access request be sent to the cloud computing platform, so as to ensure that the cloud computing platform can make a correct response after receiving the access request, and ensure that the cloud desktop access can proceed smoothly;
  • the preset requirements are not met, by sending the access request and the exception log file corresponding to the access request to the terminal device of the management personnel, the management personnel can be enabled according to the access request and the exception log file To locate the cause of the access request that does not meet the preset requirements, quickly resolve the abnormal phenomenon, and then ensure the user experience.
  • the computer-readable instructions may be stored in In a non-volatile computer-readable storage medium, the aforementioned non-volatile readable storage medium may be a read-only memory, a magnetic disk, or an optical disk.
  • FIG. 4 is a structural block diagram of a first embodiment of a cloud desktop access device of the present application.
  • the cloud desktop access device includes: a page identifier acquisition module 4001, a TCP long connection search module 4002, and a cloud desktop access module 4003.
  • the page identifier acquisition module 4001 is used to receive a cloud desktop access request triggered by a user through a web browser, and extract the page identifier of the web browser from the access request;
  • the TCP long connection search module 4002 is used to The page identifier, from a pre-constructed TCP connection pool, to find a long TCP connection required for communication between the web browser and the cloud desktop;
  • a cloud desktop access module 4003 is used to use the long TCP connection to transfer the The access request is sent to the cloud computing platform, and the response information made by the cloud computing platform is received to implement access to the cloud desktop provided by the cloud computing platform.
  • the operations performed by the TCP long connection search module 4002 may be specifically divided, and the refined operations are allocated to different functional modules.
  • the TCP long connection search module 4002 may be divided into: an identification number search sub-module, a TCP long connection search sub-module, and a TCP long connection creation sub-module.
  • the identification number searching submodule is used to search for the identification number of the TCP long connection corresponding to the page identification from a pre-recorded TCP long connection record table using the page identification as an index item;
  • the TCP long The connection search submodule is used to search for the TCP long connection corresponding to the identification number from the pre-built TCP connection pool according to the identification number when the identification number of the TCP long connection corresponding to the page identification is found, and Use the found TCP long connection as the TCP long connection required for the web browser to communicate with the cloud desktop;
  • the TCP long connection creation sub-module is used to find the TCP corresponding to the page identifier when the page identifier is not found When the identification number of the long connection is created, create a TCP long connection as the TCP long connection required for the web browser to communicate with the cloud desktop, and update the identification number of the created TCP long connection to the TCP long connection record table in.
  • the operation of the TCP long connection creation submodule to create a TCP long connection can be roughly as follows: send a handshake request to the cloud computing platform to access the cloud desktop, negotiate the parameters required to establish a TCP long connection; receive the cloud computing platform The first parameter information of the handshake response and feedback made; obtaining the second parameter information of the local machine; performing an intersection processing on the first parameter information and the second parameter information to obtain a candidate parameter set; from the backup Select any one of the parameter sets as the parameter required to establish a long TCP connection to complete the handshake operation; send the first hypertext transfer protocol server address and the first Internet protocol port bound to the TCP long connection to the cloud computing platform And receive the second hypertext transfer protocol server address and the second Internet protocol port bound to the cloud desktop delivered by the cloud computing platform to complete the creation of a long TCP connection.
  • the cloud desktop access device provided in this embodiment may further include a state detection module.
  • the state detection module is configured to determine whether the found TCP long connection is used as the TCP long connection required for communication between the web browser and the cloud desktop as the TCP long connection found Idle.
  • the long TCP connection found is used as the long TCP connection required for communication between the web browser and the cloud desktop.
  • the cloud desktop access device accesses the cloud desktop provided by the cloud platform by using web browsing, so that there is no need to install a separate application for accessing the cloud desktop on the user machine. There is no need to additionally set up a proxy server that supports the work of accessing the cloud desktop application, thereby effectively reducing the access cost of the cloud desktop.
  • the TCP length required for the web browser initiating the cloud desktop access request to communicate with the cloud desktop is found from the pre-built TCP connection pool according to the web browser's page identifier Connection, directly use the existing TCP long connection to exchange with the cloud desktop, to achieve access to the cloud desktop, in the process of accessing the cloud desktop, there is no need to repeatedly perform the operation of creating a TCP connection, just use it for reuse, so that Effectively reduce the occupation of user machine resources and solve the problem of flickering and jamming of user machine operation interface.
  • the cloud desktop access device further includes an access request detection module.
  • the access request detection module is used to determine whether the access request meets the preset requirements.
  • the cloud desktop access module is triggered to perform the operation of “using the TCP long connection to send the access request to the cloud computing platform”.
  • the cloud desktop access device may further include a log acquisition module and an exception information sending module.
  • the log obtaining module is used to obtain an exception log file corresponding to the access request when the access request detection module determines that the access request does not meet the preset requirements by judging the access request; the exception information is sent A module for sending the access request and the abnormal log file to the terminal device of the manager, so that the manager can locate the access request and the abnormal log file according to the access request and the abnormal log file Reasons for meeting preset requirements.
  • the cloud desktop access device provided in this embodiment may further include an abnormality marking module.
  • the abnormality marking module is used to compare the abnormality log file with the normality log file pre-stored when the access request is initiated, and mark the inconsistent content to obtain a marked version of the abnormality log file.
  • the abnormal information sending module when sending abnormal information such as the access request and the abnormal log file corresponding to the access request, specifically sends the access request and the marked version of the abnormal log file to the management The terminal device of the personnel, so that the management personnel can locate the reason that the access request does not meet the preset requirements according to the access request and the abnormal log file of the marked version.
  • the cloud desktop access device provided in this example, before using the found TCP long connection to send the access request to the cloud computing platform, by judging the access request, it is determined that the Only when the requirements are set, will the access request be sent to the cloud computing platform, so as to ensure that the cloud computing platform can make a correct response after receiving the access request, and ensure that the cloud desktop access can proceed smoothly;
  • the preset requirements are not met, by sending the access request and the exception log file corresponding to the access request to the terminal device of the management personnel, the management personnel can be enabled according to the access request and the exception log file To locate the cause of the access request that does not meet the preset requirements, quickly resolve the abnormal phenomenon, and then ensure the user experience.
  • the method of the embodiment can be implemented by means of software plus the necessary general hardware platform, and of course it can also be implemented by hardware, but in many cases the former is the better implementation.
  • the technical solution can be embodied in the form of a software product in essence or part of the contribution to the existing technology.
  • the computer software product is stored in a storage medium (such as read-only memory (Read Only) Memory, ROM) / RAM, disk, optical Disk), including several instructions to enable a terminal device (which may be a mobile phone, a computer, a server, or a network device, etc.) to execute the method described in each embodiment of the present application.

Abstract

The present application relates to the technical field of cloud desktop accesses. Disclosed are a cloud desktop access method, apparatus and device, and a storage medium. The method comprises: receiving an access request of a cloud desktop triggered by a user by means of a web page browser, and extracting a page identification of the web page browser from the access request; searching for, according to the page identification, a TCP long connection required for the communication between the web page browser and the cloud desktop from a pre-constructed TCP connection pool; and sending the access request to a cloud computing platform by using the TCP long connection, and receiving response information made by the cloud computing platform to access the cloud desktop provided by the cloud computing platform.

Description

云桌面的访问方法、装置、设备及存储介质  Cloud desktop access method, device, equipment and storage medium The
本申请要求于2018年10月16日提交中国专利局、申请号为201811201590.9、发明名称为“云桌面的访问方法、装置、设备及存储介质”的中国专利申请的优先权,其全部内容通过引用结合在申请中。This application requires the priority of the Chinese patent application filed on October 16, 2018 in the Chinese Patent Office with the application number 201811201590.9 and the invention titled "Cloud Desktop Access Method, Device, Equipment, and Storage Media", the entire contents of which are cited Incorporated in the application.
技术领域Technical field
本申请涉及云桌面接入技术领域,尤其涉及一种云桌面的访问方法、装置、设备及存储介质。The present application relates to the field of cloud desktop access technology, and in particular, to a cloud desktop access method, device, equipment, and storage medium.
背景技术Background technique
CloudStack是一个开源的具有高可用性及扩展性的云计算平台,同时是一个开源云计算解决方案。此外,该平台还内置了用户界面以及编程接口来管理计算、网络、存储等计算资源。因而,使用CloudStack作为基础,数据中心操作者可以快速方便的通过现存基础架构创建云服务。CloudStack is an open source cloud computing platform with high availability and scalability, as well as an open source cloud computing solution. In addition, the platform also has a built-in user interface and programming interface to manage computing resources such as computing, networking, and storage. Therefore, using CloudStack as a foundation, data center operators can quickly and easily create cloud services through existing infrastructure.
虽然,使用CloudStack可以加速高伸缩性的公有云和私有云环境的部署、管理和配置。但是,目前对CloudStack提供的云桌面的访问,通常需要在用户机上单独安装用于访问云桌面的应用程序,即在实现过程中,需要设置用于支撑该应用程序工作的代理服务器,由代理服务器协助用户机与CloudStack提供的云桌面进行交互,这样无疑会增加实现成本。并且,由于云桌面设计机制的问题,用户机在访问云桌面时,需要在用户机与CloudStack之间重复执行创建传输控制协议(Transmission Control Protocol,TCP)连接的操作,然后才可以将超文本传输协议(Hyper Text Transfer Protocol,HTTP)从用户机传输到CloudStack,这就导致HTTP请求会占用过多的用户机资源,进而使得用户机的操作界面出现闪烁、卡顿等问题。Although, using CloudStack can accelerate the deployment, management and configuration of highly scalable public and private cloud environments. However, at present, access to the cloud desktop provided by CloudStack usually requires a separate application for accessing the cloud desktop to be installed on the user's machine, that is, in the implementation process, a proxy server to support the work of the application needs to be set, and the proxy server Assist the user machine to interact with the cloud desktop provided by CloudStack, which will undoubtedly increase the implementation cost. Moreover, due to the problem of the cloud desktop design mechanism, when the user machine accesses the cloud desktop, it is necessary to repeatedly execute the creation of a transmission control protocol (Transmission) between the user machine and CloudStack. Control Protocol (TCP) connection operation, and then the Hyper Text Transfer Protocol (Hyper Text Transfer Protocol) Protocol, HTTP) is transmitted from the user machine to CloudStack, which causes the HTTP request to occupy too much user machine resources, which in turn causes the user machine's operation interface to flash, freeze, etc.
所以,亟需提供一种能够降低云桌面接入成本,节约用户机资源的云桌面的访问方法。Therefore, there is an urgent need to provide a cloud desktop access method that can reduce cloud desktop access costs and save user machine resources.
发明内容Summary of the invention
本申请的主要目的在于提供一种云桌面的访问方法、装置、设备及存储介质,旨在解决现有技术中云桌面的接入成本高,且在访问云桌面的过程中容易出现用户机资源占用过多的问题。The main purpose of this application is to provide a cloud desktop access method, device, equipment and storage medium, aiming to solve the high access cost of cloud desktop in the prior art, and user machine resources are prone to appear during the process of accessing the cloud desktop Take up too many questions.
为实现上述目的,本申请提供了一种云桌面的访问方法,所述方法包括以下步骤:In order to achieve the above purpose, the present application provides a cloud desktop access method. The method includes the following steps:
接收用户通过网页浏览器触发的云桌面的访问请求,从所述访问请求中提取所述网页浏览器的页面标识;Receiving a cloud desktop access request triggered by a user through a web browser, and extracting the page identifier of the web browser from the access request;
根据所述页面标识,从预先构建的TCP连接池中查找所述网页浏览器与所述云桌面通信所需的TCP长连接;Searching for a long TCP connection required for communication between the web browser and the cloud desktop from a pre-built TCP connection pool according to the page identifier;
利用所述TCP长连接,将所述访问请求发送至云计算平台,并接收所述云计算平台作出的响应信息,实现对所述云计算平台提供的云桌面的访问。Using the long TCP connection, the access request is sent to the cloud computing platform, and the response information made by the cloud computing platform is received to achieve access to the cloud desktop provided by the cloud computing platform.
此外,为实现上述目的,本申请还提出一种云桌面的访问装置,所述装置包括:In addition, in order to achieve the above object, the present application also provides a cloud desktop access device, the device including:
页面标识获取模块,用于接收用户通过网页浏览器触发的云桌面的访问请求,从所述访问请求中提取所述网页浏览器的页面标识;A page identifier acquisition module, configured to receive a cloud desktop access request triggered by a user through a web browser, and extract the page identifier of the web browser from the access request;
TCP长连接查找模块,用于根据所述页面标识,从预先构建的TCP连接池中查找所述网页浏览器与所述云桌面通信所需的TCP长连接;A TCP long connection search module, configured to search for a TCP long connection required for communication between the web browser and the cloud desktop from a pre-built TCP connection pool according to the page identifier;
云桌面访问模块,用于利用所述TCP长连接,将所述访问请求发送至云计算平台,并接收所述云计算平台作出的响应信息,实现对所述云计算平台提供的云桌面的访问。The cloud desktop access module is used to send the access request to the cloud computing platform using the long TCP connection, and receive the response information made by the cloud computing platform to implement access to the cloud desktop provided by the cloud computing platform .
此外,为实现上述目的,本申请还提出一种云桌面的访问设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的云桌面的访问可读指令,所述云桌面的访问可读指令配置为实现如上文所述的云桌面的访问方法的步骤。In addition, in order to achieve the above object, the present application also proposes a cloud desktop access device, the device includes: a memory, a processor, and a cloud desktop accessible on the memory and capable of running on the processor. Read instructions, the cloud desktop access readable instructions are configured to implement the steps of the cloud desktop access method described above.
此外,为实现上述目的,本申请还提出一种存储介质,所述存储介质上存储有云桌面的访问可读指令,所述云桌面的访问可读指令被处理器执行时实现如上文所述的云桌面的访问方法的步骤。In addition, in order to achieve the above object, the present application also proposes a storage medium on which the cloud desktop access readable instructions are stored, and the cloud desktop access readable instructions are implemented by the processor as described above Steps of the cloud desktop access method.
本实施例的云桌面的访问方法、装置、设备及存储介质,通过使用网页浏览来访问云平台提供的云桌面,从而无需在用户机上单独安装访问云桌面的应用程序,因而在实现过程中也无需额外设置支撑访问云桌面的应用程序工作的代理服务器,从而有效降低了云桌面的接入成本。The cloud desktop access method, device, device, and storage medium of this embodiment access the cloud desktop provided by the cloud platform by using web browsing, so that there is no need to separately install a cloud desktop access application on the user's machine, and therefore also in the implementation process There is no need to additionally set up a proxy server to support the work of accessing the cloud desktop application, thereby effectively reducing the access cost of the cloud desktop.
此外,在使用网页浏览器访问云桌面的过程中,通过根据网页浏览器的页面标识从预先构建的TCP连接池中查找发起云桌面的访问请求的网页浏览器与云桌面通信所需的TCP长连接,直接利用已有的TCP长连接与云桌面进行交换,实现对云桌面的访问,在访问云桌面的过程中无需重复执行创建TCP连接的操作,只需拿来复用即可,从而可以有效的减少对用户机资源的占用,解决了用户机的操作界面闪烁、卡顿的问题。In addition, in the process of using a web browser to access the cloud desktop, the TCP length required for the web browser initiating the cloud desktop access request to communicate with the cloud desktop is found from the pre-built TCP connection pool according to the web browser's page identifier Connection, directly use the existing TCP long connection to exchange with the cloud desktop, to achieve access to the cloud desktop, in the process of accessing the cloud desktop, there is no need to repeatedly perform the operation of creating a TCP connection, just use it for reuse, so that Effectively reduce the occupation of user machine resources and solve the problem of flickering and jamming of user machine operation interface.
附图说明BRIEF DESCRIPTION
图1是本申请实施例方案涉及的硬件运行环境的云桌面的访问设备的结构示意图;FIG. 1 is a schematic structural diagram of a cloud desktop access device of a hardware operating environment according to an embodiment of the present application;
图2为本申请云桌面的访问方法第一实施例的流程示意图;2 is a schematic flowchart of a first embodiment of a cloud desktop access method according to this application;
图3为本申请云桌面的访问方法第二实施例的流程示意图;3 is a schematic flowchart of a second embodiment of a cloud desktop access method according to this application;
图4为本申请云桌面的访问装置第一实施例的结构框图。4 is a structural block diagram of a first embodiment of a cloud desktop access device of the present application.
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。The implementation, functional characteristics and advantages of the present application will be further described in conjunction with the embodiments and with reference to the drawings.
具体实施方式detailed description
应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。It should be understood that the specific embodiments described herein are only used to explain the present application, and are not used to limit the present application.
参照图1,图1为本申请实施例方案涉及的硬件运行环境的云桌面的访问设备结构示意图。Referring to FIG. 1, FIG. 1 is a schematic structural diagram of a cloud desktop access device of a hardware operating environment according to an embodiment of the present application.
如图1所示,该云桌面的访问设备可以包括:处理器1001,例如中央处理器(Central Processing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(WIreless-FIdelity,WI-FI)接口)。存储器1005可以是高速的随机存取存储器(Random Access Memory,RAM)存储器,也可以是稳定的非易失性存储器(Non-Volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。As shown in FIG. 1, the cloud desktop access device may include: a processor 1001, such as a central processor (Central Processing Unit, CPU), communication bus 1002, user interface 1003, network interface 1004, memory 1005. Among them, the communication bus 1002 is used to implement connection communication between these components. The user interface 1003 may include a display screen (Display), an input unit such as a keyboard (Keyboard), and the optional user interface 1003 may also include a standard wired interface and a wireless interface. The network interface 1004 may optionally include a standard wired interface and a wireless interface (such as a wireless fidelity (WIreless-FIdelity, WI-FI) interface). The memory 1005 may be a high-speed random access memory (Random Access Memory (RAM) memory can also be a stable non-volatile memory (Non-Volatile Memory, NVM), such as disk storage. The memory 1005 may optionally be a storage device independent of the foregoing processor 1001.
本领域技术人员可以理解,图1中示出的结构并不构成对云桌面的访问设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。Those skilled in the art may understand that the structure shown in FIG. 1 does not constitute a limitation on the cloud desktop access device, and may include more or less components than shown, or combine certain components, or arrange different components .
如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及云桌面的访问程序(即云桌面的访问可读指令)。As shown in FIG. 1, the memory 1005 as a storage medium may include an operating system, a network communication module, a user interface module, and a cloud desktop access program (that is, cloud desktop access readable instructions).
在图1所示的云桌面的访问设备中,网络接口1004主要用于与云计算平台进行数据通信;用户接口1003主要用于与用户进行数据交互;本申请云桌面的访问设备中的处理器1001、存储器1005可以设置在云桌面的访问设备中,所述云桌面的访问设备通过处理器1001调用存储器1005中存储的云桌面的访问可读指令,并执行本申请实施例提供的云桌面的访问方法。In the cloud desktop access device shown in FIG. 1, the network interface 1004 is mainly used for data communication with the cloud computing platform; the user interface 1003 is mainly used for data interaction with the user; the processor in the cloud desktop access device of this application 1001. The storage 1005 may be provided in a cloud desktop access device. The cloud desktop access device calls the cloud desktop access readable instructions stored in the memory 1005 through the processor 1001, and executes the cloud desktop provided by the embodiment of the present application. Access method.
本申请实施例提供了一种云桌面的访问方法,参照图2,图2为本申请一种云桌面的访问方法第一实施例的流程示意图。An embodiment of the present application provides a cloud desktop access method. Referring to FIG. 2, FIG. 2 is a schematic flowchart of a first embodiment of a cloud desktop access method of the present application.
本实施例中,所述云桌面的访问方法包括以下步骤:In this embodiment, the cloud desktop access method includes the following steps:
步骤S10,接收用户通过网页浏览器触发的云桌面的访问请求,从所述访问请求中提取所述网页浏览器的页面标识。Step S10: Receive a cloud desktop access request triggered by a user through a web browser, and extract a page identifier of the web browser from the access request.
具体的说,本实施例中的执行主体为用户使用的用户机。Specifically, the execution subject in this embodiment is the user machine used by the user.
应当理解的是,在实际应用中,上述用户机可以是任意能够访问网络的终端设备,比如个人计算机、智能手机、平板电脑等,此处不再一一列举,对此也不做限制。It should be understood that, in practical applications, the user machine may be any terminal device capable of accessing the network, such as a personal computer, a smart phone, a tablet computer, etc., which are not listed here one by one, and there is no limitation on this.
此外,上述所说的网页浏览器,即Web browser,简称Web浏览器,是一种采用超文本标记语言(Hyper Text Markup Language,HTML)开发,用于显示网页服务器或者文件系统的HTML文件内容,并让用户与这些文件交互的一种软件,通常在用户机上均会自带,因而本案中通过采用网页浏览器来触发访问云桌面的访问请求,即基于noVNC的远程桌面访问协议实现用户机与云计算平台(CloudStack)提供的云桌面的交互操作。In addition, the aforementioned web browser, namely Web browser, referred to as Web browser, is a Hyper Text Markup language (Hyper Text Markup Language, HTML) developed to display the HTML file content of the web server or file system, and allow users to interact with these files, a software that usually comes on the user's machine, so in this case by using a web browser to trigger An access request to access the cloud desktop, that is, a remote desktop access protocol based on noVNC, which realizes the interactive operation between the user machine and the cloud desktop provided by the cloud computing platform (CloudStack).
需要说明的是,上述所说的noVNC是一种与VNC相对的远程桌面访问协议。其中,所述VNC远程桌面访问协议的使用必需在用户即上安装相应的应用程序,也就是现有用户机访问云桌面所采用的方式;而noVNC则无需在用户机上单独安装访问云桌面的应用程序,因而在实现过程中也无需额外设置支撑访问云桌面的应用程序工作的代理服务器,不仅方便了基于CloudStack创建云服务的便捷性,也有效减少了实现成本。It should be noted that the noVNC mentioned above is a remote desktop access protocol opposite to VNC. Among them, the use of the VNC remote desktop access protocol must install the corresponding application program on the user, that is, the method used by the existing user machine to access the cloud desktop; and noVNC does not need to install a separate application on the user machine to access the cloud desktop Program, so there is no need to additionally set a proxy server to support the work of accessing the cloud desktop application during the implementation process, which not only facilitates the convenience of creating cloud services based on CloudStack, but also effectively reduces the implementation cost.
此外,上述所说的访问请求,具体可以是任意格式的,在实际应用中,本领域的技术人员预先规定好即可。本案优选超文本传输协议(HyperText Transfer Protocol,HTTP)。In addition, the above-mentioned access request may be in any format, and in actual application, those skilled in the art may predefine it. Hypertext Transfer Protocol (HyperText Transfer Protocol, HTTP).
相应地,访问请求所携带的内容具体可以是该HTTP请求中携带的各种信息,如请求头、请求正文等。Correspondingly, the content carried in the access request may specifically be various information carried in the HTTP request, such as the request header and the request body.
此外,值得一提的是,上述从所述访问请求中提取所述网页浏览器的页面标识的目的是为了使CloudStack能够识别出用户机的操作系统、版本、CPU 类型、网页浏览器的版本、网页浏览器的渲染引擎、网页浏览器的语言、网页浏览器的插件等,此处不再一一列举,对此也不做限制。In addition, it is worth mentioning that the purpose of extracting the page identifier of the web browser from the access request is to enable CloudStack to recognize the operating system, version, and CPU of the user machine The types, the version of the web browser, the rendering engine of the web browser, the language of the web browser, the plug-ins of the web browser, etc., are not listed here one by one, and there is no restriction on this.
步骤S20,根据所述页面标识,从预先构建的TCP连接池中查找所述网页浏览器与所述云桌面通信所需的TCP长连接。In step S20, according to the page identifier, a long TCP connection required for communication between the web browser and the cloud desktop is searched from a pre-built TCP connection pool.
具体的说,此处所说的TCP即传输控制协议(Transmission Control Protocol,TCP),通常情况下,基于TCP协议的连接,大致有TCP连接、TCP短连接和TCP长连接。Specifically, the TCP mentioned here is Transmission Control Protocol (Transmission Control Protocol) Protocol, TCP), under normal circumstances, the connection based on TCP protocol, there are roughly TCP connection, TCP short connection and TCP long connection.
其中,TCP连接在建立过程中需要完成三次握手,释放过程需要完成四次握手,因而每个TCP连接的建立都是需要资源消耗和时间消耗。Among them, the TCP connection needs to complete three handshakes during the establishment process, and the release process needs to complete the four handshake. Therefore, the establishment of each TCP connection requires resource consumption and time consumption.
TCP短连接在建立过程中则仅需完成一次握手,便可以进行读写操作,但是在一次读写操作完成后,必需要执行一次close操作来断开所述TCP短链接,也就是说采用TCP短链接进行通信,需要重复执行创建和关闭的操作,因而会给占用过多的用户机资源,导致用户机的操作界面出现卡顿、闪烁等问题。During the establishment of the TCP short connection, only one handshake is required to complete the read and write operation, but after the completion of a read and write operation, a close operation must be performed to disconnect the TCP short link, that is, using TCP For short link communication, the operations of creating and closing need to be repeated, which will occupy too much user machine resources, resulting in problems such as stuck or flickering on the user machine's operation interface.
而TCP长连接则是在建立之后,即便通信双方(用户机和云桌面)完成了一次读写操作,该TCP长连接也不会自动关闭,因而后续的读写操作可以继续服用该TCP长连接,这样在用户机访问云桌面的整个过程中,都无需重复执行创建操作,因而可以有效的减小对用户机资源的占用。After the TCP long connection is established, even if the communication parties (user machine and cloud desktop) complete a read and write operation, the TCP long connection will not be automatically closed, so subsequent read and write operations can continue to take the TCP long connection In this way, there is no need to repeatedly perform the creation operation during the entire process of the user machine accessing the cloud desktop, so it can effectively reduce the occupation of the user machine resources.
通过上述描述不难发现,由于TCP长连接在创建后不会自动关闭,可以直接复用,因而为了保证云桌面的访问操作能够顺利进行,可以预先构建用于存储这些TCP长连接的TCP连接池,从而在接收到用户通过网页浏览器触发的访问请求后,直接根据从访问请求中提取的网页标识,从TCP连接池中查找所述网页浏览器与所述云桌面通信所需的TCP长连接即可。From the above description, it is not difficult to find that because long TCP connections are not automatically closed after being created and can be reused directly, in order to ensure that cloud desktop access operations can proceed smoothly, a TCP connection pool for storing these long TCP connections can be constructed in advance , So that after receiving the access request triggered by the user through the web browser, directly find the TCP long connection required for the communication between the web browser and the cloud desktop from the TCP connection pool according to the web page identifier extracted from the access request That's it.
关于,从TCP连接池中查找所述网页浏览器与所述云桌面通信所需的TCP长连接的操作,具体可以通过如下方式实现:Regarding the operation of searching the TCP long connection required for communication between the web browser and the cloud desktop from the TCP connection pool, the specific operation can be implemented as follows:
(1)将所述页面标识作为索引项,从预先记录的TCP长连接记录表中查找所述页面标识对应的TCP长连接的标识号。(1) Using the page identification as an index item, look up the identification number of the TCP long connection corresponding to the page identification from a pre-recorded TCP long connection record table.
应当理解的是,在实际应用中,为了便于检索,在创建TCP长连接记录表时,会采用键值对的方式,将具有唯一性的页面标识作为检索所需的关键信息存入记录表的key(键)区域,然后将与各页面标识对应的TCP长连接的标识号存入与存储各页面标识的key对应的value(值)区域。因而,查找所述网页浏览器与所述云桌面通信所需的TCP长连接时,先利用所述页面标识,从预先记录的TCP长连接记录表中查找所述页面标识对应的TCP长连接的标识,然后再进行后续查找操作,不仅方便查找,并且可以便于扩展和管理。It should be understood that in practical applications, in order to facilitate retrieval, when creating a TCP long-connection record table, a key-value pair will be used, and the unique page identifier will be stored in the record table as the key information required for retrieval. key area, and then store the identification number of the TCP long connection corresponding to each page ID into the value area corresponding to the key where each page ID is stored. Therefore, when searching for the TCP long connection required for communication between the web browser and the cloud desktop, first use the page identifier to search for the TCP long connection corresponding to the page identifier from a pre-recorded TCP long connection record table Identify and then carry out subsequent search operations, which is not only convenient to search, but also easy to expand and manage.
(2)若查找到所述页面标识对应的TCP长连接的标识号,则根据所述标识号从预先构建的TCP连接池中查找到所述标识号对应的TCP长连接,并将查找到的所述TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接。(2) If the identification number of the TCP long connection corresponding to the page identifier is found, the TCP long connection corresponding to the identification number is found from the pre-built TCP connection pool according to the identification number, and the found The long TCP connection serves as a long TCP connection required for communication between the web browser and the cloud desktop.
应当理解的是,每一个TCP长连接都会有一个属于自己的标识号,因而根据查找到的标识号,可以快速、准确的从预先构建的TCP连接池中查找到所述标识号对应的TCP长连接。It should be understood that each TCP long connection will have its own identification number, so according to the found identification number, the TCP long corresponding to the identification number can be quickly and accurately found from the pre-built TCP connection pool connection.
此外,值得一提的是,由于在实际应用中,为了节约对用户机资源的占用,添加在预先构建的TCP连接池中的TCP长连接的个数是有限的,因而可能会存在查找到的TCP长连接目前正在处于使用状态。所以,在将查找到的所述TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接之前,还可以先判断一下查找到的所述TCP长连接是否处于空闲状态,若处于空闲状态,则直接拿来复用;否则,重新创建一个TCP长连接。In addition, it is worth mentioning that in practical applications, in order to save the user machine resources, the number of long TCP connections added in the pre-built TCP connection pool is limited, so there may be found TCP long connection is currently in use. Therefore, before using the found TCP long connection as the TCP long connection required for the web browser to communicate with the cloud desktop, you can also first determine whether the found TCP long connection is idle. If it is in idle state, it is directly used for multiplexing; otherwise, a long TCP connection is recreated.
(3)若未查找到所述页面标识对应的TCP长连接的标识号,则创建一个TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接,并将创建的TCP长连接的标识号更新到所述TCP长连接记录表中。(3) If the identification number of the TCP long connection corresponding to the page identifier is not found, a TCP long connection is created as the TCP long connection required for the web browser to communicate with the cloud desktop, and the created TCP The identification number of the long connection is updated to the TCP long connection record table.
具体的说,创建TCP长连接的操作,大致如下:Specifically, the operation of creating a long TCP connection is roughly as follows:
首先,向所述云计算平台发送访问所述云桌面的握手请求,协商建立TCP长连接所需的参数。First, send a handshake request to access the cloud desktop to the cloud computing platform to negotiate the parameters required to establish a long TCP connection.
需要说明的是,上述所说的TCP长连接所需的参数具体为双方共有的参数。It should be noted that the parameters required for the TCP long connection mentioned above are specifically parameters common to both parties.
然后,接收所述云计算平台做出的握手应答和反馈的第一参数信息。Then, receiving the first parameter information of the handshake response and feedback made by the cloud computing platform.
具体的说,云计算平台在收到用户机发送的握手请求后,会作出一次握手应答,以便用户机确定云计算平台已经成功接收到了所述握手请求。Specifically, after receiving the handshake request sent by the user machine, the cloud computing platform makes a handshake response so that the user machine determines that the cloud computing platform has successfully received the handshake request.
此外,反馈的第一参数信息,具体为云计算平台能够支持的参数类型,具体格式等,比如支持各种系统版本(32位或64位)的数字型(整型、浮点型、货币型等)、日期型(格式如:XX年-XX月-XX日)、字符串型,此处不再一一列举,对此也不做限制。In addition, the first parameter information fed back is specifically the parameter types and specific formats that the cloud computing platform can support, such as the digital types (integer, floating point, currency) that support various system versions (32-bit or 64-bit) Etc.), date type (format: XX year-XX month-XX day), string type, no longer list one by one here, nor limit this.
接着,获取本机的第二参数信息。Next, obtain the second parameter information of the machine.
应当理解的是,此处所说的第二参数信息即为用户机能够支持的参数类型,具体格式等,同样可以是支持各种系统版本(32位或64位)的数字型(整型、浮点型、货币型等)、日期型(格式如:XX年-XX月-XX日)、字符串型,此处不再一一列举,对此也不做限制。It should be understood that the second parameter information mentioned here is the type of parameters that the user machine can support, the specific format, etc. It can also be a digital type (integer, float) that supports various system versions (32-bit or 64-bit) Point type, currency type, etc.), date type (format: XX year-XX month-XX day), string type, no longer list them one by one, and do not limit them.
接着,对所述第一参数信息和所述第二参数信息进行交集处理,得到备选参数集。Next, perform intersection processing on the first parameter information and the second parameter information to obtain a candidate parameter set.
具体的说,由于访问云桌面的过程是用户机和云计算平台双方的交互过程,因而选取的参数需要是两者均支持的,比如占用存储空间为10字节的字符串型参数。所以此处通过对所述第一参数信息和所述第二参数信息进行交集处理,得到的备选参数集中的参数时双方都支持的参数。Specifically, since the process of accessing the cloud desktop is an interaction process between the user machine and the cloud computing platform, the selected parameters need to be supported by both, such as a string type parameter that takes up 10 bytes of storage space. Therefore, by performing intersection processing on the first parameter information and the second parameter information here, the parameters in the candidate parameter set obtained are parameters supported by both parties.
接着,从所述备选参数集中选取任意一个参数作为建立TCP长连接所需的参数,完成握手操作。Next, any one of the parameters from the candidate parameter set is selected as a parameter required for establishing a long TCP connection to complete the handshake operation.
由于得到备选参数集中的参数时双方都支持的参数,因而从备选参数集中选取任意一个参数,均可作为建立TCP长连接所需的参数,完成握手操作。Since the parameters supported by both sides are obtained when the parameters in the alternative parameter set are obtained, any one parameter from the alternative parameter set can be used as the parameter required for establishing a long TCP connection to complete the handshake operation.
最后,向所述云计算平台发送TCP长连接本机绑定的第一超文本传输协议(Hyper Text Transfer Protocol,HTTP)服务器地址和第一互联网协议(Internet Protocol,IP,又称:网际协议)端口,并接收所述云计算平台下发的所述云桌面绑定的第二超文本传输协议(Hyper Text Transfer Protocol,HTTP)服务器地址和第二互联网协议(Internet Protocol,IP,又称:网际协议)端口,完成TCP长连接的创建。Finally, send the first hypertext transfer protocol (Hyper Text Transfer Protocol) bound to the machine by TCP long connection to the cloud computing platform Protocol (HTTP) server address and the first Internet protocol (Internet Protocol, IP, also known as: Internet Protocol) port, and receives the second Hyper Text Transfer Protocol (Hyper Text Transfer) bound by the cloud desktop delivered by the cloud computing platform Protocol (HTTP) server address and the second Internet Protocol (Internet Protocol, IP, also known as: Internet Protocol) port to complete the establishment of long TCP connections.
具体的说,用户机与云计算平台完成握手操作,开始访问云桌面时,通过预先绑定的HTTP服务器地址或者IP端口向云计算平台发起HTTP请求,云计算平台在接收到该HTTP请求后向用户机返回云桌面的HTML文件,然后用户机执行HTML文件中的JS(即javascrip,一种属于网络的脚本语言)脚本,便可以完成所述TCP长连接的创建。Specifically, when the user machine completes the handshake operation with the cloud computing platform and starts to access the cloud desktop, it initiates an HTTP request to the cloud computing platform through the pre-bound HTTP server address or IP port, and the cloud computing platform responds to the HTTP request The user machine returns the HTML file of the cloud desktop, and then the user machine executes the JS (that is, javascrip, a scripting language belonging to the network) script in the HTML file to complete the creation of the TCP long connection.
此外,应当理解的是,上述TCP连接池中存在的TCP长连接,具体可以是在用户机第一次接收到访问请求时创建的,并且在所述TCP长连接处于空闲状态时,可以利用所述TCP长连接定时发送心跳包,以保证所述TCP长连接能够在使用过程中,始终处于连接状态。In addition, it should be understood that the TCP long connection existing in the above TCP connection pool may be specifically created when the user machine first receives the access request, and when the TCP long connection is idle, the The TCP long connection periodically sends heartbeat packets to ensure that the TCP long connection can always be in a connected state during use.
步骤S30,利用所述TCP长连接,将所述访问请求发送至云计算平台,并接收所述云计算平台作出的响应信息,实现对所述云计算平台提供的云桌面的访问。Step S30: Use the TCP long connection to send the access request to the cloud computing platform, and receive the response information made by the cloud computing platform to implement access to the cloud desktop provided by the cloud computing platform.
具体的说,所述实现对所述云计算平台提供的云桌面的访问操作,大致如下:Specifically, the implementation of the access operation to the cloud desktop provided by the cloud computing platform is roughly as follows:
在利用所述TCP长连接,将所述访问请求发送至云计算平台,并接收所述云计算平台作出的响应信息之后,所述网页浏览器与所述云桌面的通信信道便被连通,接下来所述云计算平台会通过所述TCP长连接向用户机推送云桌面的相关数据,用户机在收到推送的数据后,通过触发回调机制对所述数据进行渲染操作便可以将云桌面呈现在所述网页浏览器中,这样用户就可以通过呈现在网页浏览器中的云桌面对基于CloudStack构建的云服务虚拟设备(以下称为虚拟机)进行操作。After using the TCP long connection to send the access request to the cloud computing platform and receive the response information made by the cloud computing platform, the communication channel between the web browser and the cloud desktop is connected and connected Next, the cloud computing platform will push the cloud desktop related data to the user machine through the TCP long connection. After receiving the pushed data, the user machine can render the cloud desktop by triggering a callback mechanism to perform the rendering operation on the data In the web browser, the user can operate the cloud service virtual device (hereinafter referred to as a virtual machine) built on CloudStack through the cloud desktop presented in the web browser.
所述用于通过呈现在网页浏览器中的云桌面对虚拟机进行的操作,大致如下:The operations used to perform operations on the virtual machine through the cloud desktop presented in the web browser are roughly as follows:
比如,用户机在检测到用户在网页浏览器中的操作后,根据预先约定好的数据格式,将用户操作云桌面的过程中产生的数据封装为约定数据格式,然后通过所述TCP长连接通信信道发送至云计算平台,云计算平台根据约定的数据包协议对用户机发来的数据进行解释,然后执行数据包实现对虚拟机的操控。For example, after detecting the user's operation in the web browser, the user machine encapsulates the data generated during the operation of the cloud desktop into the agreed data format according to the pre-agreed data format, and then communicates through the TCP long connection The channel is sent to the cloud computing platform. The cloud computing platform interprets the data sent by the user machine according to the agreed data packet protocol, and then executes the data packet to control the virtual machine.
需要说明的是,以上给出的仅为对云桌面的大致访问过程,对本申请的技术方案并不构成限定,在具体实现中,本领域的技术人员可以根据需要约定数据格式,此处不做限制。It should be noted that the above is only a rough access process to the cloud desktop, and does not constitute a limitation on the technical solution of the present application. In a specific implementation, a person skilled in the art can agree on the data format as needed, and will not do it here limit.
通过上述描述不难发现,本实施例提供的云桌面的访问方法,通过使用网页浏览来访问云平台提供的云桌面,从而无需在用户机上单独安装访问云桌面的应用程序,因而在实现过程中也无需额外设置支撑访问云桌面的应用程序工作的代理服务器,从而有效降低了云桌面的接入成本。It is not difficult to find from the above description that the cloud desktop access method provided by this embodiment uses web browsing to access the cloud desktop provided by the cloud platform, so that there is no need to separately install an application to access the cloud desktop on the user machine. There is no need to additionally set up a proxy server that supports the work of accessing the cloud desktop application, thereby effectively reducing the access cost of the cloud desktop.
此外,在使用网页浏览器访问云桌面的过程中,通过根据网页浏览器的页面标识从预先构建的TCP连接池中查找发起云桌面的访问请求的网页浏览器与云桌面通信所需的TCP长连接,直接利用已有的TCP长连接与云桌面进行交换,实现对云桌面的访问,在访问云桌面的过程中无需重复执行创建TCP连接的操作,只需拿来复用即可,从而可以有效的减少对用户机资源的占用,解决了用户机的操作界面闪烁、卡顿的问题。In addition, in the process of using a web browser to access the cloud desktop, the TCP length required for the web browser initiating the cloud desktop access request to communicate with the cloud desktop is found from the pre-built TCP connection pool according to the web browser's page identifier Connection, directly use the existing TCP long connection to exchange with the cloud desktop, to achieve access to the cloud desktop, in the process of accessing the cloud desktop, there is no need to repeatedly perform the operation of creating a TCP connection, just use it for reuse, so that Effectively reduce the occupation of user machine resources and solve the problem of flickering and jamming of user machine operation interface.
参考图3,图3为本申请一种云桌面的访问方法第二实施例的流程示意图。Referring to FIG. 3, FIG. 3 is a schematic flowchart of a second embodiment of a cloud desktop access method according to this application.
基于上述第一实施例,本实施例云桌面的访问方法在所述步骤S30之前,还包括:Based on the foregoing first embodiment, before the step S30, the cloud desktop access method of this embodiment further includes:
步骤S00,判断所述访问请求是否符合预设要求。Step S00: Determine whether the access request meets the preset requirements.
比如,根据预设的访问请求规则来判断所述访问请求是否符合预设要求。For example, whether the access request meets the preset requirement is determined according to the preset access request rule.
需要说明的是,上述所说的访问请求规则,具体可以包括访问请求的标准格式、要求携带的字段、采用的协议等,此处不再一一列举,对此也不做限制。It should be noted that the above-mentioned access request rules may specifically include the standard format of the access request, the fields required to be carried, and the adopted protocol, which are not listed here one by one, nor are they limited.
相应地,在通过上述判断操作之后,若确定所述访问请求符合预设要求,则进入步骤S30,执行利用所述TCP长连接,将所述访问请求发送至云计算平台的操作,从而可以保证云计算平台在收到所述访问请求之后,能够做出正确的响应,保证云桌面的访问能够顺利进行。Correspondingly, after passing the above judgment operation, if it is determined that the access request meets the preset requirements, step S30 is entered to perform the operation of sending the access request to the cloud computing platform using the TCP long connection, so as to ensure that After receiving the access request, the cloud computing platform can make a correct response to ensure that the cloud desktop access can proceed smoothly.
此外,应当理解的是,在实际应用中,使用用户机中的网页浏览器发起访问云桌面操作的用户往往不熟悉相关技术,因而为了在出现异常时能够及时告知相关管理人员,以便管理人员解决导致访问请求不符合预设要求的问题,保障用户的使用体验,在步骤S00之后,还可以包括:In addition, it should be understood that in actual applications, users who initiate access to the cloud desktop using a web browser in the user's machine are often unfamiliar with related technologies, so in order to be able to notify relevant management personnel in time when an exception occurs, so that the management personnel can resolve The problem that leads to the access request not meeting the preset requirements and ensuring the user's experience, after step S00, may also include:
步骤S40,获取所述访问请求对应的异常日志文件,将所述访问请求和所述异常日志文件发送至管理人员的终端设备。Step S40: Obtain the abnormal log file corresponding to the access request, and send the access request and the abnormal log file to the terminal device of the administrator.
应当理解的是,本实施例中所说的管理人员具体可以是基于CloudStack创建云服务的工作人员。It should be understood that the management personnel mentioned in this embodiment may specifically be workers who create cloud services based on CloudStack.
相应地,所述管理人员的终端设备具体可以是管理人员使用的开发设备,比如个人计算机、服务器等,此处不再一一列举,对此也不做限制。Correspondingly, the terminal device of the management personnel may specifically be a development device used by the management personnel, such as a personal computer, a server, etc., which will not be listed here one by one, and there is no limitation on this.
进一步地,在将获取到的异常日志文件和当前不符合预设要求的访问请求发送至管理人员的终端设备之前,还可以先将所述异常日志文件与预存的发起所述访问请求时产生的正常日志文件进行比较,并对不一致的内容进行标记,得到标记版本的异常日志文件;然后将所述访问请求和所述标记版本的异常日志文件发送至管理人员的终端设备,从而可以使所述管理人员能够根据所述访问请求和所述标记版本的异常日志文件,定位出导致所述访问请求不符合预设要求的原因。Further, before sending the acquired exception log file and the access request that does not currently meet the preset requirements to the terminal device of the management personnel, the exception log file and the pre-stored Compare the normal log files and mark the inconsistent content to obtain the marked version of the abnormal log file; then send the access request and the marked version of the abnormal log file to the terminal device of the administrator, so that the The management personnel can locate the reason that the access request does not meet the preset requirements based on the access request and the abnormal log file of the marked version.
此外,在实际应用中,在将所述访问请求和所述标记版本的异常日志文件发送至管理人员的终端设备的时候,还可以将用户机的本地参数一起发送至管理人员的终端设备,以便管理人员采用相同的用户机,以及相同版本的网页浏览器触发访问云桌面的访问请求,重现用户遇到的问题,从而可以更好的解决问题。In addition, in practical applications, when the access request and the marked version of the abnormal log file are sent to the terminal device of the manager, the local parameters of the user machine can also be sent to the terminal device of the manager together, so that The management personnel use the same user machine and the same version of the web browser to trigger the access request to access the cloud desktop, reproduce the problem encountered by the user, and thus can better solve the problem.
以用户机为用户的手机为例,则用户机的本地参数具体是在手机的设置界面中“关于本机”的功能选项下记录的各种参数信息,如手机接入的网络、总容量、可用容量、版本、运营商、型号、序列号、无线局域网地址等,此处不做一一列举,对此也不做任何限制。Taking the user phone as the user's mobile phone as an example, the local parameters of the user machine are various parameter information recorded under the "About this machine" function option in the setting interface of the phone, such as the network connected to the mobile phone, the total capacity, Available capacity, version, operator, model, serial number, wireless LAN address, etc., are not listed here, nor are there any restrictions.
应当理解的是,上述在判定所述访问请求不符合预设要求之后,所做的操作可以是由用户机自动完成的,也可以是在判定所述访问请求不符合预设要求之后,先在用户机的操作界面弹出异常提示,提醒用户当前访问请求不合法,并提醒用户重新发起访问请求,同时允许用户机执行步骤S40中的操作。It should be understood that, after determining that the access request does not meet the preset requirements, the operation may be performed automatically by the user machine, or after determining that the access request does not meet the preset requirements, first An abnormal prompt pops up on the operation interface of the user machine, reminds the user that the current access request is illegal, and reminds the user to re-initiate the access request, while allowing the user machine to perform the operation in step S40.
需要说明的是,以上仅为举例说明,对本申请的技术方案并不构成限定,在具体实现中,本领域的技术人员可以根据需要进行设置,此处不做限制。It should be noted that the above is only an example, and does not constitute a limitation on the technical solution of the present application. In a specific implementation, a person skilled in the art may set it as needed, and there is no limitation here.
进一步地,为了提升管理人员解决问题的效率,在将上述异常信息(访问请求、异常日志文件、本机参数信息等)发送至管理人员的终端设备后,所述方法还可以包括如下操作:获取本机的第一系统时间,将所述第一系统时间上报至考核所述管理人员的考核系统;接收所述管理人员的终端设备发送的异常解除通知,通过所述网页浏览器触发测试访问请求的操作,得到测试访问请求;根据预设的判断规则,对所述测试访问请求进行判断,确定所述测试访问请求符合预设要求;获取本机的第二系统时间,将所述第二系统时间上报至考核所述管理人员的考核系统,以使所述考核系统根据所述第一系统时间和第二系统时间,确定所述管理人员解决所述异常所用的时间,并将解决所述异常所用的时间作为对所述管理人员绩效考核的参考因素。Further, in order to improve the efficiency of the administrator to solve the problem, after sending the above exception information (access request, exception log file, local parameter information, etc.) to the terminal device of the administrator, the method may further include the following operations: The first system time of the machine, reporting the first system time to the assessment system for evaluating the manager; receiving the abnormal release notification sent by the manager's terminal device, and triggering a test access request through the web browser Operation to obtain a test access request; determine the test access request according to a preset judgment rule, and determine that the test access request meets the preset requirements; obtain the second system time of the machine, and set the second system time The time is reported to the assessment system for assessing the management personnel, so that the assessment system determines the time taken by the management personnel to resolve the abnormality according to the first system time and the second system time, and will resolve the abnormality The time used serves as a reference factor for the performance evaluation of the managers.
通过上述描述不难发现,采用上述操作,可以有效性的提升管理人员的解决问题的效率。From the above description, it is not difficult to find that the above operations can effectively improve the problem-solving efficiency of managers.
此外,值得一提的是,为了便于管理人员对创建的云服务中可能存在的问题的解决,已经对云服务中各功能模块的更新迭代。在具体实现中,可以将基于CloudStack创建的云服务,按照功能进行组件化开发,独立部署,从而可以方便后期对任一功能的修改,并且在修改之后,无需对整个服务进行更新,大大降低云服务中各功能模块的耦合程度,为后续的横向扩展提高了方便。In addition, it is worth mentioning that, in order to facilitate the management personnel to solve the problems that may exist in the created cloud service, the update of each function module in the cloud service has been iterated. In the specific implementation, the cloud service created based on CloudStack can be component-developed according to the function and independently deployed, which can facilitate the later modification of any function, and after the modification, there is no need to update the entire service, greatly reducing the cloud The degree of coupling of the various functional modules in the service improves convenience for subsequent horizontal expansion.
应当理解的是,以上仅为举例说明,对本申请的技术方案并不构成限定,在具体实现中,本领域的技术人员可以根据需要进行设置,此处不做限制。It should be understood that the above is only an example, and does not constitute a limitation on the technical solution of the present application. In a specific implementation, those skilled in the art may set it as needed, without limitation here.
通过上述描述不难发现,本实例中提供的云桌面的访问方法,在利用查找到的TCP长连接,将所述访问请求发送至云计算平台之前,通过对访问请求进行判断,在判定符合预设要求时,才将所述访问请求发送至云计算平台,从而可以保证云计算平台在收到所述访问请求之后,能够做出正确的响应,保证云桌面的访问能够顺利进行;而在判定不符合预设要求时,通过将所述访问请求及所述访问请求对应的异常日志文件发送至管理人员的终端设备,从而可以使所述管理人员能够根据所述访问请求和所述异常日志文件,定位出导致所述访问请求不符合预设要求的原因,快速解决异常现象,进而保证用户体验。It is not difficult to find from the above description that the cloud desktop access method provided in this example, before using the found TCP long connection to send the access request to the cloud computing platform, by judging the access request, before determining that the Only when the requirements are set, will the access request be sent to the cloud computing platform, so as to ensure that the cloud computing platform can make a correct response after receiving the access request, and ensure that the cloud desktop access can proceed smoothly; When the preset requirements are not met, by sending the access request and the exception log file corresponding to the access request to the terminal device of the management personnel, the management personnel can be enabled according to the access request and the exception log file To locate the cause of the access request that does not meet the preset requirements, quickly resolve the abnormal phenomenon, and then ensure the user experience.
需要说明的是,本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过计算机可读指令控制相关的硬件完成,所述的计算机可读指令可以存储于一种非易失性计算机可读存储介质中,上述提到的非易失性可读存储介质可以是只读存储器,磁盘或光盘等。It should be noted that those of ordinary skill in the art may understand that all or part of the steps to implement the above-mentioned embodiments may be completed by hardware, or may be controlled by computer-readable instructions to control related hardware. The computer-readable instructions may be stored in In a non-volatile computer-readable storage medium, the aforementioned non-volatile readable storage medium may be a read-only memory, a magnetic disk, or an optical disk.
参照图4,图4为本申请云桌面的访问装置第一实施例的结构框图。Referring to FIG. 4, FIG. 4 is a structural block diagram of a first embodiment of a cloud desktop access device of the present application.
如图4所示,本申请实施例提出的云桌面的访问装置包括:页面标识获取模块4001、TCP长连接查找模块4002和云桌面访问模块4003。其中,页面标识获取模块4001,用于接收用户通过网页浏览器触发的云桌面的访问请求,从所述访问请求中提取所述网页浏览器的页面标识;TCP长连接查找模块4002,用于根据所述页面标识,从预先构建的TCP连接池中查找所述网页浏览器与所述云桌面通信所需的TCP长连接;云桌面访问模块4003,用于利用所述TCP长连接,将所述访问请求发送至云计算平台,并接收所述云计算平台作出的响应信息,实现对所述云计算平台提供的云桌面的访问。As shown in FIG. 4, the cloud desktop access device provided in the embodiment of the present application includes: a page identifier acquisition module 4001, a TCP long connection search module 4002, and a cloud desktop access module 4003. Among them, the page identifier acquisition module 4001 is used to receive a cloud desktop access request triggered by a user through a web browser, and extract the page identifier of the web browser from the access request; the TCP long connection search module 4002 is used to The page identifier, from a pre-constructed TCP connection pool, to find a long TCP connection required for communication between the web browser and the cloud desktop; a cloud desktop access module 4003 is used to use the long TCP connection to transfer the The access request is sent to the cloud computing platform, and the response information made by the cloud computing platform is received to implement access to the cloud desktop provided by the cloud computing platform.
应当理解的是,在实际应用中,为了便于维护和管理,可以将上述TCP长连接查找模块4002所执行的操作进行具体划分,并将细化后的操作分配给不同的功能模块。It should be understood that, in practical applications, in order to facilitate maintenance and management, the operations performed by the TCP long connection search module 4002 may be specifically divided, and the refined operations are allocated to different functional modules.
比如,在实际应用中,可以将TCP长连接查找模块4002划分为:标识号查找子模块、TCP长连接查找子模块和TCP长连接创建子模块。For example, in practical applications, the TCP long connection search module 4002 may be divided into: an identification number search sub-module, a TCP long connection search sub-module, and a TCP long connection creation sub-module.
具体的,所述标识号查找子模块,用于将所述页面标识作为索引项,从预先记录的TCP长连接记录表中查找所述页面标识对应的TCP长连接的标识号;所述TCP长连接查找子模块,用于在查找到所述页面标识对应的TCP长连接的标识号时,根据所述标识号从预先构建的TCP连接池中查找到所述标识号对应的TCP长连接,并将查找到的所述TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接;所述TCP长连接创建子模块,用于在未查找到所述页面标识对应的TCP长连接的标识号时,创建一个TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接,并将创建的TCP长连接的标识号更新到所述TCP长连接记录表中。Specifically, the identification number searching submodule is used to search for the identification number of the TCP long connection corresponding to the page identification from a pre-recorded TCP long connection record table using the page identification as an index item; the TCP long The connection search submodule is used to search for the TCP long connection corresponding to the identification number from the pre-built TCP connection pool according to the identification number when the identification number of the TCP long connection corresponding to the page identification is found, and Use the found TCP long connection as the TCP long connection required for the web browser to communicate with the cloud desktop; the TCP long connection creation sub-module is used to find the TCP corresponding to the page identifier when the page identifier is not found When the identification number of the long connection is created, create a TCP long connection as the TCP long connection required for the web browser to communicate with the cloud desktop, and update the identification number of the created TCP long connection to the TCP long connection record table in.
关于TCP长连接创建子模块创建TCP长连接的操作,大致可以如下:向所述云计算平台发送访问所述云桌面的握手请求,协商建立TCP长连接所需的参数;接收所述云计算平台做出的握手应答和反馈的第一参数信息;获取本机的第二参数信息;对所述第一参数信息和所述第二参数信息进行交集处理,得到备选参数集;从所述备选参数集中选取任意一个参数作为建立TCP长连接所需的参数,完成握手操作;向所述云计算平台发送TCP长连接本机绑定的第一超文本传输协议服务器地址和第一互联网协议端口,并接收所述云计算平台下发的所述云桌面绑定的第二超文本传输协议服务器地址和第二互联网协议端口,完成TCP长连接的创建。The operation of the TCP long connection creation submodule to create a TCP long connection can be roughly as follows: send a handshake request to the cloud computing platform to access the cloud desktop, negotiate the parameters required to establish a TCP long connection; receive the cloud computing platform The first parameter information of the handshake response and feedback made; obtaining the second parameter information of the local machine; performing an intersection processing on the first parameter information and the second parameter information to obtain a candidate parameter set; from the backup Select any one of the parameter sets as the parameter required to establish a long TCP connection to complete the handshake operation; send the first hypertext transfer protocol server address and the first Internet protocol port bound to the TCP long connection to the cloud computing platform And receive the second hypertext transfer protocol server address and the second Internet protocol port bound to the cloud desktop delivered by the cloud computing platform to complete the creation of a long TCP connection.
此外,应当理解的是,由于在实际应用中,为了节约对用户机资源的占用,添加在预先构建的TCP连接池中的TCP长连接的个数是有限的,因而可能会存在查找到的TCP长连接目前正在处于使用状态。因而,为了保证云桌面的访问操作的顺利进行,本实施例中提供的云桌面的访问装置还可以包括状态检测模块。In addition, it should be understood that in practical applications, in order to save the user machine resources, the number of long TCP connections added to the pre-built TCP connection pool is limited, so there may be TCP found The long connection is currently in use. Therefore, in order to ensure the smooth operation of the cloud desktop access operation, the cloud desktop access device provided in this embodiment may further include a state detection module.
其中,所述状态检测模块,用于在将查找到的所述TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接之前,判断查找到的所述TCP长连接是否处于空闲状态。Wherein, the state detection module is configured to determine whether the found TCP long connection is used as the TCP long connection required for communication between the web browser and the cloud desktop as the TCP long connection found Idle.
相应地,若确定查找到的所述TCP长连接处于空闲状态,则将查找到的所述TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接。Correspondingly, if it is determined that the long TCP connection found is in an idle state, the long TCP connection found is used as the long TCP connection required for communication between the web browser and the cloud desktop.
通过上述描述不难发现,本实施例提供的云桌面的访问装置,通过使用网页浏览来访问云平台提供的云桌面,从而无需在用户机上单独安装访问云桌面的应用程序,因而在实现过程中也无需额外设置支撑访问云桌面的应用程序工作的代理服务器,从而有效降低了云桌面的接入成本。It is not difficult to find from the above description that the cloud desktop access device provided in this embodiment accesses the cloud desktop provided by the cloud platform by using web browsing, so that there is no need to install a separate application for accessing the cloud desktop on the user machine. There is no need to additionally set up a proxy server that supports the work of accessing the cloud desktop application, thereby effectively reducing the access cost of the cloud desktop.
此外,在使用网页浏览器访问云桌面的过程中,通过根据网页浏览器的页面标识从预先构建的TCP连接池中查找发起云桌面的访问请求的网页浏览器与云桌面通信所需的TCP长连接,直接利用已有的TCP长连接与云桌面进行交换,实现对云桌面的访问,在访问云桌面的过程中无需重复执行创建TCP连接的操作,只需拿来复用即可,从而可以有效的减少对用户机资源的占用,解决了用户机的操作界面闪烁、卡顿的问题。In addition, in the process of using a web browser to access the cloud desktop, the TCP length required for the web browser initiating the cloud desktop access request to communicate with the cloud desktop is found from the pre-built TCP connection pool according to the web browser's page identifier Connection, directly use the existing TCP long connection to exchange with the cloud desktop, to achieve access to the cloud desktop, in the process of accessing the cloud desktop, there is no need to repeatedly perform the operation of creating a TCP connection, just use it for reuse, so that Effectively reduce the occupation of user machine resources and solve the problem of flickering and jamming of user machine operation interface.
基于上述云桌面的访问装置的第一实施例,提出本申请云桌面的访问装置第二实施例。Based on the first embodiment of the cloud desktop access device described above, a second embodiment of the cloud desktop access device of the present application is proposed.
在本实施例中,所述云桌面的访问装置还包括访问请求检测模块。In this embodiment, the cloud desktop access device further includes an access request detection module.
其中,所述访问请求检测模块,用于判断所述访问请求是否符合预设要求。Wherein, the access request detection module is used to determine whether the access request meets the preset requirements.
相应地,若所述访问请求符合预设要求,则触发云桌面访问模块执行“利用所述TCP长连接,将所述访问请求发送至云计算平台”的操作。Correspondingly, if the access request meets the preset requirements, the cloud desktop access module is triggered to perform the operation of “using the TCP long connection to send the access request to the cloud computing platform”.
此外,应当理解的是,在实际应用中,为了尽快解决所述访问请求不符合预设要求的问题,本实施例中提供的云桌面的访问装置还可以包括日志获取模块和异常信息发送模块。In addition, it should be understood that, in practical applications, in order to solve the problem that the access request does not meet the preset requirements as soon as possible, the cloud desktop access device provided in this embodiment may further include a log acquisition module and an exception information sending module.
其中,所述日志获取模块,用于在所述访问请求检测模块通过对访问请求进行判断,确定访问请求不符合预设要求时,获取所述访问请求对应的异常日志文件;所述异常信息发送模块,用于将所述访问请求和所述异常日志文件发送至管理人员的终端设备,以使所述管理人员能够根据所述访问请求和所述异常日志文件,定位出导致所述访问请求不符合预设要求的原因。Wherein, the log obtaining module is used to obtain an exception log file corresponding to the access request when the access request detection module determines that the access request does not meet the preset requirements by judging the access request; the exception information is sent A module for sending the access request and the abnormal log file to the terminal device of the manager, so that the manager can locate the access request and the abnormal log file according to the access request and the abnormal log file Reasons for meeting preset requirements.
进一步地,为了方便管理人员处理,能够快速定位出导致所述访问请求不符合预设要求的原因,可以在将所述访问请求和所述异常日志文件发送至管理人员的终端设备之前,还对异常日志文件中的内容进行标记。因而,本实施例中提供的云桌面的访问装置还可以包括异常标记模块。Further, in order to facilitate the management personnel to handle, the reason that the access request does not meet the preset requirements can be quickly located. Before sending the access request and the abnormal log file to the terminal device of the management personnel, Mark the contents of the exception log file. Therefore, the cloud desktop access device provided in this embodiment may further include an abnormality marking module.
其中,所述异常标记模块,用于将所述异常日志文件与预存的发起所述访问请求时产生的正常日志文件进行比较,并对不一致的内容进行标记,得到标记版本的异常日志文件。Wherein, the abnormality marking module is used to compare the abnormality log file with the normality log file pre-stored when the access request is initiated, and mark the inconsistent content to obtain a marked version of the abnormality log file.
相应地,所述异常信息发送模块,在发送所述访问请求及所述访问请求对应的异常日志文件等异常信息时,具体是将所述访问请求和所述标记版本的异常日志文件发送至管理人员的终端设备,从而可以使所述管理人员能够根据所述访问请求和所述标记版本的异常日志文件,定位出导致所述访问请求不符合预设要求的原因。Correspondingly, when sending abnormal information such as the access request and the abnormal log file corresponding to the access request, the abnormal information sending module specifically sends the access request and the marked version of the abnormal log file to the management The terminal device of the personnel, so that the management personnel can locate the reason that the access request does not meet the preset requirements according to the access request and the abnormal log file of the marked version.
通过上述描述不难发现,本实例中提供的云桌面的访问装置,在利用查找到的TCP长连接,将所述访问请求发送至云计算平台之前,通过对访问请求进行判断,在判定符合预设要求时,才将所述访问请求发送至云计算平台,从而可以保证云计算平台在收到所述访问请求之后,能够做出正确的响应,保证云桌面的访问能够顺利进行;而在判定不符合预设要求时,通过将所述访问请求及所述访问请求对应的异常日志文件发送至管理人员的终端设备,从而可以使所述管理人员能够根据所述访问请求和所述异常日志文件,定位出导致所述访问请求不符合预设要求的原因,快速解决异常现象,进而保证用户体验。From the above description, it is not difficult to find that the cloud desktop access device provided in this example, before using the found TCP long connection to send the access request to the cloud computing platform, by judging the access request, it is determined that the Only when the requirements are set, will the access request be sent to the cloud computing platform, so as to ensure that the cloud computing platform can make a correct response after receiving the access request, and ensure that the cloud desktop access can proceed smoothly; When the preset requirements are not met, by sending the access request and the exception log file corresponding to the access request to the terminal device of the management personnel, the management personnel can be enabled according to the access request and the exception log file To locate the cause of the access request that does not meet the preset requirements, quickly resolve the abnormal phenomenon, and then ensure the user experience.
此外,需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。In addition, it should be noted that in this article, the terms "include", "include" or any other variant thereof are intended to cover non-exclusive inclusion, so that a process, method, article or system that includes a series of elements includes not only those Elements, but also include other elements that are not explicitly listed, or include elements inherent to this process, method, article, or system. Without more restrictions, the element defined by the sentence "include one ..." does not exclude that there are other identical elements in the process, method, article or system that includes the element.
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。The sequence numbers of the above embodiments of the present application are for description only, and do not represent the advantages and disadvantages of the embodiments.
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述 实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通 过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的 技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体 现出来,该计算机软件产品存储在一个存储介质(如只读存储器(Read Only Memory,ROM)/RAM、磁碟、光 盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。Through the description of the above embodiments, those skilled in the art can clearly understand the above The method of the embodiment can be implemented by means of software plus the necessary general hardware platform, and of course it can also be implemented by hardware, but in many cases the former is the better implementation. Based on this understanding, the The technical solution can be embodied in the form of a software product in essence or part of the contribution to the existing technology. The computer software product is stored in a storage medium (such as read-only memory (Read Only) Memory, ROM) / RAM, disk, optical Disk), including several instructions to enable a terminal device (which may be a mobile phone, a computer, a server, or a network device, etc.) to execute the method described in each embodiment of the present application.
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。The above are only the preferred embodiments of the present application, and do not limit the patent scope of the present application. Any equivalent structure or equivalent process transformation made by the description and drawings of this application, or directly or indirectly used in other related technical fields , The same reason is included in the scope of patent protection of this application.

Claims (20)

  1. 一种云桌面的访问方法,其特征在于,所述方法包括: A cloud desktop access method, characterized in that the method includes:
    接收用户通过网页浏览器触发的云桌面的访问请求,从所述访问请求中提取所述网页浏览器的页面标识;Receiving a cloud desktop access request triggered by a user through a web browser, and extracting the page identifier of the web browser from the access request;
    根据所述页面标识,从预先构建的TCP连接池中查找所述网页浏览器与所述云桌面通信所需的TCP长连接;Searching for a long TCP connection required for communication between the web browser and the cloud desktop from a pre-built TCP connection pool according to the page identifier;
    利用所述TCP长连接,将所述访问请求发送至云计算平台,并接收所述云计算平台作出的响应信息,实现对所述云计算平台提供的云桌面的访问。Using the long TCP connection, the access request is sent to the cloud computing platform, and the response information made by the cloud computing platform is received to achieve access to the cloud desktop provided by the cloud computing platform.
  2. 如权利要求1所述的方法,其特征在于,所述根据所述页面标识,从预先构建的TCP连接池中查找所述网页浏览器与所述云桌面通信所需的TCP长连接的步骤,包括:The method according to claim 1, wherein the step of searching for a long TCP connection required for communication between the web browser and the cloud desktop from a pre-built TCP connection pool according to the page identifier, include:
    将所述页面标识作为索引项,从预先记录的TCP长连接记录表中查找所述页面标识对应的TCP长连接的标识号;Using the page identifier as an index item, look up the identification number of the TCP long connection corresponding to the page identifier from a pre-recorded TCP long connection record table;
    若查找到所述页面标识对应的TCP长连接的标识号,则根据所述标识号从预先构建的TCP连接池中查找到所述标识号对应的TCP长连接,并将查找到的所述TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接;If the identification number of the TCP long connection corresponding to the page identification is found, then the TCP long connection corresponding to the identification number is found from the pre-built TCP connection pool according to the identification number, and the found TCP The long connection serves as a long TCP connection required for communication between the web browser and the cloud desktop;
    若未查找到所述页面标识对应的TCP长连接的标识号,则创建一个TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接,并将创建的TCP长连接的标识号更新到所述TCP长连接记录表中。If the identification number of the TCP long connection corresponding to the page identifier is not found, a TCP long connection is created as the TCP long connection required for communication between the web browser and the cloud desktop, and the created TCP long connection The identification number is updated into the TCP long connection record table.
  3. 如权利要求2所述的方法,其特征在于,所述将查找到的所述TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接的步骤之前,所述方法还包括:The method according to claim 2, wherein before the step of using the found TCP long connection as the TCP long connection required for communication between the web browser and the cloud desktop, the method further include:
    判断查找到的所述TCP长连接是否处于空闲状态;Determine whether the long TCP connection found is in an idle state;
    其中,所述将查找到的所述TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接,包括:Wherein, using the found TCP long connection as the TCP long connection required for communication between the web browser and the cloud desktop includes:
    若查找到的所述TCP长连接处于空闲状态,则将查找到的所述TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接。If the long TCP connection found is in an idle state, the long TCP connection found is used as the long TCP connection required for communication between the web browser and the cloud desktop.
  4. 如权利要求2所述的方法,其特征在于,所述创建一个TCP长连接的步骤,包括:The method of claim 2, wherein the step of creating a long TCP connection includes:
    向所述云计算平台发送访问所述云桌面的握手请求,协商建立TCP长连接所需的参数;Send a handshake request to the cloud computing platform to access the cloud desktop to negotiate the parameters required to establish a long TCP connection;
    接收所述云计算平台做出的握手应答和反馈的第一参数信息;Receiving the first parameter information of the handshake response and feedback made by the cloud computing platform;
    获取本机的第二参数信息;Obtain the second parameter information of this machine;
    对所述第一参数信息和所述第二参数信息进行交集处理,得到备选参数集;Performing intersection processing on the first parameter information and the second parameter information to obtain a candidate parameter set;
    从所述备选参数集中选取任意一个参数作为建立TCP长连接所需的参数,完成握手操作;Select any one of the candidate parameter sets as the parameter required to establish a long TCP connection to complete the handshake operation;
    向所述云计算平台发送本机绑定的第一超文本传输协议服务器地址和第一互联网协议端口,并接收所述云计算平台下发的所述云桌面绑定的第二超文本传输协议服务器地址和第二互联网协议端口,完成TCP长连接的创建。Send the first hypertext transfer protocol server address and the first Internet protocol port bound to the cloud computing platform to the cloud computing platform, and receive the second hypertext transfer protocol bound to the cloud desktop issued by the cloud computing platform The server address and the second Internet protocol port complete the creation of a long TCP connection.
  5. 如权利要求1所述的方法,其特征在于,所述利用所述TCP长连接,将所述访问请求发送至云计算平台的步骤之前,所述方法还包括:The method of claim 1, wherein before the step of using the TCP long connection to send the access request to a cloud computing platform, the method further comprises:
    判断所述访问请求是否符合预设要求;Determine whether the access request meets the preset requirements;
    其中,所述利用所述TCP长连接,将所述访问请求发送至云计算平台,包括:Wherein, using the TCP long connection to send the access request to the cloud computing platform includes:
    若所述访问请求符合预设要求,则利用所述TCP长连接,将所述访问请求发送至云计算平台。If the access request meets the preset requirements, the TCP long connection is used to send the access request to the cloud computing platform.
  6. 如权利要求5所述的方法,其特征在于,所述判断所述访问请求是否符合预设要求的步骤之后,所述方法还包括:The method according to claim 5, wherein after the step of determining whether the access request meets a preset requirement, the method further comprises:
    若所述访问请求不符合预设要求,则获取所述访问请求对应的异常日志文件;If the access request does not meet the preset requirements, obtain an exception log file corresponding to the access request;
    将所述访问请求和所述异常日志文件发送至管理人员的终端设备,以使所述管理人员能够根据所述访问请求和所述异常日志文件,定位出导致所述访问请求不符合预设要求的原因。Sending the access request and the abnormal log file to the terminal device of the manager, so that the manager can locate the access request that does not meet the preset requirements based on the access request and the abnormal log file s reason.
  7. 如权利要求6所述的方法,其特征在于,所述将所述访问请求和所述异常日志文件发送至管理人员的终端设备的步骤之前,所述方法还包括:The method according to claim 6, wherein before the step of sending the access request and the exception log file to a terminal device of a manager, the method further comprises:
    将所述异常日志文件与预存的发起所述访问请求时产生的正常日志文件进行比较,并对不一致的内容进行标记,得到标记版本的异常日志文件;Comparing the abnormal log file with the pre-stored normal log file generated when the access request is initiated, and marking the inconsistent content to obtain a marked version of the abnormal log file;
    其中,所述将所述访问请求和所述异常日志文件发送至管理人员的终端设备,包括:Wherein, the sending of the access request and the abnormal log file to the terminal device of the management personnel includes:
    将所述访问请求和所述标记版本的异常日志文件发送至管理人员的终端设备,以使所述管理人员能够根据所述访问请求和所述标记版本的异常日志文件,定位出导致所述访问请求不符合预设要求的原因。Sending the access request and the marked version of the abnormal log file to the terminal device of the administrator, so that the manager can locate the access cause The reason why the request does not meet the preset requirements.
  8. 一种云桌面的访问装置,其特征在于,所述装置包括:A cloud desktop access device, characterized in that the device includes:
    页面标识获取模块,用于接收用户通过网页浏览器触发的云桌面的访问请求,从所述访问请求中提取所述网页浏览器的页面标识;A page identifier acquisition module, configured to receive a cloud desktop access request triggered by a user through a web browser, and extract the page identifier of the web browser from the access request;
    TCP长连接查找模块,用于根据所述页面标识,从预先构建的TCP连接池中查找所述网页浏览器与所述云桌面通信所需的TCP长连接;A TCP long connection search module, configured to search for a TCP long connection required for communication between the web browser and the cloud desktop from a pre-built TCP connection pool according to the page identifier;
    云桌面访问模块,用于利用所述TCP长连接,将所述访问请求发送至云计算平台,并接收所述云计算平台作出的响应信息,实现对所述云计算平台提供的云桌面的访问。The cloud desktop access module is used to send the access request to the cloud computing platform using the long TCP connection, and receive the response information made by the cloud computing platform to implement access to the cloud desktop provided by the cloud computing platform .
  9. 一种云桌面的访问设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的云桌面的访问可读指令,所述云桌面的访问可读指令配置为实现以下步骤:A cloud desktop access device, characterized in that the device includes: a memory, a processor, and a cloud desktop access readable instruction stored on the memory and operable on the processor, the cloud desktop The access readable instructions are configured to implement the following steps:
    接收用户通过网页浏览器触发的云桌面的访问请求,从所述访问请求中提取所述网页浏览器的页面标识;Receiving a cloud desktop access request triggered by a user through a web browser, and extracting the page identifier of the web browser from the access request;
    根据所述页面标识,从预先构建的TCP连接池中查找所述网页浏览器与所述云桌面通信所需的TCP长连接;Searching for a long TCP connection required for communication between the web browser and the cloud desktop from a pre-built TCP connection pool according to the page identifier;
    利用所述TCP长连接,将所述访问请求发送至云计算平台,并接收所述云计算平台作出的响应信息,实现对所述云计算平台提供的云桌面的访问。Using the long TCP connection, the access request is sent to the cloud computing platform, and the response information made by the cloud computing platform is received to achieve access to the cloud desktop provided by the cloud computing platform.
  10. 如权利要求9所述的云桌面的访问设备,其特征在于,所述根据所述页面标识,从预先构建的TCP连接池中查找所述网页浏览器与所述云桌面通信所需的TCP长连接的步骤,包括:The cloud desktop access device according to claim 9, wherein the TCP length required for communication between the web browser and the cloud desktop is searched from a pre-built TCP connection pool according to the page identifier The connection steps include:
    将所述页面标识作为索引项,从预先记录的TCP长连接记录表中查找所述页面标识对应的TCP长连接的标识号;Using the page identifier as an index item, look up the identification number of the TCP long connection corresponding to the page identifier from a pre-recorded TCP long connection record table;
    若查找到所述页面标识对应的TCP长连接的标识号,则根据所述标识号从预先构建的TCP连接池中查找到所述标识号对应的TCP长连接,并将查找到的所述TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接;If the identification number of the TCP long connection corresponding to the page identification is found, then the TCP long connection corresponding to the identification number is found from the pre-built TCP connection pool according to the identification number, and the found TCP The long connection serves as a long TCP connection required for communication between the web browser and the cloud desktop;
    若未查找到所述页面标识对应的TCP长连接的标识号,则创建一个TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接,并将创建的TCP长连接的标识号更新到所述TCP长连接记录表中。If the identification number of the TCP long connection corresponding to the page identifier is not found, a TCP long connection is created as the TCP long connection required for communication between the web browser and the cloud desktop, and the created TCP long connection The identification number is updated into the TCP long connection record table.
  11. 如权利要求10所述的云桌面的访问设备,其特征在于,所述将查找到的所述TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接的步骤之前,所述方法还包括:The cloud desktop access device according to claim 10, wherein before the step of using the found TCP long connection as the TCP long connection required for communication between the web browser and the cloud desktop, The method also includes:
    判断查找到的所述TCP长连接是否处于空闲状态;Determine whether the long TCP connection found is in an idle state;
    其中,所述将查找到的所述TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接,包括:Wherein, using the found TCP long connection as the TCP long connection required for communication between the web browser and the cloud desktop includes:
    若查找到的所述TCP长连接处于空闲状态,则将查找到的所述TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接。If the long TCP connection found is in an idle state, the long TCP connection found is used as the long TCP connection required for communication between the web browser and the cloud desktop.
  12. 如权利要求10所述的云桌面的访问设备,其特征在于,所述创建一个TCP长连接的步骤,包括:The cloud desktop access device according to claim 10, wherein the step of creating a long TCP connection includes:
    向所述云计算平台发送访问所述云桌面的握手请求,协商建立TCP长连接所需的参数;Send a handshake request to the cloud computing platform to access the cloud desktop to negotiate the parameters required to establish a long TCP connection;
    接收所述云计算平台做出的握手应答和反馈的第一参数信息;Receiving the first parameter information of the handshake response and feedback made by the cloud computing platform;
    获取本机的第二参数信息;Obtain the second parameter information of this machine;
    对所述第一参数信息和所述第二参数信息进行交集处理,得到备选参数集;Performing intersection processing on the first parameter information and the second parameter information to obtain a candidate parameter set;
    从所述备选参数集中选取任意一个参数作为建立TCP长连接所需的参数,完成握手操作;Select any one of the candidate parameter sets as the parameter required to establish a long TCP connection to complete the handshake operation;
    向所述云计算平台发送本机绑定的第一超文本传输协议服务器地址和第一互联网协议端口,并接收所述云计算平台下发的所述云桌面绑定的第二超文本传输协议服务器地址和第二互联网协议端口,完成TCP长连接的创建。Send the first hypertext transfer protocol server address and the first Internet protocol port bound to the cloud computing platform to the cloud computing platform, and receive the second hypertext transfer protocol bound to the cloud desktop issued by the cloud computing platform The server address and the second Internet protocol port complete the creation of a long TCP connection.
  13. 如权利要求9所述的云桌面的访问设备,其特征在于,所述利用所述TCP长连接,将所述访问请求发送至云计算平台的步骤之前,所述方法还包括:The cloud desktop access device according to claim 9, wherein before the step of using the TCP long connection to send the access request to a cloud computing platform, the method further includes:
    判断所述访问请求是否符合预设要求;Determine whether the access request meets the preset requirements;
    其中,所述利用所述TCP长连接,将所述访问请求发送至云计算平台,包括:Wherein, using the TCP long connection to send the access request to the cloud computing platform includes:
    若所述访问请求符合预设要求,则利用所述TCP长连接,将所述访问请求发送至云计算平台。If the access request meets the preset requirements, the TCP long connection is used to send the access request to the cloud computing platform.
  14. 如权利要求13所述的云桌面的访问设备,其特征在于,所述判断所述访问请求是否符合预设要求的步骤之后,所述方法还包括:The cloud desktop access device according to claim 13, wherein after the step of determining whether the access request meets a preset requirement, the method further includes:
    若所述访问请求不符合预设要求,则获取所述访问请求对应的异常日志文件;If the access request does not meet the preset requirements, obtain an exception log file corresponding to the access request;
    将所述访问请求和所述异常日志文件发送至管理人员的终端设备,以使所述管理人员能够根据所述访问请求和所述异常日志文件,定位出导致所述访问请求不符合预设要求的原因。Sending the access request and the abnormal log file to the terminal device of the manager, so that the manager can locate the access request that does not meet the preset requirements based on the access request and the abnormal log file s reason.
  15. 如权利要求14所述的云桌面的访问设备,其特征在于,所述将所述访问请求和所述异常日志文件发送至管理人员的终端设备的步骤之前,所述方法还包括:The cloud desktop access device according to claim 14, wherein before the step of sending the access request and the exception log file to a terminal device of a manager, the method further includes:
    将所述异常日志文件与预存的发起所述访问请求时产生的正常日志文件进行比较,并对不一致的内容进行标记,得到标记版本的异常日志文件;Comparing the abnormal log file with the pre-stored normal log file generated when the access request is initiated, and marking the inconsistent content to obtain a marked version of the abnormal log file;
    其中,所述将所述访问请求和所述异常日志文件发送至管理人员的终端设备,包括:Wherein, the sending of the access request and the abnormal log file to the terminal device of the management personnel includes:
    将所述访问请求和所述标记版本的异常日志文件发送至管理人员的终端设备,以使所述管理人员能够根据所述访问请求和所述标记版本的异常日志文件,定位出导致所述访问请求不符合预设要求的原因。Sending the access request and the marked version of the abnormal log file to the terminal device of the manager, so that the manager can locate the access caused by the access request and the marked version of the abnormal log file The reason why the request does not meet the preset requirements.
  16. 一种存储介质,其特征在于,所述存储介质上存储有云桌面的访问可读指令,所述云桌面的访问可读指令被处理器执行时实现以下步骤:A storage medium is characterized in that cloud desktop access readable instructions are stored on the storage medium, and the cloud desktop access readable instructions implement the following steps when executed by a processor:
    接收用户通过网页浏览器触发的云桌面的访问请求,从所述访问请求中提取所述网页浏览器的页面标识;Receiving a cloud desktop access request triggered by a user through a web browser, and extracting the page identifier of the web browser from the access request;
    根据所述页面标识,从预先构建的TCP连接池中查找所述网页浏览器与所述云桌面通信所需的TCP长连接;Searching for a long TCP connection required for communication between the web browser and the cloud desktop from a pre-built TCP connection pool according to the page identifier;
    利用所述TCP长连接,将所述访问请求发送至云计算平台,并接收所述云计算平台作出的响应信息,实现对所述云计算平台提供的云桌面的访问。Using the long TCP connection, the access request is sent to the cloud computing platform, and the response information made by the cloud computing platform is received to achieve access to the cloud desktop provided by the cloud computing platform.
  17. 如权利要求16所述的存储介质,其特征在于,所述根据所述页面标识,从预先构建的TCP连接池中查找所述网页浏览器与所述云桌面通信所需的TCP长连接的步骤,包括:The storage medium according to claim 16, wherein the step of searching for a long TCP connection required for communication between the web browser and the cloud desktop from a pre-built TCP connection pool according to the page identifier ,include:
    将所述页面标识作为索引项,从预先记录的TCP长连接记录表中查找所述页面标识对应的TCP长连接的标识号;Using the page identifier as an index item, look up the identification number of the TCP long connection corresponding to the page identifier from a pre-recorded TCP long connection record table;
    若查找到所述页面标识对应的TCP长连接的标识号,则根据所述标识号从预先构建的TCP连接池中查找到所述标识号对应的TCP长连接,并将查找到的所述TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接;If the identification number of the TCP long connection corresponding to the page identification is found, then the TCP long connection corresponding to the identification number is found from the pre-built TCP connection pool according to the identification number, and the found TCP The long connection serves as a long TCP connection required for communication between the web browser and the cloud desktop;
    若未查找到所述页面标识对应的TCP长连接的标识号,则创建一个TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接,并将创建的TCP长连接的标识号更新到所述TCP长连接记录表中。If the identification number of the TCP long connection corresponding to the page identifier is not found, a TCP long connection is created as the TCP long connection required for communication between the web browser and the cloud desktop, and the created TCP long connection The identification number is updated into the TCP long connection record table.
  18. 如权利要求17所述的存储介质,其特征在于,所述将查找到的所述TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接的步骤之前,所述方法还包括:The storage medium according to claim 17, wherein before the step of using the found TCP long connection as a TCP long connection required for communication between the web browser and the cloud desktop, the method Also includes:
    判断查找到的所述TCP长连接是否处于空闲状态;Determine whether the long TCP connection found is in an idle state;
    其中,所述将查找到的所述TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接,包括:Wherein, using the found TCP long connection as the TCP long connection required for communication between the web browser and the cloud desktop includes:
    若查找到的所述TCP长连接处于空闲状态,则将查找到的所述TCP长连接作为所述网页浏览器与所述云桌面通信所需的TCP长连接。If the long TCP connection found is in an idle state, the long TCP connection found is used as the long TCP connection required for communication between the web browser and the cloud desktop.
  19. 如权利要求16所述的存储介质,其特征在于,所述利用所述TCP长连接,将所述访问请求发送至云计算平台的步骤之前,所述方法还包括:The storage medium according to claim 16, wherein before the step of using the TCP long connection to send the access request to a cloud computing platform, the method further includes:
    判断所述访问请求是否符合预设要求;Determine whether the access request meets the preset requirements;
    其中,所述利用所述TCP长连接,将所述访问请求发送至云计算平台,包括:Wherein, using the TCP long connection to send the access request to the cloud computing platform includes:
    若所述访问请求符合预设要求,则利用所述TCP长连接,将所述访问请求发送至云计算平台。If the access request meets the preset requirements, the TCP long connection is used to send the access request to the cloud computing platform.
  20. 如权利要求19所述的存储介质,其特征在于,所述判断所述访问请求是否符合预设要求的步骤之后,所述方法还包括:The storage medium according to claim 19, wherein after the step of determining whether the access request meets a preset requirement, the method further includes:
    若所述访问请求不符合预设要求,则获取所述访问请求对应的异常日志文件;If the access request does not meet the preset requirements, obtain an exception log file corresponding to the access request;
    将所述访问请求和所述异常日志文件发送至管理人员的终端设备,以使所述管理人员能够根据所述访问请求和所述异常日志文件,定位出导致所述访问请求不符合预设要求的原因。 Sending the access request and the abnormal log file to the terminal device of the manager, so that the manager can locate the access request that does not meet the preset requirements based on the access request and the abnormal log file s reason. The
PCT/CN2018/123188 2018-10-16 2018-12-24 Cloud desktop access method, apparatus and device, and storage medium WO2020077832A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201811201590.9A CN109639749B (en) 2018-10-16 2018-10-16 Cloud desktop access method, device, equipment and storage medium
CN201811201590.9 2018-10-16

Publications (1)

Publication Number Publication Date
WO2020077832A1 true WO2020077832A1 (en) 2020-04-23

Family

ID=66066405

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/123188 WO2020077832A1 (en) 2018-10-16 2018-12-24 Cloud desktop access method, apparatus and device, and storage medium

Country Status (2)

Country Link
CN (1) CN109639749B (en)
WO (1) WO2020077832A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113242149A (en) * 2021-05-21 2021-08-10 中国农业银行股份有限公司 Long connection configuration method, device, equipment, storage medium and program product
CN114422569A (en) * 2021-12-30 2022-04-29 天翼云科技有限公司 Message pushing method and device of cloud desktop
CN114598739A (en) * 2022-02-28 2022-06-07 阿里巴巴(中国)有限公司 Processing method, device and system of communication channel based on cloud application

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111447176B (en) * 2020-02-26 2023-07-21 中国平安人寿保险股份有限公司 Method, device, computer equipment and storage medium for safely accessing external network by internal network
CN113037541B (en) * 2021-02-23 2023-05-12 深信服科技股份有限公司 Network equipment management method, equipment and storage medium
CN113794772A (en) * 2021-09-15 2021-12-14 山东有人物联网股份有限公司 Method and system for remotely accessing built-in page of terminal equipment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101990256A (en) * 2010-08-27 2011-03-23 中兴通讯股份有限公司 Long-connection management device and method for managing link resources of long-connection communication
CN104199957A (en) * 2014-09-17 2014-12-10 合一网络技术(北京)有限公司 Redis universal agent implementation method
CN105471869A (en) * 2015-11-23 2016-04-06 珠海全志科技股份有限公司 Internet television content request connection reuse method and system thereof
CN106686038A (en) * 2015-11-10 2017-05-17 中兴通讯股份有限公司 Method and device for calling cloud desktop
US20170147323A1 (en) * 2015-11-25 2017-05-25 Le Holding (Beijing) Co., Ltd. Method and electronic device for upgrading software development kit of an application

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103577392B (en) * 2013-11-15 2017-07-18 北京奇虎科技有限公司 Keyword method for pushing and device based on current browse webpage
CN105991575A (en) * 2015-02-10 2016-10-05 北京神州泰岳信息安全技术有限公司 Cloud desktop login method and system thereof
CN105338119A (en) * 2015-12-03 2016-02-17 厦门法信公证云科技有限公司 Electronic evidence fixing security system based on cloud storage
US10129155B2 (en) * 2016-11-21 2018-11-13 Microsoft Technology Licensing, Llc Delay based congestion control protocol co-existing with TCP
CN106850809A (en) * 2017-02-09 2017-06-13 武汉烽火信息服务有限公司 The device of virtual desktop is used based on desktop cloud platform portal user
CN106936935B (en) * 2017-04-28 2021-02-23 新华三技术有限公司 Remote control method and device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101990256A (en) * 2010-08-27 2011-03-23 中兴通讯股份有限公司 Long-connection management device and method for managing link resources of long-connection communication
CN104199957A (en) * 2014-09-17 2014-12-10 合一网络技术(北京)有限公司 Redis universal agent implementation method
CN106686038A (en) * 2015-11-10 2017-05-17 中兴通讯股份有限公司 Method and device for calling cloud desktop
CN105471869A (en) * 2015-11-23 2016-04-06 珠海全志科技股份有限公司 Internet television content request connection reuse method and system thereof
US20170147323A1 (en) * 2015-11-25 2017-05-25 Le Holding (Beijing) Co., Ltd. Method and electronic device for upgrading software development kit of an application

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113242149A (en) * 2021-05-21 2021-08-10 中国农业银行股份有限公司 Long connection configuration method, device, equipment, storage medium and program product
CN113242149B (en) * 2021-05-21 2024-02-02 中国农业银行股份有限公司 Long connection configuration method, apparatus, device, storage medium, and program product
CN114422569A (en) * 2021-12-30 2022-04-29 天翼云科技有限公司 Message pushing method and device of cloud desktop
CN114598739A (en) * 2022-02-28 2022-06-07 阿里巴巴(中国)有限公司 Processing method, device and system of communication channel based on cloud application

Also Published As

Publication number Publication date
CN109639749B (en) 2021-09-21
CN109639749A (en) 2019-04-16

Similar Documents

Publication Publication Date Title
WO2020077832A1 (en) Cloud desktop access method, apparatus and device, and storage medium
WO2020147396A1 (en) Method for dynamically configuring service domain name, device, apparatus, and storage medium
WO2020233077A1 (en) System service monitoring method, device, and apparatus, and storage medium
WO2021006616A1 (en) Method for providing relational decentralized identifier service and blockchain node using the same
WO2021072881A1 (en) Object storage-based request processing method, apparatus and device, and storage medium
WO2020224246A1 (en) Block chain-based data management method and apparatus, device and storage medium
WO2020253135A1 (en) Automated analysis method and device, user equipment, and storage medium
WO2020186773A1 (en) Call request monitoring method, device, apparatus, and storage medium
WO2012155709A1 (en) A method, system and storage medium for pushing user's personal label dynamically
WO2020015064A1 (en) System fault processing method, apparatus, device and storage medium
WO2014069787A1 (en) Security through metadata orchestrators
WO2020233073A1 (en) Blockchain environment test method, device and apparatus, and storage medium
WO2019109957A1 (en) Esb-based service providing method, apparatus and device, and readable storage medium
WO2020143297A1 (en) Disaster recovery method, apparatus and device for call center, and storage medium
WO2020233060A1 (en) Event notification method and apparatus, event notification server, and storage medium
WO2020062644A1 (en) Json hijack bug detection method, apparatus and device, and storage medium
WO2020233057A1 (en) File packaging method, apparatus and device, and storage medium
WO2020042464A1 (en) Data interaction method, apparatus and device, and readable storage medium
WO2020062640A1 (en) Method, server and storage medium for switching dynamic copywriting language of terminal application
WO2020073494A1 (en) Webpage backdoor detecting method, device, storage medium and apparatus
WO2021003956A1 (en) Product information management method, apparatus and device, and storage medium
WO2020042471A1 (en) Firewall policy verification method, system and device, and readable storage medium
WO2020062658A1 (en) Contract generation method and apparatus, and device and storage medium
WO2012070900A2 (en) System for sharing event and data between personal devices
WO2020042482A1 (en) Agent service processing method, apparatus and device, and computer-readable storage medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18937370

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18937370

Country of ref document: EP

Kind code of ref document: A1