Remote management method, device, equipment and storage medium
By dynamically selecting compression strategies and differential analysis, and combining bandwidth and data type to optimize BMC remote management, the problems of low data transmission efficiency and high latency in low-bandwidth environments are solved, and efficient and real-time remote management is achieved.
Patent Information
- Application Number
- CN202411748590.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-30
- Publication Date
- 2025-09-19
- Estimated Expiration
- 2044-11-30
AI Technical Summary
In low-bandwidth environments, BMC remote management suffers from problems such as low data transmission efficiency, slow remote interface operations, high latency, and high resource consumption, which seriously affect the efficiency and reliability of remote management.
By obtaining the real-time bandwidth information of the server, dynamically selecting the compression strategy according to the format and bandwidth conditions of the data to be transmitted, data compression is performed and differential analysis is performed to filter out incremental data. The transmission frequency is determined based on the data type and bandwidth information, and progressive and priority transmission methods are adopted to optimize the data transmission process.
It significantly reduces the amount of data transmission, reduces bandwidth usage and response delay, improves the real-time performance of remote management and the efficiency of system resource utilization, and ensures efficient remote management in low-bandwidth environments.
Smart Images

Figure CN119402560B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology, and in particular to a remote management method, apparatus, device and storage medium. Background Art
[0002] With the expansion of data centers and the prevalence of distributed server systems, remote management technology is playing an increasingly prominent role in modern server management. As a core component of server management, the Baseboard Management Controller (BMC) provides remote monitoring and control of servers, especially when a server fails or the system is down, providing administrators with remote access. However, in low-bandwidth environments, remote BMC management can suffer from issues such as inefficient data transmission, slow remote interface operations, high latency, and high resource consumption, severely impacting the efficiency and reliability of remote management. Summary of the Invention
[0003] In view of this, the purpose of the present invention is to provide a remote management method, apparatus, device, and storage medium that can reduce data transmission volume, reduce bandwidth usage, improve the real-time performance of remote management, and optimize system resource consumption. The specific solution is as follows:
[0004] In a first aspect, the present application discloses a remote management method, which is applied to a server including a baseboard management controller, comprising:
[0005] Obtaining real-time bandwidth information of the server;
[0006] Determining a compression strategy for the data to be transmitted according to the format of the data to be transmitted, and compressing the data to be transmitted using the compression strategy to obtain compressed data;
[0007] performing differential analysis on the compressed data and the transmitted data, and filtering incremental data from the compressed data according to the difference between the compressed data and the transmitted data;
[0008] determining a transmission frequency of the data to be transmitted according to the real-time bandwidth information and the type of the data to be transmitted;
[0009] The incremental data corresponding to the data to be transmitted is sent to the client according to the transmission frequency, so that the client can remotely manage the server.
[0010] Optionally, determining a compression strategy for the data to be transmitted according to a format of the data to be transmitted includes:
[0011] A compression strategy for the data to be transmitted is determined according to the format of the data to be transmitted and the real-time bandwidth information; the compression strategy includes a compression method and a compression type, and the compression type includes lossy compression and lossless compression.
[0012] Optionally, determining a compression strategy for the data to be transmitted according to a format of the data to be transmitted and the real-time bandwidth information includes:
[0013] Determining the compression method corresponding to the data to be transmitted according to the format of the data to be transmitted and the correspondence between different data formats and compression methods; the data format includes text data, image data and video data;
[0014] determining a current compression type for the data to be compressed according to the real-time bandwidth information and the bandwidth threshold;
[0015] A compression strategy is generated based on the compression mode and the compression type.
[0016] Optionally, sending the incremental data corresponding to the data to be transmitted to the client includes:
[0017] If the incremental data is image data, the image data is layered according to resolution to obtain low-resolution layer image data, medium-resolution layer image data, and high-resolution layer image data;
[0018] The image data is transmitted in a progressive transmission manner according to the transmission priority; the transmission priorities corresponding to the low-resolution layer image data, the medium-resolution layer image data, and the high-resolution layer image data decrease in sequence.
[0019] Optionally, sending the incremental data corresponding to the data to be transmitted to the client includes:
[0020] If the incremental data is video data, the video data is transmitted in a progressive transmission manner according to the transmission priority; the transmission priority of key frames in the video data is higher than the transmission priority of non-key frames.
[0021] Optionally, performing differential analysis on the compressed data and the transmitted data, and filtering out incremental data from the compressed data according to the difference between the compressed data and the transmitted data, includes:
[0022] Dividing the compressed data into data blocks according to a segmentation threshold to obtain a plurality of data blocks corresponding to the compressed data, and calculating a hash value of each data block to obtain a local hash value;
[0023] Comparing the local hash value with the hash value corresponding to the transmitted historical data block, and if the local hash value is consistent with the hash value of the historical data block, skipping the transmission of the current data block;
[0024] If the local hash value is inconsistent with the hash value of the historical data block, the current data block is used as incremental data and sent to the peer end.
[0025] Optionally, after sending the current data block to the peer end, the method further includes:
[0026] receiving a peer hash value fed back by the peer; the peer hash value being obtained by the peer performing a hash calculation after receiving the current data block;
[0027] The local hash value corresponding to the current data block is compared with the opposite end target hash value. If the local hash value is inconsistent with the opposite end target hash value, the current data block is resent.
[0028] Optionally, performing differential analysis on the compressed data and the transmitted data, and filtering out incremental data from the compressed data according to the difference between the compressed data and the transmitted data, includes:
[0029] Dividing the compressed data into data blocks according to a first segmentation threshold to obtain a plurality of data blocks corresponding to the compressed data, and calculating a hash value of each data block to obtain a local hash value;
[0030] If the local hash value corresponding to the data block is inconsistent with the hash value of the historical data block, the data block is used as a data block to be split, and the data block to be split is split using a second splitting threshold to obtain sub-data blocks; the second splitting threshold is less than the first splitting threshold;
[0031] If the local hash value of the sub-data block is inconsistent with the hash value of the historical data block, the sub-data block is used as the incremental data.
[0032] Optionally, before dividing the compressed data into data blocks according to the segmentation threshold, the method further includes:
[0033] A data change frequency of the data to be transmitted is determined, and a segmentation threshold for the data to be transmitted is determined according to the data change frequency; the data change frequency is inversely proportional to the segmentation threshold.
[0034] Optionally, determining the transmission frequency of the data to be transmitted according to the real-time bandwidth information and the type of the data to be transmitted includes:
[0035] Determining an initial transmission frequency of the data to be transmitted according to a mapping relationship between data type and transmission frequency;
[0036] The initial transmission frequency is adjusted in real time according to the real-time bandwidth information to obtain the actual transmission frequency of the data to be transmitted; wherein the bandwidth is proportional to the transmission frequency.
[0037] Optionally, determining the transmission frequency of the data to be transmitted according to the real-time bandwidth information and the type of the data to be transmitted includes:
[0038] determining an initial transmission frequency of the data to be transmitted according to a change frequency corresponding to the data to be transmitted; the data change frequency is proportional to the transmission frequency;
[0039] The initial transmission frequency is adjusted in real time according to the real-time bandwidth information to obtain an actual transmission frequency of the data to be transmitted.
[0040] Optionally, sending the incremental data corresponding to the data to be transmitted to the client according to the transmission frequency includes:
[0041] According to the importance of each type of data to be transmitted in the server, a corresponding transmission priority is configured for the data to be transmitted;
[0042] The incremental data corresponding to the data to be transmitted is sent to the client according to the transmission priority and the transmission frequency.
[0043] In a second aspect, the present application discloses a remote management device, which is applied to a server including a baseboard management controller, comprising:
[0044] A real-time bandwidth information acquisition module, configured to acquire the real-time bandwidth information of the server;
[0045] A compression strategy determining module, configured to determine a compression strategy for the data to be transmitted according to a format of the data to be transmitted, and compress the data to be transmitted using the compression strategy to obtain compressed data;
[0046] an incremental data determination module, configured to perform differential analysis on the compressed data and the transmitted data, and filter out incremental data from the compressed data based on the difference between the compressed data and the transmitted data;
[0047] a transmission frequency determination module, configured to determine the transmission frequency of the data to be transmitted according to the real-time bandwidth information and the type of the data to be transmitted;
[0048] The data transmission module is used to send the incremental data corresponding to the data to be transmitted to the client according to the transmission frequency, so that the client can remotely manage the server.
[0049] In a third aspect, the present application discloses an electronic device, comprising:
[0050] Memory, used to store computer programs;
[0051] The processor is configured to execute the computer program to implement the aforementioned remote management method.
[0052] In a fourth aspect, the present application discloses a computer-readable storage medium for storing a computer program; wherein the computer program implements the aforementioned remote management method when executed by a processor.
[0053] In the present application, the real-time bandwidth information of the server is obtained; a compression strategy for the data to be transmitted is determined according to the format of the data to be transmitted, and the data to be transmitted is compressed using the compression strategy to obtain compressed data; a differential analysis is performed on the compressed data and the transmitted data, and incremental data is filtered out from the compressed data according to the difference between the compressed data and the transmitted data; a transmission frequency of the data to be transmitted is determined according to the real-time bandwidth information and the type of the data to be transmitted; and the incremental data corresponding to the data to be transmitted is sent to the client according to the transmission frequency so that the client can remotely manage the server. It can be seen that by intelligently selecting a compression strategy according to the format of the data to be transmitted so as to compress using the optimal compression strategy that conforms to the data format, the data transmission volume can be significantly reduced and the data transmission efficiency can be maximized; by filtering out incremental data, that is, data that has not been transmitted, full data transmission is avoided on the basis of achieving data synchronization, further reducing bandwidth usage, reducing the response delay of the remote interface, and improving the real-time performance of remote management; according to the real-time bandwidth and the type of data to be transmitted, a transmission frequency that conforms to the current data and the current bandwidth is determined, and data transmission is performed according to the frequency, ensuring the transmission of key data, optimizing system resource consumption, and improving the overall efficiency of the system. BRIEF DESCRIPTION OF THE DRAWINGS
[0054] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are merely embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying any creative work.
[0055] Figure 1 A flow chart of a remote management method provided for this application;
[0056] Figure 2 A specific hash check flow chart provided for this application;
[0057] Figure 3 A specific remote management method flow chart provided for this application;
[0058] Figure 4 A specific image and video data transmission flow chart provided for this application;
[0059] Figure 5 A schematic diagram of a specific remote management system structure provided for this application;
[0060] Figure 6 A schematic diagram of the structure of a remote management device provided in this application;
[0061] Figure 7 This is a structural diagram of an electronic device provided in this application. DETAILED DESCRIPTION
[0062] To make the objectives, technical solutions, and advantages of the embodiments of the present invention more clear, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts shall fall within the scope of protection of the present invention.
[0063] In related technologies, BMC remote management in low-bandwidth environments suffers from problems such as low data transmission efficiency, lag in remote interface operations, high latency, and high resource consumption, which seriously affect the efficiency and reliability of remote management. To overcome these technical problems, this application proposes a remote management method that can reduce data transmission volume, reduce bandwidth usage, improve the real-time performance of remote management, and optimize system resource consumption.
[0064] The present application embodiment discloses a remote management method, see Figure 1 As shown, the method may include the following steps:
[0065] Step S11: Acquire the real-time bandwidth information of the server.
[0066] In this embodiment, the real-time bandwidth information of the server is obtained so that the data compression strategy and the data transmission frequency can be dynamically adjusted according to the real-time bandwidth of the server.
[0067] Specifically, the baseboard management controller monitoring module can collect and manage the operating status data of the server hardware, and transmit this data in real time to the front-end interactive interface or other remote management systems; the core functions of this module include monitoring key server components (such as temperature sensors, fans, power supplies, networks, etc.), event recording, and executing remote management operations to ensure that administrators can obtain hardware status information in a timely manner when the server is operating normally or malfunctioning, and perform corresponding remote management operations.
[0068] Step S12: determining a compression strategy for the data to be transmitted according to the format of the data to be transmitted, and compressing the data to be transmitted using the compression strategy to obtain compressed data.
[0069] Specifically, determining a compression strategy for the data to be transmitted based on its format may include: determining a compression strategy for the data to be transmitted based on the format of the data to be transmitted and the real-time bandwidth information; the compression strategy includes a compression method and a compression type, with the compression type including lossy compression and lossless compression. Specifically, the optimal compression algorithm is determined based on the data format. Based on this, lossy compression is selected if the real-time bandwidth is low, while lossless compression is selected if the real-time bandwidth is high. By combining the format and real-time bandwidth, the rationality and effectiveness of the compression strategy are improved.
[0070] In some embodiments, determining a compression strategy for the data to be transmitted based on the format of the data to be transmitted and the real-time bandwidth information includes: determining a corresponding compression strategy for the data to be transmitted based on the format of the data to be transmitted and the correspondence between different data formats and compression strategies; the data formats include text data, image data, and video data; determining the current compression type for the data to be compressed based on the real-time bandwidth information and a bandwidth threshold; and generating a compression strategy based on the compression strategy and compression type. It is understood that before transmitting data, the data type is first identified and classified into different categories, such as text, image, and video; and the module selects different compression algorithms based on the different data categories. For example, for text data, a fast compression algorithm such as Gzip or Deflate is selected; for image data, a lossless compression algorithm such as PNG or a lossy compression algorithm such as JPEG is selected based on bandwidth availability. For video data, a frame-based compression algorithm such as H.264 or VP9 is selected.
[0071] By monitoring the current network bandwidth in real time and automatically switching compression algorithms based on bandwidth conditions, the system prioritizes lossless compression to ensure data integrity when bandwidth is sufficient. However, when bandwidth is limited, the system automatically switches to a lossy compression algorithm to further reduce the amount of data transmitted. The switching process uses an adaptive threshold strategy. When bandwidth falls below a set threshold, the algorithm switch is triggered, and lossless compression automatically returns when bandwidth is restored.
[0072] Compression mechanisms in related technologies are typically static and unable to adjust the compression algorithm based on dynamic bandwidth changes, resulting in low transmission efficiency in low-bandwidth environments. This application introduces an intelligent compression mechanism that dynamically selects the optimal compression algorithm for data in different formats (such as text, images, and video), significantly reducing data transmission volume in bandwidth-constrained environments. This provides greater flexibility and can automatically adjust the compression method based on real-time network conditions to maximize data transmission efficiency. Furthermore, the compression ratio can be dynamically adjusted based on real-time bandwidth.
[0073] Step S13: performing differential analysis on the compressed data and the transmitted data, and filtering out incremental data from the compressed data according to the difference between the compressed data and the transmitted data.
[0074] That is, in order to avoid repeated data transmission and occupying transmission resources, incremental data, that is, new or changed data, is filtered and sent to avoid global bandwidth occupation.
[0075] In some embodiments, performing differential analysis on the compressed data and the transmitted data and filtering incremental data from the compressed data based on the differences between the compressed data and the transmitted data may include: dividing the compressed data into data blocks according to a segmentation threshold to obtain multiple data blocks corresponding to the compressed data, calculating a hash value for each data block to obtain a local hash value; comparing the local hash value with the hash value corresponding to the transmitted historical data block; if the local hash value matches the hash value of the historical data block, skipping the transmission of the current data block; if the local hash value does not match the hash value of the historical data block, treating the current data block as incremental data and sending it to the peer end. Specifically, the incremental data is determined based on the hash value. Specifically, the data stream to be transmitted is first divided into blocks of fixed size. For example, if the data to be transmitted is an image, the image data can be divided into several fixed-size blocks, each of which is set to B bytes. This size can be dynamically adjusted based on specific bandwidth conditions. A unique hash value is calculated for each data block. Common hash algorithms such as SHA-256 or MD5 can be used as the hash function. During each data transmission, the hash value of the current data block is compared with the hash value of the data block from the previous transmission. If the two hash values differ, the data block has changed and needs to be transmitted. Otherwise, the system skips the transmission of that data block. Assuming the total data volume is T, the data is divided into N blocks, each of size B. After each data update, only M data blocks change. Then, with differential synchronization, the actual amount of data transmitted is: Transmission volume = M * B. Without differential synchronization, the amount of data transmitted is T; by comparison, the amount of data saved = TM * B. If M ≪ N, meaning that only a few data blocks have changed, the transmission volume can be significantly reduced, thereby improving transmission efficiency.
[0076] In some embodiments, before dividing the compressed data into data blocks according to the segmentation threshold, it also includes: determining the data change frequency of the data to be transmitted, and determining the segmentation threshold for the data to be transmitted according to the data change frequency; the data change frequency is inversely proportional to the segmentation threshold.
[0077] That is, the data block size is dynamically adjusted based on the frequency of data changes and network bandwidth. By analyzing the frequency of historical data changes, if a certain part of the data changes frequently, the system will automatically reduce the block size of that part to more accurately capture the data changes; for data blocks that change less frequently, the system will appropriately increase the block size to reduce unnecessary block fragmentation and transmission overhead. This dynamic granularity control mechanism effectively balances the accuracy and efficiency of data transmission. The dynamically adjusted data block size is determined by the formula: ;in, is the dynamically adjusted block size, ΔD is the frequency of data changes, The initial block size is set. As ΔD increases, the block size decreases, allowing for more accurate synchronization of data changes. This allows the block size to be adjusted based on data changes and network conditions, further improving the accuracy and efficiency of data transmission.
[0078] As can be seen, by introducing a rate-of-change intelligent synchronization scheduling mechanism, the synchronization frequency is increased when the data change rate is high, and reduced when the data change rate is low, thereby optimizing the use of transmission resources. The intelligent synchronization scheduling mechanism can adjust the synchronization frequency based on the actual data changes without adding additional load, allowing the system to more intelligently respond to fluctuations in network bandwidth and data changes.
[0079] In some embodiments, after sending the current data block to the peer end, the process may further include: receiving a peer end hash value fed back by the peer end; the peer end hash value is obtained by performing a hash calculation on the peer end after receiving the current data block; comparing the local hash value corresponding to the current data block with the peer end target hash value; and resending the current data block if the local hash value is inconsistent with the peer end target hash value. That is, to ensure the integrity of the transmitted data, the hash value of each transmitted data block is recalculated at the receiving end and compared with the hash value at the time of transmission to verify the correctness of the data; if the received data hash value does not match, the system will request retransmission of the data block.
[0080] In some embodiments, the differential analysis of the compressed data and the transmitted data is performed, and incremental data is filtered out from the compressed data according to the difference between the compressed data and the transmitted data, including: dividing the compressed data into data blocks according to a first segmentation threshold to obtain multiple data blocks corresponding to the compressed data, and calculating the hash value of each data block to obtain a local hash value; if the local hash value corresponding to the data block is inconsistent with the hash value of the historical data block, the data block is used as a data block to be segmented, and the data block to be segmented is segmented using a second segmentation threshold to obtain sub-data blocks; the second segmentation threshold is less than the first segmentation threshold; if the local hash value of the sub-data block is inconsistent with the hash value of the historical data block, the sub-data block is used as the incremental data. That is, a hierarchical hash check mechanism is added, for example Figure 2The hash check process shown in the figure is to perform a rough hash check at a higher level through layered hash calculations, and then perform a finer-grained hash check when necessary, thereby reducing unnecessary computational overhead and ensuring data accuracy. Layered hash check can first detect changes in large blocks of data at a high level, and then conduct detailed checks on specific data blocks. This layered check method reduces system resource consumption and speeds up the check process. Specifically, a first-level hash check is first performed on a larger data block to determine whether the data block requires further processing. If the first-level hash check finds that the data block has changed, a finer-grained second-level hash check is performed on the data block to further determine the specific part that has changed. This layered check mechanism reduces unnecessary hash calculations, thereby optimizing system performance and ensuring the accuracy of data transmission.
[0081] It can be seen that by only transmitting the changed parts of the previous and subsequent data packets, the full data transmission is avoided, the bandwidth usage is further reduced, the delay of the remote interface is greatly reduced, and a high operation response speed can still be achieved in a low-bandwidth environment, thereby improving the real-time performance of remote management.
[0082] Step S14: determining the transmission frequency of the data to be transmitted according to the real-time bandwidth information and the type of the data to be transmitted.
[0083] Specifically, different types of data have different transmission frequencies. For example, temperature data needs to be transmitted promptly, while video data can be transmitted at a lower frequency. The data transmission frequency is automatically adjusted based on the real-time bandwidth. In high-bandwidth situations, the system transmits data at a higher frequency to ensure the real-time and integrity of front-end data. In low-bandwidth situations, the system reduces the transmission frequency and may also reduce the frequency of data refreshes to conserve bandwidth resources. The transmission frequency is adjusted using an adaptive mechanism, and can be dynamically adjusted based on the amplitude and frequency of bandwidth fluctuations. For example, when bandwidth is low, the system prioritizes the transmission of critical data, such as server status information and control instructions, to ensure that the core functions of remote management are not affected. This optimization strategy reduces the computational burden on both the server and client sides, improving the overall efficiency of the system.
[0084] In some embodiments, determining the transmission frequency of the data to be transmitted based on the real-time bandwidth information and the type of the data to be transmitted may include: determining the initial transmission frequency of the data to be transmitted based on a mapping relationship between the data type and the transmission frequency; adjusting the initial transmission frequency in real time based on the real-time bandwidth information to obtain the actual transmission frequency of the data to be transmitted; wherein the bandwidth is proportional to the transmission frequency. Real-time bandwidth information can be obtained by detecting the availability of the current network bandwidth, which can be achieved by measuring the amount of data transmitted per unit time, or by using a dedicated network monitoring tool to obtain bandwidth utilization. Bandwidth feedback is generated based on the measured bandwidth data to dynamically adjust the data processing method according to the bandwidth conditions.
[0085] Related technologies typically use static bandwidth allocation strategies, which are unable to dynamically adjust data transmission strategies based on real-time bandwidth conditions. The adaptive bandwidth scheduling mechanism proposed in this application dynamically adjusts the frequency of data transmission based on bandwidth and data type, ensuring that critical data, such as server status information and alarm data, is transmitted first when bandwidth is limited. Through intelligent scheduling strategies, this ensures optimal utilization of bandwidth resources and improves system reliability in low-bandwidth environments.
[0086] In some embodiments, determining the transmission frequency of the data to be transmitted based on the real-time bandwidth information and the type of the data to be transmitted may include: predicting bandwidth fluctuations within a preset future time period based on the real-time bandwidth information and historical bandwidth information, and determining the transmission frequency of the data to be transmitted based on the bandwidth fluctuations and the type of data to be transmitted. It is understandable that data transmission requires time, specifically within a certain period of time in the future. Therefore, based on the current bandwidth and historical bandwidth, the bandwidth situation for a certain period of time in the future is predicted, and then the data transmission frequency is determined based on the predicted bandwidth and data type. The data transmission frequency thus determined is more in line with actual conditions and can further improve bandwidth utilization efficiency.
[0087] In some embodiments, determining the transmission frequency of the data to be transmitted based on the real-time bandwidth information and the type of the data to be transmitted may include: determining an initial transmission frequency of the data to be transmitted based on a corresponding change frequency of the data to be transmitted; the data change frequency is proportional to the transmission frequency; and adjusting the initial transmission frequency in real time based on the real-time bandwidth information to obtain the actual transmission frequency of the data to be transmitted. Specifically, in a specific implementation, an initial frequency may be selected based on the data type, and the transmission frequency may be subsequently adjusted in real time based on the bandwidth during the transmission process, thereby improving the rationality of the data transmission bandwidth and enhancing bandwidth utilization efficiency.
[0088] As can be seen, the data transmission frequency and compression strategy are dynamically adjusted based on the actual current network bandwidth to ensure optimal data transmission performance under different bandwidth conditions. By monitoring bandwidth changes in real time and automatically adjusting the transmission method based on the importance of the transmitted data, the bandwidth resource is maximized and data transmission efficiency is improved.
[0089] Step S15: sending the incremental data corresponding to the data to be transmitted to the client according to the transmission frequency, so that the client can remotely manage the server.
[0090] In this embodiment, incremental data is sent to the client (the terminal used for remote management) based on the transmission frequency, allowing the user to perform corresponding operations on the server based on the received data. This solves the problems of fluency, real-time performance, and resource consumption in related technologies for remote management operations in low-bandwidth environments, significantly improving the practicality and reliability of BMC remote management systems.
[0091] In some embodiments, the step of sending the incremental data corresponding to the data to be transmitted to the client according to the transmission frequency may include: configuring a corresponding transmission priority for the data to be transmitted according to the importance of each type of data to be transmitted in the server; and sending the incremental data corresponding to the data to be transmitted to the client according to the transmission priority and the transmission frequency. That is, when multiple data are to be transmitted, the data with the highest priority is transmitted first. For example Figure 3 The specific remote management method flow chart shown in the figure pre-sets transmission priorities based on data importance. Critical server status data such as temperature and fan speed is transmitted first, while non-critical data such as video streams or images is transmitted later. Transmission priority is managed using a tiered strategy, with data divided into multiple priority queues, each allocated bandwidth resources based on its priority. For high-priority data, the system ensures timely transmission even when bandwidth is limited. For low-priority data, the system adjusts the transmission frequency or compression strategy based on bandwidth availability.
[0092] In some embodiments, sending the incremental data corresponding to the data to be transmitted to the client may include: if the incremental data is image data, layering the image data according to the resolution to obtain low-resolution layer image data, medium-resolution layer image data and high-resolution layer image data; transmitting the image data in a progressive transmission manner according to the transmission priority; the transmission priorities corresponding to the low-resolution layer image data, medium-resolution layer image data and high-resolution layer image data decrease in sequence. For example, the image is divided into three resolution levels: low, medium and high. The low-resolution part is transmitted first to ensure that the basic image is quickly displayed on the front end in a low-bandwidth environment; as the bandwidth condition improves or the transmission continues, the high-resolution details are gradually transmitted to update the image display. For example, assuming that the data type is image and the size is S, the image is divided into N layers through progressive transmission. The size of each layer is , where i represents the resolution level. The total transmission amount T is: When bandwidth is limited, only the first few layers of data are transmitted, which can significantly reduce the initial transmission volume. Assuming that the first two layers of data are transmitted, the transmission volume is: .
[0093] In some embodiments, sending the incremental data corresponding to the data to be transmitted to the client may include: if the incremental data is video data, transmitting the video data in a progressive transmission manner according to the transmission priority; the transmission priority of key frames in the video data is higher than the transmission priority of non-key frames. Figure 4 The following figure shows the transmission strategy for image and video data. Similarly for video, key frames are transmitted first to form the video framework, followed by non-key frames, improving video fluency. From data type identification to compression algorithm selection, to progressive transmission and dynamic algorithm switching, the entire process is automated to ensure efficient data transmission.
[0094] In an edge computing environment, servers are usually deployed in remote locations with limited network bandwidth. Through this application solution, administrators can remotely monitor the hardware status of edge servers through the front-end interactive interface. When an edge server has an abnormality, such as excessive temperature, the system will automatically generate an alarm and transmit the alarm information first to ensure that the administrator can receive the alarm in time and take action. The administrator can remotely perform server restart or firmware update operations through the interface. All these operations will be optimized through intelligent compression and differential data synchronization technology to ensure that they can be completed smoothly under low bandwidth conditions. It can be seen that the BMC remote management system in low-bandwidth environments has problems such as low data transmission efficiency, slow operation response and waste of bandwidth resources; by optimizing the key steps in the data transmission process, the transmission efficiency, operation fluency and system reliability in low-bandwidth environments are effectively improved.
[0095] As can be seen from the above, in this embodiment, the real-time bandwidth information of the server is obtained; a compression strategy for the data to be transmitted is determined according to the format of the data to be transmitted, and the data to be transmitted is compressed using the compression strategy to obtain compressed data; a differential analysis is performed on the compressed data and the transmitted data, and incremental data is filtered out from the compressed data according to the difference between the compressed data and the transmitted data; the transmission frequency of the data to be transmitted is determined according to the real-time bandwidth information and the type of the data to be transmitted; and according to the transmission frequency, the incremental data corresponding to the data to be transmitted is sent to the client so that the client can remotely manage the server. It can be seen that by intelligently selecting the compression strategy according to the format of the data to be transmitted, so as to use the optimal compression strategy that conforms to the data format for compression, the data transmission volume can be significantly reduced and the data transmission efficiency can be maximized; by screening out incremental data, that is, data that has not been transmitted, on the basis of achieving data synchronization, the full data transmission is avoided, which further reduces the bandwidth usage, reduces the response delay of the remote interface, and improves the real-time performance of remote management; according to the real-time bandwidth and the type of data to be transmitted, the transmission frequency that conforms to the current data and the current bandwidth conditions is determined, and data is transmitted according to the frequency to ensure the transmission of key data, optimize system resource consumption, and improve the overall efficiency of the system.
[0096] Correspondingly, the present application also discloses a remote management system, such as Figure 5 As shown in the figure, the system primarily consists of a server-side BMC monitoring module, an intelligent compression module, a differential data synchronization module, and a bandwidth adaptive scheduling module. The front-end interactive interface communicates with the server via the network, enabling remote monitoring and operation. This enables remote operation in edge computing environments.
[0097] The intelligent compression module is responsible for reducing data transmission volume by selecting the optimal compression algorithm in low-bandwidth environments. The module's intelligence lies in its ability to automatically select and adjust compression strategies based on different data types to ensure maximum data transmission efficiency.
[0098] The differential data synchronization module uses differential data synchronization technology to only transmit the changed data, reducing bandwidth usage; this module further optimizes the accuracy and efficiency of data transmission through dynamic granularity control and hierarchical hash verification.
[0099] The bandwidth adaptive scheduling module monitors the current network bandwidth in real time, dynamically adjusts the data transmission frequency and priority, ensures that key data is transmitted first when bandwidth is limited, and cooperates with the intelligent compression module to select the appropriate compression strategy.
[0100] Front-end interactive interface: provides an entry point for users to interact with the system, presents the real-time status of the server through a graphical interface, and supports remote management operations. The interface adopts progressive loading and responsive design to adapt to the access requirements of different bandwidths and devices. This module works in conjunction with the intelligent compression module, differential data synchronization module, and bandwidth adaptive scheduling module to provide users with a real-time and efficient server management experience. In low-bandwidth environments, the front-end interactive interface needs to optimize the display and operation response to ensure that users can perform management operations smoothly. The server monitoring data transmitted from the background is received in real time, including key data such as temperature, fan speed, system logs, etc. The interface will be dynamically updated based on this data to ensure that administrators can grasp the operating status of the server in real time. In order to reduce the delay and freeze caused by data refresh, the front-end interface adopts an incremental update mechanism, only updating the changed parts instead of reloading the entire page.
[0101] The BMC monitoring module is responsible for monitoring server hardware status and collecting data, and provides remote operation capabilities through the standard IPMI protocol. This module works in conjunction with other modules to ensure real-time data transmission and supports remote management operations such as restart, shutdown, and firmware updates.
[0102] Correspondingly, the present application also discloses a remote management device, which is applied to a server including a baseboard management controller, see Figure 6 As shown, the device includes:
[0103] A real-time bandwidth information acquisition module 11 is used to acquire the real-time bandwidth information of the server;
[0104] A compression strategy determining module 12 is configured to determine a compression strategy for the data to be transmitted according to a format of the data to be transmitted, and compress the data to be transmitted using the compression strategy to obtain compressed data;
[0105] an incremental data determining module 13, configured to perform differential analysis on the compressed data and the transmitted data, and filter out incremental data from the compressed data based on the difference between the compressed data and the transmitted data;
[0106] A transmission frequency determination module 14 is configured to determine the transmission frequency of the data to be transmitted according to the real-time bandwidth information and the type of the data to be transmitted;
[0107] The data transmission module 15 is configured to send the incremental data corresponding to the data to be transmitted to the client according to the transmission frequency, so that the client can remotely manage the server.
[0108] As can be seen from the above, in this embodiment, the real-time bandwidth information of the server is obtained; a compression strategy for the data to be transmitted is determined according to the format of the data to be transmitted, and the data to be transmitted is compressed using the compression strategy to obtain compressed data; a differential analysis is performed on the compressed data and the transmitted data, and incremental data is filtered out from the compressed data according to the difference between the compressed data and the transmitted data; the transmission frequency of the data to be transmitted is determined according to the real-time bandwidth information and the type of the data to be transmitted; and according to the transmission frequency, the incremental data corresponding to the data to be transmitted is sent to the client so that the client can remotely manage the server. It can be seen that by intelligently selecting the compression strategy according to the format of the data to be transmitted, so as to use the optimal compression strategy that conforms to the data format for compression, the data transmission volume can be significantly reduced and the data transmission efficiency can be maximized; by screening out incremental data, that is, data that has not been transmitted, on the basis of achieving data synchronization, the full data transmission is avoided, which further reduces the bandwidth usage, reduces the response delay of the remote interface, and improves the real-time performance of remote management; according to the real-time bandwidth and the type of data to be transmitted, the transmission frequency that conforms to the current data and the current bandwidth conditions is determined, and data is transmitted according to the frequency to ensure the transmission of key data, optimize system resource consumption, and improve the overall efficiency of the system.
[0109] In some specific embodiments, the compression strategy determination module 12 may specifically include:
[0110] The compression strategy determining unit is used to determine a compression strategy for the data to be transmitted according to the format of the data to be transmitted and the real-time bandwidth information; the compression strategy includes a compression method and a compression type, and the compression type includes lossy compression and lossless compression.
[0111] In some specific embodiments, the compression strategy determination unit may specifically include:
[0112] A compression mode determining unit, configured to determine a compression mode corresponding to the data to be transmitted according to a format of the data to be transmitted and a correspondence between different data formats and compression modes; the data formats include text data, image data, and video data;
[0113] a compression type determining unit, configured to determine a current compression type for the data to be compressed according to the real-time bandwidth information and a bandwidth threshold;
[0114] A compression strategy generating unit is configured to generate a compression strategy based on the compression mode and the compression type.
[0115] In some specific embodiments, the data transmission module 15 may specifically include:
[0116] a data layering unit, configured to, if the incremental data is image data, layer the image data according to resolution to obtain low-resolution layer image data, medium-resolution layer image data, and high-resolution layer image data;
[0117] The image progressive transmission unit is used to transmit the image data in a progressive transmission mode according to the transmission priority; the transmission priorities corresponding to the low-resolution layer image data, the medium-resolution layer image data, and the high-resolution layer image data decrease in sequence.
[0118] In some specific embodiments, the data transmission module 15 may specifically include:
[0119] The video progressive transmission unit is configured to transmit the video data in a progressive transmission manner according to a transmission priority if the incremental data is video data; the transmission priority of key frames in the video data is higher than that of non-key frames.
[0120] In some specific embodiments, the incremental data determination module 13 may specifically include:
[0121] a partitioning unit, configured to partition the compressed data into data blocks according to a segmentation threshold, obtain a plurality of data blocks corresponding to the compressed data, and calculate a hash value of each data block to obtain a local hash value;
[0122] A hash unit, configured to compare the local hash value with the hash value corresponding to the transmitted historical data block, and skip the transmission of the current data block if the local hash value is consistent with the hash value of the historical data block;
[0123] The incremental data determining unit is configured to use the current data block as incremental data and send the current data block to the peer end if the local hash value is inconsistent with the hash value of the historical data block.
[0124] In some specific embodiments, the remote management device may include:
[0125] A hash value receiving unit is configured to receive a peer end hash value fed back by the peer end after sending the current data block to the peer end; the peer end hash value is obtained by performing a hash calculation on the peer end after receiving the current data block;
[0126] The data retransmission unit is configured to compare the local hash value corresponding to the current data block with the opposite end target hash value, and retransmit the current data block if the local hash value is inconsistent with the opposite end target hash value.
[0127] In some specific embodiments, the incremental data determination module 13 may specifically include:
[0128] a first segmentation unit, configured to divide the compressed data into data blocks according to a first segmentation threshold, obtain a plurality of data blocks corresponding to the compressed data, and calculate a hash value of each data block to obtain a local hash value;
[0129] a second segmentation unit, configured to, if the local hash value corresponding to the data block is inconsistent with the hash value of the historical data block, use the data block as a data block to be segmented, and segment the data block to be segmented using a second segmentation threshold to obtain sub-data blocks; the second segmentation threshold is smaller than the first segmentation threshold;
[0130] The incremental data determining unit is configured to use the sub-data block as the incremental data if the local hash value of the sub-data block is inconsistent with the hash value of the historical data block.
[0131] In some specific embodiments, the remote management device may include:
[0132] A data change frequency determination unit is used to determine the data change frequency of the data to be transmitted before dividing the compressed data into data blocks according to the segmentation threshold, and determine the segmentation threshold for the data to be transmitted according to the data change frequency; the data change frequency is inversely proportional to the segmentation threshold.
[0133] In some specific embodiments, the transmission frequency determination module 14 may specifically include:
[0134] an initial transmission frequency determining unit, configured to determine the initial transmission frequency of the data to be transmitted according to a mapping relationship between the data type and the transmission frequency;
[0135] The transmission frequency adjustment unit is used to adjust the initial transmission frequency in real time according to the real-time bandwidth information to obtain the actual transmission frequency of the data to be transmitted; wherein the bandwidth is proportional to the transmission frequency.
[0136] In some specific embodiments, the transmission frequency determination module 14 may specifically include:
[0137] an initial transmission frequency determining unit, configured to determine an initial transmission frequency of the data to be transmitted according to a change frequency corresponding to the data to be transmitted; the data change frequency is proportional to the transmission frequency;
[0138] The transmission frequency adjustment unit is configured to adjust the initial transmission frequency in real time according to the real-time bandwidth information to obtain an actual transmission frequency of the data to be transmitted.
[0139] In some specific embodiments, the data transmission module 15 may specifically include:
[0140] a transmission priority determination unit, configured to configure corresponding transmission priorities for the data to be transmitted according to the importance of each type of data to be transmitted in the server;
[0141] A transmission unit is used to send the incremental data corresponding to the data to be transmitted to the client according to the transmission priority and the transmission frequency.
[0142] Furthermore, the present application also discloses an electronic device, see Figure 7 The contents in the drawings should not be considered as any limitation on the scope of use of the present application.
[0143] Figure 7 This is a schematic diagram of the structure of an electronic device 20 provided in an embodiment of the present application. The electronic device 20 may include: at least one processor 21, at least one memory 22, a power supply 23, a communication interface 24, an input / output interface 25, and a communication bus 26. The memory 22 is used to store a computer program, which is loaded and executed by the processor 21 to implement the relevant steps of the remote management method disclosed in any of the aforementioned embodiments.
[0144] In this embodiment, the power supply 23 is used to provide operating voltage for each hardware device on the electronic device 20; the communication interface 24 can create a data transmission channel between the electronic device 20 and the external device. The communication protocol it follows is any communication protocol that can be applied to the technical solution of this application and is not specifically limited here; the input and output interface 25 is used to obtain external input data or output data to the outside world. Its specific interface type can be selected according to specific application needs and is not specifically limited here.
[0145] In addition, the memory 22, as a carrier for resource storage, can be a read-only memory, random access memory, disk or CD, etc. The resources stored thereon include an operating system 221, a computer program 222 and data 223 including a training set, etc. The storage method can be temporary storage or permanent storage.
[0146] The operating system 221 is used to manage and control the hardware devices and computer programs 222 on the electronic device 20, so as to enable the processor 21 to calculate and process the massive amount of data 223 in the memory 22. The operating system 221 can be Windows Server, NetWare, Unix, Linux, etc. In addition to including computer programs capable of implementing the remote management method disclosed in any of the aforementioned embodiments and executed by the electronic device 20, the computer programs 222 can further include computer programs capable of performing other specific tasks.
[0147] Furthermore, an embodiment of the present application also discloses a computer storage medium, in which computer executable instructions are stored. When the computer executable instructions are loaded and executed by a processor, the remote management method steps disclosed in any of the aforementioned embodiments are implemented.
[0148] Furthermore, an embodiment of the present application also discloses a computer program product, in which a computer program is stored. When the computer program is loaded and executed by a processor, the remote management method steps disclosed in any of the aforementioned embodiments are implemented.
[0149] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from the other embodiments. Reference can be made to the descriptions of the identical or similar parts between the various embodiments. For the devices disclosed in the embodiments, since they correspond to the methods disclosed in the embodiments, the descriptions are relatively simple, and the relevant parts can be referred to the descriptions of the methods.
[0150] The steps of the methods or algorithms described in conjunction with the embodiments disclosed herein may be implemented directly using hardware, a software module executed by a processor, or a combination of the two. The software module may be placed in random access memory (RAM), internal memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, a hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.
[0151] Finally, it should be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of additional identical elements in the process, method, article, or device comprising the element.
[0152] The above is a detailed introduction to the remote management method, device, equipment and storage medium provided by the present invention. Specific examples are used herein to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only used to help understand the method of the present invention and its core ideas. At the same time, for those skilled in the art, according to the ideas of the present invention, there will be changes in the specific implementation methods and application scopes. In summary, the contents of this specification should not be understood as limiting the present invention.
Claims
1. A remote management method, characterized in that: Applies to servers that include a baseboard management controller, including: Obtaining real-time bandwidth information of the server; Determining a compression strategy for the data to be transmitted according to the format of the data to be transmitted and the real-time bandwidth information, and compressing the data to be transmitted using the compression strategy to obtain compressed data; performing differential analysis on the compressed data and the transmitted data, and filtering incremental data from the compressed data according to the difference between the compressed data and the transmitted data; determining a transmission frequency of the data to be transmitted according to the real-time bandwidth information and the type of the data to be transmitted; sending the incremental data corresponding to the data to be transmitted to the client according to the transmission frequency, so that the client can remotely manage the server; The performing differential analysis on the compressed data and the transmitted data, and filtering out incremental data from the compressed data according to the difference between the compressed data and the transmitted data, includes: Determining a data change frequency of the data to be transmitted, and determining a segmentation threshold for the data to be transmitted according to the data change frequency; the data change frequency is inversely proportional to the segmentation threshold; Dividing the compressed data into data blocks according to a segmentation threshold to obtain a plurality of data blocks corresponding to the compressed data, and calculating a hash value of each data block to obtain a local hash value; Comparing the local hash value with the hash value corresponding to the transmitted historical data block, and if the local hash value is consistent with the hash value of the historical data block, skipping the transmission of the current data block; If the local hash value is inconsistent with the hash value of the historical data block, the current data block is used as incremental data and sent to the peer end.
2. The remote management method according to claim 1, wherein: The compression strategy includes a compression method and a compression type, and the compression type includes lossy compression and lossless compression.
3. The remote management method according to claim 1, wherein: The step of determining a compression strategy for the data to be transmitted according to the format of the data to be transmitted and the real-time bandwidth information includes: Determining the compression method corresponding to the data to be transmitted according to the format of the data to be transmitted and the correspondence between different data formats and compression methods; the data format includes text data, image data and video data; Determining a current compression type for the data to be transmitted according to the real-time bandwidth information and the bandwidth threshold; A compression strategy is generated based on the compression mode and the compression type.
4. The remote management method according to claim 1, wherein: The sending the incremental data corresponding to the data to be transmitted to the client includes: If the incremental data is image data, the image data is layered according to resolution to obtain low-resolution layer image data, medium-resolution layer image data, and high-resolution layer image data; The image data is transmitted in a progressive transmission manner according to the transmission priority; the transmission priorities corresponding to the low-resolution layer image data, the medium-resolution layer image data, and the high-resolution layer image data decrease in sequence.
5. The remote management method according to claim 1, wherein: The sending the incremental data corresponding to the data to be transmitted to the client includes: If the incremental data is video data, the video data is transmitted in a progressive transmission manner according to the transmission priority; the transmission priority of key frames in the video data is higher than the transmission priority of non-key frames.
6. The remote management method according to claim 1, wherein: After the current data block is sent to the peer end, the method further includes: receiving a peer hash value fed back by the peer; the peer hash value being obtained by the peer performing a hash calculation after receiving the current data block; The local hash value corresponding to the current data block is compared with the opposite end target hash value. If the local hash value is inconsistent with the opposite end target hash value, the current data block is resent.
7. The remote management method according to claim 1, wherein: The performing differential analysis on the compressed data and the transmitted data, and filtering out incremental data from the compressed data according to the difference between the compressed data and the transmitted data, may further include: Dividing the compressed data into data blocks according to a first segmentation threshold to obtain a plurality of data blocks corresponding to the compressed data, and calculating a hash value of each data block to obtain a local hash value; If the local hash value corresponding to the data block is inconsistent with the hash value of the historical data block, the data block is used as a data block to be split, and the data block to be split is split using a second splitting threshold to obtain sub-data blocks; the second splitting threshold is less than the first splitting threshold; If the local hash value of the sub-data block is inconsistent with the hash value of the historical data block, the sub-data block is used as the incremental data.
8. The remote management method according to claim 1, wherein: The determining, based on the real-time bandwidth information and the type of the data to be transmitted, a transmission frequency of the data to be transmitted, includes: Determining an initial transmission frequency of the data to be transmitted according to a mapping relationship between data type and transmission frequency; The initial transmission frequency is adjusted in real time according to the real-time bandwidth information to obtain the transmission frequency of the data to be transmitted; wherein the bandwidth is proportional to the transmission frequency.
9. The remote management method according to claim 1, wherein: The determining, based on the real-time bandwidth information and the type of the data to be transmitted, a transmission frequency of the data to be transmitted, includes: determining an initial transmission frequency of the data to be transmitted according to a data change frequency of the data to be transmitted, wherein the data change frequency is proportional to the initial transmission frequency; The initial transmission frequency is adjusted in real time according to the real-time bandwidth information to obtain the transmission frequency of the data to be transmitted.
10. The remote management method according to any one of claims 1 to 9, characterized in that: The step of sending the incremental data corresponding to the data to be transmitted to the client according to the transmission frequency includes: According to the importance of each type of data to be transmitted in the server, a corresponding transmission priority is configured for the data to be transmitted; The incremental data corresponding to the data to be transmitted is sent to the client according to the transmission priority and the transmission frequency.
11. A remote management device, characterized in that: include: A real-time bandwidth information acquisition module is used to obtain the real-time bandwidth information of the server; A compression strategy determining module, configured to determine a compression strategy for the data to be transmitted based on the format of the data to be transmitted and the real-time bandwidth information, and compress the data to be transmitted using the compression strategy to obtain compressed data; an incremental data determination module, configured to perform differential analysis on the compressed data and the transmitted data, and filter out incremental data from the compressed data based on the difference between the compressed data and the transmitted data; a transmission frequency determination module, configured to determine the transmission frequency of the data to be transmitted according to the real-time bandwidth information and the type of the data to be transmitted; a data transmission module, configured to send the incremental data corresponding to the data to be transmitted to the client according to the transmission frequency, so that the client can remotely manage the server; Among them, the incremental data determination module is used to determine the data change frequency of the data to be transmitted, and determine the segmentation threshold for the data to be transmitted according to the data change frequency; the data change frequency is inversely proportional to the segmentation threshold; the compressed data is divided into data blocks according to the segmentation threshold to obtain multiple data blocks corresponding to the compressed data, and the hash value of each data block is calculated to obtain a local hash value; the local hash value is compared with the hash value corresponding to the transmitted historical data block. If the local hash value is consistent with the hash value of the historical data block, the transmission of the current data block is skipped; if the local hash value is inconsistent with the hash value of the historical data block, the current data block is used as incremental data and sent to the other end.
12. An electronic device, characterized in that: include: Memory, used to store computer programs; A processor, configured to execute the computer program to implement the remote management method according to any one of claims 1 to 10.
13. A computer-readable storage medium, characterized in that Used to store a computer program; wherein when the computer program is executed by a processor, the remote management method according to any one of claims 1 to 10 is implemented.
Citation Information
Patent Citations
Interface flexible arrangement system and method based on data sharing
CN117033487A
Big data transmission method and system based on hybrid distribution estimation algorithm
CN118509121A