WO2016202102A1 - 消息传输方法及装置 - Google Patents
消息传输方法及装置 Download PDFInfo
- Publication number
- WO2016202102A1 WO2016202102A1 PCT/CN2016/080495 CN2016080495W WO2016202102A1 WO 2016202102 A1 WO2016202102 A1 WO 2016202102A1 CN 2016080495 W CN2016080495 W CN 2016080495W WO 2016202102 A1 WO2016202102 A1 WO 2016202102A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- message
- client
- link
- vmc
- sent
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/303—Terminal profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/08—Protocols specially adapted for terminal emulation, e.g. Telnet
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- H04L67/125—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/131—Protocols for games, networked simulations or virtual reality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/328—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the presentation layer [OSI layer 6]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
Definitions
- the present invention relates to the field of communications, and in particular to a message transmission method and apparatus.
- Cloud desktop system has gradually become a new choice for replacing physical computers due to its advantages of energy saving, low frequency of equipment replacement, convenient office work, convenient maintenance, and information security.
- the cloud desktop virtual machine simulates physical computer functions by using simulated hardware and operating system operating environment, and retains the user's usage habits on the physical computer, so that the user is accustomed to seamlessly migrate from the physical computer to the virtual computer.
- the current virtual machine is mainly the cloud implementation of the physical computer function.
- the user communicates information through the instant communication tool, mainly through the application software installed on the computer, and the operating system is in a running state.
- the communication software Since the communication software relies on the operation of the operating system, on the one hand, it occupies resources of the virtual computer operating system, on the other hand, the communication software generally has a window interface, and the window interface occupies the screen display area, and the user needs to perform appropriate size adjustment with other windows that need to be displayed or The faint adjustment can not make the communication interface display in parallel with other windows, and the user will inevitably perform window switching operations that affect work efficiency.
- VMC Virtual Machine Control Center
- the present invention provides a message transmission method and apparatus, so as to solve at least the problem that the virtual machine operating system is not in the running state or the virtual machine operating system is abnormal, and cannot communicate normally with the virtual machine control center.
- a message transmission method comprising: a virtual machine control center VMC establishing a link for performing message transmission with a client, wherein the client is used for linking and operating a virtual machine; The VMC performs message transmission with the client according to the established link.
- the link that the VMC establishes message transmission with the client includes at least one of the following:
- the VMC establishes, according to the identifier ID information of the client, the link that is used for message transmission between the client and the main channel of the environment SPICE protocol by using a simple protocol; the VMC is according to the client. Identifying ID information, establishing a transmission control protocol TCP link for message transmission with the client; the VMC establishing a user datagram for message transmission with the client according to the identifier ID information of the client Protocol UDP link.
- the VMC performs message transmission with the client according to the established link, and the VMC needs to send when the link is a link established by using a Main Channel of the SPICE protocol.
- the message is encapsulated into a SPICE Main Channel type message and the encapsulated message is sent to the client, and/or the VMC receives a SPICE Main Channel type message sent by the client;
- the link is In the case of a TCP link, the VMC encapsulates the message to be encapsulated into a TCP type message and sends the encapsulated message to the client, and/or the VMC receives a TCP type message sent by the client;
- the link is a UDP link
- the VMC encapsulates a message to be encapsulated into a UDP type message and sends the encapsulated message to the client, and/or the VMC receives the client to send UDP type of message.
- a message transmission method comprising: a client transmitting a message with the VMC according to a link established by a virtual machine control center VMC, wherein the client is used for linking and operating virtual machine.
- the link includes at least one of: independently calculating, according to the identifier ID information of the client, a link established by the main channel Main Channel of the environment SPICE protocol by using a simple protocol; according to the identifier ID information of the client, Established a transmission control protocol TCP link; a user datagram protocol UDP link established according to the identification ID information of the client.
- the transmitting, by the client, the message transmission to the VMC according to the link established by the VMC includes: when the link is a link established by using a Main Channel of the SPICE protocol, the client The terminal encapsulates the message to be sent into a SPICE Main Channel type message and sends the encapsulated message to the VMC, and/or the client receives the SPICE Main Channel type message sent by the VMC; When the link is a TCP link, the client encapsulates the message to be sent into a TCP type message and sends the encapsulated message to the VMC, and/or the client receives the TCP sent by the VMC.
- the client when the link is a UDP link, the client encapsulates the message to be sent into a UDP type message and sends the encapsulated message to the VMC, and/or the client Receiving a UDP type message sent by the VMC.
- the transmitting, by the client, the message transmission to the VMC according to the link established by the VMC includes: the client sending a message to the VMC according to the link established by the VMC and/or Receiving, by the client, the message sent by the VMC according to the link established by the VMC, where the client further includes, before receiving, according to the link established by the VMC, the message sent by the VMC, The client reads a cache parameter in the client for caching the message and a presentation parameter that renders the message.
- the cache parameter includes: a quantity size of a cache queue used to cache the message; and/or, the presentation parameter includes at least one of: transparency of a message presentation layer, and size of a message presentation layer , the presentation reminder mode of the message, the presentation mode of the message, the presentation position of the message, the presentation time of the message, the hidden way of the message, the reading of the message the way.
- the method further includes: the client buffering the message according to the read cache parameter; The client performs rendering processing on the cached message according to the read presentation parameter.
- a message transmission apparatus comprising: an establishing module, configured to establish a link for transmitting a message with a client, where The client is configured to link and operate a virtual machine; the first transmission module is configured to perform message transmission with the client according to the established link.
- the establishing module includes at least one of: performing, according to the identifier ID information of the client, the main channel of the environment SPICE protocol by using a simple protocol, the Main Channel, establishing the message transmission between the client and the client. a link; establishing, according to the identifier ID information of the client, a transmission control protocol TCP link for performing message transmission with the client; establishing a message with the client according to the identifier ID information of the client The transmitted user datagram protocol UDP link.
- the first transmission module includes: when the link is a link established by using a Main Channel of the SPICE protocol, encapsulating a message to be sent into a SPICE Main Channel type message and encapsulating the link Sending a message to the client, and/or receiving a message of the SPICE Main Channel type sent by the client; when the link is a TCP link, the message needs to be encapsulated into a TCP type message and encapsulated The subsequent message is sent to the client, and/or, receiving a TCP type message sent by the client; when the link is a UDP link, the message needs to be encapsulated into a UDP type message and encapsulated The subsequent message is sent to the client, and/or a message of the UDP type sent by the client is received.
- a message transmission apparatus comprising: a second transmission module configured to perform with the VMC according to a link established by a virtual machine control center VMC Message transmission, wherein the client is used to link and operate a virtual machine.
- the link includes at least one of: independently calculating, according to the identifier ID information of the client, a link established by the main channel Main Channel of the environment SPICE protocol by using a simple protocol; according to the identifier ID information of the client, Established a transmission control protocol TCP link; a user datagram protocol UDP link established according to the identification ID information of the client.
- the second transmission module includes: when the link is a link established by using a Main Channel of the SPICE protocol, encapsulating a message to be sent into a SPICE Main Channel type message and encapsulating the link Sending a message to the VMC, and/or receiving a message of the SPICE Main Channel type sent by the VMC; when the link is a TCP link, encapsulating the message to be sent into a TCP type message and encapsulating the message Sending a message to the VMC, and/or receiving a TCP type message sent by the VMC; when the link is a UDP link, encapsulating the message to be sent into a UDP type message and encapsulating the message A message is sent to the VMC, and/or a UDP type message sent by the VMC is received.
- the second transmission module includes: sending a message to the VMC according to the link established by the VMC, and/or the client receiving the VMC according to the link established by the VMC.
- the message the apparatus further comprising: a reading module configured to read a cache parameter for caching the message and present the message before receiving the message sent by the VMC according to the link established by the VMC The presentation parameters of the message.
- the cache parameter includes: a quantity size of a cache queue used to cache the message; and/or, the presentation parameter includes at least one of: transparency of a message presentation layer, and size of a message presentation layer The presentation reminder mode of the message, the presentation manner of the message, the presentation position of the message, the presentation time of the message, the hidden manner of the message, and the manner in which the message is read.
- the device further includes: a cache module, configured to cache the message according to the read cache parameter; and the processing module is configured to perform rendering processing on the cached message according to the read presentation parameter .
- Another embodiment of the present invention provides a computer storage medium storing execution instructions for performing the method in the above embodiments.
- a virtual machine control center VMC is used to establish a link for message transmission with a client, wherein the client is used to link and operate a virtual machine; the VMC is based on the established link and the The client transmits the message, realizes the message transmission between the VMC and the client, and the communication between the VMC and the client has nothing to do with the operation of the virtual operating system. Therefore, the problem that the virtual machine operating system is not in the running state when the virtual machine operating system is not in the running state or the virtual machine operating system is abnormal in operation is solved, and the virtual machine operating system is not in the running state. Or when the virtual machine operating system runs abnormally, it can also perform normal communication with the virtual machine control center.
- FIG. 1 is a flowchart 1 of a message transmission method according to an embodiment of the present invention.
- FIG. 2 is a second flowchart of a message transmission method according to an embodiment of the present invention.
- FIG. 3 is a structural block diagram 1 of a message transmission apparatus according to an embodiment of the present invention.
- FIG. 4 is a structural block diagram 2 of a message transmission apparatus according to an embodiment of the present invention.
- FIG. 5 is a block diagram 1 showing a preferred structure of a message transmission apparatus according to an embodiment of the present invention.
- FIG. 6 is a block diagram 2 of a preferred structure of a message transmission apparatus according to an embodiment of the present invention.
- FIG. 7 is a schematic flow chart of management data display logic according to an embodiment of the present invention.
- FIG. 8 is a schematic diagram of a single communication of a management control terminal to a PC client according to an embodiment of the present invention.
- FIG. 9 is a schematic diagram of two-way communication display between a PC client and a mobile client according to an embodiment of the present invention.
- FIG. 10 is a first schematic diagram 1 of a presentation layer of information according to an embodiment of the present invention.
- FIG. 11 is a second schematic diagram of a presentation layer of information according to an embodiment of the present invention.
- FIG. 1 is a flowchart 1 of a message transmission method according to an embodiment of the present invention. As shown in FIG. 1, the process includes the following steps:
- Step S102 the virtual machine control center VMC establishes a link for performing message transmission with the client, where the client is used for linking and operating the virtual machine;
- Step S104 the VMC performs message transmission with the client according to the established link.
- the VMC establishes a link for transmitting a message with the client, thereby transmitting a message between the link and the client, and the message transmission includes sending a message and receiving the message, and the VMC can be used as an intermediate medium to implement different messages.
- the communication between the VMC and the client through the link has nothing to do with the operation of the virtual operating system, so that the virtual operating system may not operate or the virtual operating system may be abnormal.
- the normal transmission of messages between the VMC and the client can be achieved.
- the problem that the virtual machine operating system is not in the running state or the virtual machine operating system is not in operation when the virtual machine operating system is not running or the virtual machine operating system is abnormally running is solved. When the virtual machine operating system runs abnormally, it performs normal communication with the virtual machine control center.
- the foregoing client may include a client installed on a computer, and may also include a client installed on the mobile phone.
- the management and control module (the same VMC) and the cloud desktop client module of the cloud desktop system may be implemented by using the foregoing embodiments. That is, peer-to-peer or broadcast interaction between the client installed on the computer, peer-to-peer or broadcast interaction between the management control module of the cloud desktop system and the mobile phone client module (ie, the client installed on the mobile phone), And peer-to-peer or broadcast communication systems and methods between cloud desktop client modules.
- the link for establishing the message transmission between the VMC and the client includes at least one of the following: the VMC is independently calculated by using a simple protocol according to the identity of the client (ID).
- the main channel of the Simple Protocol for Independent Computing Environment (SPICE) protocol establishes a link for message transmission with the client; the VMC establishes a message transmission with the client according to the identification ID information of the client. Transmission Control Protocol (Transfer Control Protocol, TCP for short) link; the VMC establishes a message transmission with the client according to the identification ID information of the client.
- TCP Transmission Control Protocol
- UDP User Datagram Protocol
- the foregoing VMC performs message transmission with the client according to the established link, and when the link is a link established by the Main Channel of the SPICE protocol, the VMC encapsulates the message that needs to be sent into The SPICE Main Channel type message sends the encapsulated message to the client, and/or the VMC receives the SPICE Main Channel type message sent by the client; when the link is a TCP link, the VMC will need to send The message is encapsulated into a TCP type message and the encapsulated message is sent to the client, and/or the VMC receives a TCP type message sent by the client; when the link is a UDP link, the VMC will need to send a message. The message is encapsulated into a UDP type and the encapsulated message is sent to the client, and/or the VMC receives a UDP type message sent by the client.
- FIG. 2 is a second flowchart of a message transmission method according to an embodiment of the present invention. As shown in FIG. 2, the process includes the following steps:
- Step S202 The client performs message transmission with the VMC according to the link established by the virtual machine control center VMC, where the client is used to link and operate the virtual machine.
- the client uses the link established by the VMC for message transmission between the VMC and the client, and performs message transmission with the VMC, and the client and the VMC communicate and virtualize through the link. It does not matter whether the operating system runs or not, so that message transmission between the client and the VMC can still be realized while the virtual operating system is not running.
- the problem that the virtual machine operating system is not in the running state or the virtual machine operating system is not in operation when the virtual machine operating system is not running or the virtual machine operating system is abnormally running is solved. When the virtual machine operating system runs abnormally, it performs normal communication with the virtual machine control center.
- the foregoing link includes at least one of: independently calculating, according to the identifier ID information of the client, a link established by the main channel Main Channel of the environment SPICE protocol by using a simple protocol; according to the identifier ID information of the client, The established transmission control protocol TCP link; the user datagram protocol UDP link established according to the identity ID information of the client.
- the foregoing client performs message transmission with the VMC according to the link established by the VMC, and includes: when the link is a link established by the Main Channel of the SPICE protocol, the client needs to send a message. Encapsulating a message of the SPICE Main Channel type and sending the encapsulated message to the VMC, and/or the client receives a message of the SPICE Main Channel type sent by the VMC; when the link is a TCP link, the client will The message to be sent is encapsulated into a TCP type message and the encapsulated message is sent to the VMC, and/or the client receives a TCP type message sent by the VMC; when the link is a UDP link, the client will The message to be sent is encapsulated into a UDP type message and the encapsulated message is sent to the VMC, and/or the client receives a UDP type message sent by the VMC.
- the foregoing client performs message transmission with the VMC according to the link established by the VMC, where the client sends a message to the VMC according to the link established by the VMC and/or the chain established by the client according to the VMC.
- Receiving a message sent by the VMC where the client receives the message sent by the VMC according to the link established by the VMC.
- the method further includes: the client reads a cache parameter for caching the message in the client and a presentation parameter of the presentation message. The received message can thus be cached and rendered according to the cache parameters and the presentation parameters.
- the foregoing cache parameter includes: a quantity size of a cache queue for buffering a message; and/or, the foregoing presentation parameter includes at least one of the following: a transparency of a message presentation layer, and a message presentation layer
- the transparency of the message presentation layer can be set to 70%, 80% or other transparency, and the presentation layer and the terminal of the message can be guaranteed after the transparency of the presentation layer of the message is set.
- the interfaces that need to be presented coexist, and the two do not affect each other.
- the size of the message presentation layer may include the message presentation layer being as large as the terminal interface or occupying a part of the terminal interface, wherein the message presentation layer may also be divided into regions.
- the presentation reminder of the message may include prompting by flashing on the window toolbar when there is an unread message.
- the manner in which the message is presented may include the message being presented in the order from the upper right corner to the lower left corner, or in the order from left to right, or in the order from the lower left corner to the upper right corner, and the like, and different messages may be Presented in different presentations.
- the presentation location of the message may include displaying a specific location of the message, may include rendering at a location in the middle of the terminal interface, or presenting in the upper half of the terminal interface, or presenting at a location on the terminal interface without a layout icon, etc. .
- the presentation time of the message may include the time from the start of the display to the disappearance of the message, and may also include the interval between different messages (eg, the third message is displayed after the first message disappears), and may also include message presentation. The time the layer appears from the beginning to the disappearance.
- the way the message is hidden includes how the message is hidden after it is rendered, for example, it can be fly-out hidden, or it can be hidden by hiding, or hidden in other ways.
- the manner in which the message is read includes how to read the message after receiving the message, which may include reading the message by receiving a click signal, or reading the message by inputting a predetermined instruction, and the like.
- the method further includes: the client buffering the message according to the read cache parameter; the client is configured according to the read The parameter renders the cached message as described above.
- the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course, by hardware, but in many cases, the former is A better implementation.
- the technical solution of the present invention which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a storage medium (such as ROM/RAM, disk,
- the optical disc includes a number of instructions for causing a terminal device (which may be a cell phone, a computer, a server, or a network device, etc.) to perform the methods described in various embodiments of the present invention.
- a message transmission device is also provided, which is used to implement the foregoing embodiments and preferred embodiments, and is not described again.
- the term "module” may implement a combination of software and/or hardware of a predetermined function.
- the apparatus described in the following embodiments is preferably implemented in software, hardware, or a combination of software and hardware, is also possible and contemplated.
- FIG. 3 is a structural block diagram 1 of a message transmission apparatus according to an embodiment of the present invention.
- the apparatus may be applied to a virtual machine control center VMC.
- the apparatus includes an establishing module 32 and a first transmission module 34. The device will be described.
- the establishing module 32 is configured to establish a link for performing message transmission with the client, wherein the client is used for linking and operating the virtual machine; the first transmission module 34 is connected to the establishing module 32, and is set to be established according to the The above link and the client perform message transmission.
- the foregoing establishing module 32 may include at least one of: establishing, according to the identifier ID information of the client, a main channel of the environment SPICE protocol, using a simple protocol, to establish a message transmission with the client. Link; establish a transmission control protocol TCP link for message transmission with the client according to the identification ID information of the client; establish a user datagram protocol UDP chain for message transmission with the client according to the identification ID information of the client road.
- the first transmission module 34 includes: when the link is a link established by the Main Channel of the SPICE protocol, the message to be sent is encapsulated into a SPICE Main Channel type message and encapsulated.
- the subsequent message is sent to the client, and/or receives a message of the SPICE Main Channel type sent by the client; when the link is a TCP link, the message needs to be encapsulated into a TCP type message and the encapsulated message is sent.
- FIG. 4 is a block diagram 2 of a structure of a message transmission apparatus according to an embodiment of the present invention.
- the apparatus can be applied to a client.
- the apparatus includes a second transmission module 42, which is described below.
- the second transmission module 42 is configured to perform message transmission with the VMC according to the link established by the virtual machine control center VMC, wherein the client is used to link and operate the virtual machine.
- the foregoing link includes at least one of: independently calculating, according to the identifier ID information of the client, a link established by the main channel Main Channel of the environment SPICE protocol by using a simple protocol; according to the identifier ID information of the client, The established transmission control protocol TCP link; the user datagram protocol UDP link established according to the identity ID information of the client.
- the foregoing second transmission module 42 includes: when the link is a link established by the Main Channel of the SPICE protocol, the message to be sent is encapsulated into a SPICE Main Channel type message and encapsulated. The subsequent message is sent to the VMC, and/or receives a message of the SPICE Main Channel type sent by the VMC; when the link is a TCP link, the message to be sent is encapsulated into a TCP type message and the encapsulated message is sent.
- the foregoing second transmission module 42 includes: sending a message to the VMC according to the link established by the VMC and/or a message sent by the client according to the link established by the VMC to receive the VMC.
- FIG. 5 is a block diagram of a preferred structure of a message transmission apparatus according to an embodiment of the present invention. As shown in FIG. 5, the apparatus includes a reading module 52 in addition to all the modules shown in FIG. Description. The reading module 52 is connected to the second transmission module 42 and configured to read cache parameters and presentations for caching messages before receiving the message sent by the VMC according to the link established by the VMC. The presentation parameters of the current message.
- the foregoing cache parameter includes: a quantity size of a cache queue for buffering a message; and/or, the foregoing presentation parameter includes at least one of the following: a transparency of a message presentation layer, and a message presentation layer The size, the reminder mode of the message, the way the message is presented, the location where the message is presented, the time the message is presented, the way the message is hidden, and the way the message is read.
- FIG. 6 is a block diagram of a preferred structure of a message transmission apparatus according to an embodiment of the present invention. As shown in FIG. 6, the apparatus includes a cache module 62 and a processing module 64 in addition to all the modules shown in FIG. The device is described.
- the cache module 62 is connected to the second transmission module 42 and configured to cache the message according to the read cache parameter.
- the processing module is configured to perform rendering processing on the cached message according to the read presentation parameter.
- the existing module architecture in the cloud desktop system ie, the virtual machine operating system
- the virtual machine control center VMC including the virtual machine control center VMC and the virtual machine running.
- a transmitting module for adding information corresponding to the first transmitting module 34 and the second transmitting module 42 described above
- a receiving module for information corresponding to the first transmitting module 34 and the second transmitting module 42 described above
- the information presentation processing module corresponding to the above-described reading module 52, caching module 62, and processing module 64).
- a system for communicating between a management console (corresponding to the VMC described above) and a cloud desktop client (corresponding to the client) and a cloud desktop client are provided.
- a system for communicating the system comprising a management control terminal transceiver module (corresponding to the first transmission module 34 described above), a client transceiver module (corresponding to the second transmission module 42 described above) and an information presentation processing module (corresponding to the above The reading module 52, the caching module 62, and the processing module 64).
- a management control terminal transceiver module corresponding to the first transmission module 34 described above
- a client transceiver module corresponding to the second transmission module 42 described above
- an information presentation processing module corresponding to the above
- the reading module 52, the caching module 62, and the processing module 64 The following describes each module:
- the management control terminal transceiver module as an information processing end for communication between the management control terminal and the cloud desktop client, is responsible for collecting the communication information of the administrator and sending it to any client or all clients that the control terminal can perceive;
- Client transceiver module responsible for managing the sending and receiving of messages between the control terminal and the client, and sending and receiving messages between the clients;
- Information presentation processing module as the final presentation module of information processing, it is an important functional module of the system, which is responsible for parsing information packets, which can be compressed, encoded, and encrypted information; responsible for information type distribution, the module can be different The information type is assigned to the corresponding information processor or processing function for processing; the terminal presentation of the responsible information includes text, audio, video, and the like.
- FIG. 7 is a management data according to an embodiment of the present invention. A schematic diagram of the logic flow is shown, as shown in FIG. 7, the process includes the following steps:
- the sending end initializes the sending module in the management control terminal transceiver module
- the receiving end initializes the receiving module in the client transceiver module, and the parsing module and the information presentation processing module in the client for parsing the message data, the client
- the related configuration can be read, including the size of the queue of the received message cache, the transparency of the message presentation layer, the direction in which the message can be scrolled, the time when the message disappears automatically, and the position of the window when the message is displayed. Top, bottom, left or right, etc.;
- the sending end establishes a communication link according to the unique ID information of the specified receiving end, and the link is established by using the Main Channel of the SPICE protocol, and may also directly establish a TCP link or a UDP link with the receiving end of the corresponding ID;
- the sending end reads the message data to be sent by the sending end, and can directly edit the information sending or read the stored file, and the message content can be text information, picture information, video information, etc.;
- the sending end encapsulates the information read in the previous step into a message of the Spice Main Channel, or directly sends the message as a Tcp data packet or a Udp data packet to the receiving end;
- the receiving module in the client transceiver module of the receiving end can wait for the message of the sending end based on the event mechanism. When the message arrives at the receiving end, the receiving event is triggered. When the receiving event is received, the parsing module is called to read and parse the message. If the receiving end receiving module is based on The Tcp or the link, the receiving module listens to the designated port, and when a message is sent from the sending end, the corresponding logic is invoked;
- the receiving module of the receiving end transfers the message to the parsing module, and the parsing module strips the information irrelevant information such as the message header, and restores the corresponding information according to the message type: text, picture, video or audio decompression, decoding, etc.
- the information form and the message index is stored in the information cache, waiting for the information presentation processing module to read;
- the information presentation processing module After the parsing module finishes processing the message to the text or the picture or the video data, the information presentation processing module is called to perform processing.
- the information presentation processing module displays the information according to the presentation configuration read when the receiving end is initialized. For example, the text information is sequentially read from the information cache in the order from the upper right corner to the lower right corner, and the summary information is displayed on the right side of the window layer.
- the timeout is 3 seconds
- the message is automatically hidden; the picture information is centered to display the window layer, and is displayed with 80% transparency set in the rendering configuration. After 5 seconds, the layer information is automatically hidden.
- the next one continues to be displayed; the audio information is displayed in the middle of the layer to display the play control bar and the audio type prompt, and the user clicks on the play control to play, and the message prompt is automatically hidden after 3 seconds; the above text, picture, After the video or audio information has timed out, you can also click on the unread information in the window toolbar to view it.
- the above information communication data flow includes the following directions: the information that the management control terminal sends the cloud desktop client; the information that the cloud desktop client sends to the management control terminal; and the information that the cloud desktop client sends to each other;
- the above-mentioned peer-to-peer or broadcast communication includes the following forms: information communication in text form; information communication in voice form; information communication in video form; information communication in the form of text, voice, and video combination.
- the foregoing communication information is displayed in the following form: in the cloud desktop client window, in the form of a layer having a transparency attribute; in the cloud desktop client terminal, the audio device is displayed;
- the above layer display method includes: covering the client window with a transparent layer as a whole, and the client is far away.
- the image related to the protocol is displayed in parallel with the communication information in different Z-sequence layers; the layer portion with a certain transparency floats above the client window, and the layer can float on the top, bottom, left, and right of the client window. , intermediate position;
- the above layer can terminate the display.
- the termination method includes: automatically disappears when the specified time is reached; the layer is closed manually; the layer information disappears after rotating or rotating in a certain direction;
- the trigger mode displayed by the above audio device includes: the information arrives at the automatic play; the information arrives to prompt the user to play.
- the foregoing sending module of the virtual machine management control terminal may be implemented in one piece with the VMC, or may be implemented in the host where the virtual machine is located, and the effect is the same.
- the function is to identify the terminal virtual machine and then send or receive information. .
- the information display of the terminal client can be implemented by using a layer method based on the client program, or processed in a manner of processing in the virtual machine display channel, and its function is parallel display of the communication information and the virtual machine surface picture.
- FIG. 8 is a schematic diagram of a single communication of a management control terminal to a PC client according to an embodiment of the present invention. As shown in Figure 8, one-way communication from the management console to the PC client can be implemented in a technology architecture based on XEN virtualization:
- the system includes a management console sending module, a client receiving module, an information processing module, and an information presenting module (corresponding to the processing module 64 described above).
- the management control terminal sending module is configured to send a text message for notifying the end user of the personal computer (Personal Computer, PC for short) to be sent to the client receiving module through the message queue and the remote link protocol SPICE channel message link on the virtual machine control end. deal with;
- the client receiving module After receiving the link information, the client receiving module forwards the information to the information processing module, and the information processing module identifies the source and type of the information.
- the type refers to whether the information is text information or information such as pictures, audio and video, and is referred to as text in this embodiment.
- Information creating and allocating corresponding resources, including a buffer area for each piece of information, a timer for text looming, and the like;
- the information presentation module presents the information parsed by the information processing module, and the transparent semi-transparent layer is half-covered and the window is wide at the top of the current presentation interface window, and the text information is uniformly distributed from the right side of the layer to the left end of the layer, and the text information is repeated. After 3 times, the layer disappears, and the time when the character is repeatedly displayed is controlled by the timer.
- the scrolling speed of the text scrolling corresponds to the time interval of the timer.
- this kind of presentation is just an example, and can also be presented by other presentation methods.
- the above process completes the process of sending information from the management console to the PC client for presentation.
- Figure 8 can also be expressed as a one-way communication from the management console to the mobile client in a technology architecture based on XEN virtual machine:
- the system includes a management control terminal sending module, a mobile client receiving module, an information processing module, and an information presentation module (corresponding to the processing module 64 described above).
- the management control terminal sending module is configured to send a text message for notifying the mobile client user to perform the upgrade, and send the text message to the mobile client receiving module through the message queue and the remote link protocol SPICE channel message link on the virtual machine control end;
- the mobile client receiving module After receiving the link information, the mobile client receiving module forwards the information to the information processing module, and the information processing module identifies the source and type of the information, and the type refers to whether the information is text information or information such as pictures, audio and video, and is referred to in this embodiment.
- Text information, the creation and allocation of corresponding resources, the resource includes a buffer area for each piece of information, a timer for text looming, etc.;
- the information presentation module presents the information parsed by the information processing module, and the transparent semi-transparent layer is half-covered and the window is wide at the top of the current presentation interface window, and the text information is uniformly distributed from the right side of the layer to the left end of the layer, and the text information is repeated. After 3 times, the layer disappears, and the time when the character is repeatedly displayed is controlled by the timer.
- the scrolling speed of the text scrolling corresponds to the time interval of the timer.
- this kind of presentation is just an example, and can also be presented by other presentation methods.
- the vibration function of the mobile terminal can be activated to prompt the user to activate the terminal breathing light and display a notification message in the task bar when there is information that the user does not confirm.
- the above process completes the process of sending information from the management console to the mobile client for presentation.
- FIG. 9 is a schematic diagram of a two-way communication display between a PC client and a mobile client according to an embodiment of the present invention. The following description will be made with reference to FIG. 9:
- This embodiment is mainly used to describe that the sending module for sending information is not only limited to the control end, but also can set the sending module in the client. After the sending module is respectively placed on different clients, the information can be realized between the clients.
- the sending and receiving may also include sending information from the client to the management console.
- the PC client includes a client sending module, a client receiving module, an information processing module, and an information presenting module.
- the PC client sending module edits or reads the information carried in the message, it is first sent to the management control end, and then By The management console routes information to the destination client.
- the client receiving module of the destination client After receiving the link information, the client receiving module of the destination client forwards the information to the information processing module, and the information processing module identifies the source and type of the information, and the type refers to whether the information is text information or information such as pictures, audio and video, and is referred to in this embodiment.
- Text information, the creation and allocation of corresponding resources, the resource includes a buffer area for each piece of information, a timer for text looming, etc.;
- the vibration function of the destination terminal can be activated to prompt the user to activate the terminal breathing light and display a notification message in the task bar when there is information that the user does not confirm.
- the above process completes the process of sending information from the PC client to the destination client for presentation.
- FIG. 10 is a first schematic diagram of a presentation layer of information according to an embodiment of the present invention.
- the information may be picture information or video information
- the information presentation module creates a full coverage semi-transparent image on the client window.
- Layer the information presentation process does not affect the display of the virtual machine remote image in the client window. The user can understand the communication information while operating the cloud desktop virtual machine, and the layer disappears after the information display or playback is completed.
- FIG. 11 is a schematic diagram 2 of a presentation layer of information according to an embodiment of the present invention.
- the information may be text information
- the information presentation module creates a semi-covered semi-transparent layer on the client window.
- the rendering process does not affect the display of the remote image of the virtual machine in the client window.
- the user can understand the communication information while operating the cloud desktop, and the layer message is displayed after the information is displayed.
- the embodiment of the present invention overcomes the shortcomings of the cloud desktop system in the related art for real-time information communication and is still based on the software installed in the operating system, so that the administrator and the cloud desktop virtual machine terminal user do not need to be at the cloud desktop virtual machine operating system.
- information communication can be realized without installing special communication software on the cloud desktop virtual machine operating system;
- the central processing unit which is required by the communication software to occupy the cloud desktop virtual operating system, is reduced.
- memory and other resources solve the communication software window interface occupying the screen display area, the user needs to perform appropriate size adjustment or looming adjustment with other windows that need to be displayed, so that the communication interface is displayed in parallel with other windows.
- the embodiment of the present invention can effectively solve the problem that the terminal user cannot timely guarantee to the system management personnel when the cloud desktop virtual machine system fails, so that the terminal user can effectively describe the fault problem to the system administrator, and the system simultaneously
- the terminal user can also directly receive the perception.
- the problem that the end user has a few seconds of black screen when logging in to the virtual machine through the cloud desktop virtual machine client connection does not have any interactive prompts or static fixed prompt information, so that the cloud desktop virtual machine management terminal and the cloud desktop virtual machine are virtualized.
- the client has an effective, easy-to-use and extensible interactive communication method, which can use the link time of the black screen to push valuable information to the end user.
- the mobile terminal can also interact with the cloud desktop management terminal, and the management terminal can send/push information such as weather, advertisement, login status, performance, etc. to the end user, and the mobile terminal user reports the location and fault light information to the cloud desktop management. end.
- each of the above modules may be implemented by software or hardware.
- the foregoing may be implemented by, but not limited to, the foregoing modules are all located in the same processor; or, the modules are located in multiple In the processor.
- Embodiments of the present invention also provide a storage medium.
- the foregoing storage medium may be configured to store program code for performing the following steps:
- the virtual machine control center VMC establishes a link for performing message transmission with the client, where the client is used to link and operate the virtual machine.
- the VMC performs message transmission with the client according to the established link.
- the storage medium is further arranged to store program code for performing the following steps:
- the client performs message transmission with the VMC according to the link established by the virtual machine control center VMC, where the client is used to link and operate the virtual machine.
- the foregoing storage medium may include, but is not limited to, a USB flash drive, a Read-Only Memory (ROM), and a Random Access Memory (RAM).
- ROM Read-Only Memory
- RAM Random Access Memory
- the various modules or steps of the present invention described above can be used with general calculations.
- the devices are implemented, they may be centralized on a single computing device, or distributed over a network of multiple computing devices, optionally they may be implemented in program code executable by the computing device, such that they may be stored Executed by the computing device in a storage device, and in some cases, the steps shown or described may be performed in an order different than that herein, or separately fabricated into individual integrated circuit modules, or Multiple modules or steps are made into a single integrated circuit module.
- the invention is not limited to any specific combination of hardware and software.
- the message transmission method and apparatus provided by the embodiments of the present invention have the following beneficial effects: the solution to the virtual technology operating system is not in the running state or the virtual machine operating system is abnormal, and cannot be virtualized.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供了一种消息传输方法及装置,其中,该方法包括:虚拟机控制中心VMC建立与客户端之间进行消息传输的链路,其中,该客户端用于链接和操作虚拟机;上述VMC根据建立的链路与客户端进行消息传输。通过本发明,解决了相关技术中存在的当虚拟机操作系统未处于运行状态或虚拟机操作系统运行异常时,无法与虚拟机控制中心进行正常通信的问题,进而达到了在虚拟机操作系统未处于运行状态时,与虚拟机控制中心进行通信的效果。
Description
本发明涉及通信领域,具体而言,涉及一种消息传输方法及装置。
云桌面系统由于其节能、设备更换频率低、在外办公便捷、维护方便、信息安全等优点而逐渐成为替代物理计算机的新选择。云桌面虚拟机利用模拟的硬件和操作系统运行环境进行物理计算机功能模拟,保留用户在物理计算机上的使用习惯,使用户习惯可以无缝隙的从物理计算机迁移到虚拟计算机。
当前的虚拟机从功能角度来看主要是物理计算机功能的云端实现,用户通过即时通讯工具进行信息的沟通交流,主要还是通过安装在计算机上的应用软件,需要操作系统处于运行状态。
由于通信软件依赖操作系统运行,一方面占用虚拟计算机操作系统的资源,另一方面通信软件一般具有窗口界面,窗口界面占用屏幕显示面积,用户需要与其它需要进行显示的窗口进行适当的大小调整或者隐现调整,无法使通信界面与其他窗口并行显示,用户不可避免要进行影响工作效率的窗口切换操作。
另外当前云桌面系统还会存在一定运行故障,故障发生时终端用户没有方便有效的方式向系统管理人员报障或者求助,同时系统管理人员有重要信息需要推送给终端用户时,也没有简单直接的方法让终端用户接收感知。由此可知,在相关技术中,若虚拟机操作系统未处于运行状态,则无法与虚拟机控制中心(Virtual Machine Control Center,简称为VMC)进行通信。
针对相关技术中存在的当虚拟机操作系统未处于运行状态或虚拟机操作系统运行异常时,无法与虚拟机控制中心进行正常通信的问题,目前尚未提出有效的解决方案。
发明内容
本发明提供了一种消息传输方法及装置,以至少解决相关技术中存在的当虚拟机操作系统未处于运行状态或虚拟机操作系统运行异常时,无法与虚拟机控制中心进行正常通信的问题。
根据本发明的一个方面,提供了一种消息传输方法,包括:虚拟机控制中心VMC建立与客户端之间进行消息传输的链路,其中,所述客户端用于链接和操作虚拟机;所述VMC根据建立的所述链路与所述客户端进行消息传输。
可选地,所述VMC建立与所述客户端之间进行消息传输的所述链路包括以下至少之一:
所述VMC根据所述客户端的标识ID信息,利用简单协议独立计算环境SPICE协议的主要通道Main Channel建立与所述客户端之间进行消息传输的所述链路;所述VMC根据所述客户端的标识ID信息,建立与所述客户端之间进行消息传输的传输控制协议TCP链路;所述VMC根据所述客户端的标识ID信息,建立与所述客户端之间进行消息传输的用户数据报协议UDP链路。
可选地,所述VMC根据建立的所述链路与所述客户端进行消息传输包括:当所述链路为利用所述SPICE协议的Main Channel建立的链路时,所述VMC将需要发送的消息封装成SPICE Main Channel类型的消息并将封装后的消息发送给所述客户端,和/或,所述VMC接收所述客户端发送的SPICE Main Channel类型的消息;当所述链路为TCP链路时,所述VMC将需要发送消息封装成TCP类型的消息并将封装后的消息发送给所述客户端,和/或,所述VMC接收所述客户端发送的TCP类型的消息;当所述链路为UDP链路时,所述VMC将需要发送消息封装成UDP类型的消息并将封装后的消息发送给所述客户端,和/或,所述VMC接收所述客户端发送的UDP类型的消息。
根据本发明的另一方面,提供了一种消息传输方法,包括:客户端根据由虚拟机控制中心VMC建立的链路与所述VMC进行消息传输,其中,所述客户端用于链接和操作虚拟机。
可选地,所述链路包括如下至少之一:根据所述客户端的标识ID信息,利用简单协议独立计算环境SPICE协议的主要通道Main Channel建立的链路;根据所述客户端的标识ID信息,建立的传输控制协议TCP链路;根据所述客户端的标识ID信息,建立的用户数据报协议UDP链路。
可选地,所述客户端根据所述VMC建立的所述链路与所述VMC进行消息传输包括:当所述链路为利用所述SPICE协议的Main Channel建立的链路时,所述客户端将需要发送的消息封装成SPICE Main Channel类型的消息并将封装后的消息发送给所述VMC,和/或,所述客户端接收所述VMC发送的SPICE Main Channel类型的消息;当所述链路为TCP链路时,所述客户端将需要发送的消息封装成TCP类型的消息并将封装后的消息发送给所述VMC,和/或,所述客户端接收所述VMC发送的TCP类型的消息;当所述链路为UDP链路时,所述客户端将需要发送的消息封装成UDP类型的消息并将封装后的消息发送给所述VMC,和/或,所述客户端接收所述VMC发送的UDP类型的消息。
可选地,所述客户端根据所述VMC建立的所述链路与所述VMC进行消息传输包括:所述客户端根据所述VMC建立的所述链路向所述VMC发送消息和/或所述客户端根据所述VMC建立的所述链路接收所述VMC发送的消息,其中,当所述客户端根据所述VMC建立的所述链路接收所述VMC发送的消息之前,还包括:所述客户端读取所述客户端中的用于缓存所述消息的缓存参数和呈现所述消息的呈现参数。
可选地,所述缓存参数包括:用于缓存所述消息的缓存队列的数量大小;和/或,所述呈现参数包括以下至少之一:消息呈现图层的透明度、消息呈现图层的大小、消息的呈现提醒方式、消息的呈现方式、消息的呈现位置、消息的呈现时间、消息的隐藏方式、消息的读取
方式。
可选地,当所述客户端根据所述VMC建立的所述链路接收所述VMC发送的消息之后,还包括:所述客户端根据读取的所述缓存参数缓存所述消息;所述客户端根据读取的所述呈现参数对缓存的所述消息进行呈现处理。
根据本发明的另一方面,提供了一种消息传输装置,所述装置应用于虚拟机控制中心VMC中,包括:建立模块,设置为建立与客户端之间进行消息传输的链路,其中,所述客户端用于链接和操作虚拟机;第一传输模块,设置为根据建立的所述链路与所述客户端进行消息传输。
可选地,所述建立模块包括以下至少之一:根据所述客户端的标识ID信息,利用简单协议独立计算环境SPICE协议的主要通道Main Channel建立与所述客户端之间进行消息传输的所述链路;根据所述客户端的标识ID信息,建立与所述客户端之间进行消息传输的传输控制协议TCP链路;根据所述客户端的标识ID信息,建立与所述客户端之间进行消息传输的用户数据报协议UDP链路。
可选地,所述第一传输模块包括:当所述链路为利用所述SPICE协议的Main Channel建立的链路时,将需要发送的消息封装成SPICE Main Channel类型的消息并将封装后的消息发送给所述客户端,和/或,接收所述客户端发送的SPICE Main Channel类型的消息;当所述链路为TCP链路时,将需要发送消息封装成TCP类型的消息并将封装后的消息发送给所述客户端,和/或,接收所述客户端发送的TCP类型的消息;当所述链路为UDP链路时,将需要发送消息封装成UDP类型的消息并将封装后的消息发送给所述客户端,和/或,接收所述客户端发送的UDP类型的消息。
根据本发明的另一方面,提供了一种消息传输装置,所述装置应用于客户端中,包括:第二传输模块,设置为根据由虚拟机控制中心VMC建立的链路与所述VMC进行消息传输,其中,所述客户端用于链接和操作虚拟机。
可选地,所述链路包括如下至少之一:根据所述客户端的标识ID信息,利用简单协议独立计算环境SPICE协议的主要通道Main Channel建立的链路;根据所述客户端的标识ID信息,建立的传输控制协议TCP链路;根据所述客户端的标识ID信息,建立的用户数据报协议UDP链路。
可选地,所述第二传输模块包括:当所述链路为利用所述SPICE协议的Main Channel建立的链路时,将需要发送的消息封装成SPICE Main Channel类型的消息并将封装后的消息发送给所述VMC,和/或,接收所述VMC发送的SPICE Main Channel类型的消息;当所述链路为TCP链路时,将需要发送的消息封装成TCP类型的消息并将封装后的消息发送给所述VMC,和/或,接收所述VMC发送的TCP类型的消息;当所述链路为UDP链路时,将需要发送的消息封装成UDP类型的消息并将封装后的消息发送给所述VMC,和/或,接收所述VMC发送的UDP类型的消息。
可选地,所述第二传输模块包括:根据所述VMC建立的所述链路向所述VMC发送消息和/或所述客户端根据所述VMC建立的所述链路接收所述VMC发送的消息,所述装置还包括:读取模块,设置为在根据所述VMC建立的所述链路接收所述VMC发送的消息之前,读取用于缓存所述消息的缓存参数和呈现所述消息的呈现参数。
可选地,所述缓存参数包括:用于缓存所述消息的缓存队列的数量大小;和/或,所述呈现参数包括以下至少之一:消息呈现图层的透明度、消息呈现图层的大小、消息的呈现提醒方式、消息的呈现方式、消息的呈现位置、消息的呈现时间、消息的隐藏方式、消息的读取方式。
可选地,所述装置还包括:缓存模块,设置为根据读取的所述缓存参数缓存所述消息;处理模块,设置为根据读取的所述呈现参数对缓存的所述消息进行呈现处理。
本发明另一实施例提供了一种计算机存储介质,所述计算机存储介质存储有执行指令,所述执行指令用于执行上述实施例中的方法。
通过本发明,采用虚拟机控制中心VMC建立与客户端之间进行消息传输的链路,其中,所述客户端用于链接和操作虚拟机;所述VMC根据建立的所述链路与所述客户端进行消息传输,实现了VMC与客户端之间的消息传输,并且,VMC与客户端之间的通信与虚拟操作系统的运行与否是没有关系的。从而解决了相关技术中存在的当虚拟机操作系统未处于运行状态或虚拟机操作系统运行异常时,无法与虚拟机控制中心进行正常通信的问题,进而达到了在虚拟机操作系统未处于运行状态或虚拟机操作系统运行异常时,也能与虚拟机控制中心进行正常通信的效果。
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的消息传输方法的流程图一;
图2是根据本发明实施例的消息传输方法的流程图二;
图3是根据本发明实施例的消息传输装置的结构框图一;
图4是根据本发明实施例的消息传输装置的结构框图二;
图5是根据本发明实施例的消息传输装置的优选结构框图一;
图6是根据本发明实施例的消息传输装置的优选结构框图二;
图7是根据本发明实施例的管理数据显示逻辑流程示意图;
图8是根据本发明实施例的管理控制端向PC客户端单项通信的示意图;
图9是根据本发明实施例的PC客户端与移动客户端之间双向通信显示的示意图;
图10是根据本发明实施例的信息的呈现图层的示意图一;
图11是根据本发明实施例的信息的呈现图层的示意图二。
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
在本实施例中提供了一种消息传输方法,图1是根据本发明实施例的消息传输方法的流程图一,如图1所示,该流程包括如下步骤:
步骤S102,虚拟机控制中心VMC建立与客户端之间进行消息传输的链路,其中,该客户端用于链接和操作虚拟机;
步骤S104,上述VMC根据建立的链路与客户端进行消息传输。
通过上述步骤,VMC建立与客户端之间进行消息传输的链路,从而利用该链路与客户端之间进行消息传输,消息的传输包括发送消息和接收消息,以VMC作为中间媒介可以实现不同的客户端之间消息的传输。并且,VMC与客户端之间通过链路进行通信与虚拟操作系统的运行与否是没有关系的,从而可以在实现在虚拟操作系统没有运行的情况或虚拟机操作系统运行异常的情况下下仍然可以实现VMC与客户端之间的消息的正常传输。解决了相关技术中存在的当虚拟机操作系统未处于运行状态或虚拟机操作系统运行异常时,无法与虚拟机控制中心进行正常通信的问题,进而达到了在虚拟机操作系统未处于运行状态或虚拟机操作系统运行异常时,与虚拟机控制中心进行正常通信的效果。
上述的客户端可以包括计算机上安装的客户端,也可以包括手机上安装的客户端,通过上述的实施例可以实现云桌面系统的管理控制模块(同上述的VMC)与云桌面客户端模块(即,计算机上安装的客户端)之间的点对点或者广播式交互,云桌面系统的管理控制模块与移动手机客户端模块(即,手机上安装的客户端)之间的点对点或者广播式交互,以及云桌面客户端模块之间进行点对点或者广播式的沟通系统和方法。
在一个可选的实施例中,上述的VMC建立与客户端之间进行消息传输的链路包括以下至少之一:该VMC根据客户端的标识(Identity,简称为ID)信息,利用简单协议独立计算环境(Simple Protocol for Independent Computing Environment,简称为SPICE)协议的主要通道Main Channel建立与客户端之间进行消息传输的链路;该VMC根据客户端的标识ID信息,建立与客户端之间进行消息传输的传输控制协议传输控制协议(Transfer Control Protocol,简称为TCP)链路;该VMC根据客户端的标识ID信息,建立与客户端之间进行消息传输的用
户数据报协议(User Datagram Protocol,简称为UDP)链路。上述几种链路仅是示例,还可以通过建立其他类型的链路进行二者之间的消息传输。
在一个可选的实施例中,上述VMC根据建立的链路与客户端进行消息传输包括:当上述链路为利用SPICE协议的Main Channel建立的链路时,该VMC将需要发送的消息封装成SPICE Main Channel类型的消息并将封装后的消息发送给客户端,和/或,该VMC接收客户端发送的SPICE Main Channel类型的消息;当上述链路为TCP链路时,该VMC将需要发送消息封装成TCP类型的消息并将封装后的消息发送给客户端,和/或,该VMC接收客户端发送的TCP类型的消息;当该链路为UDP链路时,该VMC将需要发送消息封装成UDP类型的消息并将封装后的消息发送给客户端,和/或,该VMC接收客户端发送的UDP类型的消息。
图2是根据本发明实施例的消息传输方法的流程图二,如图2所示,该流程包括如下步骤:
步骤S202,客户端根据由虚拟机控制中心VMC建立的链路与VMC进行消息传输,其中,该客户端用于链接和操作虚拟机。
通过上述步骤,客户端利用由VMC建立的用于该VMC与客户端之间进行消息传输的链路,与VMC之间进行消息传输,并且,客户端与VMC之间通过链路进行通信与虚拟操作系统的运行与否是没有关系的,从而可以在实现在虚拟操作系统没有运行的情况下仍然可以实现客户端与VMC之间的消息传输。解决了相关技术中存在的当虚拟机操作系统未处于运行状态或虚拟机操作系统运行异常时,无法与虚拟机控制中心进行正常通信的问题,进而达到了在虚拟机操作系统未处于运行状态或虚拟机操作系统运行异常时,与虚拟机控制中心进行正常通信的效果。
在一个可选的实施例中,上述链路包括如下至少之一:根据客户端的标识ID信息,利用简单协议独立计算环境SPICE协议的主要通道Main Channel建立的链路;根据客户端的标识ID信息,建立的传输控制协议TCP链路;根据客户端的标识ID信息,建立的用户数据报协议UDP链路。
在一个可选的实施例中,上述客户端根据VMC建立的链路与VMC进行消息传输包括:当上述链路为利用SPICE协议的Main Channel建立的链路时,该客户端将需要发送的消息封装成SPICE Main Channel类型的消息并将封装后的消息发送给VMC,和/或,该客户端接收VMC发送的SPICE Main Channel类型的消息;当上述链路为TCP链路时,该客户端将需要发送的消息封装成TCP类型的消息并将封装后的消息发送给VMC,和/或,该客户端接收VMC发送的TCP类型的消息;当上述链路为UDP链路时,该客户端将需要发送的消息封装成UDP类型的消息并将封装后的消息发送给VMC,和/或,该客户端接收VMC发送的UDP类型的消息。
在一个可选的实施例中,上述客户端根据VMC建立的链路与VMC进行消息传输包括:上述客户端根据VMC建立的链路向VMC发送消息和/或该客户端根据上述VMC建立的链路接收VMC发送的消息,其中,当该客户端根据上述VMC建立的链路接收VMC发送的消息
之前,还包括:该客户端读取客户端中的用于缓存消息的缓存参数和呈现消息的呈现参数。从而可以依据缓存参数和呈现参数对接收到的消息进行缓存和呈现。
在一个可选的实施例中,上述缓存参数包括:用于缓存消息的缓存队列的数量大小;和/或,上述呈现参数包括以下至少之一:消息呈现图层的透明度、消息呈现图层的大小、消息的呈现提醒方式、消息的呈现方式、消息的呈现位置、消息的呈现时间、消息的隐藏方式、消息的读取方式。下面对上述呈现参数中的具体内容进行举例说明:消息呈现图层的透明度可以设置为70%、80%或其他透明度,对消息的呈现图层设置透明度后可以保证消息的呈现图层和终端本身需要呈现的界面共存,二者互相不会相互影响。消息呈现图层的大小可以包括消息呈现图层与终端界面一样大,或者占终端界面的一部分,其中,该消息呈现图层也是可以分区域的。消息的呈现提醒方式可以包括当有未读的消息时,通过在窗口工具栏进行闪烁的方式进行提醒。消息的呈现方式可以包括消息按照从右上角到左下角的顺序进行呈现,或者按照从左到右的顺序进行呈现,或者按照从左下角到右上角的顺序进行呈现等等,且不同的消息可以按照不同的呈现方式进行呈现。消息的呈现位置可以包括显示消息的具体位置,可以包括在终端界面的正中间的位置进行呈现,或者在终端界面的上半部分进行呈现,或者在终端界面上没有布局图标的位置进行呈现等等。消息的呈现时间可以包括消息从开始显示到消失的时间,也可以包括不同的消息之间呈现的间隔时间(如,第一条消息消失后3S再显示第二条消息),还可以包括消息呈现图层从开始出现到消失的时间。消息的隐藏方式包括消息呈现之后以何种方式隐藏,例如可以是飞出式隐藏,或者是消融式隐藏,或者以其他的方式进行隐藏。消息的读取方式包括接收到消息后,如何读取该消息,可以包括通过接收点击信号读取该消息,或者通过输入预定的指令读取该消息等等。
在一个可选的实施例中,当上述客户端根据VMC建立的链路接收VMC发送的消息之后,还包括:该客户端根据读取的缓存参数缓存上述消息;该客户端根据读取的呈现参数对缓存的上述消息进行呈现处理。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种消息传输装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图3是根据本发明实施例的消息传输装置的结构框图一,该装置可以应用于虚拟机控制中心VMC中,如图3所示,该装置包括建立模块32和第一传输模块34,下面对该装置进行说明。
建立模块32,设置为建立与客户端之间进行消息传输的链路,其中,该客户端用于链接和操作虚拟机;第一传输模块34,连接至上述建立模块32,设置为根据建立的上述链路与客户端进行消息传输。
在一个可选的实施例中,上述建立模块32可以包括以下至少之一:根据客户端的标识ID信息,利用简单协议独立计算环境SPICE协议的主要通道Main Channel建立与客户端之间进行消息传输的链路;根据客户端的标识ID信息,建立与客户端之间进行消息传输的传输控制协议TCP链路;根据客户端的标识ID信息,建立与客户端之间进行消息传输的用户数据报协议UDP链路。
在一个可选的实施例中,上述第一传输模块34包括:当上述链路为利用SPICE协议的Main Channel建立的链路时,将需要发送的消息封装成SPICE Main Channel类型的消息并将封装后的消息发送给客户端,和/或,接收客户端发送的SPICE Main Channel类型的消息;当上述链路为TCP链路时,将需要发送消息封装成TCP类型的消息并将封装后的消息发送给客户端,和/或,接收客户端发送的TCP类型的消息;当上述链路为UDP链路时,将需要发送消息封装成UDP类型的消息并将封装后的消息发送给客户端,和/或,接收客户端发送的UDP类型的消息。
图4是根据本发明实施例的消息传输装置的结构框图二,该装置可以应用于客户端中,如图4所示,该装置包括第二传输模块42,下面对该装置进行说明。
第二传输模块42,设置为根据由虚拟机控制中心VMC建立的链路与VMC进行消息传输,其中,该客户端用于链接和操作虚拟机。
在一个可选的实施例中,上述链路包括如下至少之一:根据客户端的标识ID信息,利用简单协议独立计算环境SPICE协议的主要通道Main Channel建立的链路;根据客户端的标识ID信息,建立的传输控制协议TCP链路;根据客户端的标识ID信息,建立的用户数据报协议UDP链路。
在一个可选的实施例中,上述第二传输模块42包括:当上述链路为利用SPICE协议的Main Channel建立的链路时,将需要发送的消息封装成SPICE Main Channel类型的消息并将封装后的消息发送给VMC,和/或,接收VMC发送的SPICE Main Channel类型的消息;当上述链路为TCP链路时,将需要发送的消息封装成TCP类型的消息并将封装后的消息发送给VMC,和/或,接收VMC发送的TCP类型的消息;当上述链路为UDP链路时,将需要发送的消息封装成UDP类型的消息并将封装后的消息发送给VMC,和/或,接收VMC发送的UDP类型的消息。
在一个可选的实施例中,上述第二传输模块42包括:根据VMC建立的链路向VMC发送消息和/或上述客户端根据VMC建立的链路接收VMC发送的消息。图5是根据本发明实施例的消息传输装置的优选结构框图一,如图5所示,该装置除包括图4所示的所有模块外,还包括读取模块52,下面对该装置进行说明。读取模块52,连接至上述第二传输模块42,设置为在根据VMC建立的链路接收VMC发送的消息之前,读取用于缓存消息的缓存参数和呈
现消息的呈现参数。
在一个可选的实施例中,上述缓存参数包括:用于缓存消息的缓存队列的数量大小;和/或,上述呈现参数包括以下至少之一:消息呈现图层的透明度、消息呈现图层的大小、消息的呈现提醒方式、消息的呈现方式、消息的呈现位置、消息的呈现时间、消息的隐藏方式、消息的读取方式。
图6是根据本发明实施例的消息传输装置的优选结构框图二,如图6所示,该装置除包括图5所示的所有模块外,还包括缓存模块62和处理模块64,下面对该装置进行说明。
缓存模块62,连接至上述第二传输模块42,设置为根据读取的缓存参数缓存上述消息;处理模块,设置为根据读取的呈现参数对缓存的消息进行呈现处理。
通过上述的实施例可知,为了解决相关技术中存在的问题,本发明实施例中利用云桌面系统(即,虚拟机操作系统)中已有的模块架构,包括虚拟机控制中心VMC、虚拟机运行主机HOST以及虚拟机链接终端CLIENT,以及该架构已有的数据链路。在此架构基础上增加信息的发送模块(对应于上述的第一传输模块34、第二传输模块42),信息的接收模块(对应于上述的第一传输模块34、第二传输模块42)和信息呈现处理模块(对应于上述的读取模块52、缓存模块62和处理模块64)。
下面结合实施例对本发明的技术方案继续进行说明:需要说明的是,下述中所涉及到的“信息”均可以是上述的“消息”中携带的信息。
本发明实施例中提供了一种基于云桌面系统的管理控制端(对应于上述的VMC)与云桌面客户端(对应于上述的客户端)之间进行通信的系统以及云桌面客户端之间进行通信的系统,该系统包含管理控制端收发模块(对应于上述的第一传输模块34),客户端收发模块(对应于上述的第二传输模块42)和信息呈现处理模块(对应于上述的读取模块52、缓存模块62和处理模块64)。下面对各模块进行说明:
管理控制端收发模块:作为管理控制端与云桌面客户端之间进行通信的信息处理端,负责收集管理员的通信信息并发送到该控制端能感知到的任意某客户端或者所有客户端;
客户端收发模块:负责管理控制端与客户端之间消息的收发,以及客户端之间消息的收发;
信息呈现处理模块:作为信息处理的最终呈现模块,是系统的重要功能模块,负责解析信息包,该信息包可以是压缩、编码、加密后的信息;负责信息类型的分发,该模块可以对不同的信息类型指派到对应的信息处理器或者处理函数进行处理;负责信息的终端呈现包括文字、音频、视频等。
其中,由发送端(即上述的VMC)编辑消息数据向接收端(即上述的客户端)发送并由接收端呈现信息的逻辑过程可以参考图7,图7是根据本发明实施例的管理数据显示逻辑流程示意图,如图7所示,该流程包括如下步骤:
S702,发送端启动时初始化管理控制端收发模块中的发送模块,同时接收端初始化客户端收发模块中的接收模块、以及客户端中的用于解析消息数据的解析模块和信息呈现处理模块,客户端初始化时可以读取相关的配置,包含接收消息缓存队列的数量大小,消息呈现图层的透明度、消息展现时可滚动的方向,消息展现后自动消失的时间、消息展现时位于窗口的位置,顶部、底部、左侧或者右侧等;
S704,发送端根据指定的接收端的唯一ID信息,建立通信链路,链路借助SPICE协议的Main Channel建立,此外还可以直接与对应ID的接收端建立TCP链路或者UDP链路;
S706,发送端读取发送端待发送的消息数据,可直接编辑信息发送也可以读取已存文件,消息内容可以是文字信息、图片信息、视频信息等;
S708,发送端将上一步读取的信息封装成Spice Main Channel的消息,或者直接发送为Tcp数据包或者Udp数据包发送给接收端;
S710,接收端的客户端收发模块中的接收模块可以基于事件机制等待发送端的消息,当消息到达接收端后触发接收事件,接收事件则调用解析模块读取并解析消息,如果接收端接收模块是基于Tcp或者链路,则接收模块监听指定端口,有消息从发送端发送过来时,调用相应逻辑处理;
S712,接收端的接收模块将消息转给解析模块,解析模块剥除消息头等信息无关的数据,根据数据包携带的消息类型:文字、图片、视频或者音频等解压缩、解码等操作还原为相应的信息形式并将消息索引存入信息缓存中,等待信息呈现处理模块读取;
S714,解析模块处理完毕将消息还原为文字或者图片或者视频数据后,调用信息呈现处理模块进行处理。信息呈现处理模块根据接收端初始化时读取的呈现配置进行展示信息,例如文字信息按照从右上角到右下角的顺序依次从信息缓存中读取出来,将概要信息展示在窗口图层右侧,超时3秒后自动隐藏掉该条消息;图片信息居中显示窗口图层,并以呈现配置中设置的80%透明度展示,超时5秒后自动隐藏该图层信息,如果有多张图片信息,则上一张隐藏后下一张继续展示;音频信息则在图层居中展示播放控制条及音频类型提示,用户点击播放控制后进行播放,超时3秒后自动隐藏该消息提示;以上文字、图片、视频或者音频信息超时后,还可以在窗口工具栏中点击未读信息查看。
上述的信息通信数据流包含以下方向:管理控制端发送云桌面客户端的信息;云桌面客户端发送到管理控制端的信息;云桌面客户端之间相互发送的信息;
上述点对点或者广播式的沟通包含以下形式:文字形式的信息沟通;语音形式的信息沟通;视频形式的信息沟通;文字、语音、视频组合形式的信息沟通。
上述沟通信息的展现方式包含以下形式:在云桌面客户端窗口以具有透明度属性的图层形式展现;在云桌面客户端终端的音频设备展现;
上述图层展示方式包含:以某一透明度的图层整体覆盖在客户端窗口上面,客户端中远
程协议相关的图像与该通信信息并行显示在不同的Z序图层;以某一透明度的图层部分漂浮在客户端窗口上面,图层可漂浮在客户端窗口上面顶部,底部,左边,右边,中间等位置;
上述图层可终止展示,终止方式包含:到达指定时间自动消失;人为关闭图层;图层信息按照某个方向飘过或者旋转后消失;
上述音频设备展现的触发方式包含:信息到达自动播放;信息到达提示用户播放。
需要说明的是上述的虚拟机管理控制端的发送模块可以与VMC融合在一块实施,也可以在虚拟机所在主机中实施,其作用效果是一样的,其功能是辨别终端虚拟机然后发送或者接受信息。
终端客户端的信息展示可以使用基于客户端程序上的图层方式实现,或者与虚拟机显示通道中处理的方式处理,其功能是通信信息与虚拟机表面画面的并行显示。
下面结合具体实施例对本发明进行举例说明:
实施例一
图8是根据本发明实施例的管理控制端向PC客户端单项通信的示意图。如图8所示可实现为管理控制端向PC客户端单向通信在基于XEN虚拟化的技术架构中实施:
系统包括管理控制端发送模块,客户端接收模块、信息处理模块和信息呈现模块(对应于上述的处理模块64)。
管理控制端发送模块设置为发送通知个人电脑(Personal Computer,简称为PC)终端用户进行升级的文字信息,在虚拟机控制端通过消息队列、远程链接协议SPICE通道消息链路发送给客户端接收模块处理;
上述的客户端接收模块接收到链路信息后转交给信息处理模块,信息处理模块识别该信息的来源和类型,类型是指信息是文字信息还是图片、音视频等信息,在本实施例中指文字信息,进行相应资源的创建和分配,该资源包括每条信息的缓存区,文字隐现的定时器等;
上述信息呈现模块对信息处理模块解析后的信息进行呈现,在当前展现界面窗口顶部半覆盖与窗口等宽的透明半透明图层,文字信息从图层右边匀速飘到图层左端,文字信息重复3遍后消失,图层隐藏消失,上述文字重复显示的时间与显示的间隔由定时器控制,文字滚动显示时滚动的速度与定时器的时间间隔对应。当然,该种呈现方式仅仅是一种示例,还可以通过其他的呈现方式进行呈现。
上述文字滚动显示后可以根据客户端初始化时的设置自动消失,也可以由用户确认后消失,如果由用户确认,则对于用户未确认的信息会在由定时器指定的时间后暂时隐藏并给与用户图标类的提示,用户点击图标后未确认的信息可以重新显示。
上述流程完成一次信息从管理控制端发送到PC客户端进行呈现的过程。
实施例二
图8还可以表示为管理控制端向移动客户端的单向通信在基于XEN虚机化的技术架构中实施:
系统包括管理控制端发送模块,移动客户端接收模块、信息处理模块和信息呈现模块(对应于上述的处理模块64)。
管理控制端发送模块设置为发送通知移动客户端用户进行升级的文字信息,在虚拟机控制端通过消息队列、远程链接协议SPICE通道消息链路发送给移动客户端接收模块处理;
上述的移动客户端接收模块接收到链路信息后转交给信息处理模块,信息处理模块识别该信息的来源和类型,类型是指信息是文字信息还是图片、音视频等信息,在本实施例中指文字信息,进行相应资源的创建和分配,该资源包括每条信息的缓存区,文字隐现的定时器等;
上述信息呈现模块对信息处理模块解析后的信息进行呈现,在当前展现界面窗口顶部半覆盖与窗口等宽的透明半透明图层,文字信息从图层右边匀速飘到图层左端,文字信息重复3遍后消失,图层隐藏消失,上述文字重复显示的时间与显示的间隔由定时器控制,文字滚动显示时滚动的速度与定时器的时间间隔对应。当然,该种呈现方式仅仅是一种示例,还可以通过其他的呈现方式进行呈现。
上述文字滚动显示后可以根据客户端初始化时的设置自动消失,也可以由用户确认后消失,如果由用户确认,则对于用户未确认的信息会在由定时器指定的时间后暂时隐藏并给与用户图标类的提示,用户点击图标后未确认的信息可以重新显示。
上述信息到达移动客户端后可以启动移动终端的震动功能提示用户,在有用户未确认的信息时可以激活终端呼吸灯并在任务栏显示通知消息。
上述流程完成一次信息从管理控制端发送到移动客户端进行呈现的过程。
实施例三
图9是根据本发明实施例的PC客户端与移动客户端之间双向通信显示的示意图。下面结合图9进行说明:
该实施例主要用于描述用于发送信息的发送模块不仅限制在控制端,还可以在客户端中设置发送模块,在将发送模块分别放在不同的客户端后,客户端之间可以实现信息的收发,还可以包括客户端向管理控制端的信息发送。
该实施例中,PC客户端包括客户端发送模块,客户端接收模块,信息处理模块和信息呈现模块,PC客户端发送模块编辑或者读取消息中携带的信息后首先发送到管理控制端,再由
管理控制端将信息路由到目的客户端。
目的客户端的客户端接收模块接收到链路信息后转交给信息处理模块,信息处理模块识别该信息的来源和类型,类型是指信息是文字信息还是图片、音视频等信息,在本实施例中指文字信息,进行相应资源的创建和分配,该资源包括每条信息的缓存区,文字隐现的定时器等;
上述文字滚动显示后可以根据客户端初始化时的设置自动消失,也可以由用户确认后消失,如果由用户确认,则对于用户未确认的信息会在由定时器指定的时间后暂时隐藏并给与用户图标类的提示,用户点击图标后未确认的信息可以重新显示。
上述信息到达目的客户端后可以启动目的终端的震动功能提示用户,在有用户未确认的信息时可以激活终端呼吸灯并在任务栏显示通知消息。
上述流程完成一次信息从PC客户端发送到目的客户端进行呈现的过程。
实施例四
该实施例中主要描述信息的呈现方式:
图10是根据本发明实施例的信息的呈现图层的示意图一,如图10所示,该信息可以为图片信息或者视频信息,信息呈现模块在客户端窗口之上创建全覆盖的半透明图层,信息呈现过程不影响客户端窗口中虚拟机远程图像的显示,用户可以在操作云桌面虚拟机的同时了解该通信信息,信息展示或者播放完成后该图层消失。
图11是根据本发明实施例的信息的呈现图层的示意图二,如图11所示,该信息可以为文字信息,信息呈现模块在客户端窗口之上创建半覆盖的半透明图层,信息呈现过程不影响客户端窗口中虚拟机远程图像的显示,用户可以在操作云桌面的同时了解该通信信息,信息展示完成后该图层消息。
众所周知,在相关技术中,在使用虚拟客户端连接登陆虚拟机时,都会有数秒的等待时间,在该段时间内客户端屏幕或者是黑屏,没有任何交互性提示,或者是静态固定的提示信息,云桌面的管理控制端与云桌面客户端之间缺少有效、易用、可扩展的交互通信方式。而通过本发明的上述实施例中的方案,由于控制侧与客户端之间建立了消息传输的链路,因此,可以在该等待时间中进行管理控制端与客户端之间的信息的交互,增加了交互的多样性。
同时,采用本发明实施例中的方法和装置,相对于相关技术,取得了突破性的进步,增加了云桌面虚拟机管理员与云桌面终端用户通信的通道,同时提出了信息全新的信息展示方法,提升了终端用户的使用体验,保证系统管理员与终端用户可以相互获取有意义的信息并与现有系统无缝融合。
本发明实施例克服了相关技术中的云桌面系统进行即时信息沟通仍然基于操作系统内部安装的软件缺点,可以使管理员与云桌面虚拟机终端用户不需要在云桌面虚拟机操作系统处
于运行状态,不需要在云桌面虚拟机操作系统上安装特殊通讯软件即能实现信息的通信;
通过本发明中的实施例,由于信息通信不再依赖于云桌面虚拟机操作系统处于运行状态,一方面减少了通信软件需要占用云桌面虚拟操作系统的中央处理器(Central Processing Unit,简称为CPU)、内存等资源,另一方面解决了通信软件窗口界面占用屏幕显示面积,用户需要与其它需要进行显示的窗口进行适当的大小调整或者隐现调整的问题,使通信界面与其他窗口并行显示。
同时,采用本发明中的实施例可以有效解决当前云桌面虚拟机系统运行故障发生时终端用户不能及时向系统管理人员保障的问题,使终端用户可以有效的向系统管理人员描述故障问题,同时系统管理人员有重要信息需要推送给终端用户时,也可以直接让终端用户接收感知。解决了终端用户通过云桌面虚拟机客户端连接登录虚拟机时都有数秒的黑屏,没有任何交互性提示,或者是静态固定的提示信息的问题,使云桌面虚拟机的管理端与云桌面虚拟机的客户端之间具备了有效、易用、可扩展的交互通信方式,可以利用该段黑屏的链接时间推送有价值的信息给终端用户。
还可以实现手机移动终端也能够与云桌面管理端进行信息交互,管理端可以发送/推送天气、广告、登录状态、性能等信息给终端用户,移动终端用户上报位置、故障灯信息给云桌面管理端。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述模块分别位于多个处理器中。
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:
S1,虚拟机控制中心VMC建立与客户端之间进行消息传输的链路,其中,该客户端用于链接和操作虚拟机;
S2,上述VMC根据建立的链路与客户端进行消息传输。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:
S1,客户端根据由虚拟机控制中心VMC建立的链路与VMC进行消息传输,其中,该客户端用于链接和操作虚拟机。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算
装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
如上所述,本发明实施例提供的一种消息传输方法及装置具有以下有益效果:解决了相关技术中存在的当虚拟机操作系统未处于运行状态或虚拟机操作系统运行异常时,无法与虚拟机控制中心进行正常通信的问题,进而达到了在虚拟机操作系统未处于运行状态时,与虚拟机控制中心进行通信的效果。
Claims (18)
- 一种消息传输方法,包括:虚拟机控制中心VMC建立与客户端之间进行消息传输的链路,其中,所述客户端用于链接和操作虚拟机;所述VMC根据建立的所述链路与所述客户端进行消息传输。
- 根据权利要求1所述的方法,其中,所述VMC建立与所述客户端之间进行消息传输的所述链路包括以下至少之一:所述VMC根据所述客户端的标识ID信息,利用简单协议独立计算环境SPICE协议的主要通道Main Channel建立与所述客户端之间进行消息传输的所述链路;所述VMC根据所述客户端的标识ID信息,建立与所述客户端之间进行消息传输的传输控制协议TCP链路;所述VMC根据所述客户端的标识ID信息,建立与所述客户端之间进行消息传输的用户数据报协议UDP链路。
- 根据权利要求2所述的方法,其中,所述VMC根据建立的所述链路与所述客户端进行消息传输包括:当所述链路为利用所述SPICE协议的Main Channel建立的链路时,所述VMC将需要发送的消息封装成SPICE Main Channel类型的消息并将封装后的消息发送给所述客户端,和/或,所述VMC接收所述客户端发送的SPICE Main Channel类型的消息;当所述链路为TCP链路时,所述VMC将需要发送消息封装成TCP类型的消息并将封装后的消息发送给所述客户端,和/或,所述VMC接收所述客户端发送的TCP类型的消息;当所述链路为UDP链路时,所述VMC将需要发送消息封装成UDP类型的消息并将封装后的消息发送给所述客户端,和/或,所述VMC接收所述客户端发送的UDP类型的消息。
- 一种消息传输方法,包括:客户端根据由虚拟机控制中心VMC建立的链路与所述VMC进行消息传输,其中,所述客户端用于链接和操作虚拟机。
- 根据权利要求4所述的方法,其中,所述链路包括如下至少之一:根据所述客户端的标识ID信息,利用简单协议独立计算环境SPICE协议的主要通道Main Channel建立的链路;根据所述客户端的标识ID信息,建立的传输控制协议TCP链路;根据所述客户端的标识ID信息,建立的用户数据报协议UDP链路。
- 根据权利要求5所述的方法,其中,所述客户端根据所述VMC建立的所述链路与所述VMC进行消息传输包括:当所述链路为利用所述SPICE协议的Main Channel建立的链路时,所述客户端将需要发送的消息封装成SPICE Main Channel类型的消息并将封装后的消息发送给所述VMC,和/或,所述客户端接收所述VMC发送的SPICE Main Channel类型的消息;当所述链路为TCP链路时,所述客户端将需要发送的消息封装成TCP类型的消息并将封装后的消息发送给所述VMC,和/或,所述客户端接收所述VMC发送的TCP类型的消息;当所述链路为UDP链路时,所述客户端将需要发送的消息封装成UDP类型的消息并将封装后的消息发送给所述VMC,和/或,所述客户端接收所述VMC发送的UDP类型的消息。
- 根据权利要求4所述的方法,其中,所述客户端根据所述VMC建立的所述链路与所述VMC进行消息传输包括:所述客户端根据所述VMC建立的所述链路向所述VMC发送消息和/或所述客户端根据所述VMC建立的所述链路接收所述VMC发送的消息,其中,当所述客户端根据所述VMC建立的所述链路接收所述VMC发送的消息之前,还包括:所述客户端读取所述客户端中的用于缓存所述消息的缓存参数和呈现所述消息的呈现参数。
- 根据权利要求7所述的方法,其中,所述缓存参数包括:用于缓存所述消息的缓存队列的数量大小;和/或,所述呈现参数包括以下至少之一:消息呈现图层的透明度、消息呈现图层的大小、消息的呈现提醒方式、消息的呈现方式、消息的呈现位置、消息的呈现时间、消息的隐藏方式、消息的读取方式。
- 根据权利要求8所述的方法,其中,当所述客户端根据所述VMC建立的所述链路接收所述VMC发送的消息之后,还包括:所述客户端根据读取的所述缓存参数缓存所述消息;所述客户端根据读取的所述呈现参数对缓存的所述消息进行呈现处理。
- 一种消息传输装置,应用于虚拟机控制中心VMC中,包括:建立模块,设置为建立与客户端之间进行消息传输的链路,其中,所述客户端用于链接和操作虚拟机;第一传输模块,设置为根据建立的所述链路与所述客户端进行消息传输。
- 根据权利要求10所述的装置,其中,所述建立模块包括以下至少之一:根据所述客户端的标识ID信息,利用简单协议独立计算环境SPICE协议的主要通道Main Channel建立与所述客户端之间进行消息传输的所述链路;根据所述客户端的标识ID信息,建立与所述客户端之间进行消息传输的传输控制协议TCP链路;根据所述客户端的标识ID信息,建立与所述客户端之间进行消息传输的用户数据报协议UDP链路。
- 根据权利要求11所述的装置,其中,所述第一传输模块包括:当所述链路为利用所述SPICE协议的Main Channel建立的链路时,将需要发送的消息封装成SPICE Main Channel类型的消息并将封装后的消息发送给所述客户端,和/或,接收所述客户端发送的SPICE Main Channel类型的消息;当所述链路为TCP链路时,将需要发送消息封装成TCP类型的消息并将封装后的消息发送给所述客户端,和/或,接收所述客户端发送的TCP类型的消息;当所述链路为UDP链路时,将需要发送消息封装成UDP类型的消息并将封装后的消息发送给所述客户端,和/或,接收所述客户端发送的UDP类型的消息。
- 一种消息传输装置,应用于客户端中,包括:第二传输模块,设置为根据由虚拟机控制中心VMC建立的链路与所述VMC进行消息传输,其中,所述客户端用于链接和操作虚拟机。
- 根据权利要求13所述的装置,其中,所述链路包括如下至少之一:根据所述客户端的标识ID信息,利用简单协议独立计算环境SPICE协议的主要通道Main Channel建立的链路;根据所述客户端的标识ID信息,建立的传输控制协议TCP链路;根据所述客户端的标识ID信息,建立的用户数据报协议UDP链路。
- 根据权利要求14所述的装置,其中,所述第二传输模块包括:当所述链路为利用所述SPICE协议的Main Channel建立的链路时,将需要发送的消息封装成SPICE Main Channel类型的消息并将封装后的消息发送给所述VMC,和/或,接收所述VMC发送的SPICE Main Channel类型的消息;当所述链路为TCP链路时将需要发送的消息封装成TCP类型的消息并将封装后的消息发送给所述VMC,和/或,收所述VMC发送的TCP类型的消息;当所述链路为UDP链路时,将需要发送的消息封装成UDP类型的消息并将封装后 的消息发送给所述VMC,和/或,接收所述VMC发送的UDP类型的消息。
- 根据权利要求13所述的装置,其中,所述第二传输模块包括:根据所述VMC建立的所述链路向所述VMC发送消息和/或所述客户端根据所述VMC建立的所述链路接收所述VMC发送的消息,所述装置还包括:读取模块,设置为在所述客户端根据所述VMC建立的所述链路接收所述VMC发送的消息之前,读取用于缓存所述消息的缓存参数和呈现所述消息的呈现参数。
- 根据权利要求16所述的装置,其中,所述缓存参数包括:用于缓存所述消息的缓存队列的数量大小;和/或,所述呈现参数包括以下至少之一:消息呈现图层的透明度、消息呈现图层的大小、消息的呈现提醒方式、消息的呈现方式、消息的呈现位置、消息的呈现时间、消息的隐藏方式、消息的读取方式。
- 根据权利要求17所述的装置,其中,还包括:缓存模块,设置为根据读取的所述缓存参数缓存所述消息;处理模块,设置为根据读取的所述呈现参数对缓存的所述消息进行呈现处理。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/737,171 US10616366B2 (en) | 2015-06-15 | 2016-04-28 | Message transmission method and device |
EP16810843.9A EP3310019A4 (en) | 2015-06-15 | 2016-04-28 | METHOD AND DEVICE FOR MESSAGE TRANSMISSION |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510332157.9 | 2015-06-15 | ||
CN201510332157.9A CN106330986B (zh) | 2015-06-15 | 2015-06-15 | 消息传输方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2016202102A1 true WO2016202102A1 (zh) | 2016-12-22 |
Family
ID=57545010
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2016/080495 WO2016202102A1 (zh) | 2015-06-15 | 2016-04-28 | 消息传输方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10616366B2 (zh) |
EP (1) | EP3310019A4 (zh) |
CN (1) | CN106330986B (zh) |
WO (1) | WO2016202102A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10057325B2 (en) * | 2014-03-31 | 2018-08-21 | Nuvestack, Inc. | Remote desktop infrastructure |
US11824825B1 (en) * | 2019-05-15 | 2023-11-21 | Snap Inc. | Messaging system with in-application notifications |
CN112995739A (zh) * | 2019-12-13 | 2021-06-18 | 中兴通讯股份有限公司 | 桌面显示方法及装置、计算机可读的存储介质、电子装置 |
CN111556131B (zh) * | 2020-04-24 | 2023-06-23 | 西安万像电子科技有限公司 | 求救信息处理方法、装置及系统 |
CN114244792B (zh) * | 2020-09-09 | 2023-07-25 | 中国联合网络通信集团有限公司 | 消息发送方法及装置,和消息显示方法及装置 |
CN113486333A (zh) * | 2021-04-12 | 2021-10-08 | 贵州电网有限责任公司 | 一种利用云迁移技术实现的脆弱性分析环境仿真方法及系统 |
CN115640084A (zh) * | 2021-07-20 | 2023-01-24 | 中兴通讯股份有限公司 | 一种客户端的系统消息发送方法及装置 |
CN116074307A (zh) * | 2023-01-28 | 2023-05-05 | 中科方德软件有限公司 | 传输方法、装置、电子设备和介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101656718A (zh) * | 2008-08-18 | 2010-02-24 | 英业达股份有限公司 | 网络服务器系统与其虚拟机器的建立与开启的方法 |
CN101877713A (zh) * | 2009-11-30 | 2010-11-03 | 英业达股份有限公司 | 远程操作虚拟机器的系统 |
US20110209064A1 (en) * | 2010-02-24 | 2011-08-25 | Novell, Inc. | System and method for providing virtual desktop extensions on a client desktop |
CN103186408A (zh) * | 2011-12-29 | 2013-07-03 | 英业达股份有限公司 | 运行虚拟机的管理方法、系统及其装置 |
CN103248668A (zh) * | 2012-02-10 | 2013-08-14 | 中兴通讯股份有限公司 | 虚拟桌面服务参数的协商方法、装置及系统 |
CN104113510A (zh) * | 2013-04-17 | 2014-10-22 | 安徽盈科智能科技有限公司 | 虚拟桌面系统及其消息数据的传输方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7734778B2 (en) * | 2002-04-05 | 2010-06-08 | Sheng (Ted) Tai Tsao | Distributed intelligent virtual server |
US8135818B2 (en) * | 2009-06-22 | 2012-03-13 | Red Hat Israel, Ltd. | Automatic virtual machine migration in mixed SBC/CBC environment |
CN101605084B (zh) * | 2009-06-29 | 2011-09-21 | 北京航空航天大学 | 基于虚拟机的虚拟网络报文处理方法和系统 |
CN102075434B (zh) * | 2011-01-28 | 2012-07-04 | 华中科技大学 | 一种虚拟集群中的通信方法 |
CN102654836A (zh) * | 2011-03-01 | 2012-09-05 | 鸿富锦精密工业(深圳)有限公司 | 虚拟机安装系统及方法 |
US8631131B2 (en) * | 2011-09-07 | 2014-01-14 | Red Hat Israel, Ltd. | Virtual machine pool cache |
CN102523109A (zh) * | 2011-12-08 | 2012-06-27 | 杭州华三通信技术有限公司 | 资源状态更新方法、管理客户端及服务器 |
US9160810B2 (en) * | 2012-10-25 | 2015-10-13 | Red Hat Israel, Ltd. | Partitioning of a transmission control protocol window in a virtual system |
CN103812913B (zh) * | 2012-11-14 | 2017-11-10 | 新华三技术有限公司 | 一种基于虚拟网络计算的远程访问方法和装置 |
US9887951B2 (en) * | 2013-06-25 | 2018-02-06 | Vmware, Inc. | Graphing relative health of virtualization servers |
US9628433B2 (en) | 2013-08-27 | 2017-04-18 | International Business Machines Corporation | Transmission of short message service (SMS) message and notifications in virtualized wireless mobile computing device based on the status of intended recipient |
-
2015
- 2015-06-15 CN CN201510332157.9A patent/CN106330986B/zh active Active
-
2016
- 2016-04-28 WO PCT/CN2016/080495 patent/WO2016202102A1/zh active Application Filing
- 2016-04-28 US US15/737,171 patent/US10616366B2/en active Active
- 2016-04-28 EP EP16810843.9A patent/EP3310019A4/en not_active Withdrawn
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101656718A (zh) * | 2008-08-18 | 2010-02-24 | 英业达股份有限公司 | 网络服务器系统与其虚拟机器的建立与开启的方法 |
CN101877713A (zh) * | 2009-11-30 | 2010-11-03 | 英业达股份有限公司 | 远程操作虚拟机器的系统 |
US20110209064A1 (en) * | 2010-02-24 | 2011-08-25 | Novell, Inc. | System and method for providing virtual desktop extensions on a client desktop |
CN103186408A (zh) * | 2011-12-29 | 2013-07-03 | 英业达股份有限公司 | 运行虚拟机的管理方法、系统及其装置 |
CN103248668A (zh) * | 2012-02-10 | 2013-08-14 | 中兴通讯股份有限公司 | 虚拟桌面服务参数的协商方法、装置及系统 |
CN104113510A (zh) * | 2013-04-17 | 2014-10-22 | 安徽盈科智能科技有限公司 | 虚拟桌面系统及其消息数据的传输方法 |
Non-Patent Citations (2)
Title |
---|
See also references of EP3310019A4 * |
YAN, YUEQIANG;: "Design and Implementation of Tabletop Cloud Platform's Communication Module", ELECTRONIC TECHNOLOGY & INFORMATION SCIENCE , CHINA MASTER'S THESES FULL-TEXT DATABASE (ELECTRONIC JOURNALS, 15 February 2014 (2014-02-15), XP009507869 * |
Also Published As
Publication number | Publication date |
---|---|
EP3310019A1 (en) | 2018-04-18 |
US10616366B2 (en) | 2020-04-07 |
EP3310019A4 (en) | 2019-02-27 |
US20180198886A1 (en) | 2018-07-12 |
CN106330986B (zh) | 2020-11-20 |
CN106330986A (zh) | 2017-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2016202102A1 (zh) | 消息传输方法及装置 | |
CN106713485B (zh) | 云计算移动终端 | |
WO2021135160A1 (zh) | 游戏直播控制方法及装置、计算机存储介质、电子设备 | |
US10083054B2 (en) | Application-based computing resource management | |
US10976981B2 (en) | Remote desktop exporting | |
US8112513B2 (en) | Multi-user display proxy server | |
US20200374234A1 (en) | Systems and methods for managing streams of packets via intermediary devices | |
US7937452B2 (en) | Framework for rendering plug-ins in remote access services | |
US20120210319A1 (en) | Network communications over shared links in a virtualized environment | |
US20140188977A1 (en) | Appratus, method for deploying applications in a virtual desktop interface system | |
US10983810B2 (en) | Implementing web browser in virtual machine | |
CN102523207A (zh) | 基于虚拟网络计算机的远程资源访问方法及代理设备 | |
EP2849080B1 (en) | Image display method and device | |
US20140032699A1 (en) | Remote user interface in a terminal server environment | |
US20240307767A1 (en) | Cloud Data Processing | |
WO2015176395A1 (zh) | 虚拟桌面处理方法、装置及虚拟桌面服务器 | |
CN105190530A (zh) | 传输硬件渲染的图形数据 | |
CN113765712B (zh) | 服务器管理方法、装置、电子设备及可读存储介质 | |
WO2022205784A1 (zh) | 界面信息控制方法及装置 | |
CN101707622A (zh) | 实现远程数据监控的方法 | |
WO2024061308A1 (zh) | 通知处理方法、终端设备、服务端及计算机存储介质 | |
WO2020108292A1 (zh) | 虚拟私有云通信系统、系统配置方法及控制器 | |
CN116233209A (zh) | 一种gpu云渲染服务远程管理调度方法 | |
KR20170105317A (ko) | 하드웨어 기반의 gpu를 이용한 가상머신의 화면 전송 방법 및 이를 이용한 장치 | |
CN114443192A (zh) | 基于云桌面的多窗口虚拟应用方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 16810843 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2016810843 Country of ref document: EP |