A method and device for adaptive parameter adjustment of erasure code EC

By calculating the broadcast packet data volume of the positioning base station, selecting the appropriate number of sub-packets k and redundant packets m, and forming an EC coded packet, the storage redundancy problem in the EC stripe is solved and the system performance is improved.

CN115833994BActive Publication Date: 2025-08-12JIANGSU TIANHUAN TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211432941.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-16
Publication Date
2025-08-12
Estimated Expiration
2042-11-16

AI Technical Summary

Technical Problem

In the prior art, the increase in the number of verification blocks in the EC strip causes a large space to store redundant data, affecting system performance.

Method used

By obtaining the data sent by the broadcast packets of the positioning base station, calculating the appropriate number of sub-packets k and redundant number of packets m, EC coded packets are formed to ensure reliability and reduce bandwidth occupancy and coding power consumption.

Benefits of technology

On the basis of ensuring the reliability of data blocks, reduce bandwidth occupancy and coding power consumption, and improve the operating efficiency of low-performance embedded devices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115833994B_ABST
    Figure CN115833994B_ABST
Patent Text Reader

Abstract

The present invention discloses a method for adaptive parameter adjustment of erasure codes (EC), comprising the following steps: S1. Obtaining the amount of broadcast message transmission data collected by each of N positioning base stations; S2. Calculating the appropriate number of subpackets k and number of redundant packets m for the EC algorithm to be used based on the amount of broadcast message transmission data collected by each positioning base station; S3. Forming EC encoding packets for a data group based on the number of subpackets and number of redundant packets selected by each positioning base station; wherein the principle for selecting the number of subpackets k and number of redundant packets m is to select the smallest possible number of subpackets and number of redundant packets while ensuring reliability, thereby ensuring the reliability of data blocks while reducing bandwidth occupancy and encoding power consumption. While ensuring the reliability of data blocks, the present invention can reduce bandwidth occupancy and encoding power consumption. Compared with existing technologies, it facilitates better operation on low-performance embedded devices, thereby improving the overall performance of the system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the field of data processing, and more specifically, relates to a method for adjusting adaptive parameters of an erasure code (EC). The present invention also relates to an apparatus for adjusting adaptive parameters of an erasure code (EC). Background Art

[0002] Given an EC stripe containing a fixed number of data blocks, the greater the number of parity blocks in the EC stripe, the higher the data reliability. However, this also increases the storage space occupied by storing redundant data (i.e., parity blocks). Therefore, how to organize EC stripes to improve overall system performance has become a pressing technical issue. Summary of the Invention

[0003] The purpose of the present invention is to address the shortcomings of the prior art and to propose a method and device for adaptive parameter adjustment of erasure codes (ECs), which help to reduce low bandwidth occupancy and power consumption while maintaining reliability.

[0004] To achieve the above object, the present invention provides the following technical solutions:

[0005] A method for adjusting adaptive parameters of an erasure code (EC) comprises the following steps:

[0006] S1. Obtain the amount of broadcast message data sent by each of N positioning base stations;

[0007] S2. Calculate the appropriate number of subpackets k and redundant packets m for the EC algorithm based on the amount of broadcast message data collected by each positioning base station.

[0008] S3. Construct an EC code package of the data group according to the number of sub-packets and redundant packages selected by each positioning base station;

[0009] The selection principle of the number of subpackets k and the number of redundant packets m is as follows: select the smallest possible number of subpackets and redundant packets on the basis of ensuring reliability, so as to reduce bandwidth occupancy and encoding power consumption while ensuring the reliability of data blocks.

[0010] Preferably, in step S3, each positioning base station selects an appropriate number of sub-packets and redundant packets as a basis for the positioning base station to divide Ai positioning data packets to be uploaded and EC coding parameters.

[0011] Preferably, the empirical formula conversion enables the number of subpackets and the number of redundant packets to meet the requirements of high reliability, low bandwidth occupancy, and low power consumption in the current environment, and has room for adjustment.

[0012] Preferably, in step S3, after calculating the appropriate number of sub-packets and redundant packets, the following steps are further included:

[0013] EC coding information is simultaneously stored in each data packet to be sent in the data group, and the EC coding information includes the number k of subpackets used by the data group, the number m of redundant packets and the packet sequence number i of the data packet to be sent.

[0014] A device for adjusting adaptive parameters of an erasure code (EC), which is used to perform an adaptive parameter adjustment method for an erasure code (EC), comprises a positioning base station, wherein the positioning base station is provided with a client and an EC management module.

[0015] Preferably, the positioning base station includes:

[0016] Memory and processor, the memory is used to store computer programs;

[0017] The processor is used to call the computer program to implement the functions of the client or EC management module;

[0018] Also includes:

[0019] A processing device, the processing device including a processor and an interface; the processor is implemented by hardware or software;

[0020] When implemented by hardware, the processor includes: logic circuits, integrated circuits;

[0021] When implemented by software, the processor is set as a general-purpose processor and is implemented by reading software codes stored in a memory.

[0022] Preferably, the positioning base station further includes:

[0023] A communication module, an execution module, and an acquisition module connected to the execution module;

[0024] The communication module and the execution module, as well as the execution module and the acquisition module, are connected via a communication line; wherein the communication line includes a path for transmitting information between the above components, specifically configured as an I / O bus;

[0025] The communication module is used to communicate with other devices or communication networks.

[0026] The execution module is responsible for the input and output of I / O operations and the execution of related processing flows.

[0027] Preferably, the execution module includes: at least one processor, the processor being connected to a number of memories;

[0028] Wherein, the processor is set to be a field programmable gate array FPGA;

[0029] The communication interface is connected to the processor via a communication line.

[0030] Among them, some of the memories are used to store computer programs for executing the solution of the present application, and the execution is controlled by the processor; the processor is used to execute the computer programs stored in the memories.

[0031] The technical effects and advantages of the present invention are as follows: The present invention provides a method for adaptive parameter adjustment of erasure codes (ECs), selecting parameters based on the principle of "minimizing the number of subpackets and redundant packets while ensuring reliability." This method reduces bandwidth usage and encoding power consumption while ensuring data block reliability. Compared with existing technologies, it facilitates better operation on low-performance embedded devices, thereby improving overall system performance.

[0032] Secondly, by including the EC encoding information including the number of subpackets k used by the data group, the number of redundant packets m and the packet sequence number i of the data packet to be sent, the parameters k and m used for encoding are marked inside each individual data packet, ensuring that k and m will not be lost when reconstruction is required. BRIEF DESCRIPTION OF THE DRAWINGS

[0033] Figure 1 A schematic diagram of the architecture of the intelligent sports positioning system provided in an embodiment of the present application;

[0034] Figure 2 A schematic diagram of the architecture of a positioning base station provided in an embodiment of the present application;

[0035] Figure 3 A functional diagram of each module deployed in the distributed storage system provided in an embodiment of the present application;

[0036] Figure 4 A schematic diagram illustrating the correspondence between the system, data packet, coding group, transmission source, and packet information provided in an embodiment of the present application;

[0037] Figure 5 A schematic diagram of the process of generating an EC encoding package provided in an embodiment of the present application. DETAILED DESCRIPTION

[0038] In order to make the purpose, technical solutions and advantages of the present invention more clear, the present invention is further described in detail below with reference to specific embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present invention.

[0039] In the first aspect, the embodiment of the present application provides a method for adjusting the adaptive parameters of an erasure code EC, such as Figure 1-5As shown, the method is applied to an intelligent sports Bluetooth positioning system, which includes N Bluetooth positioning base stations and a server. A1-An positioning signal sources are deployed around the N Bluetooth positioning base stations, where N ≥ 3 and N and A are integers. The N positioning base stations are used to collect broadcast information from signal sources within their range, pre-process it, perform EC encoding, and upload it to the server. The method includes:

[0040] Obtain the amount of broadcast message data sent by each of the N positioning base stations;

[0041] According to the amount of data sent by the broadcast message collected by each positioning base station, the appropriate number of subpackets k and the number of redundant packets m of the EC algorithm used are calculated; according to the number of subpackets and redundant packets selected by each positioning base station, the EC coding package of the data group is constructed.

[0042] This technical solution selects parameters based on the principle of minimizing the number of subpackets and redundant packets while ensuring reliability. This approach reduces bandwidth usage and encoding power consumption while ensuring data block reliability. Compared to existing technologies, it facilitates better operation on low-performance embedded devices, thereby improving overall system performance.

[0043] In one possible design, each positioning base station selects an appropriate number of subpackets and redundant packets as the basis for dividing the Ai positioning data packets to be uploaded and the EC encoding parameters. This possible design provides a specific implementation method, and of course the embodiments of the present application are not limited thereto.

[0044] In a possible design, the empirical formula is transformed so that the number of subpackets and the number of redundant packets meet the requirements of high reliability, low bandwidth occupancy, and low power consumption in the current environment, and have a certain adjustment space.

[0045] In one possible design, after calculating the appropriate number of sub-packets and redundant packets, the method further includes:

[0046] EC encoding information is stored in each to-be-sent data packet in the data group. This information includes the number of subpackets (k) used in the data group, the number of redundant packets (m), and the sequence number (i) of the to-be-sent data packet. In other words, each individual data packet is labeled with the encoding parameters (k and m), ensuring that neither k nor m is lost when reconstruction is required.

[0047] In a second aspect, embodiments of the present application provide an apparatus for adaptive parameter adjustment of erasure codes (ECs), which can be used to perform the first aspect or any of the methods described above. Optionally, the apparatus can be the client or EC management module described above in the first aspect. Optionally, the apparatus can be a positioning base station deployed with the client or EC management module described above in the first aspect.

[0048] In one possible design, the apparatus specifically includes the client or EC management module described in the first aspect. The positioning base station includes a memory and a processor, the memory being configured to store a computer program. The processor is configured to invoke the computer program to implement the functions of the client or EC management module. For details on the functions of the client or EC management module, reference may be made to the first aspect described above.

[0049] An embodiment of the present application also provides a processing device for implementing the functions of the device for assembling an EC strip provided by the above-mentioned second aspect or any possible implementation of the second aspect, and the processing device includes a processor and an interface; the processing device can be a chip, and the processor can be implemented by hardware or by software. When implemented by hardware, the processor can be a logic circuit, an integrated circuit, etc.; when implemented by software, the processor can be a general-purpose processor, which is implemented by reading software code stored in a memory. The memory can be integrated in the processor, or can be located outside the processor and exist independently.

[0050] The present application also provides a computer-readable storage medium, such as a non-transitory computer-readable storage medium. A computer program is stored thereon, and when the computer program is executed on a computer, the computer executes any possible method of the first aspect described above. For example, the computer may be at least one positioning base station.

[0051] The embodiment of the present application further provides a computer program product, which, when executed on a computer, enables any of the methods provided in the first aspect to be executed. For example, the computer may be at least one positioning base station.

[0052] It can be understood that any of the methods, devices, computer storage media, or computer program products provided above are used to execute the corresponding methods provided above.

[0053] Example 1

[0054] like Figure 1 The figure is a schematic diagram of the architecture of an intelligent sports positioning system provided by an embodiment of the present application. Figure 1 In the example, the intelligent sports positioning system may include a server 21, at least three positioning base stations 22, and a plurality of positioning signaling sources 23, each positioning base station 22 uploading data to the server. The communication between the server 21 and the positioning base stations 22 may be, for example but not limited to, Ethernet. It is understandable that Figure 1 The intelligent sports positioning system shown is only an example. In actual implementation, each positioning base station can also collect its own data or collect data through other devices. This application does not limit this.

[0055] The positioning base station 22 is a component in the intelligent sports positioning system that provides positioning information collection and data upload. The positioning base station 22 can be a computing device, such as an embedded development board.

[0056] Optionally, the positioning base station 22 may include a communication module 220, an execution module 221, and a collection module 222 connected to the execution module 221. Communication modules 220 and 221, as well as execution modules 221 and 222, may be connected via communication lines. The communication lines may include a pathway for transmitting information between the aforementioned components. The communication lines may also be referred to as I / O buses, and may be, for example, but not limited to, a high-speed peripheral interconnect bus.

[0057] The communication module 220 may be any device such as a transceiver, and is used to communicate with other devices or communication networks (e.g., Ethernet, wireless local area network).

[0058] The execution module 221 is responsible for the input and output of IO operations (including read / write operations) and the execution of related processing flows. The execution module 221 may include: at least one processor. The at least one processor may also be connected to a certain amount of memory.

[0059] Among them, the processor can be a general-purpose central processing unit, a microprocessor, a specific application integrated circuit, a field programmable gate array FPGA or one or more integrated circuits for controlling the execution of the program of the present application. The communication interface 220 and the processor can be connected via a communication line. It should be noted that in physical implementation, part or all of the processor, communication line, and communication interface here can be integrated together, of course, they can also be set independently, and this application does not limit this. Among them, the memory can be used to store the computer program that executes the solution of this application, and the execution is controlled by the processor. The processor is used to execute the computer program stored in the memory, thereby implementing the method provided in the following embodiments of this application. Optionally, the computer program in the embodiment of this application can also be referred to as application code, or computer execution instructions, etc., which are not specifically limited in the embodiment of this application.

[0060] Example 2

[0061] like Figure 3 As shown, a single transmission data of a positioning base station includes k columns of data packets and m columns of check packets, k≥1, m≥1, and both k and m are integers.

[0062] A signal source mapped to each data packet is used to generate the data required for one column of the k columns of data packets. An EC coding group is a set of at least one data block from different data packets and at least one check block generated by coding, included in the same data transmission. In other words, for a coding group, a data block of a data packet is used as a data block in the coding group.

[0063] For data from multiple sources, each data block at the same location is assigned to and only to the same coding group, while multiple data blocks from the same source belong to different coding groups. Furthermore, data packets are divided into a set of source data blocks that participate in EC encoding, and a set of packet information data blocks that accompany each packet and do not participate in encoding.

[0064] Example 3

[0065] like Figure 3 As shown, it is a schematic diagram of the corresponding relationship between a system, a data packet, a coding group, a transmission source and packet information provided by an embodiment of the present application. Figure 3 In the example, a partition includes four columns of data packets and two columns of check packets. The signaling sources that are mapped to the partition are labeled as signaling sources 1-4. A small square in a data processing module 1-4 represents a data block, and a small square in a check packet 1-2 represents a check block. Figure 3 The data block and check block in the dotted box constitute an EC coding group.

[0066] Example 4

[0067] like Figure 4-5 As shown, the method for creating a new EC coding group includes the following steps:

[0068] Step 11: The positioning base station collects and processes the signal source data;

[0069] Step 12: The positioning base station prepares to package the source data and estimates the amount of data to be sent;

[0070] The positioning base station fits the possible value of the packet loss rate based on the pre-prepared packet loss rate fitting function and the amount of sent data.

[0071] Step 13: The positioning base station calculates the minimum EC coding redundancy rate required to achieve the expected recovery rate based on the pre-set target recovery rate and the fitted packet loss rate;

[0072] The positioning base station selects appropriate k and m values from the pre-generated redundancy rate applicable k / m table based on the calculated redundancy rate and the k / m upper limit guidance function pre-generated based on the time complexity of the coding algorithm and the CPU main frequency;

[0073] The positioning base station uses the calculated k value and m value as parameters to perform EC encoding on the source data and weaves it into the data packet information. The positioning base station sends the data packet to the server.

[0074] Finally, it should be noted that the above is only a preferred embodiment of the present invention and is not intended to limit the present invention. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art can still modify the technical solutions described in the aforementioned embodiments or make equivalent substitutions for some of the technical features therein. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present invention should be included in the scope of protection of the present invention.

Claims

1. A method for adaptive parameter adjustment of erasure code (EC), characterized in that: The steps include: S1. Obtain the amount of broadcast message data sent by each of N positioning base stations; S2. Based on the amount of sent data of the broadcast message collected by each positioning base station, the appropriate number of subpackets k and the number of redundant packets m for the EC algorithm to be used are calculated. Specifically, the positioning base station fits the possible value of the packet loss rate based on a pre-prepared packet loss rate fitting function and the amount of sent data. The positioning base station calculates the minimum EC coding redundancy rate required to achieve the expected recovery rate based on the pre-established target recovery rate and the fitted packet loss rate. The positioning base station selects appropriate k and m values from a pre-generated redundancy rate applicable k / m table based on the calculated redundancy rate and a k / m upper limit guidance function pre-generated based on the time complexity of the coding algorithm and the CPU main frequency. S3. Construct an EC code package of the data group according to the number of sub-packets and redundant packages selected by each positioning base station; The selection principle of the number of subpackets k and the number of redundant packets m is as follows: select the smallest possible number of subpackets and redundant packets on the basis of ensuring reliability, so as to reduce bandwidth occupancy and encoding power consumption while ensuring the reliability of data blocks.

2. The method for adaptive parameter adjustment of an erasure code (EC) according to claim 1, characterized in that: In step S3, each positioning base station selects an appropriate number of sub-packets and redundant packets as the basis for the positioning base station to divide Ai positioning data packets to be uploaded and the EC encoding parameters.

3. The method for adaptive parameter adjustment of an erasure code (EC) according to claim 2, characterized in that: The empirical formula conversion enables the number of subpackets and the number of redundant packets to meet the requirements of high reliability, low bandwidth occupancy, and low power consumption in the current environment, and has room for adjustment.

4. The method for adaptive parameter adjustment of erasure code (EC) according to claim 3, characterized in that: In step S3, after calculating the appropriate number of subpackets and redundant packets, the following steps are also included: EC coding information is simultaneously stored in each data packet to be sent in the data group, and the EC coding information includes the number of subpackets k used by the data group, the number of redundant packets m and the packet sequence number i of the data packet to be sent.

Citation Information

Patent Citations

  • Data sending method, data transmission method, data sending device, data transmission system and storage medium

    CN115225209A