A Link Layer Automatic Repeat Request Method for Narrowband Transmission Environments
By dynamically adjusting the number of frames sent and the waiting time, the problem of low transmission efficiency in narrowband transmission environments is solved, and more efficient and reliable data transmission is achieved.
Patent Information
- Application Number
- CN202510150080.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-11
- Publication Date
- 2025-12-02
- Estimated Expiration
- 2045-02-11
AI Technical Summary
The existing Selective Repeat (ARQ) protocol has low transmission efficiency in narrowband transmission environments and cannot flexibly adjust the number of frames sent and the waiting time according to channel conditions, resulting in wasted bandwidth resources and transmission delays.
The sending end dynamically acquires communication link rate information, calculates the optimal number of consecutive frames to be sent and the waiting time based on the rate, and optimizes the adjustment of the number of frames and the waiting time through linear, piecewise, logarithmic and other functions to achieve adaptive matching of narrowband transmission environment.
It improves data transmission efficiency and reliability in narrowband transmission environments, and reduces node energy consumption and resource waste.
Smart Images

Figure CN119966584B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of wireless communication technology, and more specifically to a link layer automatic repeat request method for narrowband transmission environments. Background Technology
[0002] In the field of wireless communication, due to the unreliability of channels, packet loss or bit errors frequently occur during data transmission. To ensure reliable data transmission, error control techniques are required, among which Automatic Repeat Request (ARQ) is a widely used mechanism. Selective Repeat ARQ is a common ARQ protocol.
[0003] In the Selective Repeat ARQ protocol, the sender maintains a sending window, allowing it to continuously send multiple data frames within the window without waiting for acknowledgment from the receiver. The receiver also maintains a receiving window, receiving out-of-order data frames and buffering them in its receive buffer. The receiver sends an independent acknowledgment frame (ACK) for each correctly received data frame. The sender uses the received ACKs to determine which frames have been correctly received and only retransmits those frames for which no ACK was received—i.e., lost or erroneous frames. The Selective Repeat ARQ protocol improves channel utilization and transmission efficiency by retransmitting only lost or erroneous frames. Compared to Stop-and-Wait ARQ and Go-Back-N ARQ, Selective Repeat ARQ offers higher throughput, especially under poor channel quality conditions. However, the implementation of the Selective Repeat ARQ protocol is relatively complex. The receiver requires a larger buffer to buffer out-of-order data frames. Furthermore, the sender needs to maintain an independent timer for each transmitted frame, increasing protocol overhead.
[0004] Existing Selective Repeat (ARQ) protocols still present some problems and challenges in certain scenarios, such as narrowband transmission environments. Due to the limited bandwidth and low transmission rate in narrowband environments, the frequent acknowledgment frame exchanges in traditional ARQ protocols consume a significant amount of bandwidth resources, further reducing the efficiency of effective data transmission. Furthermore, narrowband transmission environments typically have higher latency, which also negatively impacts the performance of ARQ protocols. Summary of the Invention
[0005] The purpose of this invention is to address the shortcomings of the prior art by providing a link layer automatic repeat request method for narrowband transmission environments, thereby solving the problem of low transmission efficiency in narrowband transmission environments.
[0006] To achieve the above objectives, the technical solution adopted by the present invention is as follows:
[0007] This invention provides a link-layer automatic repeat request method for narrowband transmission environments, the method comprising:
[0008] Step S1: The sending end and the receiving end are initialized. The sending end initializes the sending frame queue, the receiving end initializes the receiving frame queue, the sending end initializes a variable n, which represents the number of consecutively sent frames, and the sending end initializes a variable t, which represents the waiting time.
[0009] Step S2: The sending end obtains the current communication link rate information;
[0010] Step S3: Calculate the number of consecutively transmitted frames, n;
[0011] Step S4: Calculate the waiting time t;
[0012] Step S5: The sending end retrieves data frames from the sending frame queue and continuously sends them to the receiving end;
[0013] Step S6: The receiving end continuously receives data frames from the sending end. The receiving end constructs a response frame, which contains the sequence number information of the data frames that have been correctly received, and sends the response frame to the sending end.
[0014] Step S7: If the sending end receives a response frame from the receiving end before the timer expires, it parses the response frame, obtains the sequence number information of the data frames that the receiving end has correctly received, removes the confirmed data frames from the sending frame queue, releases the corresponding storage space, resets the timer, returns to step S2, re-acquires the rate information and calculates n and t, and starts the next round of sending. If the sending end still does not receive a response frame from the receiving end after the timer expires, the sending end considers the data transmission to have failed, returns to step S2, re-acquires the rate information and calculates n and t, and starts a new round of sending, re-sending the previously unacknowledged data frames.
[0015] Step S8: The sending end repeats steps S2 to S7 until the sending frame queue is empty.
[0016] Optionally, step S2 specifically includes: the sending end sending a rate query request to the link status providing unit, the link status providing unit returning a rate information response, the sending end parsing the rate information response, and obtaining the rate.
[0017] Optionally, step S3 specifically includes:
[0018] The sending end calculates the number of frames n to be sent continuously according to the formula n = f1(rate, p1, p2, ...), where f1 represents a predefined function, and f1 is one of a linear function, a piecewise function, or a logarithmic function. p1, p2, ... is a set of empirical parameters, and this set of empirical parameters is adjusted and optimized according to the characteristics of the narrowband transmission environment.
[0019] The limit for n is set to be within the range of [n_min, n_max], where n_max represents the upper limit of the number of consecutive frames to be sent, and n_min represents the lower limit of the number of consecutive frames to be sent.
[0020] Optionally, in step S3, function f1 is a piecewise function, and ,
[0021] Where r1 and r2 are preset rate thresholds, and n1, n2, and n3 are the number of consecutive frames sent corresponding to different rate intervals.
[0022] Optionally, step S4 specifically includes:
[0023] The sending end calculates the waiting time t according to the formula t = f2(rate, q1, q2, ...), where f2 represents a predefined function, and f2 is one of the inverse proportional function, piecewise function, logarithmic function, and exponential function. q1, q2, ... is a set of empirical parameters, and this set of empirical parameters is adjusted and optimized according to the characteristics of the narrowband transmission environment.
[0024] The time t is limited to the range [t_min, t_max], where t_max represents the upper limit of the pre-set waiting time and t_min represents the lower limit of the pre-set waiting time.
[0025] Optionally, in step S4, .
[0026] Optionally, step S5 specifically includes:
[0027] The sending end retrieves n-1 data frames from the transmission frame queue and continuously sends them to the receiving end;
[0028] The sending end then retrieves the nth data frame from the transmission frame queue and sets a specific identifier in the data frame to indicate to the receiving end that it needs to acknowledge receipt of the data frame. The identifier can be one of the following: a specific bit, a specific field, or a specific frame type.
[0029] The sending end sends the nth data frame with the identifier to the receiving end;
[0030] The sending end starts a timer to begin timing, and waits for a duration of t.
[0031] The beneficial effects of this invention include:
[0032] This invention provides a link-layer automatic repeat request method for narrowband transmission environments. The method includes: Step S1, initialization of the sending end and the receiving end, wherein the sending end initializes the sending frame queue, the receiving end initializes the receiving frame queue, the sending end initializes a variable n, where n represents the number of consecutively sent frames, and the sending end initializes a variable t. The process involves several steps: Step S2: The sending end obtains the current communication link rate information; Step S3: Calculates the number of consecutively transmitted frames, n; Step S4: Calculates the waiting time, t; Step S5: The sending end retrieves data frames from the transmission frame queue and continuously sends them to the receiving end; Step S6: The receiving end continuously receives data frames from the sending end, constructs a response frame containing the sequence number information of the correctly received data frames, and sends this response frame to the sending end; Step S7: If the sending end receives a response frame from the receiving end before the timer expires, it parses the response frame, obtains the sequence number information of the correctly received data frames, removes the confirmed data frames from the transmission frame queue, releases the corresponding storage space, resets the timer, returns to step S2, re-obtains the rate information and calculates n and t, and begins the next round of transmission. If the sending end still does not receive a response frame from the receiving end after the timer expires, the sending end considers the data transmission to have failed, returns to step S2, re-obtains the rate information and calculates n. And t, start a new round of transmission, retransmit the previously unacknowledged data frames; step S8, the sending end repeats steps S2 to S7 until the transmission frame queue is empty. This method can dynamically adjust the number of transmission frames and waiting time according to the link rate, thereby improving transmission efficiency and reliability. Attached Figure Description
[0033] To more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0034] Figure 1A and Figure 1B The figure shows a system timing diagram of the link layer automatic repeat request method for narrowband transmission environments provided by an embodiment of the present invention;
[0035] Figure 2A flowchart illustrating the link layer automatic retransmission request method for narrowband transmission environments provided by an embodiment of the present invention is shown.
[0036] Figure 3 A schematic diagram of the initialization process provided in an embodiment of the present invention is shown;
[0037] Figure 4 This diagram illustrates the process of acquiring rate information provided in an embodiment of the present invention.
[0038] Figure 5 This diagram illustrates the process for calculating the number of consecutively transmitted frames n according to an embodiment of the present invention.
[0039] Figure 6 This diagram illustrates the process for calculating the waiting time t according to an embodiment of the present invention.
[0040] Figure 7 A schematic diagram of the data transmission process provided in an embodiment of the present invention is shown;
[0041] Figure 8 This diagram illustrates the data reception and confirmation process provided in an embodiment of the present invention.
[0042] Figure 9 A schematic diagram of the response processing flow provided in an embodiment of the present invention is shown. Detailed Implementation
[0043] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0044] Existing Selective Repeat (ARQ) protocols have several significant drawbacks in narrowband transmission environments, especially under variable data rates. First, most existing ARQ protocols typically set the number of consecutive frames sent and the waiting time to fixed values, or adjust them based solely on empirical values. However, narrowband transmission environments are characterized by transmission efficiency and success rates being easily affected by environmental factors, and many narrowband systems inherently possess variable data rates. In such cases, using fixed values or adjusting based solely on empirical values cannot flexibly adapt to actual channel conditions, easily leading to low transmission efficiency or wasted resources. For example, when channel conditions are good and the data rate is high, a fixed, smaller number of frames sent will limit data throughput; conversely, when channel conditions are poor and the data rate is low, a fixed, larger number of frames sent may lead to significant packet loss and retransmissions, thus reducing transmission efficiency. Fixed or empirically based waiting time settings also present similar problems; excessively long waiting times reduce transmission efficiency, while excessively short waiting times may lead to unnecessary retransmissions. Existing technology cannot adjust the number of frames sent in real time according to changes in the rate, resulting in insufficient utilization of bandwidth at high rates and a large number of packet losses and retransmissions at low rates.
[0045] To address the above problems, this invention aims to propose a link-layer automatic repeat request method for narrowband transmission environments. The core idea of this method is that the sending end can dynamically acquire the current communication link rate information and automatically calculate the optimal number of consecutively transmitted frames *n* and the waiting time *t* based on this rate information. Through this dynamic adjustment mechanism, this method can adaptively match narrowband transmission environments with different rates, optimizing data transmission performance. Figure 1A and Figure 1B This paper illustrates a system timing diagram of a link-layer automatic repeat request method for narrowband transmission environments provided by an embodiment of the present invention. It should be noted that, to more clearly demonstrate the complete system timing diagram, this application has split a single system timing diagram into... Figure 1A and Figure 1B Two pictures, that is to say, Figure 1A and Figure 1B Together they form a complete system timing diagram. Figure 1A The characters “A1”, “A2”, ..., “A8” in the text are... Figure 1B The characters “A1”, “A2”, …, “A8” in the diagram correspond one-to-one. The characters “A1”, “A2”, …, “A8” are only used to indicate that the corresponding positions in the diagram are consecutive.
[0046] Figure 2 A flowchart illustrating the link layer automatic retransmission request method for narrowband transmission environments provided by an embodiment of the present invention is shown. Figure 3 A schematic diagram of the initialization process provided in an embodiment of the present invention is shown; Figure 4This diagram illustrates the process of acquiring rate information provided in an embodiment of the present invention. Figure 5 This diagram illustrates the process for calculating the number of consecutively transmitted frames n according to an embodiment of the present invention. Figure 6 This diagram illustrates the process for calculating the waiting time t according to an embodiment of the present invention. Figure 7 A schematic diagram of the data transmission process provided in an embodiment of the present invention is shown; Figure 8 This diagram illustrates the data reception and confirmation process provided in an embodiment of the present invention. Figure 9 A schematic diagram of the response processing flow provided in an embodiment of the present invention is shown. The following will refer to... Figures 2 to 9 The method of the present invention will be described in detail.
[0047] like Figure 2 As shown, the link layer automatic repeat request method for narrowband transmission environments provided by this invention includes:
[0048] Step S1: The sending and receiving ends are initialized. The sending end initializes the transmit frame queue, and the receiving end initializes the receive frame queue. The sending end initializes a variable `n`, representing the number of consecutively transmitted frames, and also initializes a variable `t`, representing the waiting time. Figure 3 As shown.
[0049] Specifically, the sending end and the receiving end each maintain a sending frame queue and a receiving frame queue, respectively. The sending frame queue stores data frames to be sent and can be implemented using data structures such as arrays or linked lists. During transmission, the sending frame queue manages the data frames to be sent and removes successfully sent frames based on the receiving end's confirmation information after transmission is complete. The receiving frame queue buffers received but not yet submitted in order, and can also be implemented using data structures such as arrays or linked lists. The receiving frame queue is responsible for receiving and buffering data frames in order, and submitting them to the upper-layer application in order after receiving all the frames that should be received. The sending end initializes a variable `n` representing the number of frames to be sent consecutively. The initial value can be set to a preset value, such as `n = 5`. This initial value can be set based on experience or historical data, or calculated initially based on the default or estimated link rate. The sending end initializes a variable `t` representing the waiting time. The initial value can be set to a preset value, such as `t = 2 seconds`. This initial value can also be set based on experience or historical data, or calculated initially based on the default or estimated link rate.
[0050] Step S2: The sending end obtains the current communication link rate information.
[0051] Optionally, step S2 specifically includes: the sending end sending a rate query request to the link state providing unit; the link state providing unit returning a rate information response; the sending end parsing the rate information response; and obtaining the rate, such as... Figure 4 As shown.
[0052] Specifically, the sending end obtains the current communication link rate information through a mechanism. This mechanism can be either an active query method or a passive receiving method: Active query method: The sending end actively sends a query request to a device or module responsible for providing link status information (hereinafter referred to as the "link status providing unit"); Passive receiving method: The link status providing unit periodically reports the current link rate information to the sending end. Communication between the sending end and the link status providing unit can be implemented through a predefined protocol or interface. The sending end sends a rate query request to the link status providing unit. This request can be a specific message or signal used to trigger the link status providing unit to return the current rate information. After receiving the rate query request, the link status providing unit determines the current link rate based on the current link status and encapsulates this rate information into a rate information response message, which is then sent to the sending end. The link status providing unit can be a standalone device or module, or it can be a functional module integrated into existing communication equipment (such as a modem). It can utilize various technical means to obtain the current link rate, such as estimating the current rate through parameters like signal strength, signal-to-noise ratio, and bit error rate.
[0053] Step S3: Calculate the number of consecutively transmitted frames, n.
[0054] The sending end calculates the number of frames n to be sent consecutively based on the obtained link rate (rate). For example... Figure 5As shown, step S3 specifically includes: the sending end calculates the number of consecutively transmitted frames n according to the formula n = f1(rate, p1, p2, ...), where f1 represents a predefined function. The f1 function can be designed according to different needs and scenarios. For example, f1 can be one of a linear function, a piecewise function, or a logarithmic function. p1, p2, ... are a set of empirical parameters, and this set of empirical parameters is adjusted and optimized according to the characteristics of the narrowband transmission environment (such as channel type, interference level, transmission distance, etc.) to obtain the best performance. The overall design principle of this function is: within a certain rate range, as the rate increases, the number of consecutively transmitted frames also increases accordingly. This allows for full utilization of bandwidth and improved throughput at higher rates. However, to avoid n being too large or too small, a maximum value n_max and a minimum value n_min need to be set, limiting n to the range [n_min, n_max]. Here, n_max represents the pre-set upper limit of the number of consecutively transmitted frames. n_max limits the upper limit of the number of consecutively transmitted frames to prevent sending too many frames at very high rates, which would overload the processing load on both the sending and receiving ends, and also avoid buffer overflows caused by sending too many frames. n_min represents the pre-set lower limit of the number of consecutively transmitted frames to prevent sending too few frames at very low rates, which would lead to low protocol efficiency and affect the real-time performance of data transmission. The final value of n should be within the range [n_min, n_max]. For example, n_min can be set to 2 and n_max to 20.
[0055] Optionally, in step S3, function f1 is a piecewise function, and ,
[0056] Where r1 and r2 are preset rate thresholds, and n1, n2, and n3 are the number of consecutive frames sent corresponding to different rate intervals.
[0057] Step S4: Calculate the waiting time t.
[0058] The sending end calculates the waiting time t based on the obtained link speed rate. For example... Figure 6As shown, step S4 specifically includes: the sending end calculates the waiting time t according to the formula t = f2(rate, q1, q2, ...), where f2 represents a predefined function. The f2 function can also be designed according to different needs and scenarios. For example, f2 can be one of the following: an inverse proportional function, a piecewise function, a logarithmic function, or an exponential function. q1, q2, ... are a set of empirical parameters, which are adjusted and optimized according to the characteristics of the narrowband transmission environment. The overall design principle of this function is: within a certain rate range, as the rate increases, the waiting time decreases accordingly. This can reduce unnecessary waiting time at higher rates and improve transmission efficiency. However, to avoid t being too large or too small, a maximum value t_max and a minimum value t_min need to be set to limit t to the range [t_min, t_max]. t_max represents the upper limit of the pre-set waiting time, limiting the waiting time to prevent excessively long waiting times at very low rates, which would reduce the real-time performance of data transmission and waste resources caused by the sender remaining in a waiting state for extended periods. t_min represents the lower limit of the pre-set waiting time, limiting the waiting time to prevent excessively short waiting times at very high rates, which would cause the receiver to be unable to process data frames or send acknowledgment frames in time, thus triggering unnecessary retransmissions. The final value of t should be within the range [t_min, t_max]. For example, t_min can be set to 0.1 seconds and t_max to 5 seconds.
[0059] Optionally, in step S4, By introducing a logarithmic or exponential function using f2(rate, q1, q2, ...), the waiting time can be controlled more precisely.
[0060] The specific function form and parameter selection can be adjusted and optimized according to the actual narrowband transmission environment. For example, the optimal function form and parameter combination can be found by using methods such as curve fitting based on a large amount of experimental data.
[0061] Step S5: The sending end retrieves data frames from the sending frame queue and continuously sends them to the receiving end.
[0062] Optionally, such as Figure 7As shown, step S5 specifically includes: the sending end takes n-1 data frames from the sending frame queue and sends them continuously to the receiving end; the sending end then takes the nth data frame from the sending frame queue and sets a specific identifier in the data frame to indicate that the receiving end needs to confirm after receiving the data frame. The identifier is one of the following: a specific bit, a specific field, or a specific frame type; the sending end sends the nth data frame with the identifier to the receiving end; the sending end starts a timer to start timing and waits for a duration of t.
[0063] Step S6: The receiving end continuously receives data frames from the sending end. The receiving end constructs a response frame, which contains the sequence number information of the data frames that have been correctly received, and sends the response frame to the sending end.
[0064] Specifically, such as Figure 8 As shown, the receiving end continuously receives data frames. For each received data frame, the receiving end first performs necessary checks, such as checksum checks, to ensure data integrity. If a frame with a specific identifier (i.e., frame n) is received, the receiving end checks whether all data frames from the previous frame with that identifier (or from the first frame of this transmission if there is no previous frame with that identifier) to the current frame have been correctly received. The receiving end can determine whether any frames are lost or out of order by checking the sequence number or other identification information of each frame. The receiving end constructs a response frame, which contains the sequence number information of the correctly received data frames (or the sequence number information of missing data frames). For example, the response frame can contain a bitmap, where each bit corresponds to the sequence number of a data frame; if the bit is set, it indicates that the corresponding data frame has been correctly received; or the response frame can contain a list listing the sequence numbers of all correctly received data frames, or the sequence numbers of all missing data frames. The receiving end sends this response frame to the sending end.
[0065] Step S7: If the sending end receives a response frame from the receiving end before the timer expires, it parses the response frame to obtain the sequence number information of the data frames that the receiving end has correctly received. The sending end removes the acknowledged data frames from the sending frame queue, releases the corresponding storage space, resets the timer, and returns to step S2 to reacquire the rate information and calculate n and t, starting the next round of transmission. If the sending end still does not receive a response frame from the receiving end after the timer expires, the sending end considers the data transmission to have failed. Possible reasons include: the nth frame being sent is lost or corrupted, the response frame sent by the receiving end is lost or corrupted, or the receiving end's processing timeout, etc. The sending end returns to step S2 to reacquire the rate information and calculate n and t, starting a new round of transmission, retransmitting previously unacknowledged data frames (starting from after the previous identifier frame), such as... Figure 9 As shown.
[0066] Step S8: The sending end repeats steps S2 to S7 until the sending frame queue is empty, that is, all data has been sent.
[0067] This method can dynamically adjust the number of frames sent and the waiting time according to the link rate, thereby improving transmission efficiency and reliability.
[0068] This method can be applied to various narrowband transmission environments, such as: 1) Wireless sensor networks: In wireless sensor networks, nodes typically use low-power narrowband communication technology for data transmission. This method can dynamically adjust the frequency and duration of data transmission based on the link rate between sensor nodes, thereby reducing node power consumption and extending network lifespan while ensuring data reliability. 2) Underwater acoustic communication: Underwater acoustic communication is a typical narrowband communication scenario. Its transmission rate is limited by the bandwidth and multipath effect of the underwater acoustic channel. This method can adjust the number of transmitted frames and the waiting time based on the real-time rate of the underwater acoustic channel, thereby improving the efficiency and reliability of underwater acoustic communication. 3) Power line carrier communication: Power line carrier communication utilizes existing power lines for data transmission. Its transmission rate is also limited by the bandwidth and noise interference of the power line channel. This method can adjust the transmission strategy based on the real-time rate of the power line channel, thereby improving the performance of power line carrier communication. 4) Shortwave Communication: Shortwave communication utilizes high-frequency (HF) radio waves reflected through the ionosphere for long-distance communication. Shortwave channels are characterized by time-varying and multipath fading, leading to unstable transmission rates and susceptibility to interference. This method dynamically adjusts the number of transmitted frames *n* and the waiting time *t* based on the real-time rate of the shortwave channel (estimated using indicators such as signal-to-noise ratio and bit error rate). For example, when channel conditions are good and the rate is high, *n* can be appropriately increased and *t* decreased to improve transmission efficiency; conversely, when channel conditions deteriorate and the rate decreases, *n* can be decreased and *t* increased to ensure transmission reliability. The specific forms and parameters of the functions *f1* and *f2* need to be optimized based on the statistical characteristics of the shortwave channel. 5) Microwave Communication: Microwave communication utilizes microwave frequency bands for line-of-sight or near-line-of-sight communication. Compared to shortwave communication, microwave communication has higher bandwidth and transmission rate, but its transmission distance is limited and it is easily affected by obstacles and weather conditions. In narrowband microwave communication scenarios, this method can dynamically adjust n and t according to the real-time rate of the microwave link (which can be estimated based on indicators such as received signal strength and signal-to-noise ratio). For example, under severe weather conditions such as rain attenuation, n can be decreased and t can be increased to improve transmission reliability. The specific forms and parameters of the f1 and f2 functions need to be optimized according to the propagation characteristics of the microwave channel and the specific application scenario.6) Satellite Communication: Satellite communication utilizes geostationary or non-geostationary orbit satellites for relay communication, enabling global coverage. Satellite channels are characterized by large transmission delays and high link losses, and their transmission rate is limited by the bandwidth and power of the satellite transponder. In narrowband satellite communication scenarios, this method can dynamically adjust n and t based on the real-time rate of the satellite link (estimated based on satellite transponder status information, signal-to-noise ratio, and other indicators). Due to the large transmission delay in satellite communication, this factor needs to be considered when designing the f2 function to avoid setting the waiting time t too short. The specific forms and parameters of the f1 and f2 functions also need to be optimized based on the characteristics of the satellite channel and specific application scenarios (such as emergency communication, IoT data backhaul, etc.). 7) Internet of Things (IoT) Communication: Many IoT applications employ narrowband communication technologies, such as NB-IoT and LoRa, to achieve low-power, wide-coverage connectivity. These narrowband IoT communication technologies typically have low and variable speeds, limited by factors such as network load and signal coverage. This method dynamically adjusts n and t based on the link speed between the IoT terminal and the base station or gateway, thereby optimizing data transmission efficiency and reliability. In different application scenarios, it is necessary to select an appropriate link state acquisition mechanism, the form of the f1 and f2 functions, and related parameters based on specific channel characteristics, device capabilities, and application requirements.
[0069] The above embodiments are only for illustrating the technical concept and features of the present invention, and are intended to enable those skilled in the art to understand the content of the present invention and implement it. They should not be used to limit the scope of protection of the present invention. All equivalent changes or modifications made in accordance with the spirit and essence of the present invention should be covered within the scope of protection of the present invention.
Claims
1. A link-layer automatic repeat request method for narrowband transmission environments, characterized in that, The method includes: Step S1: The sending end and the receiving end are initialized. The sending end initializes the sending frame queue, the receiving end initializes the receiving frame queue, the sending end initializes a variable n, which represents the number of consecutively sent frames, and the sending end initializes a variable t, which represents the waiting time. Step S2: The sending end obtains the current communication link rate information; Step S3: Calculate the number of consecutively transmitted frames n based on the rate information; Step S4: Calculate the waiting time t based on the rate information; Step S5: The sending end retrieves data frames from the sending frame queue and continuously sends them to the receiving end; Step S6: The receiving end continuously receives data frames from the sending end. The receiving end constructs a response frame, which contains the sequence number information of the data frames that have been correctly received, and sends the response frame to the sending end. Step S7: If the sending end receives a response frame from the receiving end before the timer expires, it parses the response frame, obtains the sequence number information of the data frames that the receiving end has correctly received, removes the confirmed data frames from the sending frame queue, releases the corresponding storage space, resets the timer, returns to step S2, re-acquires the rate information and calculates n and t, and starts the next round of sending. If the sending end still does not receive a response frame from the receiving end after the timer expires, the sending end considers the data transmission to have failed, returns to step S2, re-acquires the rate information and calculates n and t, and starts a new round of sending, re-sending the previously unacknowledged data frames. Step S8: The sending end repeats steps S2 to S7 until the sending frame queue is empty.
2. The link-layer automatic repeat request method for narrowband transmission environments according to claim 1, characterized in that, Step S2 specifically includes: the sending end sending a rate query request to the link status providing unit, the link status providing unit returning a rate information response, the sending end parsing the rate information response, and obtaining the rate.
3. The link layer automatic repeat request method for narrowband transmission environments according to claim 2, characterized in that, Step S3 specifically includes: The sending end calculates the number of frames n to be sent continuously according to the formula n = f1(rate, p1, p2, ...), where f1 represents a predefined function, and f1 is one of a linear function, a piecewise function, or a logarithmic function. p1, p2, ... is a set of empirical parameters, and this set of empirical parameters is adjusted and optimized according to the characteristics of the narrowband transmission environment. The limit for n is set to be within the range of [n_min, n_max], where n_max represents the upper limit of the number of consecutive frames to be sent, and n_min represents the lower limit of the number of consecutive frames to be sent.
4. The link-layer automatic repeat request method for narrowband transmission environments according to claim 3, characterized in that, In step S3, function f1 is a piecewise function, and , Where r1 and r2 are preset rate thresholds, and n1, n2, and n3 are the number of consecutive frames sent corresponding to different rate intervals.
5. The link layer automatic repeat request method for narrowband transmission environments according to claim 2, characterized in that, Step S4 specifically includes: The sending end calculates the waiting time t according to the formula t = f2(rate, q1, q2, ...), where f2 represents a predefined function, and f2 is one of the inverse proportional function, piecewise function, logarithmic function, and exponential function. q1, q2, ... is a set of empirical parameters, and this set of empirical parameters is adjusted and optimized according to the characteristics of the narrowband transmission environment. The time t is limited to the range [t_min, t_max], where t_max represents the upper limit of the pre-set waiting time and t_min represents the lower limit of the pre-set waiting time.
6. The link layer automatic repeat request method for narrowband transmission environments according to claim 5, characterized in that, In step S4, .
7. The link-layer automatic repeat request method for narrowband transmission environments according to claim 1, characterized in that, Step S5 specifically includes: The sending end retrieves n-1 data frames from the transmission frame queue and continuously sends them to the receiving end; The sending end then retrieves the nth data frame from the transmission frame queue and sets a specific identifier in the data frame to indicate to the receiving end that it needs to confirm receipt of the data frame. The identifier is one of the following: a specific bit, a specific field, or a specific frame type. The sending end sends the nth data frame with the identifier to the receiving end; The sending end starts a timer to begin timing, and waits for a duration of t.
Citation Information
Patent Citations
SNACK-P response system and method of space-earth integration network communication and wireless communication system
CN109194450A
Efficient automatic retransmission method in broadband ad hoc network
CN115051775A