Data processing system and method, electronic equipment and storage medium

By using full-duplex communication and human-machine interface device protocols, clipboard data can be directly monitored and sent to the target device from the control client. This solves the security and accuracy issues when copying content from the KVM client to the server, and enables efficient pasting operations without additional software.

CN120973553APending Publication Date: 2025-11-18SHANDONG YUNHAI GUOCHUANG CLOUD COMPUTING EQUIP IND INNOVATION CENT CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511071755.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-07-31
Publication Date
2025-11-18

AI Technical Summary

Technical Problem

In existing technologies, when KVM clients copy content to the server, there are issues that reduce server security and data accuracy, especially since additional third-party software is required or special characters and Chinese characters cannot be transmitted.

Method used

By using full-duplex communication protocol and human-machine interface device protocol, the paste operation can be monitored directly on the control client, the clipboard data can be read and sent to the control server, and then written to the target device to realize the paste operation without the need to add any third-party software.

Benefits of technology

It improves server security and data pasting accuracy, supports pasting special characters and Chinese characters, and avoids the security risks and low data accuracy problems caused by additional software installation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120973553A_ABST
    Figure CN120973553A_ABST
Patent Text Reader

Abstract

The invention discloses a data processing system and method, electronic equipment and a storage medium, and relates to the technical field of computers, and the method comprises the following steps: for any control client, reading first data of a pasteboard when the control client monitors that a user executes a pasting operation at the control client, based on a full duplex communication protocol, sending the information to a control server; acquiring a key value of the pasting operation, and sending the key value to a control server based on a man-machine interface equipment protocol; controlling the server to write the first data into the target device based on the target port; writing the key value of the pasting operation into target equipment based on a man-machine interface equipment protocol; and the target equipment takes the first data as data of a pasteboard of the target equipment, and completes the pasting operation based on the key value of the pasting operation. The technical problems that the security of the server is reduced and the accuracy of the data pasted to the server is relatively low in the related technology are solved, and the technical effects of improving the security of the server and improving the accuracy of the data pasted to the server are achieved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of computers, and in particular to a data processing system and method, an electronic device, and a storage medium. BACKGROUND

[0002] A baseboard management controller (BMC) is a microcontroller that monitors and manages server hardware, and has a keyboard, video, and mouse (KVM) function that remotely controls multiple servers through a local set of keyboard, video, and mouse. The principle of this function is that a KVM server obtains image information of a remote server and displays it on a KVM client, and sends the local keyboard and mouse operations of the KVM client to the KVM server, which then sends them to the remote server, thereby achieving the function of locally remotely operating the server.

[0003] In related technologies, when a server is operated using the KVM function, the local commands or data often need to be synchronized to the server, and the KVM function only virtually connects a pair of mouse and keyboard to the server. The server can only recognize information conforming to the USB HID protocol, and cannot recognize other information. Therefore, when the KVM client performs a copy and paste operation, the content copied on the KVM client will not be pasted to the server. To achieve pasting of the content copied on the KVM client to the server, one way in related technologies is to add remote desktop software, which requires additional third-party software and reduces the security of the server. Another way in related technologies is to analyze the content of the KVM client pasteboard as keyboard key instructions and transmit them to the server, which cannot transmit special characters and Chinese characters, resulting in low accuracy of the data pasted to the server. SUMMARY

[0004] The present application provides a data processing system and method, an electronic device, and a storage medium to at least solve the problem of reduced security of the server and low accuracy of the pasted data in related technologies.

[0005] The present application provides a data processing system, including a control server, a plurality of control clients, and a target device.

[0006] For any control client, the control client is used to read first data of a pasteboard of the control client when it is monitored that a user performs a paste operation on the control client, send the first data to a control server based on a full-duplex communication protocol; obtain a key value of the paste operation, and send the key value of the paste operation to the control server based on a human-computer interface device protocol;

[0007] The control server is used to receive the first data and the key value of the paste operation, write the first data into a target device based on a target port, and write the key value of the paste operation into the target device based on the human-computer interface device protocol.

[0008] The target device is used to receive the first data and the key value of the paste operation, take the first data as data of a pasteboard of the target device, and complete pasting of the data of the pasteboard of the target device based on the key value of the paste operation.

[0009] The application further provides a data processing method, which comprises the following steps:

[0010] For any control client, the control client is used to read first data of a pasteboard of the control client when it is monitored that a user performs a paste operation on the control client, send the first data to a control server based on a full-duplex communication protocol; obtain a key value of the paste operation, and send the key value of the paste operation to the control server based on a human-computer interface device protocol;

[0011] The control server is used to receive the first data and the key value of the paste operation, write the first data into a target device based on a target port, and write the key value of the paste operation into the target device based on the human-computer interface device protocol.

[0012] The target device is used to receive the first data and the key value of the paste operation, take the first data as data of a pasteboard of the target device, and complete pasting of the data of the pasteboard of the target device based on the key value of the paste operation.

[0013] The application further provides an electronic device, which comprises a memory for storing a computer program and a processor for executing the computer program to implement the steps of the data processing method.

[0014] The application further provides a computer readable storage medium, which stores a computer program, wherein the computer program is executed by a processor to implement the steps of the data processing method.

[0015] The application further provides a computer program product, which comprises a computer program, and the computer program is executed by a processor to implement the steps of the data processing method.

[0016] According to the application, for any control client, when the control client monitors that a user performs a paste operation on the control client, the control client reads first data of a pasteboard of the control client, sends the first data to a control server based on a full-duplex communication protocol, obtains a key value of the paste operation, and sends the key value of the paste operation to the control server based on a human-computer interface device protocol; the control server receives the first data and the key value of the paste operation, writes the first data into a target device based on a target port, and writes the key value of the paste operation into the target device based on the human-computer interface device protocol; and the target device receives the first data and the key value of the paste operation, takes the first data as data of a pasteboard of the target device, and completes the paste of the data of the pasteboard of the target device based on the key value of the paste operation. Without additional third-party software, the content copied on the KVM client can be pasted to the server, so that the problem of reducing the security of the server is solved, and the technical effect of improving the security of the server is achieved. The first data of the pasteboard of the control client is directly sent to the target device to complete the paste operation on the target device, without the need to parse the content of the control client into keyboard key instructions and transmit the keyboard key instructions to the server to realize the paste, so that the technical problem of low accuracy of data pasted to the server is solved, and the technical effect of improving the accuracy of data pasted to the server is achieved. BRIEF DESCRIPTION OF DRAWINGS

[0017] In order to more clearly illustrate the embodiments of the present application, the drawings needed in the embodiments will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative labor.

[0018] Figure 1 A structural schematic diagram of a data processing system provided by an embodiment of the present application is provided.

[0019] Figure 2 A flowchart of a data processing method provided by an embodiment of the present application is provided.

[0020] Figure 3 A flowchart of another data processing method provided by an embodiment of the present application is provided.

[0021] Figure 4 An interaction schematic diagram among a KVM client, a BMC, and a server host in a data processing process provided by an embodiment of the present application is provided.

[0022] Figure 5 A flowchart of a data processing method based on a KVM client provided by an embodiment of the present application is provided.

[0023] Figure 6A flowchart of a data processing method based on a KVM server provided by an embodiment of the present application is shown in FIG. 1.

[0024] Figure 7 A flowchart of a data processing method based on a server host provided by an embodiment of the present application is shown in FIG. 2.

[0025] Figure 8 A structural schematic diagram of an electronic device provided by an embodiment of the present application is shown in FIG. 3. DETAILED DESCRIPTION

[0026] The technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only some of the embodiments of the present application, but not all the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative work fall within the protection scope of the present application.

[0027] It should be noted that, in the description of the present application, the terms “comprise”, “contain” or any other variants thereof are intended to cover non-exclusive inclusion, so that the process, method, article or device comprising a series of elements not only includes those elements, but also includes other elements not explicitly listed or inherent to such process, method, article or device. The terms “first”, “second” and the like in the present application are used to distinguish similar objects, and are not used to describe a specific order or sequence.

[0028] In order for those skilled in the art to better understand the technical solutions of the present application, the present application will be further described in detail below with reference to the drawings and specific embodiments.

[0029] The BMC is a microcontroller for monitoring and managing the hardware of a server, which can continuously monitor the health of the server even when the server operating system is not running, and provide remote management functions. One important function of the BMC is the KVM function. The KVM function is to use a human interface device (HID) driver through the USB interface of the BMC connected with the server host to virtually output a mouse and a keyboard device for the server host to control the server host, and at the same time to acquire the image output by the video graphics array (VGA) card of the server, and to display the video image through the KVM system software, i.e. to display the image information of the server on the KVM client.

[0030] The operation and maintenance personnel use the BMC to control the remote server, and only need to log in to the BMC locally to view and control the remote server through a webpage. Each vendor integrates server management functions in their own BMC management software, such as power control, fan management, KVM, and the like. When operating the server using the KVM tool, it is often necessary to synchronize local commands or data to the server, and when the data volume is large, it is desirable to add a data synchronization function similar to copy and paste.

[0031] However, the KVM function only virtually connects a pair of mouse and keyboard to the server, and the information transmission between the server and the KVM client is performed through a physical USB channel inside the server. The server only recognizes the transmission content conforming to the USB HID protocol (both mouse and keyboard belong to HID), and will not take any action for other content. This data transmission method has high security, but when the KVM client performs a copy and paste operation, the server only recognizes that the local keyboard has pressed the copy and paste key, and the content copied on the KVM client will not be pasted to the server.

[0032] To realize pasting the content copied on the KVM client to the server, one way in the related art is to add remote desktop software similar to KVM, such as VNC, which can complete the pasting of the content copied on the KVM client to the server, but requires installing additional third-party software on the KVM client and the server. The third-party software cannot fully meet the operation of controlling the server, and the user needs to frequently switch between the VNC software and the BMC control software, which is relatively cumbersome. Moreover, the additional installation of the third-party software reduces the security of the server. Another way in the related art is to analyze the content of the KVM client pasteboard as keyboard key instructions and transmit them to the server through the USB to realize the pasting. This way can simulate the pasting of English characters and numbers on the pasteboard to the server, but cannot realize the pasting of special characters and Chinese characters on the pasteboard to the server, resulting in low accuracy of the data pasted to the server. Moreover, since the data is written to the USB device to simulate keyboard input, when a large amount of data is pasted, the queue data processing will not be timely, resulting in the omission of key values, which further reduces the accuracy of the data pasted to the server.

[0033] To solve the above problems, the embodiment of the present application provides a data processing system, method, electronic device and storage medium, the system comprising a control server, a plurality of control clients and a target device; for any control client, the control client is configured to read first data of a pasteboard of the control client when monitoring that a user performs a paste operation on the control client, send the first data to the control server based on a full-duplex communication protocol; obtain a key value of the paste operation, and send the key value of the paste operation to the control server based on a human-computer interface device protocol; the control server is configured to receive the first data and the key value of the paste operation, write the first data into the target device based on a target port; write the key value of the paste operation into the target device based on the human-computer interface device protocol; and the target device is configured to receive the first data and the key value of the paste operation, take the first data as data of a pasteboard of the target device, and complete the paste of the data of the pasteboard of the target device based on the key value of the paste operation. The system provided by the above scheme realizes the paste of the data copied by the KVM client to the server through the full-duplex communication protocol and the target port, and the content copied on the KVM client can be pasted to the server without additional third-party software, and the first data of the pasteboard of the control client is directly sent to the target device to complete the paste operation on the target device, so that the technical problems of reducing the security of the server and the low accuracy of the data pasted to the server can be solved, and the technical effects of improving the security of the server and improving the accuracy of the data pasted to the server are achieved.

[0034] The embodiment of the present application provides a data processing system, Figure 1 The structure diagram of the data processing system provided by the embodiment of the present application is shown in the figure, Figure 1 The data processing system comprises a control server, a plurality of control clients and a target device.

[0035] The control server is a KVM server, and the KVM server program runs in the BMC and is an intermediate bridge connecting the KVM client and the managed server. The functions of the control server include collecting image data from the managed remote server, encoding and sending the image data to the KVM client for user viewing, receiving the keyboard and mouse instructions sent by the KVM client, converting the keyboard and mouse instructions into a protocol (such as a USB HID protocol) recognizable by the server, and then forwarding the keyboard and mouse instructions to the remote server to realize remote operation on the server.

[0036] The control client is a KVM client, which is a terminal or software operated by the user and is an entrance for the user to interact with the remote server. The functions of the control client include receiving and displaying image information of the remote server to enable the user to directly view the operation interface of the server, and collecting operation instructions of the local keyboard and mouse and sending the operation instructions to the KVM server.

[0037] The target device can be a server.

[0038] For any control client, when the control client monitors that a user performs a paste operation on the control client, the control client reads first data of a pasteboard of the control client, sends the first data to a control server based on a full-duplex communication protocol, and obtains a key value of the paste operation and sends the key value of the paste operation to the control server based on a human-computer interface device protocol.

[0039] The KVM function of the BMC is opened by default, and after the KVM function of the BMC is opened, the KVM client runs a KVM program to monitor user operations.

[0040] When a user has a paste operation in the KVM, that is, when the user performs a paste operation on the control client, the KVM client reads first data of a pasteboard of the control client and sends the first data to a KVM server through a full-duplex communication protocol (such as WebSocket). When the user wants to paste local data into the server, the user first performs a copy operation to copy the data to the pasteboard of the KVM client, and then performs a paste operation in the KVM client. The first data of the pasteboard is usually the copied data obtained by the user when performing the copy operation locally (such as the computing device where the KVM client is located), such as command line instructions, configuration parameters, text fragments, and other data that need to be pasted into the server.

[0041] The key value of the keyboard usually refers to the scan code or character code corresponding to each key, which is used to identify the key input in the computer system. Different types of keyboards (such as mechanical keyboards, membrane keyboards, etc.) may have different key values, but in most cases, key values are generally represented in the following forms: scan code, virtual key code, ASCII value, Unicode. In general, the paste operation is implemented through Ctrl+V on the keyboard, and the copy operation is implemented through Ctrl+C on the keyboard.

[0042] The control server is configured to receive the first data and the key value of the paste operation, write the first data to the target device based on a target port, and write the key value of the paste operation to the target device based on a human-computer interface device protocol.

[0043] The target port is a pre-set USB interface or PCIe interface on the server, which is set by a technician and is not limited here. The control server writes the key value of the paste operation to the USB keyboard / mouse device of the simulated server based on the human-computer interface device protocol.

[0044] The target device is configured to receive the first data and the key value of the paste operation, take the first data as the data of the pasteboard of the target device, and complete the paste of the data of the pasteboard of the target device based on the key value of the paste operation.

[0045] The target device is embedded with a monitoring program Clipboard monitor, which is used to monitor the target port. When data is written in the target port, the data is read and the content of the clipboard in the server is synchronized into the received data. The target device performs a paste operation based on the key value of the paste operation received by the USB keyboard / mouse device of the server, and completes the paste of the data of the KVM client clipboard to the server host.

[0046] The data processing system provided by the embodiments of the present application can read the first data of the clipboard of the control client when the control client monitors that the user performs a paste operation on the control client, send the first data to the control server based on the full-duplex communication protocol, obtain the key value of the paste operation, and send the key value of the paste operation to the control server based on the human-computer interface device protocol. The control server receives the first data and the key value of the paste operation, writes the first data into the target device based on the target port, writes the key value of the paste operation into the target device based on the human-computer interface device protocol, and the target device receives the first data and the key value of the paste operation, takes the first data as the data of the clipboard of the target device, and completes the paste of the data of the clipboard of the target device based on the key value of the paste operation. Without additional third-party software, the content copied on the KVM client can be pasted to the server, thereby solving the problem of reducing the security of the server and achieving the technical effect of improving the security of the server. By directly sending the first data of the clipboard of the control client to the target device to complete the paste operation on the target device, without parsing the content of the control client into keyboard key instructions and transmitting the content to the server to realize the paste, the technical problem of low accuracy of the data pasted to the server can be solved, and the technical effect of improving the accuracy of the data pasted to the server can be achieved.

[0047] In some optional embodiments, the target device is specifically configured to:

[0048] Real-time monitoring of the target port.

[0049] When the target port is monitored to have the first data, the first data is read from the target port, and the first data is taken as the data of the clipboard of the target device.

[0050] The data processing system provided by the embodiments of the present application can quickly respond to data changes, read and process data in time, reduce the delay of data processing, and realize the quick synchronization of the paste operation of the client to the server host by real-time monitoring of the target port.

[0051] In some optional embodiments, the target device is further configured to read the second data of the clipboard of the target device when it is monitored that the user performs a copy operation on the second data in the target device through the first control client, and write the second data into the target port.

[0052] The Clipboard monitor in the target device writes the content on the clipboard of the target device into the target port. It can be understood that when the user performs a copy operation on the second data in the target device through the first control client, the first control client sends the key value corresponding to the copy operation to the control server based on the human-computer interface device protocol, the control server writes the key value corresponding to the copy operation into the target device, and the target device completes the copy of the second data based on the key value corresponding to the copy operation.

[0053] The control server is further configured to read the second data from the target port and send the second data to the first control client based on the full-duplex communication protocol.

[0054] The first control client is configured to receive the second data, take the second data as the data of the clipboard of the first control client, and complete the pasting of the data of the clipboard of the first control client in response to the pasting operation of the user.

[0055] The second data is taken as the data of the clipboard of the first control client, that is, the data of the clipboard of the computing device where the first control client is located, that is, the data of the local clipboard. The pasting of the data of the clipboard of the first control client is completed, that is, the second data is pasted to the local specified position.

[0056] If the KVM client is a java client, the local clipboard can be directly updated. If the KVM client is a web client, web setting needs to be performed to allow the web client to change the local clipboard.

[0057] The data processing system provided by the embodiments of the present application can realize the synchronization operation of the clipboard data of the KVM client and the server through the above operation, without the need to install other software. Because the KVM client synchronizes the copy and paste operations to the server, the copy and paste of special characters and Chinese can be realized, and the bidirectional synchronization of data can be realized.

[0058] In some optional embodiments, the control server is specifically configured to:

[0059] monitor the target port in real time;

[0060] read the second data from the target port when it is monitored that the target port has the second data.

[0061] The data processing system provided in the embodiments of the present application can quickly respond to data changes, read and process data in time, reduce the delay of data processing, and realize fast synchronization of the pasteboard data by monitoring the target port in real time.

[0062] In some optional embodiments, the control server is further configured to manage the paste permissions of the plurality of control clients, and the number of control clients with the paste permission at the same time is not greater than a preset number.

[0063] The preset number is set by a technician and is not specifically limited herein. Generally, the preset number is 1. Considering that multiple users may simultaneously use a KVM client to operate the same server, in order to solve the paste conflict between users, the KVM server sets a paste permission for each KVM client, and only the user who obtains the paste permission can perform pasteboard data synchronization, and at this time, the pasteboard data can be synchronized in real time.

[0064] For any control client, the control client is specifically configured to read first data of a pasteboard of the control client when it is detected that a user performs a paste operation on the control client in a case where the control client has a paste permission, and send the first data to the control server based on a full-duplex communication protocol; and obtain a key value of the paste operation, and send the key value of the paste operation to the control server based on a human-computer interface device protocol.

[0065] The data processing system provided in the embodiments of the present application manages the paste permissions of the plurality of control clients by the control server, ensures that only a preset number (such as 1) of users perform a paste operation at the same time, and avoids data confusion or conflict caused by simultaneous operation of multiple users. In the scenario where multiple users share the same server (such as a KVM system), the paste permission management can effectively coordinate user operations and ensure the sequentiality and consistency of data paste.

[0066] In some optional embodiments, the control client is further configured to send a paste permission acquisition request to the control server when it is detected that a user performs a paste operation on the control client in a case where the control client does not have a paste permission.

[0067] The control server is further configured to receive the paste permission acquisition request, acquire a state of a second control client with a current paste permission in response to the paste permission acquisition request, and transfer the paste permission of the second control client to the control client in a case where the state of the second control client represents that the user does not perform a paste operation on the second control client.

[0068] The paste permission of the second control client is transferred to the control client, that is, the second control client does not have the paste permission, and the control client has the paste permission.

[0069] The data processing system provided by the embodiments of the present application balances operation flexibility and data security in a multi-user environment through the permission transfer mechanism, allows multiple people to collaboratively control the server, and avoids the risk caused by clipboard data conflicts.

[0070] In some optional embodiments, the control server is further configured to, when the state of the second control client indicates that the user is performing a paste operation on the second control client, return information about a paste permission request failure to the control client.

[0071] The control client is further configured to, in a case where the information about the paste permission request failure is received, resend a paste permission acquisition request to the control server after a preset time period, until the paste permission is obtained. The preset time period is set by a technician and is not limited herein.

[0072] The data processing system provided by the embodiments of the present application guarantees the operation opportunity of each client through retry, and reduces user burden and system consumption through automation and interval control, which can significantly improve writing efficiency and operation experience.

[0073] In some optional embodiments, for any control client, the control client is specifically configured to encrypt the first data, and send the encrypted first data to the control server based on the full-duplex communication protocol.

[0074] The control server is specifically configured to receive the encrypted first data, and write the encrypted first data into the target device based on the target port.

[0075] The target device is specifically configured to decrypt the encrypted first data, take the decrypted first data as the data of the clipboard of the target device, and complete the paste of the data of the clipboard of the target device based on the key value of the paste operation.

[0076] The data processing system provided by the embodiments of the present application prevents data leakage by encrypting the transmitted data in the data transmission process, and ensures the security of data transmission.

[0077] In some optional embodiments, for any control client, the control client is specifically configured to determine a first hash check value of the first data, and send the first data and the first hash check value of the first data to the control server based on the full-duplex communication protocol.

[0078] The control server is specifically configured to receive the first data and the first hash check value of the first data, and write the first data and the first hash check value of the first data into the target device based on the target port.

[0079] The target device is specifically configured to determine a second hash check value of the first data, compare the second hash check value of the first data with the first hash check value, if the comparison passes, take the first data as data of a pasteboard of the target device, and complete pasting of the data of the pasteboard of the target device based on a key value of the paste operation.

[0080] The data processing system provided by the embodiments of the present application ensures that the data received by the server is unaltered data by checking the hash value of the transmission data, provides data integrity protection for remote paste operations, and significantly improves the security and reliability of the system.

[0081] The embodiments of the present application provide a data processing method applied to any one of the data processing systems, Figure 2 The flowchart of the data processing method provided by the embodiments of the present application is shown in FIG. 2. Figure 2 As shown in FIG. 2, the data processing method comprises the following steps.

[0082] In step S201, for any control client, based on the control client, when it is monitored that a user performs a paste operation on the control client, first data of a pasteboard of the control client is read, the first data is sent to a control server based on a full-duplex communication protocol, a key value of the paste operation is obtained, and the key value of the paste operation is sent to the control server based on a human-computer interface device protocol.

[0083] In step S202, based on the control server, the first data and the key value of the paste operation are received, the first data is written into a target device based on a target port, and the key value of the paste operation is written into the target device based on the human-computer interface device protocol.

[0084] In step S203, based on the target device, the first data and the key value of the paste operation are received, the first data is taken as data of a pasteboard of the target device, and the paste of the data of the pasteboard of the target device is completed based on the key value of the paste operation.

[0085] For details, refer to the related descriptions of the foregoing embodiments, which will not be repeated here.

[0086] The data processing method provided by the embodiments of the present application can realize pasting of the copied content on the KVM client to the server without additional third-party software, thereby solving the problem of reduced security of the server and achieving the technical effect of improving the security of the server. The first data of the pasteboard of the control client is directly sent to the target device to complete the paste operation on the target device, without the need to parse the content of the control client into keyboard key instructions and transmit the content to the server to realize the paste, thereby solving the technical problem of low accuracy of the data pasted to the server and achieving the technical effect of improving the accuracy of the data pasted to the server.

[0087] The embodiments of this application provide a data processing method. Figure 3 A flowchart of the data processing method provided in the embodiments of this application is shown below. Figure 3 As shown, the process includes:

[0088] When a user performs a paste operation in the KVM client, the KVM client retrieves the clipboard data and sends the clipboard data to the KVM server.

[0089] After receiving data from the KVM client, the KVM server parses the clipboard data and writes it to the server host through the target port. The monitoring program on the server host monitors the data on the target port. When data is written to the target port, it reads the data and synchronizes the clipboard content on the server host with the received data.

[0090] Similarly, when a user performs a copy operation on the server host, the monitoring program on the server host writes the contents of the clipboard to the target port. The KVM server can then read the data through the target port, package the data, and send it to the KVM client. After receiving the data, the KVM client updates the contents of its local clipboard.

[0091] The data processing method provided in this application embodiment realizes the synchronization of clipboard data between the KVM client and the server host without relying on other software, thereby enabling bidirectional data pasting between the KVM client and the server host, supporting multiple languages, and achieving efficient and secure clipboard data sharing.

[0092] It should be noted that the data processing method provided in this application supports clipboard data synchronization between multiple operating systems.

[0093] To make the data processing method provided in the embodiments of this application clearer, combined with Figure 4 Describe it. Figure 4 A schematic diagram illustrating the interaction between the KVM client, BMC, and server host during the data processing provided in this application embodiment, as shown below. Figure 4 As shown, the KVM client is used to read data from the local clipboard when it detects a user performing a paste operation within the KVM client, package the clipboard data, and send it to the KVM server. The KVM client is also used to receive data sent by the KVM server, parse out the clipboard update information according to the communication protocol, and update the local clipboard content.

[0094] Figure 5 A flowchart of the data processing method based on a KVM client provided in the embodiments of this application is shown below. Figure 5As shown, the KVM client is opened, the KVM client can be used to monitor the paste operation performed by the user in the client, if the user performs the paste operation in the client, the client pasteboard content is obtained and packaged and sent to the server. Wherein, the client is the KVM client, and the server is the KVM server.

[0095] The KVM client is also used to monitor the synchronization data of the server, and if the synchronization data sent by the server is received, the local pasteboard content is updated. It can be understood that the synchronization data of the server is the pasteboard data of the server sent by the server.

[0096] The KVM server in the BMC is used to receive the data sent by the KVM client, parse the pasteboard data therein, and write the pasteboard data to the server host through the specified USB or PCIe interface. The KVM server in the BMC is also used to monitor the specified USB or PCIe interface, read out the data when the specified USB or PCIe interface has data, package the read data, and send the packaged data to the KVM client.

[0097] Figure 6 The flow chart of the data processing method based on the KVM server provided by the embodiment of the application is shown in Figure 6 As shown, the KVM server monitors the data packet sent by the server and the data packet sent by the client, if the data packet sent by the server is monitored, the data packet sent by the server is packaged and sent to the client. If the data packet sent by the client is monitored, the pasteboard content in the data packet is parsed and sent to the server, i.e. the server host.

[0098] The monitoring program is pre-installed in the server host and is set to start at boot. The monitoring program monitors the specified USB or PCIe interface and reads out the data when there is data, and updates the local pasteboard with the read data. The monitoring program is also used to read the data in the pasteboard and send the data to the KVM server in the BMC through the specified USB or PCIe interface when the copy operation of the server is monitored.

[0099] Figure 7 The flow chart of the data processing method based on the server host provided by the embodiment of the application is shown in Figure 7 As shown, the server host background starts the monitoring program, the monitoring program monitors the specified USB or PCIe interface, and if the specified USB or PCIe interface receives the pasteboard data packet, the local pasteboard content is updated with the pasteboard data packet. The monitoring program is also used to monitor the local pasteboard, and if the copy operation of the server is monitored, the data in the pasteboard is read and sent to the KVM server.

[0100] Through the description of the above embodiments, those skilled in the art can clearly understand that the method according to the above embodiments can be realized by means of software on a necessary general hardware platform, and of course can also be realized by hardware, but in many cases the former is a better embodiment.

[0101] Embodiments of the present application also provide an electronic device, such as Figure 8 As shown in the figure, the electronic device comprises a processor 801 and a memory 802, the memory 802 storing a computer program, and the processor 801 is configured to execute the computer program to perform the steps in any of the above data processing method embodiments.

[0102] Embodiments of the present application also provide a computer readable storage medium, which stores a computer program, wherein the computer program is configured to perform the steps in any of the above data processing method embodiments when executed.

[0103] In an exemplary embodiment, the above computer readable storage medium can include but is not limited to: a U disk, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk or an optical disk, and various media that can store computer programs.

[0104] Embodiments of the present application also provide a computer program product, which comprises a computer program, and the computer program is executed by a processor to implement the steps in any of the above data processing method embodiments.

[0105] Embodiments of the present application also provide another computer program product, which comprises a non-volatile computer readable storage medium, and the non-volatile computer readable storage medium stores a computer program, and the computer program is executed by a processor to implement the steps in any of the above data processing method embodiments.

[0106] The skilled person can further realize that the units and algorithm steps of the examples described in conjunction with the embodiments disclosed herein can be realized by electronic hardware, computer software or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the components and steps of the examples have been described in the above description in general terms. Whether the functions are realized in hardware or software depends on the specific application and design constraints of the technical solution. The skilled person can use different methods to realize the described functions for each specific application, but such implementation should not be considered beyond the scope of the present application.

[0107] The above describes in detail the data processing system, method, electronic device and storage medium provided by the present application. The principles and implementation modes of the present application are described by applying specific examples, and the above description of the embodiments is only used to help understand the method of the present application and its core idea. It should be pointed out that, for those skilled in the art, without departing from the principles of the present application, the present application can be improved and modified in several ways, and these improvements and modifications also fall within the protection scope of the claims of the present application.

Claims

1. A data processing system, characterized in that, This includes a control server, multiple control clients, and the target device; For any control client, when the control client detects that a user is performing a paste operation, it reads the first data of the control client's clipboard and sends the first data to the control server based on a full-duplex communication protocol; it also obtains the key value of the paste operation and sends the key value of the paste operation to the control server based on a human-machine interface device protocol. The control server is used to receive the first data and the key value of the paste operation, and write the first data to the target device based on the target port; Based on the human-machine interface device protocol, the key value of the paste operation is written into the target device; The target device is used to receive the first data and the key value of the paste operation, use the first data as the data of the target device's clipboard, and paste the data of the target device's clipboard based on the key value of the paste operation.

2. The system according to claim 1, characterized in that, The target device is specifically used for: Real-time monitoring of the target port; When the first data is detected at the target port, the first data is read from the target port and used as the clipboard data of the target device.

3. The system according to claim 1, characterized in that, The target device is also used to read the second data from the clipboard of the target device and write the second data to the target port when it detects that a user performs a copy operation on the second data in the target device on the first control client. The control server is also used to read the second data from the target port and send the second data to the first control client based on the full-duplex communication protocol; The first control client is used to receive the second data, use the second data as data in the clipboard of the first control client, and in response to the user's paste operation, complete the pasting of data in the clipboard of the first control client.

4. The system according to claim 3, characterized in that, The control server is specifically used for: Real-time monitoring of the target port; When the second data is detected to exist at the target port, the second data is read from the target port.

5. The system according to claim 1, characterized in that, The control server is also used to manage the paste permissions of multiple control clients, and the number of control clients with paste permissions at the same time shall not exceed a preset number; For any control client, specifically when the control client has paste permissions and detects that a user is performing a paste operation on the control client, it reads the first data of the control client's clipboard, sends the first data to the control server based on a full-duplex communication protocol, obtains the key value of the paste operation, and sends the key value of the paste operation to the control server based on the human-machine interface device protocol.

6. The system according to claim 5, characterized in that, The control client is also used to send a paste permission acquisition request to the control server when it detects that a user is performing a paste operation on the control client, even if the control client does not have paste permission. The control server is also configured to receive the paste permission acquisition request, and in response to the paste permission acquisition request, acquire the status of the second control client currently having paste permission; when the status of the second control client indicates that the user has not performed a paste operation on the second control client, the paste permission of the second control client is transferred to the control client.

7. The system according to claim 6, characterized in that, The control server is also used to return a message indicating that the paste permission request failed when the user performs a paste operation on the second control client, based on the status characterization of the second control terminal. The control client is also used to resend the paste permission request to the control server after a preset time interval if it receives a message that the paste permission request failed, until the paste permission is obtained.

8. A data processing method, characterized in that, The method includes: For any control client, when a user is detected performing a paste operation on the control client, the first data of the clipboard of the control client is read and sent to the control server based on the full-duplex communication protocol; the key value of the paste operation is obtained and sent to the control server based on the human-machine interface device protocol; Based on the control server, the first data and the key value of the paste operation are received; based on the target port, the first data is written to the target device; based on the human-machine interface device protocol, the key value of the paste operation is written to the target device. Based on the target device, the first data and the key value of the paste operation are received. The first data is used as the data of the clipboard of the target device. Based on the key value of the paste operation, the data of the clipboard of the target device is pasted.

9. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor for implementing the steps of the data processing method as described in claim 8 when executing the computer program.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, wherein the computer program, when executed by a processor, implements the steps of the data processing method as described in claim 8.