CN115242783A - Transmission method, transmission device, electronic apparatus, and medium - Google Patents

Transmission method, transmission device, electronic apparatus, and medium Download PDF

Info

Publication number
CN115242783A
CN115242783A CN202211154480.8A CN202211154480A CN115242783A CN 115242783 A CN115242783 A CN 115242783A CN 202211154480 A CN202211154480 A CN 202211154480A CN 115242783 A CN115242783 A CN 115242783A
Authority
CN
China
Prior art keywords
spice
virtual machine
file
fragment
message
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CN202211154480.8A
Other languages
Chinese (zh)
Other versions
CN115242783B (en
Inventor
不公告发明人
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nfs China Software Co ltd
Original Assignee
Nfs China Software Co ltd
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 Nfs China Software Co ltd filed Critical Nfs China Software Co ltd
Priority to CN202211154480.8A priority Critical patent/CN115242783B/en
Publication of CN115242783A publication Critical patent/CN115242783A/en
Application granted granted Critical
Publication of CN115242783B publication Critical patent/CN115242783B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/108Resource delivery mechanisms characterised by resources being split in blocks or fragments
    • 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

Abstract

The embodiment of the application provides a transmission method, a transmission device, electronic equipment and a medium, wherein the method specifically comprises the following steps: sending a connection request to the SPICE server according to the IP address of the SPICE server; receiving interface data of a target virtual machine sent by an SPICE server; displaying interface data of the target virtual machine; receiving an export instruction of a user aiming at a target file object; exporting instructions are used for exporting the target file object on the target virtual machine to the local part of the SPICE client; sending an export instruction to the SPICE server; receiving the fragment content of the current fragment of the target file object sent by the SPICE server; carrying out continuity detection and integrity detection on the fragment content of the current fragment; and in the case that either one of the continuity check and the integrity check is not passed, sending a retransmission message to the SPICE server. The embodiment of the application can improve the safety and the integrity of transmission.

Description

Transmission method, transmission device, electronic apparatus, and medium
Technical Field
The embodiment of the application relates to the technical field of communication, in particular to a transmission method, a transmission device, electronic equipment and a medium.
Background
In the process of using internet products, users often have the requirement of file transmission.
At present, FTP (File Transfer Protocol) is generally used for File Transfer. The process of FTP file transmission comprises the following steps: respectively deploying an FTP server and an FTP client on two computers; FTP server open port (e.g., port 21); the FTP client establishes connection with the FTP server according to the port opened by the FTP server; and downloading the file from the FTP server or uploading the file to the FTP server by using the connection.
In practical application, an attacker may use a port opened by the FTP server to perform network attack on the FTP server, for example, the attacker may acquire the system authority of the FTP server or crack the password of the FTP server in a port scanning manner, and execute an illegal action according to the system authority or the password of the FTP server; therefore, FTP file transfer has a technical problem of poor security.
Disclosure of Invention
The embodiment of the application provides a transmission method which can improve the safety and the integrity of transmission.
Correspondingly, the embodiment of the application also provides a transmission device, electronic equipment and a machine readable medium, which are used for ensuring the realization and application of the method.
In order to solve the above problem, the embodiment of the present application discloses a transmission method, which is applied to a Simple Protocol Independent Computing Environment (SPICE) client; the method comprises the following steps:
sending a connection request to the SPICE server according to the IP address of the SPICE server; the connection request is used for establishing connection between the SPICE client and the SPICE server;
receiving interface data of a target virtual machine sent by an SPICE server; the client identification of the SPICE client and the virtual machine identification of the target virtual machine have a mapping relation; the target virtual machine is deployed on a physical machine where the SPICE server side is located; the target virtual machine and the SPICE server side communicate based on a virtual network;
displaying interface data of the target virtual machine; the interface data includes: a file object stored on the target virtual machine;
receiving an export instruction of a user aiming at a target file object; the export instructions are used for exporting the target file object on the target virtual machine to the local SPICE client;
sending the export instruction to a SPICE server, so that the SPICE server transfers the export instruction to the target virtual machine;
receiving the fragment content of the current fragment of the target file object sent by the SPICE server; the current fragment is obtained by the target virtual machine fragmenting the file content corresponding to the target file object;
carrying out continuity detection and integrity detection on the fragment content of the current fragment;
and in the case that either one of the continuity check and the integrity check is not passed, sending a retransmission message to the SPICE server.
In order to solve the above problem, an embodiment of the present application discloses a transmission method, which is applied to a Simple Protocol Independent Computing Environment (SPICE) server; the method comprises the following steps:
receiving a connection request sent by the SPICE client; the connection request is used for establishing connection between the SPICE client and the SPICE server;
determining a target virtual machine corresponding to the client identifier of the SPICE client according to the mapping relation between the client identifier and the virtual machine identifier;
sending interface data of a target virtual machine to the SPICE client; the target virtual machine is deployed on a physical machine where the SPICE server side is located; the target virtual machine and the SPICE server side communicate based on a virtual network; the interface data includes: a file object stored on the target virtual machine;
receiving a derivation instruction sent by the SPICE client side, and sending the derivation instruction to the target virtual machine; the export instructions are used for exporting the target file object on the target virtual machine to the local SPICE client;
receiving the fragment content of the current fragment of the target file object sent by the target virtual machine, and sending the fragment content of the current fragment to the SPICE client; the current fragment is obtained by the target virtual machine fragmenting the file content corresponding to the target file object;
receiving a retransmission message sent by the SPICE client, and sending the retransmission message to a target virtual machine; and the SPICE client sends the retransmission message under the condition that any one of continuity detection and integrity detection of the fragmented content of the current fragment fails.
In order to solve the above problem, an embodiment of the present application discloses a transmission method, where the method is applied to a target virtual machine conforming to a Simple Protocol Independent Computing Environment (SPICE) protocol, where the target virtual machine is deployed on a physical machine where a SPICE server is located, and the target virtual machine and the SPICE server communicate with each other based on a virtual network; the method comprises the following steps:
receiving, from the SPICE server, export instructions from the SPICE client; a mapping relation exists between the client identification of the SPICE client and the virtual machine identification of the target virtual machine; the export instructions are used for exporting the target file object on the target virtual machine to the local SPICE client;
fragmenting the file content corresponding to the target file object, and sending the fragmented content of the current fragment to the SPICE server;
receiving a retransmission message sent by the SPICE server; the SPICE client side sends the retransmission message to the SPICE server side under the condition that any one of continuity detection and integrity detection of the fragmented content of the current fragment does not pass;
and retransmitting the fragment content of the current fragment to the SPICE server according to the retransmission message.
In order to solve the above problem, an embodiment of the present application discloses a transmission apparatus, which is applied to a Simple Protocol Independent Computing Environment (SPICE) client; the device comprises:
the connection request sending module is used for sending a connection request to the SPICE server according to the IP address of the SPICE server; the connection request is used for establishing connection between the SPICE client and the SPICE server;
the interface data receiving module is used for receiving the interface data of the target virtual machine sent by the SPICE server; a mapping relation exists between the client identification of the SPICE client and the virtual machine identification of the target virtual machine; the target virtual machine is deployed on a physical machine where the SPICE server side is located; the target virtual machine and the SPICE server side communicate based on a virtual network;
the interface data display module is used for displaying the interface data of the target virtual machine; the interface data includes: a file object stored on the target virtual machine;
the instruction receiving module is used for receiving an export instruction of a user for the target file object; the export instructions are used for exporting the target file object on the target virtual machine to the local SPICE client;
the instruction sending module is used for sending the export instruction to the SPICE server so that the SPICE server transfers the export instruction to the target virtual machine;
a first fragment content receiving module, configured to receive a fragment content of a current fragment of the target file object sent by an SPICE server; the current fragment is obtained by the target virtual machine fragmenting the file content corresponding to the target file object;
the detection module is used for carrying out continuity detection and integrity detection on the fragment content of the current fragment;
and the retransmission message sending module is used for sending the retransmission message to the SPICE server side under the condition that any one of the continuity detection and the integrity detection fails.
Optionally, the fragment content of the current fragment is carried in a file content message, and the file content message further includes: fragment identification of the fragment content of the current fragment;
the continuity check includes: and detecting the continuity between the fragment identifier of the fragment content of the current fragment and the fragment identifier of the fragment content of the previous fragment.
Optionally, the fragment content of the current fragment is carried in a file content message, and the file content message further includes: a first information abstract value of the fragment content of the current fragment;
the integrity check includes: and calculating an information abstract value aiming at the received fragment content of the current fragment, and matching the obtained second information abstract value with the first information abstract value in the file content message.
Optionally, the apparatus further comprises:
and the successful write message sending module is used for writing the fragment content of the current fragment into the corresponding file and sending a successful write message to the SPICE server under the condition that both the continuity detection and the integrity detection pass.
Optionally, the fragment content of the current fragment is carried in a file content message, and the file content message further includes: offset information of the fragment content of the current fragment relative to the file header;
and the successful writing message sending module is specifically configured to write the fragment content of the current fragment into a corresponding file according to the offset information.
Optionally, the apparatus further comprises:
the authority inquiry message receiving module is used for receiving the authority inquiry message sent by the SPICE server; the permission inquiry message is used for inquiring whether a user has file export permission; the target virtual machine sends the authority inquiry message before fragmenting the file content corresponding to the target file object;
and the authority detection module is used for detecting whether the user has file export authority according to the configuration file and sending a corresponding authority detection result message to the SPICE server.
Optionally, the apparatus further comprises:
a file header message receiving module, configured to receive a file header message sent by the SPICE server under the condition that the permission detection result message indicates that the user has a file export permission; the header message includes: path information and name information of the target file object;
the creating module is used for creating a file object named by the name information under a preset downloading path;
and the file acquisition success message sending module is used for sending a file acquisition success message to the SPICE server.
In order to solve the above problem, an embodiment of the present application discloses a transmission apparatus, where the apparatus is applied to a Simple Protocol Independent Computing Environment (SPICE) server; the device comprises:
the connection request receiving module is used for receiving a connection request sent by the SPICE client; the connection request is used for establishing connection between the SPICE client and the SPICE server;
the target virtual machine determining module is used for determining a target virtual machine corresponding to the client identifier of the SPICE client according to the mapping relation between the client identifier and the virtual machine identifier;
the interface data sending module is used for sending the interface data of the target virtual machine to the SPICE client; the target virtual machine is deployed on a physical machine where the SPICE server side is located; the target virtual machine and the SPICE server side communicate based on a virtual network; the interface data includes: a file object stored on the target virtual machine;
the export instruction transfer module is used for receiving an export instruction sent by the SPICE client and sending the export instruction to the target virtual machine; the export instructions are used for exporting the target file object on the target virtual machine to the local SPICE client;
the first fragment content transfer module is used for receiving the fragment content of the current fragment of the target file object sent by the target virtual machine and sending the fragment content of the current fragment to the SPICE client; the current fragment is obtained by the target virtual machine fragmenting the file content corresponding to the target file object;
the retransmission message transfer module is used for receiving the retransmission message sent by the SPICE client and sending the retransmission message to the target virtual machine; and the SPICE client sends the retransmission message under the condition that any one of continuity detection and integrity detection of the fragmented content of the current fragment is not passed.
Optionally, the apparatus further comprises:
the successful writing message transfer module is used for receiving a successful writing message sent by the SPICE client and sending the successful writing message to the target virtual machine; and the SPICE client writes the fragment content of the current fragment into a corresponding file and sends the successful writing message under the condition that both continuity detection and integrity detection pass.
Optionally, the apparatus further comprises:
the authority inquiry message transfer module is used for receiving an authority inquiry message sent by a target virtual machine and sending the authority inquiry message to the SPICE client; the permission inquiry message is used for inquiring whether the user has file export permission.
Optionally, the apparatus further comprises:
the authority detection result message transfer module is used for receiving an authority detection result message sent by the SPICE client and sending the authority detection result message to the target virtual machine; the permission detection result message is determined by the SPICE client side according to whether the detection user has file export permission or not;
the file header message transfer module is used for receiving a file header message sent by a target virtual machine and sending the file header message to the SPICE client under the condition that the permission detection result message represents that a user has file export permission; the header message includes: path information and name information of the target file object.
Optionally, the apparatus further comprises:
and the file acquisition success message transfer module is used for receiving the file acquisition success message sent by the SPICE client and sending the file acquisition success message to the target virtual machine.
In order to solve the above problem, an embodiment of the present application discloses a transmission device, where the device is applied to a target virtual machine that follows a Simple Protocol Independent Computing Environment (SPICE) protocol, the target virtual machine is deployed on a physical machine where a SPICE server is located, and the target virtual machine and the SPICE server communicate with each other based on a virtual network; the device comprises:
the export instruction receiving module is used for receiving export instructions from the SPICE client side from the SPICE server side; the client identification of the SPICE client and the virtual machine identification of the target virtual machine have a mapping relation; the export instructions are to export a target file object on the target virtual machine local to the SPICE client;
the fragmentation module is used for fragmenting the file content corresponding to the target file object;
the first fragment sending module is used for sending the fragment content of the current fragment to the SPICE server;
the retransmission message receiving module is used for receiving a retransmission message sent by the SPICE server; the SPICE client side sends the retransmission message to the SPICE server side under the condition that any one of continuity detection and integrity detection of the fragment content of the current fragment does not pass;
and the retransmission module is used for retransmitting the sliced content of the current slice to the SPICE server according to the retransmission message.
Optionally, the fragment content of the current fragment is carried in a file content message, and the file content message further includes: the file header comprises a fragment identification of the fragment content of the current fragment, and/or a first information summary value of the fragment content of the current fragment, and/or offset information of the fragment content of the current fragment relative to the file header.
Optionally, the apparatus further comprises:
a successful write message receiving module, configured to receive a successful write message sent by the SPICE server; under the condition that continuity detection and integrity detection both pass, the SPICE client writes the fragmented content into a corresponding file and sends the successful writing message;
and the second fragment sending module is used for sending the fragment content of the next fragment to the SPICE server according to the successful writing message.
Optionally, the apparatus further comprises:
and the permission query message sending module is used for sending a permission query message to the SPICE server before the file content corresponding to the target file object is fragmented, wherein the permission query message is used for inquiring whether a user has file export permission.
Optionally, the apparatus further comprises:
the authority detection result message receiving module is used for receiving the authority detection result message sent by the SPICE server; the permission detection result message is determined by the SPICE client side according to whether the detection user has file export permission or not;
the processing module is used for processing according to the authority detection result message;
the processing module comprises:
the first processing module is used for setting corresponding first prompt information in the interface data under the condition that the permission detection result message represents that the user does not have the file export permission; or
The second processing module is used for setting corresponding second prompt information in interface data and sending a file header message to the SPICE server side under the condition that the permission detection result message represents that the user has file export permission; the header message includes: path information and name information of the target file object.
Optionally, the apparatus further comprises:
the file acquisition success message receiving module is used for receiving a file acquisition success message sent by the SPICE client;
the first fragment sending module is specifically configured to fragment the file content corresponding to the target file object in response to the file acquisition success message.
The embodiment of the application also discloses an electronic device, which comprises: a processor; and a memory having executable code stored thereon, which when executed, causes the processor to perform a method as described in embodiments herein.
The embodiment of the application also discloses a machine-readable medium, wherein executable codes are stored on the machine-readable medium, and when the executable codes are executed, a processor is caused to execute the method according to the embodiment of the application.
The embodiment of the application has the following advantages:
in the technical solution of the embodiment of the application, the SPICE server can perform data transfer between the virtual machine and the SPICE client. The SPICE client can establish connection with the SPICE server based on the IP address of the SPICE server. Because the target virtual machine is not required to open the port, the safety problem caused by opening the port can be avoided to a certain extent, and the transmission safety can be further improved.
In addition, the SPICE server side of the embodiment of the application determines the target virtual machine corresponding to the client side identifier of the SPICE client side according to the mapping relation between the client side identifier and the virtual machine identifier, and sends the interface data of the target virtual machine to the SPICE client side, so that the user of the SPICE client side can trigger the transmission of the target file object in the target virtual machine to the SPICE client side through the interface data. Because the target virtual machine is obtained according to the mapping relationship between the client identifier and the virtual machine identifier, even if an attacker establishes connection with the SPICE server, the attacker cannot hit the mapping relationship, so that the attacker cannot obtain interface data of the target virtual machine and cannot trigger transmission of a target file object in the target virtual machine to the SPICE client. Therefore, the embodiment of the application can further improve the transmission safety.
Further, in the process of transmitting the target file object, the target virtual machine in the embodiment of the application fragments the file content; the SPICE client side can carry out continuity detection and integrity detection on the received fragment content of the current fragment, and can send retransmission information under the condition that any one of the continuity detection and the integrity detection is not passed, so that the SPICE server side can resend the fragment content of the current fragment. The fragmentation, continuity detection, integrity detection and retransmission of the file content can relieve the problem of packet loss to a certain extent, and further improve the integrity of transmission.
Drawings
Fig. 1 is a schematic structural diagram of a transmission system according to an embodiment of the present application;
FIG. 2 is a flow chart illustrating steps of a transmission method according to an embodiment of the present application;
FIG. 3 is a flow chart illustrating steps of a transmission method according to an embodiment of the present application;
FIG. 4 is a flow chart illustrating steps of a transmission method according to an embodiment of the present application;
FIG. 5 is a flow chart illustrating steps of a transmission method according to an embodiment of the present application;
FIG. 6 is a schematic diagram of a transmission device according to an embodiment of the present application;
FIG. 7 is a schematic diagram of a transmission device according to an embodiment of the present application;
FIG. 8 is a schematic diagram of a transmission device according to an embodiment of the present application;
fig. 9 is a schematic structural diagram of an apparatus provided in an embodiment of the present application.
Detailed Description
In order to make the aforementioned objects, features and advantages of the present application more comprehensible, the present application is described in further detail with reference to the accompanying drawings and the detailed description.
The transmission method of the embodiment of the application can be used for transmitting the file object from the virtual machine in the virtual network to the terminal outside the virtual network. The file object may include: directories or folders or files, etc. Examples of virtual networks may include: a vxlan (Virtual Extensible Local Area Network), a gre (general Routing Encapsulation) Network, a gene (general Network Virtualization Encapsulation) Network, a flat Network, and the like, and it is understood that the embodiment of the present invention does not limit a specific Virtual Network.
In the embodiment of the application, a SPICE (Simple Protocol for Independent Computing) server is deployed on a physical machine where a virtual machine is located, and a SPICE client is deployed on a terminal. In addition, the embodiment of the application provides respective processing flows of the virtual machine and the SPICE client in the transmission process, and also provides an interaction flow among the virtual machine, the SPICE server and the SPICE client.
Referring to fig. 1, a schematic structural diagram of a transmission system according to an embodiment of the present application may specifically include: virtual machine 101, SPICE server 102, and SPICE client 103. The virtual machine 101 and the SPICE server 102 communicate based on a virtual network, and the SPICE server 102 and the SPICE client 103 communicate based on a network supported by an IP (Internet Protocol) Protocol.
Since virtual machine 101 is located inside a virtual network, SPICE client 103 typically cannot directly access virtual machine 101. The SPICE protocol is an open-source network protocol, and can support remote access of virtual machines. Specifically, according to the embodiment of the present application, remote access of the SPICE client 103 to the virtual machine 101 can be realized according to the SPICE protocol.
The SPICE protocol has an adaptive remote commit protocol, which may be a criterion followed by interactions between virtual machine 101, SPICE server 102, and SPICE client 103. SPICE server 102 can be a user layer component integrated inside a virtual machine monitor that can provide SPICE client 103 with interface data for virtual machine 101.SPICE client 103 receives and displays interface data of virtual machine 101, and sends instructions input by a user to the virtual machine, so that the user obtains an operation experience for the interface of virtual machine 101.
The SPICE server 102 of the embodiment of the application can perform data and/or instruction transfer between the virtual machine 101 and the SPICE client 103. Wherein, the SPICE client 103 can establish a connection with the SPICE server 102 based on the IP address of the SPICE server 102. Because the virtual machine 101 may not be required to open the port, the security problem caused by opening the port can be avoided to a certain extent, and the security of transmission can be further improved.
According to the mapping relationship between the client identifier and the virtual machine identifier, the SPICE server 102 of the embodiment of the application determines a target virtual machine corresponding to the client identifier of the SPICE client 103, and sends interface data of the target virtual machine to the SPICE client 103, so that a user of the SPICE client 103 triggers transmission of a target file object in the target virtual machine to the SPICE client 103 through the interface data.
Moreover, as a source of the file object, the virtual machine in the embodiment of the present application is located in the virtual network, and an attacker cannot directly access the virtual machine. Since the target virtual machine is obtained according to the mapping relationship between the client identifier and the virtual machine identifier, even if the attacker establishes a connection with the SPICE server 102, the attacker cannot hit the mapping relationship, so that the attacker cannot obtain the interface data of the target virtual machine, and cannot trigger the transmission of the target file object in the target virtual machine to the SPICE client 103. Therefore, the embodiment of the application can further improve the transmission safety.
Further, in the process of transmitting the target file object, the virtual machine 101 in the embodiment of the present application fragments the file content; the SPICE client 103 performs continuity detection and integrity detection on the received fragment content of the current fragment, and sends retransmission information under the condition that any one of the continuity detection and the integrity detection fails, so that the SPICE server retransmits the fragment content of the current fragment. The fragmentation, continuity detection, integrity detection and retransmission of the file content can relieve the problem of packet loss to a certain extent, and further improve the integrity of transmission.
Method embodiment 1
Referring to fig. 2, a schematic flow chart illustrating steps of a transmission method according to an embodiment of the present application, where the method may be applied to a SPICE client, and the method may specifically include the following steps:
step 201, sending a connection request to an SPICE server according to the IP address of the SPICE server; the connection request is used for establishing connection between the SPICE client and the SPICE server;
step 202, receiving interface data of a target virtual machine sent by an SPICE server; the client identification of the SPICE client and the virtual machine identification of the target virtual machine have a mapping relation; the target virtual machine is deployed on a physical machine where the SPICE server side is located; the target virtual machine and the SPICE server side communicate based on a virtual network;
step 203, displaying the interface data of the target virtual machine; the interface data may include: a file object stored on the target virtual machine;
step 204, receiving an export instruction of a user for a target file object; the export instruction is used for exporting the target file object on the target virtual machine to the local SPICE client;
step 205, sending the export instruction to the SPICE server, so that the SPICE server transfers the export instruction to the target virtual machine;
step 206, receiving the fragment content of the current fragment of the target file object sent by the SPICE server; the current fragment may be a fragment obtained by a target virtual machine fragmenting file content corresponding to the target file object;
step 207, performing continuity detection and integrity detection on the fragment content of the current fragment;
and step 208, in case any one of the continuity check and the integrity check fails, sending a retransmission message to the SPICE server.
The SPICE client of the embodiment of the application can be located on the terminal side of a user.
In step 201, the SPICE client can send a connection request to the SPICE server according to the SPICE server's IP address. After receiving the connection request, the SPICE server can establish a connection with the SPICE client. For example, the SPICE server can establish a SPICE channel between the SPICE server and the SPICE client according to a connection establishment method specified by SPICE protocol, and subsequent transmission is performed based on the SPICE channel.
The SPICE server can also store the mapping relation between the client identifier and the virtual machine identifier. The client identity may be a user identity or a device identity, etc. Assuming that a user has a request for using a virtual machine in an office environment, the user may send a virtual machine application, where the virtual machine application may include: and (4) identifying the user. The SPICE server or other servers in the embodiment of the application can allocate the corresponding virtual machine for the user identifier, and store the mapping relationship between the client identifier and the virtual machine identifier. In this case, the user successfully applies for the virtual machine and stores the corresponding file object on the virtual machine.
Subsequently, the transmission method of the embodiment of the present application may be used when a user wants to obtain a file object stored in a virtual machine in a non-office environment. After the SPICE client establishes connection with the SPICE server, the client identification can be sent to the SPICE server. The SPICE server side can determine the target virtual machine corresponding to the client side identification of the SPICE client side according to the mapping relation between the client side identification and the virtual machine identification, and send the interface data of the target virtual machine to the SPICE client side.
In practical applications, the interface data displayed on the target virtual machine and the interface data of the target virtual machine displayed on the SPICE client can be matched. In this way, remote access of the user to the target virtual machine may be achieved. For example, the interface data displayed on the target virtual machine may include: a directory, or a folder or file under the directory, or a file object such as a file.
The user of the SPICE client can generate corresponding instructions aiming at the interface data of the target virtual machine. Examples of instructions may include: an instruction to jump from one interface to another interface, an instruction to trigger presentation of a folder under a directory, an instruction to trigger presentation of a file under a folder, an instruction to export a target file object, or the like. Wherein the export instruction is used to export the target file object on the target virtual machine to be local to the SPICE client. It is to be understood that the embodiments of the present application are not limited to specific instructions.
In step 205, the SPICE client can send the export instruction to the SPICE server to make the SPICE server transfer the export instruction to the target virtual machine. After receiving the export instruction, the target virtual machine may trigger transmission of the target file object in the target virtual machine to the SPICE client. For example, the target virtual machine may fragment the file content corresponding to the target file object, and send the fragmented content of the current fragment to the SPICE server, so that the SPICE server transfers the fragmented content of the current fragment to the SPICE client.
The target file object may include: one or more files. The target virtual machine may divide a file into N partitions, where N may be a positive integer greater than 1. For example, a file may be sliced by the size of the amount of data contained in the slice. The unit of the data amount may be KB (kilobyte), and examples of the data amount may include: 3 to 4kb and the like, it is understood that the specific data volume is not limited in the examples of the present application.
In step 207, the SPICE client may perform continuity check and integrity check on the sliced content of the current slice.
In one implementation, the fragment content of the current fragment is carried in a file content message, and the file content message may further include: fragment identification of the fragment content of the current fragment; the continuity check may specifically include: and detecting the continuity between the fragment identifier of the fragment content of the current fragment and the fragment identifier of the fragment content of the last fragment.
The fragment identifier may characterize the current fragment as the second fragment of the file. If the fragment content of the previous fragment does not exist, it may be indicated that the current fragment is the first fragment of one file, and the corresponding continuity check is passed, that is, the continuity check result is passed. If the fragment content of the previous fragment exists, the fragment content of the previous fragment may be the fragment content which passes both continuity detection and integrity detection; in this case, the fragment identifier of the fragment content of the current fragment may be matched with the fragment identifier of the fragment content of the previous fragment. For example, the segment identifier may be a natural number that is continuously incremented, and it may be determined whether the segment identifier of the segment content of the current segment is 1 more than the segment identifier of the segment content of the previous segment, if so, the corresponding continuity check is passed, otherwise, the corresponding continuity check is not passed.
In another implementation manner, the fragment content of the current fragment is carried in a file content message, and the file content message may further include: a first information abstract value of the fragment content of the current fragment; the integrity check may include: and calculating an information abstract value aiming at the received fragment content of the current fragment, and matching the obtained second information abstract value with the first information abstract value in the file content message.
The message digest value may be: MD5 (message Digest Algorithm 5, message-Digest Algorithm 5), or hash value, etc. The target virtual machine may perform information digest value calculation on the complete fragment content of the current fragment to obtain a first information digest value. The SPICE client may perform calculation of the information digest value for the received fragment content of the current fragment to obtain a second information digest value. The SPICE client can judge whether the first information abstract value is consistent with the second information abstract value, if so, the corresponding integrity detection is passed, namely, the integrity detection result is passed; otherwise, the corresponding integrity check is not passed, that is, the integrity check result is not passed.
In step 208, in case that either one of the continuity check and the integrity check fails, it may be considered that the slice content of the current slice has a continuity problem or an integrity problem, and a retransmission message is sent to the SPICE server.
In an optional implementation manner of the embodiment of the present application, the method may further include: and under the condition that both continuity detection and integrity detection pass, writing the fragment content of the current fragment into a corresponding file, and sending a successful writing message to the SPICE server.
In practical applications, a file may correspond to a file write pointer, and the file write pointer may represent a write location of the file. In the case of writing the complete file content of the first M slices, the writing of the file content of the (M + 1) th slice can be performed without moving the file write pointer.
In practical applications, there may be the following: the slice content of a certain slice (e.g., mth slice) written is incomplete. In this case, if the complete file content of the mth fragment is written without moving the file write pointer, redundancy and inaccuracy of the file content of the mth fragment may be caused.
In an optional implementation manner of the embodiment of the present application, the fragment content of the current fragment is carried in a file content message, and the file content message may further include: offset information of the fragment content of the current fragment relative to the file header; the process of writing the fragment content of the current fragment into the corresponding file may specifically include: and writing the fragment content of the current fragment into a corresponding file according to the offset information.
The offset information may characterize the distance of the start position of the current slice relative to the start position of the file. In a case that the fragment content of a certain written fragment (e.g., an mth fragment) is incomplete, the embodiment of the present application may write the fragment content of the mth fragment into a corresponding file according to the offset information.
For example, the file content of the mth fragment received for the first time is incomplete, but the incomplete file content is written into the file, and in this case, the position corresponding to the file write pointer is position B; assuming that the offset information can characterize the starting position a of the mth slice in the file, position B is typically after the starting position a. If the file content of the mth fragment received for the second time passes integrity detection and continuity detection, if the complete fragment content of the mth fragment is written according to the position B, redundant content will occur in the file, and the redundant content is a partial fragment content belonging to the mth fragment before the position B.
According to the embodiment of the application, the complete fragment content of the Mth fragment is written according to the initial position A represented by the offset information, redundant content can be covered, and the accurate file content of the Mth fragment can be contained in the file, so that the redundancy problem and the inaccuracy problem of the file content of the Mth fragment can be solved to a certain extent.
In an optional implementation manner of the embodiment of the present application, the file content message may include: a message header and a message body. The message body may be located after the message header. Wherein, the message header may include at least one of the following messages: a protocol header (indicating that the message is file content), a file name, a fragment identifier, a retransmission identifier (identifying whether the fragment is a retransmission fragment or not), offset information, an information digest value, and a file content length (recording the length of the complete file content of the current fragment). The message body may include: the complete file content of the current slice.
In an optional implementation manner of the embodiment of the present application, the method may further include: receiving a permission query message sent by an SPICE server; the authority inquiry message is used for inquiring whether the user has file export authority; the target virtual machine sends the authority inquiry message before fragmenting the file content corresponding to the target file object; and detecting whether the user has file export authority or not according to the configuration file, and sending a corresponding authority detection result message to the SPICE server.
In the process of transmitting the file object from the virtual machine to the terminal, whether the user has the file export permission or not is detected, so that the transmission safety can be further improved.
In practical application, the SPICE client can query the configuration file and detect whether the user has the export authority according to the query result. The configuration file may be a file issued by a server (SPICE server or other servers). The configuration file may have recorded therein: and the user list with the export authority can detect whether the user list contains the user identification of the SPICE client or not. Alternatively, the configuration file may record therein: and in this case, whether the user authority corresponding to the user identifier of the SPICE client contains the file export authority can be detected.
The permission detection result message may include: with or without authority, etc. The SPICE server can provide different processing according to different authority detection result messages.
In an optional implementation manner of the embodiment of the present application, the method may further include: receiving a file header message sent by an SPICE server under the condition that the permission detection result message represents that a user has file export permission; the header message may include: path information and name information of the target file object; and creating a file object named by the name information under a preset download path, and sending a file acquisition success message to the SPICE server. The preset download path may be designated by a user or those skilled in the art. The path information included in the header message may refer to a path of a file in the target file object in the target virtual machine, and in a case where the target file object is a directory, the path information may improve accuracy of directory export. For example, directory a includes: the file system comprises a folder B and a folder C, wherein the folder B comprises files B1 to Bm, the folder C comprises files C1 to Cm, and the path information can record the path information of the folders and the files under the directory A.
According to the method and the device, the file object named by the name information can be automatically created under the preset downloading path, so that the operation cost of a user can be reduced, and the transmission efficiency is improved.
In summary, in the transmission method according to the embodiment of the present application, the SPICE client may establish a connection with the SPICE server based on the IP address of the SPICE server. Because the target virtual machine is not required to open the port, the safety problem caused by opening the port can be avoided to a certain extent, and the transmission safety can be further improved.
In addition, the SPICE server side of the embodiment of the application determines the target virtual machine corresponding to the client side identifier of the SPICE client side according to the mapping relation between the client side identifier and the virtual machine identifier, and sends the interface data of the target virtual machine to the SPICE client side, so that the user of the SPICE client side can trigger the transmission of the target file object in the target virtual machine to the SPICE client side through the interface data. Because the target virtual machine is obtained according to the mapping relationship between the client identifier and the virtual machine identifier, even if an attacker establishes connection with the SPICE server, the attacker cannot hit the mapping relationship, so that the attacker cannot obtain interface data of the target virtual machine and cannot trigger transmission of a target file object in the target virtual machine to the SPICE client. Therefore, the embodiment of the application can further improve the transmission safety.
Further, the target virtual machine in the embodiment of the application can fragment the file content in the process of transmitting the target file object; the SPICE client side can carry out continuity detection and integrity detection on the received fragment content of the current fragment, and can send retransmission information under the condition that any one of the continuity detection and the integrity detection is not passed, so that the SPICE server side can resend the fragment content of the current fragment. The fragmentation, continuity detection, integrity detection and retransmission of the file content can relieve the problem of packet loss to a certain extent, and further improve the integrity of transmission.
Method embodiment two
Referring to fig. 3, a schematic step flow diagram of a transmission method according to an embodiment of the present application is shown, where the method may be applied to a target virtual machine that follows a SPICE protocol, the target virtual machine is deployed on a physical machine where a SPICE service end is located, and the target virtual machine and the SPICE service end perform communication based on a virtual network, and the method specifically may include the following steps:
step 301, receiving a export instruction from the SPICE client from the SPICE server; the client identification of the SPICE client side and the virtual machine identification of the target virtual machine have a mapping relation; the export instruction is used for exporting the target file object on the target virtual machine to the local SPICE client;
step 302, fragmenting the file content corresponding to the target file object, and sending the fragmented content of the current fragmentation to the SPICE server; the current fragment may be a fragment obtained by a target virtual machine fragmenting file content corresponding to the target file object;
step 303, receiving a retransmission message sent by the SPICE server; the SPICE client side sends the retransmission message to the SPICE server side under the condition that any one of continuity detection and integrity detection of the fragment content of the current fragment fails;
and step 304, resending the fragment content of the current fragment to the SPICE server according to the resending message.
In step 301, the interface data of the target virtual machine may be provided to the SPICE client, so that the user of the SPICE client triggers the transmission of the target file object in the target virtual machine to the SPICE client via the interface data.
In step 302, the target file object may include: one or more files. The target virtual machine may divide a file into N slices. For example, a file may be sliced by the size of the amount of data contained in the slice. The unit of the data amount may be KB (kilobyte), and the data amount may include, for example: 3 to 4kb and the like, it is understood that the specific data volume is not limited in the examples of the present application.
The target virtual machine may send the fragment content according to the sequence of the fragments from front to back in the file (i.e. the sequence of the fragment identifiers from small to large). For example, the fragment content of the fragment identifier N may be sequentially transmitted, wherein the fragment identifier 1, the fragment identifier 2 \ 8230 \8230; \8230and the fragment identifier N.
After sending the fragment content of the current fragment, the target virtual machine may wait for a subsequent message, and if a retransmission message sent by the SPICE server is received, may resend the fragment content of the current fragment to the SPICE server according to the retransmission message. Assuming that a retransmission message is received after the mth fragment is transmitted, the fragment content of the mth fragment may be retransmitted.
In an optional implementation manner of the embodiment of the present application, the fragment content of the current fragment is carried in a file content message, and the file content message may further include: the file header comprises a fragment identification of the fragment content of the current fragment, and/or a first information summary value of the fragment content of the current fragment, and/or offset information of the fragment content of the current fragment relative to the file header.
For example, the file content message may include: a message header and a message body. The message body may be located after the message header. Wherein, the message header may include at least one of the following messages: a protocol header (indicating that the message is a file content), a file name, a fragment identifier, a retransmission identifier (whether the identifier is a retransmission fragment or not), offset information, an information digest value, and a file content length (recording the length of the complete file content of the current fragment). The message body may include: the complete file content of the current slice.
In an optional implementation manner of the embodiment of the present application, the method may further include: receiving a successful writing message sent by an SPICE server; under the condition that both continuity detection and integrity detection are passed, the SPICE client writes the fragmented content into a corresponding file and sends the successful writing message; and sending the slicing content of the next slicing to the SPICE server according to the successful writing message. Assuming that a successful write message is received after the mth fragment is transmitted, the fragment content of the (M + 1) th fragment may be transmitted.
In an optional implementation manner of the embodiment of the present application, before fragmenting the file content corresponding to the target file object, the method may further include: and sending a permission inquiry message to the SPICE server, wherein the permission inquiry message is used for inquiring whether the user has file export permission.
In an optional implementation manner of the embodiment of the present application, the method may further include: receiving a permission detection result message sent by an SPICE server; processing according to the permission detection result message; wherein, the permission detection result message may be determined by the SPICE client detecting whether the user has the file export permission according to the configuration file.
The processing according to the permission detection result message may specifically include:
setting corresponding first prompt information in interface data under the condition that the permission detection result message indicates that the user does not have file export permission; or
Under the condition that the authority detection result message represents that the user has file export authority, setting corresponding second prompt information in interface data, and sending a file header message to the SPICE server; the header message may include: path information and name information of the target file object.
The target virtual machine analyzes the permission detection result message, and if the user does not have the export permission, the first prompt message can prompt the user that the user does not have the export permission. The first prompt message may be a first prompt text, and the first prompt text may be presented in the interface as interface data of the target virtual machine. Since the SPICE client can synchronously display the interface data of the target virtual machine, the SPICE client can also synchronously display the first prompt text.
And if the user has the export authority, setting corresponding second prompt information in the interface data, and sending a file header message to the SPICE server. The second prompt message may be a second prompt text, and the second prompt text may be presented in the interface as interface data of the target virtual machine. The second prompt text may be a text such as "in the middle of exporting". Since the SPICE client can synchronously display the interface data of the target virtual machine, the SPICE client can also synchronously display the second prompt text.
In an optional implementation manner of the embodiment of the present application, the method may further include: receiving a file acquisition success message sent by the SPICE client; step 302 may segment the file content corresponding to the target file object, which specifically includes: and responding to the file acquisition success message, and fragmenting the file content corresponding to the target file object.
To sum up, in the transmission method of the embodiment of the present application, the SPICE server determines the target virtual machine corresponding to the client identifier of the SPICE client according to the mapping relationship between the client identifier and the virtual machine identifier, and sends the interface data of the target virtual machine to the SPICE client, so that the user of the SPICE client triggers the transmission of the target file object in the target virtual machine to the SPICE client through the interface data. Because the target virtual machine is obtained according to the mapping relationship between the client identifier and the virtual machine identifier, even if an attacker establishes connection with the SPICE server, the attacker cannot hit the mapping relationship, so that the attacker cannot obtain interface data of the target virtual machine and cannot trigger transmission of a target file object in the target virtual machine to the SPICE client. Therefore, the embodiment of the application can further improve the transmission safety.
Further, in the process of transmitting the target file object, the target virtual machine in the embodiment of the application fragments the file content; the SPICE client side can carry out continuity detection and integrity detection on the received fragment content of the current fragment, and can send retransmission information under the condition that any one of the continuity detection and the integrity detection fails, so that the SPICE server side can resend the fragment content of the current fragment. The fragmentation, continuity detection, integrity detection and retransmission of the file content can relieve the problem of packet loss to a certain extent, and further improve the integrity of transmission.
Method example III
Referring to fig. 4, a schematic flowchart of steps of a transmission method according to an embodiment of the present application is shown, where the method may be applied to a SPICE server, and the method may specifically include the following steps:
step 401, receiving a connection request sent by an SPICE client; the connection request is used for establishing connection between the SPICE client and the SPICE server;
step 402, determining a target virtual machine corresponding to the client identifier of the SPICE client according to the mapping relation between the client identifier and the virtual machine identifier;
step 403, sending interface data of the target virtual machine to the SPICE client; the target virtual machine is deployed on a physical machine where the SPICE server side is located; the target virtual machine and the SPICE server side are communicated based on a virtual network; the interface data includes: a file object stored on the target virtual machine;
step 404, receiving a export instruction sent by the SPICE client, and sending the export instruction to the target virtual machine; the export instruction is used for exporting the target file object on the target virtual machine to the local SPICE client;
step 405, receiving the fragment content of the current fragment of the target file object sent by the target virtual machine, and sending the fragment content of the current fragment to the SPICE client;
step 406, receiving a retransmission message sent by the SPICE client; the SPICE client side sends the retransmission message under the condition that any one of continuity detection and integrity detection of the fragment content of the current fragment does not pass;
step 407, sending the retransmission message to the target virtual machine.
The SPICE server of the embodiment of the application can establish the connection between the SPICE client and the SPICE server based on the provided IP address, and synchronize the interface data of the target virtual machine to the SPICE client by utilizing the connection. And, the SPICE server can transfer data and/or instructions between the virtual machine and the SPICE client.
In an optional implementation manner of the embodiment of the present application, the method may further include: receiving a successful writing message sent by the SPICE client, and sending the successful writing message to the target virtual machine; and the SPICE client writes the fragment content of the current fragment into a corresponding file and sends the successful writing message under the condition that both continuity detection and integrity detection pass.
In an optional implementation manner of the embodiment of the present application, the method may further include: receiving a permission query message sent by a target virtual machine, and sending the permission query message to the SPICE client; the permission inquiry message is used for inquiring whether the user has file export permission.
In an optional implementation manner of the embodiment of the present application, the method may further include: and receiving a permission detection result message sent by the SPICE client, and sending the permission detection result message to the target virtual machine.
In an optional implementation manner of the embodiment of the present application, the method may further include: under the condition that the authority detection result message represents that the user has file export authority, receiving a file header message sent by a target virtual machine, and sending the file header message to an SPICE client; the header message includes: path information and name information of the target file object.
In an optional implementation manner of the embodiment of the present application, the method may further include: and receiving a file acquisition success message sent by the SPICE client, and sending the file acquisition success message to the target virtual machine.
In summary, in the transmission method according to the embodiment of the present application, the SPICE client may establish a connection with the SPICE server based on the IP address of the SPICE server. Because the target virtual machine is not required to open the port, the safety problem caused by opening the port can be avoided to a certain extent, and the transmission safety can be further improved.
In addition, the SPICE server side of the embodiment of the application determines the target virtual machine corresponding to the client side identifier of the SPICE client side according to the mapping relation between the client side identifier and the virtual machine identifier, and sends the interface data of the target virtual machine to the SPICE client side, so that the user of the SPICE client side can trigger the transmission of the target file object in the target virtual machine to the SPICE client side through the interface data. Because the target virtual machine is obtained according to the mapping relationship between the client identifier and the virtual machine identifier, even if an attacker establishes connection with the SPICE server, the attacker cannot hit the mapping relationship, so that the attacker cannot obtain interface data of the target virtual machine and cannot trigger transmission of a target file object in the target virtual machine to the SPICE client. Therefore, the embodiment of the application can further improve the transmission safety.
Further, the target virtual machine in the embodiment of the application can fragment the file content in the process of transmitting the target file object; the SPICE client side can carry out continuity detection and integrity detection on the received fragment content of the current fragment, and can send retransmission information under the condition that any one of the continuity detection and the integrity detection is not passed, so that the SPICE server side can resend the fragment content of the current fragment. The fragmentation, continuity detection, integrity detection and retransmission of the file content can relieve the problem of packet loss to a certain extent, and further improve the integrity of transmission.
Method example four
Referring to fig. 5, a schematic step flow diagram of a transmission method according to an embodiment of the present application is shown, and for convenience of description, in the embodiment of the present application, in describing a communication process between a SPICE client and a target virtual machine, a relay of a SPICE server is omitted. It can be understood that sending a to the target virtual machine by the SPICE client in the embodiment of the present application may specifically be: the SPICE client sends A to the SPICE server, so that the SPICE server transfers A to the target virtual machine. Similarly, the sending of the B to the SPICE client by the target virtual machine in the embodiment of the present application may specifically be: and the target virtual machine sends B to the SPICE server, so that the SPICE server transfers B to the SPICE client.
The method specifically comprises the following steps:
step 501, receiving a connection request sent by an SPICE client by an SPICE server;
step 502, the SPICE server determines a target virtual machine corresponding to the client identification of the SPICE client;
step 503, sending the interface data of the target virtual machine to the SPICE client by the SPICE server;
step 504, the SPICE client displays the interface data of the target virtual machine and receives the export instruction of the user for the target file object; the export instruction is used for exporting the target file object on the target virtual machine to the local SPICE client;
step 505, the SPICE client side sends the export instruction to the target virtual machine;
step 506, the target virtual machine sends a permission inquiry message to the SPICE client;
step 507, sending a permission detection result message to the target virtual machine by the SPICE client;
step 508, under the situation that the result message of said authority detection represents that the user possesses the file and exports the authority, the target virtual machine sends the header message of the file to SPICE customer end;
step 509, the SPICE client creates a file object named by name information under a preset download path according to the file header message;
step 510, the SPICE client sends a file acquisition success message to the target virtual machine;
step 511, the target virtual machine responds to the file acquisition success message and fragments the file content corresponding to the target file object;
step 512, the target virtual machine sends the fragment content of the current fragment to the SPICE client;
step 513, the SPICE client sends a resending message to the target virtual machine under the condition that any one of continuity detection and integrity detection of the fragmented content of the current fragment does not pass;
step 514, the target virtual machine resends the fragment content of the current fragment to the SPICE client according to the retransmission message;
whether the target virtual machine sends the fragment content of the current fragment to the SPICE client in step 512 or resends the fragment content of the current fragment to the SPICE client in step 514, a file content message corresponding to the current fragment can be sent. The retransmission identifications in step 512 and step 514 may be different. For example, step 512 is to transmit the corresponding retransmission id as the first retransmission id (e.g., no or 0) for the first time, and step 514 is to retransmit the corresponding retransmission id as the second retransmission id (e.g., yes or 1).
Step 515, sending a successful write message to the target virtual machine by the SPICE client under the condition that both continuity detection and integrity detection of the fragment content of the current fragment pass;
under the condition that the continuity detection and the integrity detection of the fragment content of the current fragment are passed and the retransmission identifier in the file content message is the first retransmission identifier, the file write pointer can be shifted to the position corresponding to the shift information carried in the file content message, and then the fragment content of the current fragment is written into the corresponding file.
And step 516, the target virtual machine resends the fragment content of the next fragment to the SPICE client according to the successful writing message.
In practical applications, steps 512 through 516 may be repeatedly executed until all file contents of the target file object are successfully sent to the SPICE client.
It should be noted that for simplicity of description, the method embodiments are described as a series of acts, but those skilled in the art should understand that the embodiments are not limited by the described order of acts, as some steps can be performed in other orders or simultaneously according to the embodiments. Further, those skilled in the art will also appreciate that the embodiments described in the specification are presently preferred and that no particular act is required of the embodiments of the application.
On the basis of the above embodiment, the present embodiment further provides a transmission apparatus, which may be applied to an SPICE client; referring to fig. 6, the apparatus may specifically include the following modules:
a connection request sending module 601, configured to send a connection request to the SPICE server according to the IP address of the SPICE server; the connection request is used for establishing connection between the SPICE client and the SPICE server;
an interface data receiving module 602, configured to receive interface data of a target virtual machine sent by an SPICE server; the client identification of the SPICE client and the virtual machine identification of the target virtual machine have a mapping relation; the target virtual machine is deployed on a physical machine where the SPICE server side is located; the target virtual machine and the SPICE server side communicate based on a virtual network;
an interface data display module 603, configured to display interface data of the target virtual machine; the interface data includes: a file object stored on the target virtual machine;
an instruction receiving module 604, configured to receive an export instruction of a user for a target file object; the export instructions are used for exporting the target file object on the target virtual machine to the local SPICE client;
an instruction sending module 605, configured to send the export instruction to the SPICE server, so that the SPICE server transfers the export instruction to the target virtual machine;
a first fragment content receiving module 606, configured to receive fragment content of a current fragment of the target file object sent by the SPICE server; the current fragment may be a fragment obtained by a target virtual machine fragmenting file content corresponding to the target file object;
a detection module 607, configured to perform continuity detection and integrity detection on the fragment content of the current fragment;
a retransmission message sending module 608, configured to send a retransmission message to the SPICE server if any of the continuity check and the integrity check fails.
Optionally, the fragment content of the current fragment is carried in a file content message, and the file content message may further include: fragment identification of fragment content of the current fragment;
the continuity check may specifically include: and detecting the continuity between the fragment identifier of the fragment content of the current fragment and the fragment identifier of the fragment content of the last fragment.
Optionally, the fragment content of the current fragment is carried in a file content message, and the file content message may further include: a first information abstract value of the fragment content of the current fragment;
the integrity check may specifically include: and calculating an information abstract value aiming at the received fragment content of the current fragment, and matching the obtained second information abstract value with the first information abstract value in the file content message.
Optionally, the apparatus may further include:
and the successful write message sending module is used for writing the fragment content of the current fragment into the corresponding file and sending a successful write message to the SPICE server under the condition that both the continuity detection and the integrity detection pass.
Optionally, the fragment content of the current fragment is carried in a file content message, and the file content message may further include: offset information of the fragment content of the current fragment relative to the file header;
the successful writing message sending module is specifically configured to write the fragment content of the current fragment into a corresponding file according to the offset information.
Optionally, the apparatus may further include:
the authority inquiry message receiving module is used for receiving the authority inquiry message sent by the SPICE server; the permission inquiry message is used for inquiring whether a user has file export permission; the target virtual machine sends the authority inquiry message before fragmenting the file content corresponding to the target file object;
and the authority detection module is used for detecting whether the user has file export authority or not according to the configuration file and sending a corresponding authority detection result message to the SPICE server side.
Optionally, the apparatus may further include:
a file header message receiving module, configured to receive a file header message sent by the SPICE server under the condition that the permission detection result message indicates that the user has a file export permission; the header message includes: path information and name information of the target file object;
the creating module is used for creating the file object named by the name information under a preset downloading path;
and the file acquisition success message sending module is used for sending a file acquisition success message to the SPICE server.
On the basis of the above embodiment, the present embodiment further provides a transmission device, which can be applied to an SPICE server; referring to fig. 7, the apparatus may specifically include the following modules:
a connection request receiving module 701, configured to receive a connection request sent by a SPICE client; the connection request is used for establishing connection between the SPICE client and the SPICE server;
a target virtual machine determining module 702, configured to determine, according to a mapping relationship between a client identifier and a virtual machine identifier, a target virtual machine corresponding to the client identifier of the SPICE client;
an interface data sending module 703, configured to send interface data of the target virtual machine to the SPICE client; the target virtual machine is deployed on a physical machine where the SPICE server side is located; the target virtual machine and the SPICE server side communicate based on a virtual network; the interface data includes: a file object stored on the target virtual machine;
the export instruction transfer module 704 is configured to receive an export instruction sent by the SPICE client, and send the export instruction to the target virtual machine; the export instructions are to export a target file object on the target virtual machine local to the SPICE client;
a first fragment content transferring module 705, configured to receive a currently fragmented fragment content of a target file object sent by a target virtual machine, and send the currently fragmented fragment content to the SPICE client; the current fragment may be a fragment obtained by a target virtual machine fragmenting file content corresponding to the target file object;
a retransmission message transfer module 706, configured to receive a retransmission message sent by the SPICE client, and send the retransmission message to the target virtual machine; and the SPICE client sends the retransmission message under the condition that any one of continuity detection and integrity detection of the fragmented content of the current fragment is not passed.
Optionally, the apparatus may further include:
the successful write message transfer module is used for receiving a successful write message sent by the SPICE client and sending the successful write message to the target virtual machine; and the SPICE client writes the fragment content of the current fragment into a corresponding file and sends the successful writing message under the condition that both continuity detection and integrity detection pass.
Optionally, the apparatus may further include:
the authority inquiry message transfer module is used for receiving an authority inquiry message sent by a target virtual machine and sending the authority inquiry message to the SPICE client; the permission query message is used for querying whether the user has file export permission.
Optionally, the apparatus may further include:
the authority detection result message transfer module is used for receiving an authority detection result message sent by the SPICE client and sending the authority detection result message to the target virtual machine; the permission detection result message may be determined by the SPICE client detecting whether the user has file export permission according to the configuration file.
Optionally, the apparatus may further include:
the file header message transfer module is used for receiving the file header message sent by the target virtual machine and sending the file header message to the SPICE client under the condition that the permission detection result message represents that the user has the file export permission; the header message includes: path information and name information of the target file object.
Optionally, the apparatus may further include:
and the file acquisition success message transfer module is used for receiving the file acquisition success message sent by the SPICE client and sending the file acquisition success message to the target virtual machine.
On the basis of the above embodiment, the present embodiment further provides a transmission apparatus, which may be applied to a target virtual machine; referring to fig. 8, the apparatus may specifically include the following modules:
export instruction receiving module 801, configured to receive export instructions from SPICE client from SPICE server; a mapping relation exists between the client identification of the SPICE client and the virtual machine identification of the target virtual machine; the export instructions are used for exporting the target file object on the target virtual machine to the local SPICE client;
a fragmentation module 802, configured to fragment file content corresponding to the target file object;
a first fragment sending module 803, configured to send the fragment content of the current fragment to the SPICE server;
a retransmission message receiving module 804, configured to receive a retransmission message sent by the SPICE server; the SPICE client side sends the retransmission message to the SPICE server side under the condition that any one of continuity detection and integrity detection of the fragment content of the current fragment does not pass;
and a retransmission module 805, configured to resend the sliced content of the current slice to the SPICE server according to the retransmission message.
Optionally, the fragment content of the current fragment is carried in a file content message, and the file content message may further include: the file management method comprises the steps of identifying the fragment of the fragment content of the current fragment, and/or a first information summary value of the fragment content of the current fragment, and/or offset information of the fragment content of the current fragment relative to a file header.
Optionally, the apparatus may further include:
a successful write message receiving module, configured to receive a successful write message sent by the SPICE server; under the condition that both continuity detection and integrity detection are passed, the SPICE client writes the fragmented content into a corresponding file and sends the successful writing message;
and the second fragment sending module is used for sending the fragment content of the next fragment to the SPICE server according to the successful writing message.
Optionally, the apparatus may further include:
and the permission query message sending module is used for sending a permission query message to the SPICE server before the file content corresponding to the target file object is fragmented, wherein the permission query message is used for inquiring whether a user has file export permission.
Optionally, the apparatus may further include:
the authority detection result message receiving module is used for receiving the authority detection result message sent by the SPICE server; the permission detection result message may be determined by the SPICE client detecting whether the user has file export permission according to the configuration file;
the processing module is used for processing according to the permission detection result message;
the processing module may include:
the first processing module is used for setting corresponding first prompt information in interface data under the condition that the permission detection result message indicates that the user does not have file export permission; or alternatively
The second processing module is used for setting corresponding second prompt information in the interface data and sending a file header message to the SPICE server under the condition that the permission detection result message represents that the user has the file export permission; the header message includes: path information and name information of the target file object.
Optionally, the apparatus may further include:
the file acquisition success message receiving module is used for receiving a file acquisition success message sent by the SPICE client;
the first fragment sending module is specifically configured to fragment the file content corresponding to the target file object in response to the file acquisition success message.
The present application further provides a non-transitory, readable storage medium, where one or more modules (programs) are stored, and when the one or more modules are applied to a device, the device may execute instructions (instructions) of method steps in this application.
Embodiments of the present application provide one or more machine-readable media having instructions stored thereon, which when executed by one or more processors, cause an electronic device to perform a method as described in one or more of the above embodiments. In the embodiment of the present application, the electronic device includes various types of devices such as a terminal device and a server (cluster).
Embodiments of the disclosure may be implemented as an apparatus for performing desired configurations using any suitable hardware, firmware, software, or any combination thereof, which may include: and the electronic equipment comprises terminal equipment, a server (cluster) and the like. Fig. 9 schematically illustrates an example apparatus 1100 that may be used to implement various embodiments described herein.
For one embodiment, fig. 9 illustrates an example apparatus 1100 having one or more processors 1102, a control module (chipset) 1104 coupled to at least one of the processor(s) 1102, a memory 1106 coupled to the control module 1104, a non-volatile memory (NVM)/storage 1108 coupled to the control module 1104, one or more input/output devices 1110 coupled to the control module 1104, and a network interface 1112 coupled to the control module 1104.
The processor 1102 may include one or more single-core or multi-core processors, and the processor 1102 may include any combination of general-purpose or special-purpose processors (e.g., graphics processors, application processors, baseband processors, etc.). In some embodiments, the apparatus 1100 can be implemented as a terminal device, a server (cluster), or the like in the embodiments of the present application.
In some embodiments, the apparatus 1100 may include one or more computer-readable media (e.g., the memory 1106 or the NVM/storage 1108) having instructions 1114 and one or more processors 1102 in combination with the one or more computer-readable media configured to execute the instructions 1114 to implement modules to perform the actions described in this disclosure.
For one embodiment, control module 1104 may include any suitable interface controller to provide any suitable interface to at least one of the processor(s) 1102 and/or to any suitable device or component in communication with control module 1104.
The control module 1104 may include a memory controller module to provide an interface to the memory 1106. The memory controller module may be a hardware module, a software module, and/or a firmware module.
The memory 1106 may be used to load and store data and/or instructions 1114 for the device 1100, for example. For one embodiment, memory 1106 may include any suitable volatile memory, such as suitable DRAM. In some embodiments, the memory 1106 may comprise a double data rate type four synchronous dynamic random access memory (DDR 4 SDRAM).
For one embodiment, control module 1104 may include one or more input/output controllers to provide an interface to NVM/storage 1108 and input/output device(s) 1110.
For example, NVM/storage 1108 may be used to store data and/or instructions 1114. NVM/storage 1108 may include any suitable non-volatile memory (e.g., flash memory) and/or may include any suitable non-volatile storage device(s) (e.g., one or more Hard Disk Drives (HDDs), one or more Compact Disc (CD) drives, and/or one or more Digital Versatile Disc (DVD) drives).
NVM/storage 1108 may include storage resources that are physically part of the device on which apparatus 1100 is installed, or it may be accessible by the device and need not be part of the device. For example, NVM/storage 1108 may be accessed over a network via input/output device(s) 1110.
Input/output device(s) 1110 may provide an interface for apparatus 1100 to communicate with any other suitable device, input/output devices 1110 may include communication components, audio components, sensor components, and so forth. Network interface 1112 may provide an interface for device 1100 to communicate over one or more networks, and device 1100 may communicate wirelessly with one or more components of a wireless network according to any of one or more wireless network standards and/or protocols, such as access to a communication standard-based wireless network, e.g., wiFi, 2G, 3G, 4G, 5G, etc., or a combination thereof.
For one embodiment, at least one of the processor(s) 1102 may be packaged together with logic for one or more controller(s) (e.g., memory controller modules) of control module 1104. For one embodiment, at least one of the processor(s) 1102 may be packaged together with logic for one or more controllers of control module 1104 to form a System In Package (SiP). For one embodiment, at least one of the processor(s) 1102 may be integrated on the same die with logic for one or more controller(s) of the control module 1104. For one embodiment, at least one of the processor(s) 1102 may be integrated on the same die with logic for one or more controller(s) of control module 1104 to form a system on chip (SoC).
In various embodiments, the apparatus 1100 may be, but is not limited to being: a server, a desktop computing device, or a mobile computing device (e.g., a laptop computing device, a handheld computing device, a tablet, a netbook, etc.), among other terminal devices. In various embodiments, the apparatus 1100 may have more or fewer components and/or different architectures. For example, in some embodiments, device 1100 includes one or more cameras, keyboards, liquid Crystal Display (LCD) screens (including touch screen displays), non-volatile memory ports, multiple antennas, graphics chips, application Specific Integrated Circuits (ASICs), and speakers.
The detection device can adopt a main control chip as a processor or a control module, sensor data, position information and the like are stored in a memory or an NVM/storage device, a sensor group can be used as an input/output device, and a communication interface can comprise a network interface.
For the device embodiment, since it is basically similar to the method embodiment, the description is simple, and for the relevant points, refer to the partial description of the method embodiment.
The embodiments in the present specification are all described in a progressive manner, and each embodiment focuses on differences from other embodiments, and portions that are the same and similar between the embodiments may be referred to each other.
Embodiments of the present application are described with reference to flowchart illustrations and/or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing terminal to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing terminal to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing terminal to cause a series of operational steps to be performed on the computer or other programmable terminal to produce a computer implemented process such that the instructions which execute on the computer or other programmable terminal provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present application have been described, additional variations and modifications of these embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including the preferred embodiment and all changes and modifications that fall within the true scope of the embodiments of the present application.
Finally, it should also be noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or terminal that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or terminal. Without further limitation, an element defined by the phrases "comprising one of \ 8230; \8230;" does not exclude the presence of additional like elements in a process, method, article, or terminal device that comprises the element.
The transmission method and apparatus, the electronic device, and the machine-readable medium provided by the present application are introduced in detail, and specific examples are applied herein to explain the principles and embodiments of the present application, and the descriptions of the above embodiments are only used to help understand the method and its core ideas of the present application; meanwhile, for a person skilled in the art, according to the idea of the present application, the specific implementation manner and the application scope may be changed, and in summary, the content of the present specification should not be construed as a limitation to the present application.

Claims (20)

1. A transmission method is applied to a Simple Protocol Independent Computing Environment (SPICE) client; the method comprises the following steps:
sending a connection request to the SPICE server according to the IP address of the SPICE server; the connection request is used for establishing connection between the SPICE client and the SPICE server;
receiving interface data of the target virtual machine sent by the SPICE server; the client identification of the SPICE client and the virtual machine identification of the target virtual machine have a mapping relation; the target virtual machine is deployed on a physical machine where the SPICE server side is located; the target virtual machine and the SPICE server side communicate based on a virtual network;
displaying interface data of the target virtual machine; the interface data includes: a file object stored on the target virtual machine;
receiving an export instruction of a user for a target file object; the export instructions are used for exporting the target file object on the target virtual machine to the local SPICE client;
sending the export instruction to the SPICE server so that the SPICE server transfers the export instruction to the target virtual machine;
receiving the fragment content of the current fragment of the target file object sent by the SPICE server; the current fragment is obtained by the target virtual machine fragmenting the file content corresponding to the target file object;
carrying out continuity detection and integrity detection on the fragment content of the current fragment;
and in the case that either one of continuity detection and integrity detection is not passed, sending a retransmission message to the SPICE server.
2. The method according to claim 1, wherein the fragmentation content of the current fragmentation is carried in a file content message, the file content message further comprising: fragment identification of the fragment content of the current fragment;
the continuity check includes: and detecting the continuity between the fragment identifier of the fragment content of the current fragment and the fragment identifier of the fragment content of the previous fragment.
3. The method according to claim 1, wherein the fragmentation content of the current fragmentation is carried in a file content message, the file content message further comprising: a first information abstract value of the fragment content of the current fragment;
the integrity check includes: and calculating an information abstract value aiming at the received fragment content of the current fragment, and matching the obtained second information abstract value with the first information abstract value in the file content message.
4. The method of claim 1, further comprising:
and under the condition that both continuity detection and integrity detection are passed, writing the fragment content of the current fragment into a corresponding file, and sending a successful writing message to the SPICE server.
5. The method according to claim 4, wherein the fragmentation content of the current fragmentation is carried in a file content message, the file content message further comprising: offset information of the fragment content of the current fragment relative to the file header;
the writing the fragment content of the current fragment into a corresponding file includes:
and writing the fragment content of the current fragment into a corresponding file according to the offset information.
6. The method according to any one of claims 1 to 5, further comprising:
receiving a permission query message sent by the SPICE server; the authority inquiry message is used for inquiring whether the user has file export authority; the target virtual machine sends the authority inquiry message before fragmenting the file content corresponding to the target file object;
and detecting whether the user has file export authority or not according to the configuration file, and sending a corresponding authority detection result message to the SPICE server.
7. The method of claim 6, further comprising:
receiving a file header message sent by the SPICE server under the condition that the permission detection result message represents that a user has file export permission; the header message includes: path information and name information of the target file object;
and creating a file object named by the name information under a preset download path, and sending a file acquisition success message to the SPICE server.
8. A transmission method is characterized in that the method is applied to a Simple Protocol Independent Computing Environment (SPICE) server; the method comprises the following steps:
receiving a connection request sent by an SPICE client; the connection request is used for establishing connection between the SPICE client and the SPICE server;
determining a target virtual machine corresponding to the client identifier of the SPICE client according to the mapping relation between the client identifier and the virtual machine identifier;
sending interface data of the target virtual machine to the SPICE client; the target virtual machine is deployed on a physical machine where the SPICE server side is located; the target virtual machine and the SPICE server side are communicated based on a virtual network; the interface data includes: a file object stored on the target virtual machine;
receiving a derivation instruction sent by the SPICE client side, and sending the derivation instruction to the target virtual machine; the export instructions are to export a target file object on the target virtual machine local to the SPICE client;
receiving the current fragmented content of the target file object sent by the target virtual machine, and sending the current fragmented content to the SPICE client; the current fragment is a fragment obtained by a target virtual machine fragmenting the file content corresponding to the target file object;
receiving a retransmission message sent by the SPICE client, and sending the retransmission message to a target virtual machine; and the SPICE client sends the retransmission message under the condition that any one of continuity detection and integrity detection of the fragmented content of the current fragment fails.
9. The method of claim 8, further comprising:
receiving a successful writing message sent by the SPICE client, and sending the successful writing message to a target virtual machine; and the SPICE client writes the fragment content of the current fragment into a corresponding file and sends the successful writing message under the condition that both continuity detection and integrity detection pass.
10. The method of claim 8, further comprising:
receiving a permission query message sent by a target virtual machine, and sending the permission query message to the SPICE client; the permission inquiry message is used for inquiring whether a user has file export permission;
receiving a permission detection result message sent by the SPICE client, and sending the permission detection result message to the target virtual machine; and the permission detection result message is determined by the SPICE client side according to the configuration file to detect whether the user has the file export permission.
11. The method of claim 10, further comprising:
under the condition that the authority detection result message represents that a user has file export authority, receiving a file header message sent by a target virtual machine, and sending the file header message to the SPICE client; the header message includes: path information and name information of the target file object.
12. A transmission method is applied to a target virtual machine following a Simple Protocol Independent Computing Environment (SPICE) protocol, wherein the target virtual machine is deployed on a physical machine where an SPICE server is located, and the target virtual machine and the SPICE server communicate based on a virtual network; the method comprises the following steps:
receiving, from the SPICE server, export instructions from a SPICE client; the client identification of the SPICE client and the virtual machine identification of the target virtual machine have a mapping relation; the export instructions are used for exporting the target file object on the target virtual machine to the local SPICE client;
fragmenting the file content corresponding to the target file object, and sending the fragmented content of the current fragment to the SPICE server;
receiving a retransmission message sent by the SPICE server; the SPICE client side sends the retransmission message to the SPICE server side under the condition that any one of continuity detection and integrity detection of the fragmented content of the current fragment does not pass;
and retransmitting the fragment content of the current fragment to the SPICE server according to the retransmission message.
13. The method according to claim 12, wherein the fragmentation content of the current fragmentation is carried in a file content message, the file content message further comprising: the file management method comprises the steps of identifying the fragment of the fragment content of the current fragment, and/or a first information summary value of the fragment content of the current fragment, and/or offset information of the fragment content of the current fragment relative to a file header.
14. The method of claim 12, further comprising:
receiving a successful writing message sent by the SPICE server; under the condition that both continuity detection and integrity detection pass, the SPICE client writes the fragmented content into a corresponding file and sends the successful writing message;
and sending the slicing content of the next slicing to the SPICE server according to the successful writing message.
15. The method according to claim 12, wherein before said fragmenting the file content corresponding to the target file object, the method further comprises:
sending a permission query message to the SPICE server, wherein the permission query message is used for querying whether a user has file export permission;
receiving a permission detection result message sent by the SPICE server; the permission detection result message is determined by the SPICE client side according to whether the detection user has file export permission or not;
processing according to the permission detection result message, including:
setting corresponding first prompt information in interface data under the condition that the permission detection result message represents that a user does not have file export permission; or alternatively
Under the condition that the permission detection result message represents that the user has file export permission, setting corresponding second prompt information in interface data, and sending a file header message to the SPICE server; the header message includes: path information and name information of the target file object.
16. A transmission apparatus, wherein the apparatus is applied to a Simple Protocol Independent Computing Environment (SPICE) client; the device comprises:
a connection request sending module, configured to send a connection request to the SPICE server according to the IP address of the SPICE server; the connection request is used for establishing connection between the SPICE client and the SPICE server;
the interface data receiving module is used for receiving the interface data of the target virtual machine sent by the SPICE server; the client identification of the SPICE client and the virtual machine identification of the target virtual machine have a mapping relation; the target virtual machine is deployed on a physical machine where the SPICE server side is located; the target virtual machine and the SPICE server side communicate based on a virtual network;
the interface data display module is used for displaying the interface data of the target virtual machine; the interface data includes: a file object stored on the target virtual machine;
the instruction receiving module is used for receiving an export instruction of a user for the target file object; the export instructions are to export a target file object on the target virtual machine local to the SPICE client;
the instruction sending module is used for sending the export instruction to the SPICE server so that the SPICE server transfers the export instruction to the target virtual machine;
a first fragment content receiving module, configured to receive a fragment content of a current fragment of the target file object sent by an SPICE server; the current fragment is obtained by the target virtual machine fragmenting the file content corresponding to the target file object;
the detection module is used for carrying out continuity detection and integrity detection on the fragment content of the current fragment;
and the retransmission message sending module is used for sending the retransmission message to the SPICE server side under the condition that any one of the continuity detection and the integrity detection fails.
17. A transmission device is characterized in that the device is applied to a Simple Protocol Independent Computing Environment (SPICE) server; the device comprises:
the connection request receiving module is used for receiving a connection request sent by the SPICE client; the connection request is used for establishing connection between the SPICE client and the SPICE server;
the target virtual machine determining module is used for determining a target virtual machine corresponding to the client identifier of the SPICE client according to the mapping relation between the client identifier and the virtual machine identifier;
the interface data sending module is used for sending the interface data of the target virtual machine to the SPICE client; the target virtual machine is deployed on a physical machine where the SPICE server side is located; the target virtual machine and the SPICE server side communicate based on a virtual network; the interface data includes: a file object stored on the target virtual machine;
the export instruction transfer module is used for receiving an export instruction sent by the SPICE client and sending the export instruction to the target virtual machine; the export instructions are to export a target file object on the target virtual machine local to the SPICE client;
the first fragment content transfer module is used for receiving the fragment content of the current fragment of the target file object sent by the target virtual machine and sending the fragment content of the current fragment to the SPICE client; the current fragment is obtained by the target virtual machine fragmenting the file content corresponding to the target file object;
the retransmission message transfer module is used for receiving the retransmission message sent by the SPICE client and sending the retransmission message to the target virtual machine; and the SPICE client sends the retransmission message under the condition that any one of continuity detection and integrity detection of the fragmented content of the current fragment is not passed.
18. A transmission device is applied to a target virtual machine following a Simple Protocol Independent Computing Environment (SPICE) protocol, wherein the target virtual machine is deployed on a physical machine where an SPICE server is located, and the target virtual machine and the SPICE server communicate based on a virtual network; the device comprises:
the export instruction receiving module is used for receiving export instructions from the SPICE client side from the SPICE server side; the client identification of the SPICE client and the virtual machine identification of the target virtual machine have a mapping relation; the export instructions are used for exporting the target file object on the target virtual machine to the local SPICE client;
the fragmentation module is used for fragmenting the file content corresponding to the target file object;
the first fragment sending module is used for sending the fragment content of the current fragment to the SPICE server;
the retransmission message receiving module is used for receiving a retransmission message sent by the SPICE server; the SPICE client side sends the retransmission message to the SPICE server side under the condition that any one of continuity detection and integrity detection of the fragment content of the current fragment does not pass;
and the retransmission module is used for retransmitting the fragment content of the current fragment to the SPICE server according to the retransmission message.
19. An electronic device, comprising: a processor; and
a memory having executable code stored thereon that, when executed, causes the processor to perform the method of any of claims 1-15.
20. A machine readable medium having executable code stored thereon, which when executed, causes a processor to perform the method of any of claims 1-15.
CN202211154480.8A 2022-09-22 2022-09-22 Transmission method, transmission apparatus, electronic device, and medium Active CN115242783B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211154480.8A CN115242783B (en) 2022-09-22 2022-09-22 Transmission method, transmission apparatus, electronic device, and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211154480.8A CN115242783B (en) 2022-09-22 2022-09-22 Transmission method, transmission apparatus, electronic device, and medium

Publications (2)

Publication Number Publication Date
CN115242783A true CN115242783A (en) 2022-10-25
CN115242783B CN115242783B (en) 2022-11-29

Family

ID=83667201

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211154480.8A Active CN115242783B (en) 2022-09-22 2022-09-22 Transmission method, transmission apparatus, electronic device, and medium

Country Status (1)

Country Link
CN (1) CN115242783B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116074307A (en) * 2023-01-28 2023-05-05 中科方德软件有限公司 Transmission method, transmission device, electronic equipment and medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110336846A (en) * 2019-04-15 2019-10-15 长飞光纤光缆股份有限公司 A method of the cloud desk file based on spice agreement pulls transmission
CN111988292A (en) * 2020-08-08 2020-11-24 于奎 Method, device and system for accessing internet by intranet terminal
US20210294778A1 (en) * 2020-03-19 2021-09-23 Sun Yat-Sen University Small-file storage optimization system based on virtual file system in kubernetes user-mode application
CN113992346A (en) * 2021-09-16 2022-01-28 深圳市证通电子股份有限公司 Implementation method of security cloud desktop based on state password reinforcement

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110336846A (en) * 2019-04-15 2019-10-15 长飞光纤光缆股份有限公司 A method of the cloud desk file based on spice agreement pulls transmission
US20210294778A1 (en) * 2020-03-19 2021-09-23 Sun Yat-Sen University Small-file storage optimization system based on virtual file system in kubernetes user-mode application
CN111988292A (en) * 2020-08-08 2020-11-24 于奎 Method, device and system for accessing internet by intranet terminal
CN113992346A (en) * 2021-09-16 2022-01-28 深圳市证通电子股份有限公司 Implementation method of security cloud desktop based on state password reinforcement

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116074307A (en) * 2023-01-28 2023-05-05 中科方德软件有限公司 Transmission method, transmission device, electronic equipment and medium

Also Published As

Publication number Publication date
CN115242783B (en) 2022-11-29

Similar Documents

Publication Publication Date Title
WO2021164178A1 (en) Cloud technology-based file fragment uploading method and apparatus, and device and storage medium
US10193971B2 (en) Method, server and system for application synchronization
US10187358B2 (en) Data transfer optimizations
US8213332B2 (en) Peer-to-peer data synchronization architecture
EP2901659B1 (en) Systems and methods for sharing files among multiple terminals
WO2014012449A1 (en) Method, device, processing center and system for desktop synchronization
CN109597717A (en) A kind of data backup, restoration methods, device, electronic equipment and storage medium
CN108093015B (en) File transmission system
CN115242783B (en) Transmission method, transmission apparatus, electronic device, and medium
WO2017097106A1 (en) Method and apparatus for transmitting file difference
EP3065058B1 (en) A method and a device for flowing data between entities
WO2015027430A1 (en) Server and file sharing method
US10623499B2 (en) Method and system for operating and controlling data, and user terminal
CN103618795A (en) Cross-device file processing method, client sides and server
WO2022142536A1 (en) Grayscale publishing method, system and apparatus, and device and storage medium
CN112615929B (en) Method and equipment for pushing messages
CN110134419B (en) System upgrading method, device, equipment and storage medium for double-sided cabinet
CN111835871A (en) Method and device for transmitting data file and method and device for receiving data file
CN109688176B (en) File synchronization method, terminal, network device and storage medium
US10965781B2 (en) Method and server for displaying access content
CN116074307A (en) Transmission method, transmission device, electronic equipment and medium
CN109302446B (en) Cross-platform access method and device, electronic equipment and storage medium
US10977238B2 (en) Validity map-based tracking of user data updates
US11553031B2 (en) Method and apparatus for processing data
US11151159B2 (en) System and method for deduplication-aware replication with an unreliable hash

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant