CN115134355B - Desktop cloud data transmission method and related equipment - Google Patents

Desktop cloud data transmission method and related equipment Download PDF

Info

Publication number
CN115134355B
CN115134355B CN202211059429.9A CN202211059429A CN115134355B CN 115134355 B CN115134355 B CN 115134355B CN 202211059429 A CN202211059429 A CN 202211059429A CN 115134355 B CN115134355 B CN 115134355B
Authority
CN
China
Prior art keywords
local
file
information
local end
server
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.)
Active
Application number
CN202211059429.9A
Other languages
Chinese (zh)
Other versions
CN115134355A (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.)
Beijing Huijin Chunhua Technology Co ltd
Original Assignee
Beijing Huijin Chunhua Technology 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 Beijing Huijin Chunhua Technology Co ltd filed Critical Beijing Huijin Chunhua Technology Co ltd
Priority to CN202211059429.9A priority Critical patent/CN115134355B/en
Publication of CN115134355A publication Critical patent/CN115134355A/en
Application granted granted Critical
Publication of CN115134355B publication Critical patent/CN115134355B/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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

The invention discloses a desktop cloud data transmission method and related equipment. The method comprises the following steps: receiving file transmission request information sent by a first local end; acquiring second local side information connected with the server side; sending the second local side information to the first local side to enable the first local side to establish local connection with the second local side; and transmitting a corresponding part of a target file corresponding to the file transmission request information to the first local side and the second local side based on the file transmission request information, so that the first local side acquires the complete target file from the server side and the second local side. According to the desktop cloud data transmission method provided by the embodiment of the application, the file transmission efficiency is improved, the transmission channels of a plurality of file segments are increased, and the file transmission stability is improved.

Description

Desktop cloud data transmission method and related equipment
Technical Field
The present disclosure relates to the field of desktop cloud, and more particularly, to a desktop cloud data transmission method and related device.
Background
The desktop cloud has become the most popular office environment today. The cloud desktop and the local end share data, which is one of daily important requirements, and the data is transferred through the clipboard, which is one of the most convenient ways. And at the server side, executing copy operation, sending the clipboard format list to the local through a connecting channel of the local desktop and the remote desktop, and injecting the clipboard format list into a local system clipboard after the local side receives the clipboard format list. In the current file transmission mode, each local end and the service end establish a session, each session is isolated from each other, and data exchange between one local end and the service end is realized by only using one session, so that the data transmission speed is limited.
Disclosure of Invention
In this summary, concepts in a simplified form are introduced that are further described in the detailed description. This summary of the invention is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
In order to provide a more intelligent cloud desktop data transmission method, in a first aspect, the present invention provides a desktop cloud data transmission method, which is used for a server, and the method includes:
receiving file transmission request information sent by a first local end;
acquiring second local side information connected with the server side;
sending the second local side information to the first local side to enable the first local side to establish local connection with the second local side;
and transmitting a corresponding part of a target file corresponding to the file transmission request information to the first local side and the second local side based on the file transmission request information, so that the first local side acquires the complete target file from the server side and the second local side.
Optionally, the sending the second local side information to the first local side to establish a local connection between the first local side and the second local side includes:
acquiring a first priority corresponding to the first local end;
acquiring a second priority corresponding to the second local terminal;
and controlling the first local terminal to establish local connection with the second local terminal under the condition that the first priority is higher than the second priority.
Optionally, the sending the second local side information to the first local side to establish a local connection between the first local side and the second local side includes:
sending the second local terminal information to the first local terminal;
receiving second local connection request information of the first local, wherein the second local connection request information is generated based on the selection of the first local;
and sending connection request information to a corresponding second local end according to the second local end connection request information so as to enable the first local end to establish local connection with the second local end.
Optionally, the obtaining the second local side information connected to the server side includes:
acquiring attendance information of organization frameworks to which all local ends belong;
selecting local terminals related to absent personnel or outworkers from all the local terminals as second local terminals based on the attendance information, and acquiring second local terminal information connected with the server terminal; and/or the presence of a gas in the gas,
acquiring local area network architecture information to which all local ends belong;
acquiring the corresponding organization structure information of all local terminals based on the local area network structure information;
determining a local side corresponding to a subordinate user of the user to which the first local side belongs as a second local side based on the organization structure information, and acquiring second local side information connected with the server side; and/or the presence of a gas in the gas,
acquiring scheduling information of organization frameworks to which all local ends belong;
generating a subordinate local scheduling schedule based on the scheduling information;
determining the second local side based on the subordinate local side arrangement schedule and the receiving time of the file transmission request information, and acquiring second local side information connected with the server side; and/or the presence of a gas in the gas,
acquiring user mobile terminal information of an organization structure to which all local terminals belong;
acquiring user position information based on the user mobile terminal information;
and determining the local end associated with the user, the distance of which is greater than the preset distance, as a second local end based on the distance between the position information and the local end associated with the user, and acquiring second local end information connected with the server.
Optionally, the file transmission request information includes target file segment information;
the transmitting a corresponding portion of a target file corresponding to the file transmission request information to the first local peer and the second local peer based on the file transmission request so that the first local peer acquires the complete target file from the server and the second local peer, includes:
transmitting a first file to the first local terminal based on the target file segmentation information;
and transmitting a second file to the second local end according to the target file segmentation information so that the first local end acquires the second file through local connection, wherein the complete target file comprises the first file and the second file.
In a second aspect, the present application provides a desktop cloud data transmission method, which is used for a client, and is characterized by including:
sending file transmission request information to a target server so as to establish local connection with at least one second local end, wherein the second local end is the local end establishing connection with the target server;
receiving a first file corresponding to a target file sent by a target server;
receiving a second file corresponding to a target file sent by the second local end, wherein the second file is acquired from the target server end by the second local end and is transmitted to the local end through local connection;
and acquiring the complete target file based on the first file and the second file.
Optionally, the transmission request information includes target file segmentation information;
the method further comprises the following steps:
storing the first file in a temporary file segment;
storing the second file in a temporary file segment;
monitoring the transmission result of the temporary file segment based on the target file segmentation information;
and storing the first file and/or the second file into a fixed file segment under the condition that the transmission of the first file and/or the second file is completed.
In a third aspect, the present invention further provides a desktop cloud data transmission apparatus, including:
the receiving unit is used for receiving file transmission request information sent by a first local end;
the acquisition unit is used for acquiring second local side information connected with the server side;
a sending unit, configured to send the second local side information to the first local side so that the first local side establishes a local connection with the second local side;
a transmission unit, configured to transmit, to the first local end and the second local end, a corresponding portion of a target file corresponding to the file transmission request information based on the file transmission request information, so that the first local end obtains the complete target file from the server end and the second local end.
In a fourth aspect, an electronic device includes: the present invention also provides a desktop cloud data transmission method according to any one of the first aspect above, wherein the desktop cloud data transmission method comprises the steps of storing a computer program in a memory, and executing the computer program stored in the memory.
In a fifth aspect, the present invention further provides a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements the desktop cloud data transmission method of any one of the foregoing first aspects.
To sum up, the desktop cloud data transmission method of the embodiment of the present application includes: receiving file transmission request information sent by a first local end; acquiring second local terminal information connected with the server terminal; sending the second local side information to the first local side to enable the first local side to establish local connection with the second local side; and transmitting the corresponding part of the target file corresponding to the file transmission request information to the first local end and the second local end based on the file transmission request information, so that the first local end acquires the complete target file from the server end and the second local end. According to the desktop cloud data transmission method provided by the embodiment of the application, the server sends the information of the second local end connected with the server to the first local end based on the file transmission request of the first client, the first local end and the second local end are connected, then the transmitted files are transmitted to the first local end and the second local end which is connected with the first local end in a segmented mode, the second local end receives the transmitted files and then forwards the transmitted files to the first local end through the local connection, and the first local end is helped to complete the file transmission task together. According to the method provided by the embodiment of the application, the local connection is established between the first local end and the second local end, and the file transmission is completed in parallel through the first local end and the second local end, so that the file transmission efficiency is improved, the transmission channels of a plurality of file segments are increased, and the file transmission stability is improved. When one channel is damaged, the transmission capacity of the other channels can be used for compensating. Meanwhile, the transmission capability of conversation between other clients and the server is borrowed, and the utilization rate of the server is improved.
Additional advantages, objects, and features of the desktop cloud data transmission method of the invention will be set forth in part in the description which follows and in part will become apparent to those having ordinary skill in the art upon examination of the following or may be learned from practice of the invention.
Drawings
Various other advantages and benefits will become apparent to those of ordinary skill in the art upon reading the following detailed description of the preferred embodiments. The drawings are only for purposes of illustrating the preferred embodiments and are not to be construed as limiting the specification. Also, like reference numerals are used to refer to like parts throughout the drawings. In the drawings:
fig. 1 is a schematic flow chart of a desktop cloud data transmission method according to an embodiment of the present application;
fig. 2 is a schematic diagram of a conventional desktop cloud data transmission structure according to an embodiment of the present disclosure;
fig. 3 is a schematic diagram of a conventional desktop cloud data transmission process provided in an embodiment of the present application;
fig. 4 is a schematic diagram of a desktop cloud data transmission structure provided in an embodiment of the present application;
fig. 5 is a schematic diagram of another desktop cloud data transmission structure provided in the embodiment of the present application;
fig. 6 is a schematic flow chart of another desktop cloud data transmission method provided in the embodiment of the present application;
fig. 7 is a schematic flowchart of another desktop cloud data transmission method provided in the embodiment of the present application;
fig. 8 is a schematic structural diagram of a file segment request data format according to an embodiment of the present application;
fig. 9 is a schematic structural diagram of a file segment response data format provided in an embodiment of the present application;
fig. 10 is a schematic structural diagram of a desktop cloud data transmission device according to an embodiment of the present application;
fig. 11 is a schematic structural diagram of an electronic device for desktop cloud data transmission according to an embodiment of the present application.
Detailed Description
According to the desktop cloud data transmission method provided by the embodiment of the application, the server sends the information of the second local end connected with the server to the first local end based on the file transmission request of the first client, the first local end and the second local end are connected, then the transmitted files are transmitted to the first local end and the second local end which is connected with the first local end in a segmented mode, the second local end receives the transmitted files and then forwards the transmitted files to the first local end through the local connection, and the first local end is helped to complete the file transmission task together. According to the method provided by the embodiment of the application, the local connection is established between the first local end and the second local end, and the file transmission is completed in parallel through the first local end and the second local end, so that the file transmission efficiency is improved, the transmission channels of a plurality of file segments are increased, and the file transmission stability is improved. The damage of one channel can be compensated by the transmission capability of other channels, and the transmission capability of the conversation between other clients and the server is borrowed, so that the utilization rate of the server is improved.
The terms "first," "second," "third," "fourth," and the like in the description and in the claims of the present application and in the drawings described above, if any, are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It will be appreciated that the data so used may be interchanged under appropriate circumstances such that the embodiments described herein may be practiced otherwise than as specifically illustrated or described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus. The technical solutions in the embodiments of the present application will be described clearly and completely with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only some embodiments of the present application, and not all embodiments.
In the current cloud desktop system, as shown in fig. 2 and 3, a local end establishes a connection with a server, when the local end performs a copy operation, the server sends a clipboard format list to the local through a connection channel between the local desktop and a remote desktop, and after the local end receives the clipboard format list, the local end injects the clipboard format list sent by the server into a local system clipboard. But if the paste data content is very large, for example, a file has a size of several G to several tens G. At this time, the local desktop triggering and pasting, such as the file manager, does not issue a request for file contents of several G to several tens G at a time, but requests the file contents through the system clipboard uniformly and orderly by sub-packaging one by one. The specific data request response flow is shown in fig. 3, after the paste operation is performed on the local desktop, the file manager on the local desktop requests a file content with a certain size through the system clipboard, the request is firstly sent to the remote end through the connecting channel of the local and remote desktops, the remote end receives the request, collects the 4K file content, and then returns the 4K file content data to the data request end of the local desktop through the connecting channel of the local and remote desktops. After receiving the 4K file content, actively triggering a second 4K file content request. When the file content is large, the process of transmitting the file with the same size of 4K is repeated for n times repeatedly in the mode shown in FIG. 3 until the file content request is processed. In the above process, there are three very distinct characteristics. Firstly, limited by the system, the network request and the data response of the file are sequentially and serially carried out, and the file does not have the parallel capability; secondly, in a multi-session scene, due to the preemption of system resources by other sessions, the transmission efficiency under the current session is reduced; thirdly, due to the isolation of session levels in a multi-session scene, only the transmission channels of R1-S1 are utilized, and the transmission channels of other sessions cannot be effectively utilized. Both of these causes cause additional time consumption and reduce the remote transmission rate of the whole file content.
Referring to fig. 1, an embodiment of the present application provides a schematic flow chart of a method for transmitting desktop cloud data of a server, which may specifically include:
s110, receiving file transmission request information sent by a first local end;
for example, referring to fig. 4, when the server receives file transmission request information sent by the first local end, the file transmission request information may be triggered based on a paste operation instruction of a user, and a request file corresponding to the transmission request information is a target file selected by the user at the server and needing to be pasted.
S120, acquiring second local side information connected with the server side;
for example, after receiving the file transfer request information of the first local peer, the server obtains information of a second local peer that establishes a connection with the server, where the second local peer is a local peer that establishes a connection with the server except the first local peer, and as shown in fig. 4, 4 second local peers are included in total from the second local peer 1 to the second local peer 4.
S130, sending the second local side information to the first local side to enable the first local side and the second local side to establish local connection;
for example, the server transmits information of the second local peer connected to the server to the first local peer, where the information of the second local peer may include information such as an IP address of the second local peer. As shown in fig. 4, the second local end connected to the client has a second local end 1 to a second local end 4, and after receiving the information of the second local end, the first local end may apply for establishing a local connection with all or part of the second local end.
S140, transmitting a corresponding portion of the target file corresponding to the file transfer request information to the first local peer and the second local peer based on the file transfer request information, so that the first local peer obtains the complete target file from the server and the second local peer.
Illustratively, after the first local end and the second local end establish local connection, the first local end serves as a Master role of a file transfer task corresponding to the current file transfer request information, and the second local end serves as a slave role. The client can divide the file requested to be transmitted into different parts based on the file transmission request and send the different parts to the first local end and the second local end, and the second local end forwards the file to the first local end after receiving the transmission file sent by the server, so that parallel data transmission is realized.
As shown in fig. 5, a local transmission management module and a local connection module may be disposed in the Master local end, where the local transmission management module includes a file request management module, a Master-slave device connection module, and a temporary file segment management module, and correspondingly, the server end includes a remote desktop management module and a remote connection module. The Master-Slave device connection module is responsible for connecting and disconnecting Master and Slave role devices; idle conditions of the Slave device can be recorded; receiving a file segment transmission task and completing the transmission of the content of a certain file segment; and the temporary file management module is responsible for receiving and storing the file segment content transmitted by the remote PC as a temporary file. And the system is responsible for receiving other package content requests of the file request receiving module, reading the content of the specified package from the temporary file and returning the content to the file request receiving module. And also supports deletion of temporary files. And the application, registration and cancellation of the Master and the Slave roles are supported. And supporting the request of role list information, such as connection information of a plurality of Slave roles. And supporting the application processing of the Master connection Slave.
To sum up, in the desktop cloud data transmission method provided in the embodiment of the present application, a server sends, based on a file transmission request of a first client, information of a second local end connected to the server to a first local end, and after the first local end and the second local end are connected to each other, the transmitted files are respectively transmitted in segments to the first local end and the second local end which is locally connected to the first local end, and the second local end forwards the transmitted files to the first local end through local connection after receiving the transmitted files, so as to help the first local end to jointly complete a file transmission task. According to the method provided by the embodiment of the application, the local connection is established between the first local end and the second local end, and the file transmission is completed in parallel through the first local end and the second local end, so that the file transmission efficiency is improved, the transmission channels of a plurality of file segments are increased, and the file transmission stability is improved. The damage of one channel can be compensated by the transmission capability of other channels, and the utilization rate of the server is improved by borrowing the transmission capability of the conversation between other clients and the server.
In some examples, the sending the second local peer information to the first local peer to establish a local connection between the first local peer and the second local peer includes:
acquiring a first priority corresponding to the first local terminal;
acquiring a second priority corresponding to the second local terminal;
and controlling the first local terminal to establish local connection with the second local terminal under the condition that the first priority is higher than the second priority.
Illustratively, when receiving file transmission request information sent by a first local end, a server acquires a first priority of the first local end and a second priority of a second local end connected with the server, the server automatically judges the grades of the first priority and the second priority, and controls the second local end with the second priority smaller than the first priority to establish connection with the first local end, so that the second local end and the first local end complete a data transmission task together.
In summary, according to the desktop cloud data transmission method provided by the embodiment of the application, the server can automatically judge the priority between the local ends, and control the second local end with the priority lower than that of the first local end to automatically establish local connection with the first local end, so as to complete the file transmission task of the first local end together, and the method is convenient and fast.
In some examples, the sending the second local peer information to the first local peer to establish a local connection between the first local peer and the second local peer includes:
sending the second local terminal information to the first local terminal;
receiving second local connection request information of the first local, wherein the second local connection request information is generated based on the selection of the first local;
and sending connection request information to a corresponding second local end according to the second local end connection request information so as to enable the first local end to establish local connection with the second local end.
Illustratively, in the process of requesting to establish a local connection between a first local side and a second local side, after receiving information of a second client side sent by a server side, the first local side may select from a plurality of second client sides, generate connection request information according to a selection result, and send the connection request information to the server side, the server side sends the connection request information to the corresponding second client side, and after receiving the connection request, the second client side may select to receive the connection or reject the connection.
The above process, namely the process of initializing the Master and the slave, may specifically include the steps of: S201-S212.
S201, the local connection module of the PC1 starts to connect with the remote desktop S1.
S202, the local connection module of the PC1 starts the local transmission management module.
S203, the local connection module registers the PC1 as a Master role through the remote desktop management module.
S204, the remote desktop management module records that the local PC1 is in the Master role.
S205, the local connection module of the PC1 acquires a local PC list registered on the remote desktop management module through the remote desktop management module.
S206, PC1 provides a drop-down list, and selects the local PC2, PC4 of the non-Master role/non-Slave role to be connected.
S207, the local PC2 receives the connection request of the local PC1 in the Master role.
S208, judging whether the local PC2 user agrees to establish the connection.
S209, if the connection is refused, the whole flow is ended
S210, PC1 receives the connection permission response of PC2 user.
S211, the local PC2 registers the Slave role of the local PC and the master-Slave information of the Slave role and the local PC1 to the remote desktop management module.
And S212, ending.
The process that each second local end is determined to be slave can be completed through the steps.
After the second local end establishes local connection with the first local end, if the second local end has other tasks to be executed, the second local end can request to disconnect the local connection, that is, to log off the slave role. Specifically, the method may include steps S301 to S313:
s301, a function of selectively disconnecting the connection with the Master is provided on the PC 2.
S302, judging that the file segment is transmitted on the PC2,
s303, if yes, prompting the user that the PC1 is helping to complete the file transmission and whether to forcibly disconnect. If not, the process ends.
S304, disconnecting the PC2 from the PC 1;
s305, the PC2 applies for logging out the Slave role of the remote desktop management module.
S306, the remote desktop management module logs out the Slave role of the PC2, deletes the Master-Slave relationship between the Slave role and the PC1, and notifies the Master role PC1 of the message.
S307, PC1 provides the option of logging off its Master role.
S308, judging whether the PC1 is transmitting the file segments,
s309, if yes, the PC1 prompts the user that the PC1 is transmitting the file and is forcibly disconnected, and if not, the process exits.
S310, PC1 disconnects PC2
S311, PC1 logs out its Master role to remote desktop management module
S312, the remote desktop management module logs out the Master role of the PC1 and deletes the Slave role of the PC 2/which has a Master-Slave relationship with the PC1.
And S313, ending the process.
In summary, according to the desktop cloud data transmission method provided by the embodiment of the application, in the process of establishing and cancelling the local connection between the first client and the second client, a visual and operable human-computer interaction interface based on user selection is provided for a user, and the user can establish or break the connection and register or cancel role information according to own needs.
In some examples, the obtaining of the second local peer information connected to the server includes:
acquiring attendance information of organization frameworks to which all local ends belong;
selecting local terminals related to absent personnel or outworkers from all the local terminals as second local terminals based on the attendance information, and acquiring second local terminal information connected with the server terminal; and/or the presence of a gas in the gas,
acquiring local area network architecture information to which all local ends belong;
acquiring the corresponding organization architecture information of all the local terminals based on the architecture information of the local area network;
determining a local side corresponding to a subordinate user of the user to which the first local side belongs as a second local side based on the organization structure information, and acquiring second local side information connected with the server side; and/or the presence of a gas in the gas,
acquiring scheduling information of organization frameworks to which all local ends belong;
generating a subordinate local scheduling schedule based on the scheduling information;
determining the second local side based on the subordinate local side arrangement schedule and the receiving time of the file transmission request information, and acquiring second local side information connected with the server side; and/or the presence of a gas in the atmosphere,
acquiring user mobile terminal information of an organization structure to which all local terminals belong;
acquiring user position information based on the user mobile terminal information;
and determining the local end associated with the user, the distance of which is greater than the preset distance, as a second local end based on the distance between the position information and the local end associated with the user, and acquiring the information of the second local end connected with the server.
Illustratively, in the process of establishing the local connection between the first local end and the second local end, the automatic connection may be implemented by one or more of the following three ways a, B, C, and D.
A: the attendance checking method comprises the steps of obtaining attendance checking information of all local terminals and in a framework which can be the same office, wherein the attendance checking information can be office attendance checking information or outing attendance checking information, so that corresponding local terminals of absent personnel and outing personnel can be determined, the corresponding local terminals are determined to be second local terminals, and the transmission capability of the local terminals of the outing personnel or the outing personnel is fully utilized.
B: the method comprises the steps of obtaining organization structure information of a local end, determining that a subordinate user of a first local end, for example, the first local end is the local end of a project manager, belongs to staff of the same project, and the local end of the staff with the position grade lower than that of the project manager is a second local end, helping the first local end to realize file transmission by utilizing the local end corresponding to the subordinate user of the subordinate user, and preferentially ensuring the file transmission of a user with a higher level.
C: according to the scheduling information of the organization structure to which the local end belongs, a subordinate local end scheduling schedule is generated based on the scheduling information, namely different workers may correspond to different scheduling schedules, and the local ends of the personnel who are not scheduled at a certain moment are in an idle state, so that the local ends can be used as second local ends to help the first local end to transmit files together.
D: the method comprises the steps of obtaining position information of a mobile terminal of a user corresponding to a local end, if the distance between the position information and the local end is larger than a preset distance, the user is considered to be far away from the local end, and the local end is not used, at the moment, the local end related to the user with the distance larger than the preset distance can be used as a second local end, so that the second local end and a first local end are connected locally, and the first local end is helped to transmit files together.
In summary, the desktop cloud data transmission method provided by the embodiment of the application provides various methods for automatically establishing local connection, and guarantees the transmission speed of files without affecting the normal work of other local ends.
In some examples, the file transfer request information includes target file segment information;
the transmitting a corresponding portion of a target file corresponding to the file transmission request information to the first local peer and the second local peer based on the file transmission request so that the first local peer acquires the complete target file from the server and the second local peer, includes:
transmitting a first file to the first local terminal based on the target file segmentation information;
and transmitting a second file to the second local end according to the target file segmentation information so that the first local end acquires the second file through local connection, wherein the complete target file comprises the first file and the second file.
Illustratively, the server divides the target file packet into a plurality of parts, namely a first file and a second file, according to the target file segmentation information in the file transmission request information, the first file is sent to the first local terminal, the second file is sent to the second local terminal, the second local terminal forwards the second file to the first local terminal after receiving the second file, all the first file and the second file received by the first local terminal are complete target files, and through the cooperation of the plurality of second local terminals, parallel data transmission can be realized, the time of data transmission is saved, and the resources of the server are fully utilized.
In a second aspect, the present application provides a desktop cloud data transmission method, which is used for a client, please refer to fig. 6, and includes:
s410, sending file transmission request information to a target server to establish local connection with at least one second local end, wherein the second local end is a local end establishing connection with the target server;
illustratively, a first service end sends transmission request information to a target service end, after the service end receives file transmission request information of a first local end, the service end obtains information of a second local end which is connected with the service end, the service end transmits the information of the second local end which is connected with the service end to the first local end, and the first local end and the second local end establish local connection.
S420, receiving a first file corresponding to the target file sent by the target server;
illustratively, after the first local end and the second local end establish local connection, the first local end serves as a Master role of a file transfer task corresponding to current file transfer request information, the second local end serves as a slave role, and the target server sends the first file to the first local end.
S430, receiving a second file corresponding to a target file sent by the second local side, wherein the second file is acquired from the target server side by the second local side and is transmitted to the local side through local connection;
illustratively, the target server sends the second file to the second local end, and the second local end forwards the second file to the first local end through the local connection after receiving the second file.
S440, acquiring a complete target file based on the first file and the second file.
Illustratively, the first local end acquires the complete target file after receiving all the first file and the second file.
To sum up, in the desktop cloud data transmission method provided in the embodiment of the present application, a first local end sends file transmission request information to a server, the server sends second local end information connected to the server to a first local end, the first local end establishes local connection with the second local end, the server transmits transmitted file segments to the first local end and the second local end establishing local connection with the first local end, and the second local end forwards the transmitted file segments to the first local end through the local connection after receiving the transmitted file, so as to help the first local end to complete a file transmission task together. According to the method provided by the embodiment of the application, the local connection is established between the first local end and the second local end, and the file transmission is completed in parallel through the first local end and the second local end, so that the file transmission efficiency is improved, the transmission channels of a plurality of file segments are increased, and the file transmission stability is improved. The damage of one channel can be compensated by the transmission capability of other channels, and the transmission capability of the conversation between other clients and the server is borrowed, so that the utilization rate of the server is improved.
In some examples, the transmission request information includes target file segment information;
the method further comprises the following steps:
storing the first file in a temporary file segment;
storing the second file in a temporary file segment;
monitoring the transmission result of the temporary file segment based on the target file segmentation information;
and storing the first file and/or the second file into a fixed file segment under the condition that the transmission of the first file and/or the second file is completed.
Illustratively, the first local end is provided with a temporary file segment for storing the received first file and the second file, and monitors the transmission result of the temporary file segment, stores the first file and the second file into the fixed file segment after the transmission of the first file and the second file is completed, and deletes the file stored in the temporary file segment to complete the transmission of the file data.
Specifically, the method comprises the steps of S501 and S515:
s501, the file manager on the local PC1 executes the paste operation.
S502, the request of the file package is forwarded to the file request management module through the system clipboard.
S503, the file request management module segments the file according to the unit of 10M and marks the file in sequence. Segments 1 through N in the following figures.
And S504, the file request management module obtains a Slave device list through the master device management module and the Slave device management module.
And S505, judging whether the Slave equipment is idle.
S506, if no Slave device is idle, the file request management module allocates the transmission task of the file segment to the Master device.
And S507, copying the file segment to the Master from the far end through the Master device through a session connected with the Master device. As shown by the dashed arrows in fig. 7.
And S508, if the Slave device is idle, the file request management module allocates the transmission task of a certain file segment to a certain Slave device. As indicated by the dashed and solid arrows in fig. 7.
And S509, the Slave device copies the file segment to the Slave device from the far end through the session connected with the Slave device.
And S510, the Slave device returns the file segment content to the Master device.
And S511, a temporary file segment management module on the Master PC stores the content of the file segment into a temporary file.
And S512, redistributing the next file segment transmission task. The file segment transmission task can complete parallel transmission based on a plurality of Slave.
S513, the file request management module returns a certain packet of data on a certain file segment to the system clipboard.
And S514, the system clipboard returns a certain packet of data to the file manager.
And S515, finishing the requests of all the file packages, and ending the process.
FIG. 8 is a file segment request data format description, the file segment request format description is as follows: the message type is a 16-bit unsigned integer and the coding of the information type message type field used for the content field in the data block is assigned as: 0 represents a file segment request, and 1 represents a file segment response; the message state is a 16-bit unsigned integer, and the encoding allocation of the state type field of the content field in the data block is 0 to indicate success, and 1 to indicate failure; message size: the value is used for expressing the number of bytes comprising a message type field, a message state field, a message length field, a file name field, a random number field and a file segment sequence number field; file name: the full name of the file to be transmitted; random numbering: random values that can be generated for seeds according to millisecond time; sequence number of file segment: the file segment sequence number starts at 1 and the maximum is the total size of the file divided by the size of a single file segment.
FIG. 9 is a diagram of a data format of a file segment response, where the message type is a 16-bit unsigned integer, and the encoding assignment of the information type message type field used for the content field in the data block is 0 for a file segment request and 1 for a file segment response; the message status is a 16-bit unsigned integer and the status type 0 of the field used to contain the contents in the data block represents success and 1 represents failure. Message size: the value is used for expressing the number of bytes including a message type field, a message state field, a message length field, a file name field, a random number field, a file segment sequence number field, a file segment sub-packet total number field, a file segment sub-packet sequence number field, a file segment sub-packet size field and file segment sub-packet content; file name: the full name of the file to be transmitted; random numbering: a random number field value delivered by the file segment request message; sequence number of file segment: a file segment sequence number field value transmitted from the file segment request message; total number of file segment packets: due to the limited system transmission, the transmission of a single file segment also needs to be divided into small packets supported by the system, and one file segment is formed by combining a plurality of small packets. The total is the size of the file segments divided by the size of the packets supported by the system. The sequence number of the file segment sub-package is as follows: the sequence number starts with 1; the file segment subpackage size is as follows: the size of the file segment sub-package. The subpackage content of the file segments is as follows: the content of the file segment sub-package; saving description of temporary file segment: the temporary file segments are saved at the paste end, namely the temporary file segments are saved on the local PC in the Master role. The temporary file segment is composed of a plurality of file segment sub-packets; the temporary saved filename of the temporary file segment may be: file name _ random number _ sequence number of file segment; the temporary file management module responds to the reading of the file content by the file manager by reading the file name _ random number _ serial number of the file segment and the temporary file of the file suffix. And after the content reading of the whole file segment is finished, the temporary file management module deletes the temporary file.
In summary, according to the desktop cloud data transmission method provided by the embodiment of the application, the first local end and the second local end can be effectively controlled to receive the first file and the second file through the temporary file management module of the first local end, so that the first local end and the second local end can receive the files in parallel.
Referring to fig. 10, an embodiment of a desktop cloud data transmission apparatus in the embodiment of the present application may include:
a receiving unit 21, configured to receive file transmission request information sent by a first local side;
an obtaining unit 22, configured to obtain second local side information connected to the server side;
a sending unit 23, configured to send the second local peer information to the first local peer so that the first local peer establishes a local connection with the second local peer;
a transmission unit 24, configured to transmit, to the first local peer and the second local peer, corresponding portions of the target file corresponding to the file transmission request information based on the file transmission request information, so that the first local peer obtains the complete target file from the server and the second local peer.
As shown in fig. 11, an electronic device 600 is further provided in the embodiments of the present application, and includes a memory 610, a processor 620, and a computer program 311 stored in the memory 620 and being executable on the processor, where the processor 620 implements the steps of any of the methods for desktop cloud data transmission when executing the computer program 611.
Since the electronic device described in this embodiment is a device used for implementing a desktop cloud data transmission apparatus in this embodiment, based on the method described in this embodiment, a person skilled in the art can understand a specific implementation manner of the electronic device of this embodiment and various variations thereof, so that how to implement the method in this embodiment by the electronic device is not described in detail herein, and as long as the person skilled in the art implements the device used for implementing the method in this embodiment, the device is within the scope of protection intended by this application.
In a specific implementation, the computer program 611 may implement any of the embodiments corresponding to fig. 1 when executed by a processor.
It should be noted that, in the foregoing embodiments, the descriptions of the respective embodiments have respective emphasis, and reference may be made to relevant descriptions of other embodiments for parts that are not described in detail in a certain embodiment.
As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams 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 computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, 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 apparatus 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 apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
An embodiment of the present application further provides a computer program product, where the computer program product includes computer software instructions, and when the computer software instructions are run on a processing device, the processing device executes a flow of desktop cloud data transmission as in the embodiment corresponding to fig. 1.
The computer program product includes one or more computer instructions. The procedures or functions according to the embodiments of the present application are all or partially generated when the computer program instructions are loaded and executed on a computer. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored on a computer readable storage medium or transmitted from one computer readable storage medium to another computer readable storage medium, for example, the computer instructions may be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wire (e.g., coaxial cable, fiber optic, digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). Computer-readable storage media can be any available media that a computer can store or a data storage device, such as a server, data center, etc., that includes one or more available media. The usable medium may be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid State Disk (SSD)), among others.
It is clear to those skilled in the art that, for convenience and brevity of description, the specific working processes of the above-described systems, apparatuses and units may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the several embodiments provided in the present application, it should be understood that the disclosed system, apparatus and method may be implemented in other manners. For example, the above-described apparatus embodiments are merely illustrative, and for example, a division of a unit is merely a logical division, and an actual implementation may have another division, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
Units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated unit, if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application may be substantially implemented or contributed to by the prior art, or all or part of the technical solution may be embodied in a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method of the embodiments of the present application. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
The above embodiments are only used to illustrate the technical solutions of the present application, and not to limit the same; although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions in the embodiments of the present application.

Claims (10)

1. A desktop cloud data transmission method is used for a server side and is characterized in that:
receiving file transmission request information sent by a first local end;
acquiring second local side information connected with the server side;
sending the second local end information to the first local end to enable the first local end to establish local connection with the second local end;
and transmitting corresponding parts of target files corresponding to the file transmission request information to the first local end and the second local end based on the file transmission request information, so that the first local end acquires the complete target files from the server end and the second local end.
2. The method as claimed in claim 1, wherein said sending the second local peer information to the first local peer to enable the first local peer to establish a local connection with the second local peer includes:
acquiring a first priority corresponding to the first local end;
acquiring a second priority corresponding to the second local terminal;
and controlling the first local end to establish local connection with the second local end under the condition that the first priority is greater than the second priority.
3. The method as claimed in claim 1, wherein said sending the second local peer information to the first local peer to enable the first local peer to establish a local connection with the second local peer includes:
sending the second local terminal information to the first local terminal;
receiving second local-side connection request information of the first local side, wherein the second local-side connection request information is generated based on selection of the first local side;
and sending connection request information to a corresponding second local end according to the second local end connection request information so as to enable the first local end and the second local end to establish local connection.
4. The method of claim 1, wherein the obtaining the second local peer information connected to the server comprises:
acquiring attendance information of organization frameworks to which all local ends belong;
selecting local terminals related to absent personnel or outworkers from all local terminals as second local terminals based on the attendance checking information, and acquiring second local terminal information connected with the server terminal; and/or the presence of a gas in the gas,
acquiring local area network architecture information to which all local ends belong;
acquiring the organization architecture information corresponding to all the local terminals based on the local area network architecture information;
determining a local side corresponding to a subordinate user of a user to which the first local side belongs as a second local side based on the organization structure information, and acquiring second local side information connected with the server side; and/or the presence of a gas in the atmosphere,
acquiring scheduling information of organization frameworks to which all local ends belong;
generating a subordinate local scheduling schedule based on the scheduling information;
determining the second local side based on the subordinate local side arrangement schedule and the receiving time of the file transmission request information, and acquiring second local side information connected with the server side; and/or the presence of a gas in the gas,
acquiring user mobile terminal information of an organization structure to which all local terminals belong;
acquiring user position information based on the user mobile terminal information;
and determining the local end associated with the user, the distance of which is greater than the preset distance, as a second local end based on the distance between the position information and the local end associated with the user, and acquiring the information of the second local end connected with the server.
5. The method of claim 1, wherein the file transfer request information includes target file segmentation information;
the transmitting, to the first local peer and the second local peer, a corresponding portion of a target file corresponding to the file transmission request information based on the file transmission request, so that the first local peer acquires the complete target file from the server and the second local peer, includes:
transmitting a first file to the first local terminal based on the target file segmentation information;
and transmitting a second file to the second local end according to the target file segmentation information so that the first local end acquires the second file through local connection, wherein the complete target file comprises the first file and the second file.
6. A desktop cloud data transmission method is used for a local end and is characterized by comprising the following steps:
sending file transmission request information to a target server so as to establish local connection with at least one second local end, wherein the second local end is a local end establishing connection with the target server;
receiving a first file corresponding to a target file sent by a target server;
receiving a second file corresponding to a target file sent by the second local end, wherein the second file is acquired from the target server end by the second local end and is transmitted to the local end through local connection;
and acquiring the complete target file based on the first file and the second file.
7. The method of claim 6, wherein the transmission request information includes target file segment information;
the method further comprises the following steps:
storing the first file in a temporary file segment;
storing the second file in a temporary file segment;
monitoring the transmission result of the temporary file segment based on the target file segmentation information;
and storing the first file and/or the second file into a fixed file segment under the condition that the transmission of the first file and/or the second file is completed.
8. A desktop cloud data transmission device, comprising:
the receiving unit is used for receiving file transmission request information sent by a first local end;
the acquisition unit is used for acquiring second local side information connected with the server side;
a sending unit, configured to send the second local peer information to the first local peer so that the first local peer establishes a local connection with the second local peer;
and the transmission unit is used for transmitting the corresponding parts of the target files corresponding to the file transmission request information to the first local end and the second local end based on the file transmission request information so that the first local end acquires the complete target files from the server end and the second local end.
9. An electronic device, comprising: memory and a processor, characterized in that the processor is configured to implement the steps of the desktop cloud data transmission method according to any of claims 1-7 when executing the computer program stored in the memory.
10. A computer-readable storage medium, on which a computer program is stored, which, when executed by a processor, implements the desktop cloud data transmission method according to any one of claims 1 to 7.
CN202211059429.9A 2022-09-01 2022-09-01 Desktop cloud data transmission method and related equipment Active CN115134355B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211059429.9A CN115134355B (en) 2022-09-01 2022-09-01 Desktop cloud data transmission method and related equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211059429.9A CN115134355B (en) 2022-09-01 2022-09-01 Desktop cloud data transmission method and related equipment

Publications (2)

Publication Number Publication Date
CN115134355A CN115134355A (en) 2022-09-30
CN115134355B true CN115134355B (en) 2023-01-24

Family

ID=83387567

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211059429.9A Active CN115134355B (en) 2022-09-01 2022-09-01 Desktop cloud data transmission method and related equipment

Country Status (1)

Country Link
CN (1) CN115134355B (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104731848A (en) * 2013-12-23 2015-06-24 国际商业机器公司 Managing access to data on a client device during low-power state
CN107580011A (en) * 2016-07-05 2018-01-12 华为技术有限公司 A kind of data sharing method and desktop cloud server terminal

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111385238B (en) * 2018-12-27 2023-04-18 中兴通讯股份有限公司 Data transmission method and device
US11770454B2 (en) * 2020-12-14 2023-09-26 Citrix Systems, Inc. Native application integration for enhanced remote desktop experiences

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104731848A (en) * 2013-12-23 2015-06-24 国际商业机器公司 Managing access to data on a client device during low-power state
CN107580011A (en) * 2016-07-05 2018-01-12 华为技术有限公司 A kind of data sharing method and desktop cloud server terminal

Also Published As

Publication number Publication date
CN115134355A (en) 2022-09-30

Similar Documents

Publication Publication Date Title
JP7058654B2 (en) Resource sharing methods, equipment and systems
CN113596191B (en) Data processing method, network element equipment and readable storage medium
US10560929B2 (en) Resource request method and system, device, and network side node
CN103312605A (en) Gateway device identity setting method and management gateway device
CN110311800B (en) Communication device, node connection method, storage medium, and electronic apparatus
CN104092746B (en) A kind of O&M auditing system and the network load balancing method in its system
CN104253814A (en) Streaming media processing method, server and browser
KR20180126401A (en) Method and apparatus for data processing based on multicore
CN110234140B (en) Communication method, device, entity and storage medium
CN111541555A (en) Group chat optimization method and related product
CN111510493B (en) Distributed data transmission method and device
CN106302647A (en) Message distribution method and server
CN105554099A (en) Method and device for balancing load of acquisition servers
JP2019510435A (en) Network access method, related device and system
CN104734823B (en) Communication system, communication terminal, the method for intermediate station and handshake communication
CN112104679B (en) Method, apparatus, device and medium for processing hypertext transfer protocol request
CN106941522B (en) Lightweight distributed computing platform and data processing method thereof
US7349664B2 (en) Communication system and method thereof
CN113010474B (en) File management method, instant messaging method and storage server
CN104092754A (en) File storage system and method
CN107222883B (en) Wireless controller backup method, backup switching method, device and system
CN115134355B (en) Desktop cloud data transmission method and related equipment
CA2439007A1 (en) Method and system for distributed processing management
KR101883671B1 (en) Method and management server for dtitributing node
CN107071038B (en) Method and device for transmitting multimedia data

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