Efficient script transmission method and device based on BMC-SOL link

By establishing a script template library on the BMC-SOL link for difference analysis and encoding conversion, combined with LZMA compression, the problems of low transmission efficiency and data distortion were solved, achieving efficient and reliable script transmission and improving the management capabilities of bare metal nodes.

CN120811896APending Publication Date: 2025-10-17JINAN INSPUR DATA TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510989653.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-07-17
Publication Date
2025-10-17

AI Technical Summary

Technical Problem

Existing script transmission methods are inefficient on BMC-SOL links, especially in low-bandwidth environments where they cannot meet business requirements. Furthermore, they suffer from content distortion due to data encoding conversion, which affects the initialization and configuration efficiency of bare metal nodes.

Method used

By establishing a script template library between the management node and the bare metal node, binary difference analysis is performed. The template with the smallest difference is selected as the benchmark, and the difference is processed by hexadecimal encoding or special character replacement encoding. Finally, the LZMA compression algorithm is used to transmit the script to the bare metal node for decoding and decompression to generate a complete script.

Benefits of technology

It significantly reduces the amount of data transmitted and the time required, improves transmission efficiency in low-bandwidth environments, ensures data integrity and accuracy, and enhances the initialization and configuration efficiency of bare metal nodes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120811896A_ABST
    Figure CN120811896A_ABST
Patent Text Reader

Abstract

The invention relates to an efficient script transmission method and device based on a BMC-SOL link, and relates to the field of server remote management. The method comprises the following steps: establishing and maintaining a script template library between a management node and a bare metal node, performing binary difference analysis on a script to be transmitted and a script template in the script template library, selecting a template with the minimum difference as a reference, comparing the difference content with a preset threshold value, and transmitting a difference part; performing code conversion processing on the difference part, wherein the code conversion comprises hexadecimal coding or special character replacement coding; and compressing the encoded difference content by adopting an LZMA compression algorithm, transmitting the compressed data to a bare metal node through a BMC-SOL link, decoding and decompressing by the bare metal node, and generating a complete script in combination with a local template. According to the method, the BMC-SOL link is combined with the script difference calculation and data compression technology, so that efficient transmission of scripts in a service network isolation environment is realized, and the transmission data volume and the transmission time are reduced.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present disclosure relates to the technical field of server remote management, and particularly relates to a script efficient transmission method and device based on a BMC-SOL link. BACKGROUND

[0002] With the rapid development of cloud computing and data center infrastructure, bare metal servers, as a key hardware platform for implementing high-performance computing and flexible resource scheduling, are widely used in enterprise-level computing, edge computing and high-security industry scenarios. In the process of remote management and configuration of bare metal nodes, the traditional scheme usually relies on business networks for transmission of scripts or configuration files, but this method has significant limitations in scenarios where business networks are isolated. Based on this, BMC (Baseboard Management Controller) and SOL (Serial-over-LAN) technology are introduced as an alternative solution, where SOL redirects the serial console to the remote management end through the IPMI protocol to achieve serial-level communication across network isolation. Specifically, this technology system covers the whole process from script comparison, difference extraction, encoding conversion to compression transmission, involving key links such as template library management, incremental transmission mechanism and low-bandwidth optimization algorithm.

[0003] However, in the existing script transmission method, full-volume transmission is directly performed using the SOL link without the combination of difference calculation and compression technology for collaborative optimization, which may result in low transmission efficiency or failure to meet actual business requirements in a low-bandwidth environment. The bandwidth of the SOL link is usually only 4KB / s, and if a large volume of scripts is transmitted, the required time will significantly increase, affecting the initialization and configuration efficiency of the bare metal node. In addition, there is a problem of content distortion caused by data encoding conversion during SOL transmission, and the existing technology lacks an effective correction mechanism, further limiting its application in critical operation scenarios. Due to the isolation characteristics of business networks and management networks, the traditional transmission method relying on business networks cannot be applied, thereby affecting the remote management capability and deployment flexibility of bare metal nodes. SUMMARY

[0004] The present disclosure aims to at least partially solve one of the technical problems in the related art.

[0005] The present disclosure proposes a script efficient transmission method based on a BMC-SOL link, which compares the target script with the pre-stored script template, calculates the minimum difference content, and then transmits the difference part through the SOL link, finally restoring the complete script on the bare metal node.

[0006] Another object of the present disclosure is to propose a script efficient transmission device based on a BMC-SOL link.

[0007] To achieve the above object, the first aspect of the present application provides a script efficient transmission method based on BMC-SOL link, comprising: S1, establishing and maintaining a script template library between a management node and a bare metal node, the template library containing pre-defined or historically transmitted script templates for subsequent incremental comparison; S2, performing binary difference analysis on the to-be-transmitted script and the script templates in the template library, selecting the template with the smallest difference as the reference, and comparing the difference content size with the preset threshold to determine whether to transmit the complete script or only the difference part; S3, performing encoding conversion processing on the difference part to avoid data distortion in the SOL link transmission process, the encoding conversion including hexadecimal encoding or special character replacement encoding; S4, compressing the encoded difference content using the LZMA compression algorithm, and transmitting the compressed data to the bare metal node through the BMC-SOL link, and generating a complete script by combining the local template after decoding and decompressing the data by the bare metal node.

[0008] In an embodiment of the present application, the script template library between the management node and the bare metal node further comprises: S11, each script template in the script template library contains a file index, a file content and a script role label, and the label is used to identify the business purpose of the script; S12, the script template library is kept synchronized between the management node and the bare metal node, and after each transmission is completed, the latest script is stored as a new template in the template library, and the index and label information are updated.

[0009] In an embodiment of the present application, the binary difference analysis of the to-be-transmitted script and the script template in the template library further comprises: S21, using the librsync library to perform binary difference analysis to quickly identify the minimum difference content between the to-be-transmitted script and the template; S22, when the difference content size exceeds 50% of the original script, the method directly transmits the original script, otherwise only the difference part is transmitted.

[0010] In an embodiment of the present application, the encoding conversion processing on the difference part further comprises: S31, using hexadecimal encoding method, splitting each byte into the first 4 bits and the last 4 bits, and representing them with hexadecimal characters respectively, to prevent data distortion in the SOL link transmission process; S32, using special character replacement encoding method, replacing the characters that may change in the transmission process with preset stable characters, and sending correction information after the transmission is completed to restore the original content.

[0011] In an embodiment of the present application, it further comprises: S5, after receiving the compressed difference content, the bare metal node searches the corresponding template in the local template library according to the received template index, and merges the difference content with the template to generate a complete script.

[0012] To achieve the above object, the second aspect of the present application provides a script efficient transmission device based on BMC-SOL link, comprising: a script template library management module, configured to establish and maintain a script template library between a management node and a bare metal node, wherein the script template library contains pre-defined or historically transmitted script templates for subsequent incremental comparison; a difference analysis and transmission decision module, configured to perform binary difference analysis on a to-be-transmitted script and script templates in the script template library, select a template with the smallest difference as a reference, and compare the difference content size with a preset threshold to determine whether to transmit a complete script or only transmit the difference part; an encoding conversion processing module, configured to perform encoding conversion processing on the difference part to avoid data distortion in the SOL link transmission process, wherein the encoding conversion includes hexadecimal encoding or special character replacement encoding; a compression and transmission control module, configured to compress the encoded difference content using an LZMA compression algorithm, and transmit the compressed data to the bare metal node through the BMC-SOL link, wherein the complete script is generated by the bare metal node after decoding and decompressing the data.

[0013] The script efficient transmission method and device based on the BMC-SOL link according to the embodiments of the present application realize efficient transmission of scripts in a business network isolation environment by combining script difference calculation and data compression technology through the BMC-SOL link, and significantly reduce the transmission data volume and transmission time.

[0014] Additional aspects and advantages of the present application will be in part apparent and in part pointed out hereinafter. BRIEF DESCRIPTION OF DRAWINGS

[0015] The above and / or additional aspects and advantages of the present application will become apparent and be readily appreciated from the following description, including the appended drawings.

[0016] Figure 1 is a flowchart of a script efficient transmission method based on a BMC-SOL link according to an embodiment of the present application;

[0017] Figure 2 is a script transmission schematic diagram according to an embodiment of the present application;

[0018] Figure 3 is an architecture diagram of a script efficient transmission method based on a BMC-SOL link according to an embodiment of the present application;

[0019] Figure 4 is a structural diagram of a script efficient transmission device based on a BMC-SOL link according to an embodiment of the present application. DETAILED DESCRIPTION

[0020] It should be noted that the embodiments in the present application and the features in the embodiments can be combined with each other without conflict. The present application will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.

[0021] In order for those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be described clearly and completely below in combination with the drawings of the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, not all. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative labor should belong to the scope of protection of the present application.

[0022] A script efficient transmission method and device based on BMC-SOL link are described below according to the embodiments of the present application.

[0023] The technical terms mentioned in the present application are introduced below.

[0024] IPMI (Intelligent Platform Management Interface) is an open standard that allows system administrators to manage computer systems through an interface independent of operating systems and hardware manufacturers. IPMI provides a standardized method to monitor system health, event logs, power management, temperature, fan speed, voltage, and other information, as well as remote control and recovery of the system.

[0025] BMC (Baseboard Management Controller) is an embedded management microcontroller used to monitor and manage the physical environment of a server. It is usually integrated on the motherboard of a server, but can also exist as a separate hardware component. The main functions of BMC include monitoring the hardware status of the server (such as power supply, fan, temperature sensor, etc.), providing a remote management interface (such as IPMI, Intelligent Platform Management Interface), logging, and system recovery, etc.

[0026] ipmitool is a command-line tool widely used in Linux systems that allows users to manage and monitor computer hardware through the IPMI standard. IPMI is an open standard hardware management interface specification that defines specific methods for embedded management subsystems to communicate.

[0027] SOL (Serial-over-LAN) is a remote access technology that allows users to remotely access a server's serial port over a network (LAN). This technology is often used for remote diagnostics and troubleshooting, as it allows administrators to access a server's console from a remote location.

[0028] Figure 1 is a flowchart of the script efficient transmission method based on the BMC-SOL link according to an embodiment of the present application, as shown in Figure 1 , comprising:

[0029] S1, a script template library between the management node and the bare metal node is established and maintained, and the script template library contains pre-defined or historically transmitted script templates for subsequent incremental comparison.

[0030] Specifically, the step of "establishing and maintaining a script template library between the management node and the bare metal node" is the core pre- step for the script efficient transmission based on the BMC-SOL link of the present application. The technical implementation principle is that a structured and versioned script template library is synchronized and maintained between the management node and the bare metal node, providing a reference file for subsequent incremental comparison and differential transmission, thereby significantly reducing the transmission data volume and improving the transmission efficiency.

[0031] The script template library is initialized and constructed by the management node, and contains copies of pre-defined reference scripts or historically transmitted scripts. Each script in the template library is identified by an index number (such as 1, 2, 3) and is accompanied by a script content and purpose tag (such as "initialization configuration", "security policy", "system optimization", etc.), facilitating subsequent classification matching and version control. After each script transmission is completed, the management node and the bare metal node both need to synchronize and update the new script to the local template library to ensure template consistency. This synchronization process can be completed through the SOL link, or it can be achieved through other management interfaces of the BMC.

[0032] The update strategy of the template library supports dynamic adjustment, such as setting the maximum number of templates (such as 100), the version retention period (such as 30 days), etc., to balance the storage overhead and comparison efficiency. When matching templates, the librsync library is used for binary difference analysis, and its default difference calculation granularity is block-based, with a block size configurable between 512 bytes and 4 KB to adapt to the structural characteristics of different scripts. When the difference content size exceeds 50% of the original script, the system will automatically switch to full transmission mode, avoiding unnecessary incremental calculation.

[0033] The template library is widely used in the initialization configuration of bare metal nodes, system parameter adjustment, security policy deployment and the like, and is particularly suitable for business network isolation and deployment environment relying only on BMC network. Through dynamic maintenance of the template library, the system can gradually accumulate representative script versions, and improve the matching accuracy and efficiency of subsequent transmission.

[0034] The technical value of this step lies in providing a reliable data benchmark for the subsequent incremental transmission mechanism, so that the script transmission data amount can be reduced to 10%-30% of the original script on the SOL link with low bandwidth (about 4KB / s). At the same time, through label classification and version control, the systematization and traceability of script management are improved, which provides a solid support for automated operation and maintenance.

[0035] Further, S1 comprises:

[0036] S11, each script template in the script template library comprises a file index, a file content and a script purpose tag, and the tag is used to identify the business purpose of the script.

[0037] Specifically, this step involves the structured management of each script template in the script template library, which specifically includes the setting of file index, file content and script purpose tag. In some implementations, each script template in the template library is stored in a structured data form, which facilitates subsequent difference comparison and version control operations. The file index is used to uniquely identify the template file, usually using an integer sequence number or a UUID format, to ensure that there is no duplicate identification in the template library, facilitating quick retrieval and matching. The file content is the original text or binary data of the script, and the storage format can be a text file encoded in UTF-8 or a verified binary file to ensure transmission consistency. The script purpose tag (Script Purpose Tag) is used to classify and identify the business purpose of the script, such as "system initialization", "password modification", "log collection", etc. The tag system can be constructed based on predefined business classification standards, and multiple tags can be combined to adapt to complex business scenarios.

[0038] Further, the setting of the label is not only used for business classification, but also serves as an auxiliary basis for template matching. In the difference comparison stage, the system can preferentially select templates consistent with the target script label for comparison, thereby improving the matching accuracy and transmission efficiency. In terms of parameter setting, the label matching weight can be set to 0.3-0.7, which participates in the template selection decision together with the content similarity. In addition, the file content in the template library needs to be synchronized between the management node and the bare metal node, usually through bidirectional verification and update of the SOL link to ensure version consistency. This step plays a key role in the entire technical solution, providing benchmark data and business context for subsequent incremental calculation and script restoration, thereby significantly improving the efficiency and accuracy of script transmission.

[0039] S12, the script template library is kept updated synchronously between the management node and the bare metal node, and after each transmission is completed, the latest script is stored as a new template in the template library, and the index and label information thereof are updated.

[0040] Specifically, this step relates to the synchronous updating mechanism of the template library between the management node and the bare metal node, which is one of the key links for realizing efficient script transmission in the application. The technical implementation principle is based on version control and incremental transmission strategy, and after each script transmission is completed, the latest version of the script is stored as a new template in the template library, and the index and label information thereof are updated synchronously, thereby providing more abundant benchmark data for subsequent difference comparison and incremental transmission, and improving the overall transmission efficiency.

[0041] In a specific implementation, the management node and the bare metal node each maintain a local template library, which identifies each script template by an index number (such as 1, 2, 3) and stores the complete content of the script. After the management node completes a script transmission, the latest version of the script is synchronized to the template library of the bare metal node through the BMC-SOL link. The synchronization process can optionally use full transmission or incremental update, depending on the version consistency of the current template library. After synchronization is completed, the management node and the bare metal node will update the index number and label information of the script respectively, and the label is used to classify the script function (such as "initialization script", "configuration script", "security script", etc.), facilitating subsequent rapid matching of the optimal template.

[0042] The index updating strategy of the template library supports dynamic adjustment, for example, a hash value checking mechanism is used to ensure script content consistency and avoid duplicate storage. The label information can be annotated in multiple dimensions based on script use, version number, creation time, etc. metadata, supporting label matching algorithm to optimize the template selection process. The frequency of synchronous updating can be set to update immediately after each transmission, or to update in batches within a certain time window, to balance system performance and real-time of the template library.

[0043] This step is particularly suitable for business network isolation and bandwidth-limited bare metal node management scenarios in actual application scenarios. For example, in a data center, when the bare metal node has not been configured with a business network or is in a fault recovery phase, script transmission through the BMC-SOL link becomes the only feasible way. Through the synchronous updating of the template library, the system can continuously optimize the benchmark for difference calculation, significantly reducing the data volume of subsequent transmission, thereby improving deployment efficiency and reducing operation and maintenance complexity.

[0044] This step ensures the consistency and availability of the template library, providing a reliable data foundation for subsequent incremental transmission. Through the dynamic updating mechanism, the system can gradually accumulate more templates, improving the accuracy of differential comparison, and ultimately reducing the transmission data of scripts to 10%-30% of the original script, significantly optimizing the transmission performance in low-bandwidth environments.

[0045] S2, binary differential analysis is performed on the script to be transmitted and the script templates in the script template library, the template with the smallest difference is selected as the reference, and the difference part is transmitted according to the comparison between the difference content size and the preset threshold.

[0046] Specifically, in the present application, binary differential analysis is performed on the script to be transmitted and the script templates in the template library, and the difference content size is compared with the preset threshold to determine whether to transmit the complete script or only the difference part, which is one of the core steps to achieve efficient script transmission. This step significantly reduces the data transmission amount through incremental transmission mechanism, thereby improving the transmission efficiency on low-bandwidth SOL link.

[0047] In a specific implementation, the management node first calls the difference calculation module to perform byte-by-byte binary comparison between the script to be transmitted and all stored script templates in the template library. This comparison process can be implemented using the open-source librsync library, which is based on an improved version of the rsync algorithm and supports efficient calculation of the difference block between two binary files. After the comparison is completed, the system selects the template with the smallest difference as the reference template and generates the difference content (delta). Subsequently, the system compares the size of the difference content with the size of the original script. If the difference content exceeds the preset threshold (e.g., 50% or 80%) of the original script, it is determined that incremental transmission has no obvious advantage, and the complete script is transmitted instead. Otherwise, only the difference content and the index identifier of the reference template are transmitted.

[0048] The threshold for difference analysis can be configured according to actual business needs, and typical values are 50% or 80%. The librsync library supports custom block size and rolling hash window. In the present application, the block size is usually set to 1024 bytes to balance the calculation efficiency and difference accuracy. The size of the difference content is quantified in bytes, and the transmission decision is based on the ratio of this value to the size of the original script.

[0049] This step is suitable for scenarios where business networks are isolated and remote script transmission of bare metal nodes relies only on BMC-SOL link. For example, in server initialization, configuration file update, password modification, and other operations, this mechanism can effectively reduce transmission time and avoid transmission failure or timeout problems due to bandwidth limitations.

[0050] By binary difference analysis and threshold judgment mechanism, the application realizes intelligent decision of script transmission, and effectively reduces the transmission data amount. The measured data shows that this step can compress the transmission data amount to 10%-30% of the original script, and significantly improves the utilization rate of the SOL link. In addition, this step cooperates with the subsequent data compression, encoding conversion and other modules, further enhances the adaptability and transmission efficiency of the system in the low bandwidth environment.

[0051] Further, S2 comprises:

[0052] S21, using the librsync library for binary difference analysis to quickly identify the minimum difference content between the to-be-transmitted script and the template.

[0053] Specifically, in the application, using the librsync library for binary difference analysis is one of the core steps to realize efficient transmission of scripts. This step compares the binary content of the to-be-transmitted script with all templates in the template library, calculates the smallest difference part, thereby avoiding full transmission, significantly reducing the data transmission amount, and improving the transmission efficiency on the low-bandwidth SOL link.

[0054] The librsync library is based on an improved version of the rsync algorithm and supports efficient binary difference calculation. Its core principle is to compare the source file and the target file block by block through the rolling checksum mechanism and strong checksum (MD4 or SHA-1), identify the same part of the target file as the template file, and only keep the difference block. In specific operation, the management node compares the to-be-transmitted script with all templates in the template library one by one, calculates the difference block set between each template and the target script, and selects the template with the least number of difference blocks and the smallest difference data amount as the reference. This process usually uses the `rsync delta` function of librsync, and the input is the template file and the target file, and the output is the set of difference blocks, i.e. the so-called "delta" file.

[0055] Several key parameters are involved in the difference analysis process, such as window size (default is 7), block size (usually set to 1024-8192 bytes, dynamically adjusted according to the script size), checksum algorithm selection, etc. In addition, a difference threshold (such as 50%) is set in the system to determine whether it is worth transmitting the difference content. If the difference content size exceeds 50% of the original script, the system will automatically switch to full transmission mode to avoid the decrease of transmission efficiency caused by too many difference blocks.

[0056] This step is mainly applied to the scenario of service network isolation between bare metal nodes and management nodes, and only communication through the BMC-SOL link. For example, in server initialization, configuration file update, or password modification operations, differential analysis is performed through librsync to compress the transmission data volume to 10%-30% of the original script, thereby shortening the initialization time from 30 minutes in the traditional scheme to less than 5 minutes (based on test data of a 10 MB script).

[0057] The technical effect of this step is that, through accurate binary differential analysis, the transmission data volume is effectively reduced, the transmission efficiency in a low-bandwidth environment is improved, the dependence on network resources is reduced, the adaptability and stability of the system in a complex network environment are enhanced. Further, in combination with subsequent encoding conversion and LZMA compression, this step lays a foundation for the entire script transmission process to be efficient and reliable.

[0058] S22, when the size of the differential content exceeds 50% of the original script, the method directly transmits the original script, otherwise only the differential part is transmitted.

[0059] Specifically, in the present application, when the size of the differential content exceeds 50% of the original script, the system will directly transmit the original script, otherwise only the differential part is transmitted. This step is a key decision mechanism in the incremental transmission strategy, and its core lies in achieving the optimal balance between transmission efficiency and resource consumption through the differential comparison algorithm and the preset threshold judgment.

[0060] This step realizes binary-level differential calculation based on the librsync library, and through the rsync delta algorithm, the target script is compared with all templates in the template library byte by byte, and the incremental content is extracted. After the comparison is completed, the management node calculates the byte size of the differential part and compares it with the total byte number of the original script. If the proportion of the differential part exceeds the set threshold (such as 50%), the system determines that the benefit of incremental transmission is low, and instead adopts the full transmission strategy, i.e., the original script is completely sent to the bare metal node. Otherwise, only the differential content and the corresponding template index number are transmitted for script restoration at the receiving end.

[0061] In this step, the threshold value of 50% is set based on the measured data of the SOL link bandwidth (about 4 KB / s) and the average size of the script (such as 10 MB). When the differential content exceeds 50% of the original script, the time required for transmitting the differential content and the template index is similar to or even longer than that for transmitting the complete script, thus triggering the full transmission mechanism. This threshold value can be dynamically configured according to actual business needs, for example, in the scenario where the script is frequently updated, the threshold value can be appropriately increased to reduce the template matching calculation overhead.

[0062] This step is suitable for business network isolation, and remote script distribution relying only on BMC-SOL link for bare metal server management scenarios. For example, in the operation of bare metal node initialization, configuration file update or password modification, if the script content changes frequently or there is a lack of sufficient matching items in the template library, the system will automatically switch to full transmission mode to ensure script integrity and execution reliability.

[0063] This step effectively avoids the problems of restoration failure or transmission delay caused by transmitting incremental data when the difference content is large, improving the robustness and efficiency of script transmission. Through intelligent decision mechanism, the system can still maintain a high transmission success rate in low bandwidth environment, while reducing unnecessary calculation and transmission resource waste, providing clearer data input for subsequent compression and encoding processing, thereby enhancing the overall transmission performance and system stability.

[0064] S3, performing encoding conversion processing on the difference part to avoid data distortion in the SOL link transmission process, the encoding conversion including 16 hexadecimal encoding or special character substitution encoding.

[0065] Specifically, the step of "performing encoding conversion processing on the difference part to avoid data distortion in the SOL link transmission process" is a key technical link in the present application to ensure data integrity and transmission reliability. In the script transmission process based on BMC-SOL (Serial-over-LAN), since the SOL link essentially redirects serial data to the remote management end through the IPMI protocol, the underlying communication mechanism may escape some special bytes or characters, resulting in distortion of the original data during transmission. To solve this problem, the present application introduces an encoding conversion mechanism before difference content compression to ensure that the transmitted data can be accurately restored after passing through the SOL link.

[0066] In some implementations, the encoding conversion includes two ways: hexadecimal encoding (Hex Encoding) and special character substitution encoding (Character Substitution Encoding). Hexadecimal encoding converts each original byte (8 bits) into two ASCII characters representing its hexadecimal value, for example, byte 0x30 will be encoded as characters "3" and "0". Although this way increases the data volume (the amount of encoded data is twice the original), it can effectively avoid the misprocessing of control characters or special bytes in the SOL link, ensuring the stability of data during transmission. Alternatively, special character substitution encoding replaces characters that are prone to distortion in SOL transmission (such as 0x00, 0x0A, etc.) with characters that will not be escaped (such as character "A"), and attaches correction information (such as position and original character) after transmission, which is reversed by the receiving end, thereby achieving lossless restoration of data.

[0067] Furthermore, the implementation of encoding conversion needs to be processed in conjunction with the binary characteristics of the script difference content. In the present invention, the difference content is usually generated by the librsync library, which outputs incremental data in binary format. Before encoding, the system needs to scan the incremental data byte by byte, identify characters that may cause transmission distortion, and select an encoding method based on a preset strategy. For example, for script difference content containing a large number of control characters, the system may preferentially use hexadecimal encoding; for incremental content containing only a small number of special characters, character replacement can be used to reduce encoding overhead.

[0068] This step plays a key role in the entire technical solution. Due to the low bandwidth of the SOL link (approximately 4KB / s), any data distortion may lead to transmission failure or script restoration errors, thereby affecting the initialization and configuration efficiency of the bare metal node. Through encoding conversion, the present invention effectively circumvents the data distortion problem caused by the character escape mechanism in the SOL link, providing a reliable data foundation for subsequent LZMA compression and transmission, thereby ensuring the efficient and accurate transmission of scripts in low-bandwidth environments.

[0069] Furthermore, S3 includes:

[0070] S31 uses hexadecimal encoding to split each byte into the first 4 bits and the last 4 bits, and represents them with hexadecimal characters to prevent data distortion during SOL link transmission.

[0071] Specifically, this step uses hexadecimal encoding, splitting each byte into the first and last four bits, each represented by a hexadecimal character, to prevent data distortion during SOL link transmission. This step is a key implementation of the "data encoding conversion" module in this invention. Its technical principle is to convert the binary structure of the original data into a code, thereby avoiding character conversion and data loss that may occur during SOL link transmission.

[0072] This step first processes the difference content byte by byte. Each byte consists of 8 binary bits, which are split into the upper 4 bits (high order) and the lower 4 bits (low order), and are mapped to hexadecimal characters. For example, the byte value is 0x30 (that is, the ASCII character "0"), with its upper 0x3 and lower 0x0. After encoding, it will be represented as the characters "3" and "0", that is, "30". The encoding process is implemented by traversing byte by byte, converting the original data stream into a hexadecimal string. This ensures that all bytes exist in the form of recognizable characters when transmitted on the SOL link, avoiding data distortion caused by link protocol or character set conversion. The decoding process is performed in reverse at the receiving end, recombining every two hexadecimal characters into a byte to restore the original data content.

[0073] The encoding method expands the representation length of each byte from 1 byte to 2 bytes, and the amount of encoded data is about 2 times the original data. Although the encoding process increases the data volume, it has a significant advantage in data integrity, especially suitable for scenarios where there is a risk of character set conversion or data truncation in the SOL link. Encoding and decoding operations are based on standard hexadecimal conversion algorithms, which comply with the mapping specifications of ASCII and hexadecimal characters (ISO / IEC 8859-1).

[0074] In application scenarios, this step is mainly used to transmit the script difference content after incremental calculation and compression on the BMC-SOL link. Since the bandwidth of the SOL link is low (about 4KB / s), and its transmission mechanism is based on serial port redirection, it is sensitive to data format, therefore, using hexadecimal encoding can effectively avoid data distortion problems during transmission, ensuring that the script content can be accurately restored at the receiving end.

[0075] The technical effect of this step is to convert the original binary data into character form through hexadecimal encoding, thereby realizing stable transmission of data on the SOL link with low bandwidth and low reliability. Its innovation lies in the targeted optimization of the transmission characteristics of the SOL link, ensuring that the script content can be completely and accurately received and restored in a bare metal node without service network connection, providing a reliable data foundation for subsequent script execution.

[0076] S32, using a special character replacement encoding method, replaces characters that may change during transmission with a preset stable character, and sends correction information to restore the original content after transmission is complete.

[0077] Specifically, in the present application, a special character replacement encoding method is used to replace characters that may change during transmission with a preset stable character, and correction information is sent to restore the original content after transmission is complete, which is one of the key steps to realize reliable transmission of scripts in the BMC-SOL link. This step mainly aims at the abnormal character encoding conversion problem that may exist in the data transmission process of the SOL link, and through preprocessing and post-processing mechanisms, ensures the integrity and accuracy of the transmitted data.

[0078] The encoding mode first scans the original script content, and identifies characters that may be distorted in SOL link transmission due to protocol conversion or character set inconsistency. For example, some control characters, NULL characters or special ASCII characters may be misinterpreted or lost when transmitted through the SOL link. To this end, the system replaces these unstable characters with a character that has stable transmission characteristics in the SOL link (such as the character "A"), and records the original character value and position information in the data stream. The replaced data stream only contains stable characters, thereby avoiding data distortion during transmission.

[0079] The selection of the replacement character needs to meet the following conditions: 1) it cannot be misidentified as a control character in the SOL link; 2) it does not have semantic conflicts in the target script; 3) the character replacement table needs to be consistent between the LAN side and the Serial side. The replacement information is usually stored in the form of metadata, with a format of "[position index][original character]", for example, "1,1" indicates that the first character is replaced with "A", which should actually be restored to "0". This metadata is sent separately through the SOL link after transmission is completed, ensuring that the receiving end can accurately restore the original content.

[0080] In terms of application scenarios, this encoding mode is widely applicable to scenarios of remote script distribution through BMC-SOL, especially in bare metal server deployment relying only on BMC network in business network isolation. For example, when modifying system configuration files, executing initialization scripts or updating password policies remotely, the script content may contain special characters, and this encoding mechanism can effectively avoid transmission errors.

[0081] The technical effect of this step is that, through the character replacement and correction mechanism, the transmission reliability of scripts on the SOL link with low bandwidth and high delay is significantly improved. Experimental data shows that after using this encoding mode, the error rate of script transmission can be reduced to below 0.01%, while ensuring the semantic integrity of the script content. Further, this mechanism cooperates with the incremental transmission and LZMA compression technology to jointly constitute the core technical support of the invention for efficient and stable transmission of scripts in low bandwidth environments.

[0082] S4, the encoded difference content is compressed using the LZMA compression algorithm, and the compressed data is transmitted to the bare metal node through the BMC-SOL link. After decoding and decompression by the bare metal node, the complete script is generated in combination with the local template.

[0083] Specifically, in the present application, the encoded difference content is compressed using the LZMA compression algorithm and transmitted to the bare metal node through the BMC-SOL link, and after decoding and decompression, the complete script is generated by combining the local template, which is one of the core steps to realize efficient and low-bandwidth script transmission. At the technical implementation level, this step first calculates the incremental content between the target script and the optimal matching template in the template library through the difference comparison module, and then encodes the incremental content to avoid data distortion caused by character conversion during SOL link transmission. The encoding method can be hexadecimal encoding or special character replacement encoding, where hexadecimal encoding converts each byte to two ASCII characters to ensure the integrity of the transmission; special character replacement encoding pre-replaces specific characters and restores the original data at the receiving end through correction information.

[0084] The transmission decision of the difference content is based on a preset threshold (such as 50% or 80%), if the difference content exceeds the threshold, the complete script is directly transmitted. The encoded data is then processed using the LZMA (XZ) compression algorithm, which supports multiple compression strengths (such as compression levels 1-9), and in the present application, compression levels 6-8 are preferred to balance the compression ratio and computational overhead. The compression ratio of LZMA can usually reach 2:1 to 5:1, significantly reducing the amount of data transmitted, thereby adapting to the bandwidth limit of the SOL link of about 4KB / s.

[0085] This step is suitable for the management scenario of business network isolated bare metal nodes, such as data centers where bare metal nodes have not yet accessed the business network, network failure or security isolation environment, and still need to remotely perform script configuration, password modification, system initialization and other operations. Through the BMC-SOL link, the management node can bypass the traditional network dependence and realize reliable transmission and execution of scripts.

[0086] The technical effect of this step is that through the synergistic optimization of incremental calculation and LZMA compression, the amount of data transmitted is effectively reduced, the transmission efficiency is improved, and the occupation time of low-bandwidth links is reduced. Combined with the updating mechanism of the dynamic template library, the system can gradually accumulate historical scripts, further improving the difference matching accuracy and compression efficiency of subsequent transmission, thereby realizing efficient initialization and operation and maintenance management of bare metal nodes in a business network-free environment.

[0087] Further, S5, after receiving the compressed difference content, the bare metal node searches for the corresponding template in the local template library according to the received template index, and merges the difference content with the template to generate a complete script.

[0088] Specifically, in some implementations, the bare metal node, after receiving the compressed differential content, looks up the corresponding template in the local template library according to the received template index, and merges the differential content with the template to generate a complete script. This step is the core link of the script restoration process in the present application, and its technical implementation is based on the cooperative processing mechanism of the pre-stored script template library and the incremental differential content, aiming to overcome the bottleneck of limited BMC-SOL link bandwidth (about 4KB / s) and realize efficient and accurate script reconstruction.

[0089] From the technical implementation point of view, after receiving the differential content, the bare metal node first retrieves the corresponding reference template in the local template library through the template index (such as an integer sequence number or a UUID identifier). The script templates stored in the template library have a unified index structure and version label, which facilitates quick positioning. Subsequently, the node uses the rsync algorithm provided by the librsync library to decode and merge the differential content, inserting or covering the differential block into the corresponding position of the reference template, thereby generating the complete version of the target script. During the merging process, the system needs to ensure accurate matching at the byte level to avoid distortion of the script content due to transmission errors or encoding conversion.

[0090] The template index is usually an integer or string identifier with a length of no more than 64 bytes to ensure transmission efficiency. The size of the differential content is evaluated by the management node before transmission. If the differential content exceeds 50% of the original script (configurable threshold), the complete script is transmitted directly. The complexity of the merging operation is linearly related to the size of the script. For scripts within 10MB, the merging time is usually completed within 1-3 seconds, meeting the low delay requirement.

[0091] This step is widely applicable to the deployment environment of bare metal nodes isolated from the business network, such as scenarios where bare metal nodes in data centers are not connected to the business network but need to remotely execute initialization scripts, configuration updates, or system diagnosis tasks. Through this mechanism, administrators can complete script distribution without relying on traditional network channels, significantly improving operational flexibility and system availability.

[0092] Through efficient merging of local templates and differential content, script restoration on a low-bandwidth SOL link is achieved, effectively reducing data transmission volume and time overhead, improving system deployment efficiency, and enhancing script management capabilities in complex network environments.

[0093] The script efficient transmission method based on the BMC-SOL link of the embodiment of the present application realizes efficient transmission of scripts in a business network isolation environment through the BMC-SOL link combined with incremental calculation and data compression technology, significantly reducing bandwidth occupation and improving transmission efficiency.

[0094] Further, the script efficient transmission method based on a BMC-SOL link according to the embodiment of the present application is described in combination with the drawings.

[0095] The full name of SOL is Serial over LAN, that is, the serial controller of the BMC is redirected in the IPMI connection stage.

[0096] A link based on the BMC-SOL function communication can be established by the ipmitool command, one end of the link is a UDP connection, and the other end is a serial port. After the link is established, data transmission can be performed. The SOL connection is directly used in the present application in the subsequent description. The LAN side and the serial side described below are the two ends of the SOL. The script transmission of the present application is from the LAN side to the serial side. As shown in the following figure. Figure 2

[0097] Specifically, the core of the present application is to realize efficient transmission of scripts through the SOL link, which specifically includes the following contents:

[0098] Script template library management: dynamically maintain the script template library, support incremental calculation and version control.

[0099] Intelligent difference comparison: select the optimal template and calculate the difference content to avoid full transmission.

[0100] High compression ratio transmission: after the difference content is compressed, it is transmitted through the SOL link to reduce the bandwidth occupation.

[0101] In an embodiment of the present application, the script template is used as a benchmark for calculating the incremental content. The calculation of the incremental content requires a basic file on which the calculation is performed. Therefore, the update of the script template in the present application is to prepare for the subsequent incremental content calculation.

[0102] The main content of the template part is as follows:

[0103] Template library construction: the bare metal management node maintains a script template library, which contains historical transmission scripts or predefined benchmark scripts. Generally, the scripts are prefabricated based on the current own business, and these scripts are stored on both ends of the BMC-SOL connection. The LAN side (previously introduced) and the serial side of the sol will save these prefabricated scripts.

[0104] Dynamic update: after each new script is transmitted, it is stored as a new template in the template library for subsequent incremental calculation. This is to enrich the template library as much as possible and to more efficiently transmit the file.

[0105] In an embodiment of the present application, the incremental content calculation includes: ​

[0106] Compare: The management node compares the to-be-transmitted script with all templates in the template library (e.g., using a diff algorithm), and selects a template with the smallest difference as a reference.

[0107] Decision: If the difference content size exceeds a threshold (e.g., 80%) of the original script, the complete script is directly transmitted; otherwise, only the difference part is transmitted.

[0108] In an embodiment of the present application, data compression includes:

[0109] During data transmission, data compression is performed. A general lmza compression algorithm is used.

[0110] Further, the specific process of the present application is as shown in Figure 3 A script template library needs to be established first. If no template library is established, it is also possible. Because the script template is dynamically updated during transmission.

[0111] The bare metal management node needs to transmit script 1 to the bare metal node. The management node side will first compare script 1 with script templates, find the template 1 with the smallest difference, and then transmit the difference content to the bare metal node through BMC-SOL. The bare metal node receives the difference content, calculates and restores script 1 with template 1.

[0112] Exemplarily, the script template updating process is as follows:

[0113] The script template is initially prefabricated with some business-related scripts. These scripts exist on the management node and the bare metal node (i.e., the LAN side and the Serial side mentioned above), and need to ensure that the contents on both sides are exactly the same. In this way, when transmitting a script, only the incremental content and the serial number (or identifier) of the template file need to be transmitted, and the bare metal node can directly restore the file according to the serial number or identifier.

[0114] After each update and transmission of a script, the management node and the bare metal node need to update the script to the template library. In this way, the next time the script is transmitted, there are more templates to compare.

[0115] The script template mainly saves the file index and the actual content of the file. When a new script is compared, the specific content is substantially compared and calculated. The naming method of the template is the index number (represented by the serial number), for example, files 1, 2, and 3 represent scripts with index numbers 1, 2, and 3, respectively.

[0116]

[0117] ​In the script template, in addition to the index of the file and the specific content of the file, a contrast relationship of the role of the script is maintained, and the file is labeled to indicate the role of the script. A certain type of script is divided into a label.

[0118] Exemplarily, the incremental content calculation process is as follows:

[0119] Binary difference analysis is performed on the target script and all templates in the template library. According to the result of the difference analysis, it is selected from which template the required content is the smallest.

[0120] The result is calculated, the template with the smallest incremental content is selected, and then the index of the template file and the incremental content are sent to the bare metal node through SOL.

[0121] If the incremental content is large (more than 50% of the original script, this value can also be set), that is, the amount of data transmitted by the original script and the incremental content has not increased significantly. Directly transmit the original script.

[0122] The incremental content is calculated by using the open source librsync library. In the application scenario of the application, the size of the script is relatively small (the SOL transmission bandwidth is limited), and the calculation of the difference is very fast. The incremental calculation is compared with all the files in the template library, and the incremental content with the smallest incremental content is selected. If the incremental content in the case with the smallest incremental content is large, for example, more than 50% of the original script, it is meaningless to transmit the incremental file, and the original script is directly transmitted.

[0123] Exemplarily, the data compression transmission process is as follows:

[0124] When transmitting the script difference content through the BMC-SOL link, due to the bandwidth limitation (about 4KB / s), the efficiency of directly transmitting the original difference data is still low. Therefore, the application adopts the LZMA (XZ) compression algorithm to compress the difference content at a high rate, further reducing the transmission data amount.

[0125] Among them, since the BMC-SOL function exists in the transmission data, there is a conversion encoding.

[0126] During the transmission process of data through the SOL connection, data changes may occur, and A and B need to process the data to ensure that there is no change in the data during the transmission process.

[0127] The application uses two schemes, hexadecimal encoding and special character replacement encoding.

[0128] Hexadecimal encoding: the data is changed from one byte representation to two byte representation. The content of the data is re-encoded before the SOL connection transmission, and the data is decoded after being transmitted to the opposite end.

[0129] Special character replacement encoding: replace the characters in the data that will change after SOL transmission with character A, and then send the information (including content and position) of the replacement character to the opposite end after the transmission is completed, and the opposite end decodes the received data.

[0130] Hexadecimal encoding is to represent the first 4 bits and the last 4 bits of a byte (8 bits) with a byte respectively. For example, the byte value of the character "0" is represented in hexadecimal as: 0X30, 3 is the hexadecimal value of the first 4 bits, and 0 is the value of the last 4 bits. After encoding, "30" two characters are used to represent the original data "0". The decoding process is opposite to the encoding.

[0131] Special character replacement encoding is to replace special data in the data, for example, "0" will change after SOL transmission, and all "0"s in the original data are replaced with "A". "A" will not change after transmission, and the position of the recorded data "0" is transmitted after the transmission data. For example, the transmission data "0123455678" is replaced with "A", and the transmission data becomes "A12345678". After transmission, a correction data "[position][original data]" is transmitted, for example, the correction data "1,1" is transmitted, indicating that the first character belongs to the first case of replacement (i.e. 0 is replaced by A), and then the first character is restored to 0.

[0132] In the compression method in the present application, after the data encoding conversion in 2.2.3.1, the data is compressed by the lzma compression algorithm, the size of the compressed data is reduced, and the data transmission efficiency is improved.

[0133] In summary, the beneficial effects of the present application are as follows:

[0134] Break through the network isolation limit: in the scene of completely isolated business network, realize script transmission through BMC-SOL link, expand the management range of bare metal nodes. Reduce bandwidth occupation: through incremental transmission and high compression ratio algorithm, reduce the transmission data to 10%-30% of the original script (actual measurement data). Improve deployment efficiency: the initialization time of bare metal nodes is shortened from 30 minutes of traditional scheme to less than 5 minutes (based on the test results of 10MB script). Reduce operation and maintenance cost: no need to allocate business network IP for bare metal nodes, save IP resources and network equipment cost.

[0135] According to the script efficient transmission method based on the BMC-SOL link, the BMC-SOL link is applied to script transmission for the first time, and the dependence on a service network is broken. The script distribution and file transmission of a bare metal node do not need to depend on the service network. Through the combination of template comparison and compression algorithm, the low-bandwidth utilization rate is maximized. The transmission efficiency is improved, and larger files can be transmitted on the BMC-SOL with extremely low transmission bandwidth. The template automatic updating is supported, the template library can be enriched, and the purpose of improving the transmission efficiency according to the service function is achieved. By comparing the target script with the pre-stored script template, the minimum difference content is calculated, and the difference part is transmitted through the SOL link. Finally, the complete script is restored on the bare metal node. The method significantly reduces the transmission data amount, and makes it possible to efficiently transmit the script on the SOL link with low bandwidth.

[0136] In order to realize the above-mentioned embodiments, as shown in the method for transmitting a script based on a BMC-SOL link, Figure 4 The script efficient transmission device 10 based on the BMC-SOL link is provided in the embodiment, and comprises:

[0137] The script template library management module 100 is configured to establish and maintain a script template library between a management node and a bare metal node. The script template library contains pre-defined or historically transmitted script templates, and is used for subsequent incremental comparison.

[0138] The difference analysis and transmission decision module 200 is configured to perform binary difference analysis on a to-be-transmitted script and a script template in the script template library, select a template with the minimum difference as a reference, and compare the difference content size with a preset threshold to determine a difference part to be transmitted.

[0139] The encoding conversion processing module 300 is configured to perform encoding conversion processing on the difference part to avoid data distortion in the SOL link transmission process. The encoding conversion includes hexadecimal encoding or special character replacement encoding.

[0140] The compression and transmission control module 400 is configured to compress the encoded difference content by using an LZMA compression algorithm, and transmit the compressed data to the bare metal node through the BMC-SOL link. After the data is decoded and decompressed by the bare metal node, the complete script is generated by combining the local template.

[0141] Further, the script template library management module is further configured to:

[0142] Each script template in the script template library contains a file index, a file content, and a script role label. The label is used to identify the service purpose of the script.

[0143] The script template library is kept updated between the management node and the bare metal node, and after each transmission is completed, the latest script is stored as a new template in the template library, and the index and label information thereof are updated.

[0144] Further, the difference analysis and transmission decision module is further used for:

[0145] Using the librsync library for binary difference analysis to quickly identify the minimum difference content between the script to be transmitted and the template;

[0146] When the size of the difference content exceeds 50% of the original script, the module directly transmits the original script, otherwise only the difference part is transmitted.

[0147] Further, the encoding conversion processing module is further used for:

[0148] Using a hexadecimal encoding method, each byte is split into the first 4 bits and the last 4 bits, and is represented by a hexadecimal character respectively, to prevent data distortion in the SOL link transmission process;

[0149] Using a special character replacement encoding method, characters that may change during transmission are replaced with preset stable characters, and correction information is sent after transmission is completed to restore the original content.

[0150] Further, it further comprises:

[0151] A script merging module, used for the bare metal node to find the corresponding template in the local template library according to the received template index after receiving the compressed difference content, and to merge the difference content with the template to generate a complete script.

[0152] The script efficient transmission device based on the BMC-SOL link according to the embodiment of the application first applies the BMC-SOL link to script transmission, breaks through the dependence on business networks, so that script distribution and file transmission of the bare metal node do not need to depend on business networks, maximizes low-bandwidth utilization rate through the combination of template comparison and compression algorithm, improves transmission efficiency, and can transmit larger files on the BMC-SOL with extremely low transmission bandwidth, supports automatic template updating, can enrich the template library, and achieves the purpose of improving transmission efficiency according to business functions. By comparing the target script with the pre-stored script template, the minimum difference content is calculated, the difference part is transmitted through the SOL link, and finally the complete script is restored on the bare metal node. The transmission data amount is significantly reduced, so that efficient script transmission on the SOL link with low bandwidth becomes possible.

[0153] In the description of the specification, the description of the terms "one embodiment", "some embodiments", "an example", "a specific example", or "some examples" etc. means that the specific features, structures, materials or characteristics described in connection with the embodiment or example are included in at least one embodiment or example of the present application. In the description of the specification, the illustrative description of the above terms does not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described can be combined in any appropriate manner in any one or more embodiments or examples. In addition, the person skilled in the art can combine and combine the different embodiments or examples described in the specification and the features of the different embodiments or examples, without contradiction.

[0154] In addition, the terms "first", "second" are only for descriptive purposes and cannot be understood as indicating or implying relative importance or implicitly indicating the number of the technical features indicated. Therefore, the features defined with "first", "second" can explicitly or implicitly include at least one of the features. In the description of the present application, the meaning of "a plurality of" is at least two, for example, two, three, etc., unless otherwise explicitly specified.

Claims

1. A script efficient transmission method based on BMC-SOL link, characterized in that: include: S1, establishing and maintaining a script template library between the management node and the bare metal node, wherein the script template library contains predefined or historically transmitted script templates for subsequent incremental comparison; S2, performing binary difference analysis on the script to be transmitted and the script templates in the script template library, selecting the template with the smallest difference as a benchmark, and comparing the difference content with a preset threshold value, and transmitting the difference part; S3, performing encoding conversion processing on the difference part to avoid data distortion during SOL link transmission, the encoding conversion includes hexadecimal encoding or special character replacement encoding; S4 compresses the encoded difference content using the LZMA compression algorithm and transmits the compressed data to the bare metal node through the BMC-SOL link. The bare metal node decodes and decompresses the data and generates a complete script based on the local template.

2. The method according to claim 1, wherein The establishment and maintenance of the script template library between the management node and the bare metal node also includes: S11, each script template in the script template library includes a file index, file content, and a script function label, where the label is used to identify the business purpose of the script; S12, the script template library is kept updated synchronously between the management node and the bare metal node. After each transmission is completed, the latest script is stored in the template library as a new template, and its index and label information are updated.

3. The method according to claim 1, wherein The performing binary difference analysis on the script to be transmitted and the script template in the template library further includes: S21, uses the librsync library to perform binary difference analysis to quickly identify the smallest difference between the script to be transferred and the template; S22, when the size of the difference content exceeds 50% of the original script, the method directly transmits the original script, otherwise only the difference part is transmitted.

4. The method according to claim 1, wherein The encoding conversion process of the difference part also includes: S31 uses hexadecimal encoding, splitting each byte into the first 4 bits and the last 4 bits, and representing them with hexadecimal characters to prevent data distortion during SOL link transmission; S32, using a special character replacement encoding method to replace characters that may change during transmission with preset stable characters, and sending correction information after the transmission is completed to restore the original content.

5. The method according to claim 1, wherein Also includes: S5, after receiving the compressed difference content, the bare metal node searches for the corresponding template in the local template library according to the received template index, and merges the difference content with the template to generate a complete script.

6. A script efficient transmission device based on BMC-SOL link, characterized in that: include: A script template library management module is used to establish and maintain a script template library between the management node and the bare metal node. The script template library contains predefined or historically transmitted script templates for subsequent incremental comparison; a difference analysis and transmission decision module, configured to perform binary difference analysis on the script to be transmitted and the script templates in the script template library, select the template with the smallest difference as a benchmark, and compare the difference content with a preset threshold to determine the difference portion to be transmitted; A code conversion processing module, configured to perform code conversion on the difference portion to avoid data distortion during SOL link transmission, wherein the code conversion includes hexadecimal encoding or special character replacement encoding; The compression and transmission control module is used to compress the encoded difference content using the LZMA compression algorithm and transmit the compressed data to the bare metal node through the BMC-SOL link. After decoding and decompression by the bare metal node, the complete script is generated based on the local template.

7. The device according to claim 6, characterized in that The script template library management module is also used for: Each script template in the script template library includes a file index, file content and a script function label, wherein the label is used to identify the business purpose of the script; The script template library is kept updated synchronously between the management node and the bare metal node. After each transmission is completed, the latest script is stored in the template library as a new template, and its index and label information are updated.

8. The device according to claim 6, wherein The difference analysis and transmission decision module is also used to: Use librsync library to perform binary difference analysis to quickly identify the smallest difference between the script to be transferred and the template; When the size of the difference content exceeds 50% of the original script, the module directly transmits the original script, otherwise only the difference part is transmitted.

9. The device according to claim 6, wherein The encoding conversion processing module is also used for: Use hexadecimal encoding to split each byte into the first 4 bits and the last 4 bits, and represent them in hexadecimal characters to prevent data distortion during SOL link transmission. A special character replacement encoding method is used to replace characters that may change during transmission with preset stable characters, and correction information is sent after the transmission is completed to restore the original content.

10. The device according to claim 6, wherein Also includes: The script merging module is used for the bare metal node to search for the corresponding template in the local template library according to the received template index after receiving the compressed difference content, and merge the difference content with the template to generate a complete script.