Computing device and computing method for computing packet transmission time

Information

  • Patent Grant
  • 12261705
  • Patent Number
    12,261,705
  • Date Filed
    Tuesday, September 26, 2023
    a year ago
  • Date Issued
    Tuesday, March 25, 2025
    a month ago
Abstract
A computing device includes: a storage circuit, for storing an arbitration interframe space (AIFS) time, at least one expected value of at least one backoff time, a preamble time, a short interframe space (SIFS) time and an acknowledgement (ACK) time; a first computing circuit, for computing a payload time according to a packet length and a packet rate; a second computing circuit, coupled to the storage circuit and the first computing circuit, for computing at least one packet transmission time according to the AIFS time, the at least one expected value of the at least one backoff time, the preamble time, the SIFS time, the ACK time and the payload time; and a third computing circuit, coupled to the second computing circuit, for computing a total packet transmission time according to the at least one packet transmission time and an estimated packet error rate.
Description
BACKGROUND OF THE INVENTION
1. Field of the Invention

The present invention relates to a computing device and a computing method used in a communication system, and more particularly, to a computing device and a computing method for computing a packet transmission time.


2. Description of the Prior Art

In a wireless communication system, a transmitter transmits a packet to a receiver according to multiple data rates defined in a communication standard (e.g., IEEE 802.11). In the prior art, the transmitter predicts a throughput according to the data rates and an estimated packet error rate, in order to select a better data rate. However, the transmitter does not consider a packet retransmission. Thus, how to compute a packet transmission time to select a best data rate to obtain a high throughput or a low latency is an important problem to be solved.


SUMMARY OF THE INVENTION

The present invention provides a computing device and method to solve the abovementioned problem.


A computing device comprises: a storage circuit, for storing an arbitration interframe space (AIFS) time, at least one expected value of at least one backoff time, a preamble time, a short interframe space (SIFS) time and an acknowledgement (ACK) time; a first computing circuit, for computing a payload time according to a packet length and a packet rate; a second computing circuit, coupled to the storage circuit and the first computing circuit, for computing at least one packet transmission time according to the AIFS time, the at least one expected value of the at least one backoff time, the preamble time, the SIFS time, the ACK time and the payload time; and a third computing circuit, coupled to the second computing circuit, for computing a total packet transmission time according to the at least one packet transmission time and an estimated packet error rate.


A computing method comprises: storing an arbitration interframe space (AIFS) time, at least one expected value of at least one backoff time, a preamble time, a short interframe space (SIFS) time and an acknowledgement (ACK) time; computing a payload time according to a packet length and a packet rate; computing at least one packet transmission time according to the AIFS time, the at least one expected value of the at least one backoff time, the preamble time, the SIFS time, the ACK time and the payload time; and computing a total packet transmission time according to the at least one packet transmission time and an estimated packet error rate.


These and other objectives of the present invention will no doubt become obvious to those of ordinary skill in the art after reading the following detailed description of the preferred embodiment that is illustrated in the various figures and drawings.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a schematic diagram of a communication system according to an embodiment of the present invention.



FIG. 2 is a schematic diagram of a computing device according to an embodiment of the present invention.



FIG. 3 is a flowchart of a computing method according to an embodiment of the present invention.





DETAILED DESCRIPTION


FIG. 1 is a schematic diagram of a communication system 10 according to an embodiment of the present invention. The communication system 10 may be any communication system using an orthogonal frequency-division multiplexing (OFDM) technique (also termed as a discrete multi-tone modulation (DMT) technique), and is composed of a transmitter 12 and a receiver 14. The communication system 10 may be any wired communication system such as an asymmetric digital subscriber line (ADSL) system, a power line communication (PLC) system or an Ethernet over coax (EOC) but is not limited herein. The communication system 10 may be any wireless communication system such as a wireless local area network (WLAN) a Digital Video Broadcasting (DVB) system, a Long Term Evolution (LTE) system, a Long Term Evolution-advanced (LTE-A) system or a 5th generation (5G) system, but is not limited herein. In addition, the transmitter 12 and the receiver 14 may be installed in a mobile phone, a laptop, etc., but this is not limited herein.


The transmitter 12 may predict a throughput according to a data rate and an estimated packet error rate (e.g. an average of packet error rates) The throughput may be expressed as follows:

throughput=r×(1−PERestimated)  (Eq. 1)

wherein throughput is the throughput, r is the data rate and PERestimated is the estimated packet error rate. In a case where the data rate r is 6, 9, 12, 18, 24, 36, 48 or 54 megabits per second (Mbps) the throughput, the data rate and the estimated packet error rate can be summarized as shown in Table 1.












TABLE 1







Estimated packet



Data rate
Packet error rate of
error rate
Throughput


(Mbps)
last 5 times (%)
(average) (%)
(Mbps)


















6
0, 0, 0, 0, 0
0
6


9
1, 3, 2, 4, 0
2
8.82


12
5, 2, 1, 4, 3
3
11.64


18
5, 5, 2, 2, 6
4
17.28


24
23, 10, 30, 20, 17
20
19.2


36
35, 50, 30, 60, 25
40
21.6


48
96, 100, 96, 100, 100
95
2.4


54
100, 100, 100, 100, 100
100
0









The transmitter 12 may select the data rate 36 Mbps to transmit the packet according to Table 1, in order to obtain the highest throughput.



FIG. 2 is a schematic diagram of a computing device 20 according to an embodiment of the present invention. The computing device 20 may be utilized in the transmitter 12 of FIG. 1, for computing a packet transmission time. The computing device 20 comprises a storage circuit 200, a first computing circuit 210, a second computing circuit 220 and a third computing circuit 230. In detail, the storage circuit 200 is configured for storing an arbitration interframe space (AIFS) time TimeAIFS, at least one expected value EXPbackoff[n] of at least one backoff time Timebackoff[n] (n is a number of transmissions of a packet) a preamble time Timepreamble, a short interframe space (SIFS) time TimeSIFS and an acknowledgement (ACK) time TimeACK. The first computing circuit 210 is configured for computing a payload time Timepayload[l, r] according to a packet length l and a packet rate r (e.g., a data rate defined in a communication standard) The second computing circuit 220 is coupled to the storage circuit 200 and the first computing circuit 210, and is configured for computing at least one packet transmission time Timepacket[n, l, r] according to the AIFS time TimeAIFS, the at least one expected value EXPbackoff[n] of the at least one backoff time Timebackoff[n], the preamble time Timepreamble, the SIFS time TimeSIFS, the ACK time TimeACK and the payload time Timepayload. The third computing circuit 230 is coupled to the second computing circuit 220, and is configured for computing a total packet transmission time Timepacket_total[j, l, r] according to the at least one packet transmission time Timepacket[n, l, r] and an estimated packet error rate PERestimated (j is a maximum number of transmissions of the packet).


In one example, the AIFS time TimeAIFS is a waiting time interval before transmitting the packet. In one example, the AIFS time TimeAIFS is a predefined value, and is defined in a communication standard (e.g., IEEE 802.11) In one example, the AIFS time TimeAIFS is related to a frequency band for transmitting the packet. Different frequency bands may have different AIFS times TimeAIFS.


In one example, the at least one backoff time Timebackoff[n] is at least one waiting time interval before transmitting a packet (and after the AIFS time TimeAIFS). In one example, the at least one backoff time Timebackoff[n] is at least one random variable with a probability distribution (e.g., a uniform distribution) In one example, the at least one expected value EXPbackoff[n] of the at least one backoff time Timebackoff[n] is at least one median of the at least one backoff time Timebackoff[n].


Table 2 illustrates an example of the backoff time Timebackoff[n] and the expected value EXPbackoff[n] for the n-th transmission of the packet. As n increases, a range of the backoff time Timebackoff[n] and the expected value EXPbackoff[n] increase. That is, compared with the case of transmitting the packet for the first time (n=1) the transmitter 12 which retransmits the packet (n>1) may wait for a longer time. The more the number of retransmissions, the longer the transmitter 12 may wait.











TABLE 2






Backoff time



n-th transmission of packet
(microsecond (μs))
Expected value (μs)

















n = 1
0-135 
67.5


n = 2
0-279 
139.5


n = 3
0-567 
283.5


n = 4
0-1143
571.5


n = 5
0-2295
1147.5


n = 6
0-4599
2299.5


n ≥ 7
0-9207
4603.5









In one example, the preamble time Timepreamble is a predefined value, and is defined in a communication standard (e.g., IEEE 802.11). In one example, the SIFS time TimeSIFS is a time interval for the transmitter 12 to wait for an ACK from the receiver 14 after transmitting the packet. In one example, the SIFS time TimeSIFS is a predefined value, and is defined in a communication standard (e.g., IEEE 802.11). In one example, the ACK time TimeACK is a time interval for receiving an ACK (e.g., by the transmitter 12). In one example, the ACK time TimeACK is a predefined value, and is defined in a communication standard (e.g., IEEE 802.11).


In one example, the estimated packet error rate PERestimated is a function of a plurality of packet error rates. For example, the function may be an average of the plurality of packet error rates or a maximum of the plurality of packet error rates.


The following example is used for illustrating how the computing device 20 computes the total packet transmission time. First, the storage circuit 200 stores the AIFS time TimeAIFS as 43 μs, the preamble time Timepreamble as 20 μs, the SIFS time TimeSIFS as 16 μs, the ACK time TimeACK as 44 μs and the expected values EXPbackoff[n] of the backoff times Timebackoff[n] as shown in Table 2. The first computing circuit computes the payload time Timepayload[l, r] according to the packet length l and the packet rate r as follows:














Time




payload



[

l
,
r

]

=

l
r






(

Eq
.

2

)







For example, the packet length l is 1538 bytes and the packet rate r is 6 Mbps. The payload time Timepayload[l, r] is computed as follows:














Time




payload


[

l
,
r

]

=



1

5

3

8
×
8


6
×
1


0
6



=

2051


µs







(

Eq
.

3

)







Then, the second computing circuit 220 computes the at least one packet transmission time Timepacket[n, l, r] as follows:

Timepacket[n,l,r]=TimeAIFS+EXPbackoff[n]+Timepreamble+Timepayload[l,r]+TimeSIFS+TimeACK  (Eq. 4)


It is assumed that the packet length l is 1538 bytes. In the case where the packet rate r is 6, 9, 12, 18, 24, 36, 48 or 54 Mbps and n is 1, 2, 3, 4, or 5, the packet transmission time Timepacket[n, l, r] can be summarized as shown in Table 3.














TABLE 3






Packet
Packet
Packet
Packet
Packet



transmis-
transmis-
transmis-
transmis-
transmis-


Packet
sion time
sion time
sion time
sion time
sion time


rate
with n = 1
with n = 2
with n = 3
with n = 4
with n = 5


(Mbps)
(μs)
(μs)
(μs)
(μs)
(μs)




















6
2241
2313
2457
2745
3321


9
1558
1630
1774
2062
2638


12
1216
1288
1432
1720
2296


18
874
946
1090
1378
1954


24
703
775
919
1207
1783


36
532
604
748
1036
1612


48
447
519
663
951
1527


54
418
490
634
922
1498









Then, the third computing circuit 230 computes the total packet transmission time Timepacket_total[j, l, r] according to the packet transmission times Timepacket[n, l, r] and the estimated packet error rate PERestimated as follows:

Timepacket_total[j,l,r]=Σi=1jTimepacket[i,l,r]×PERestimatei-1  (Eq. 5)

wherein j is a maximum number of transmissions of the packet, l is the packet length and r is the data rate.


It is assumed that the estimated packet error rate PERestimated is the average of the packet error rates and the packet length l is 1538 bytes. In the case where the packet rate r is 6, 9, 12, 18, 24, 36, 48 or 54 Mbps and j is 8 or 16, the estimated packet error rate PERestimated and the total packet transmission time Timepacket_total[j, l, r] can be summarized as shown in Table 4.













TABLE 4







Estimated






packet
Total packet
Total packet


Packet
Packet error
error rate
transmission
transmission


rate
rate of last 5
(average)
time with
time with


(Mbps)
times (%)
(%)
j = 8 (μs)
j = 16 (μs)



















6
0, 0, 0, 0, 0
0
2241
2241


9
1, 3, 2, 4, 0
2
1591
1591


12
5, 2, 1, 4, 3
3
1256
1256


18
5, 5, 2, 2, 6
4
914
914


24
23, 10, 30,
20
909
909



20, 17


36
35, 50, 30,
40
1059
1064



60, 25


48
96, 100, 96,
95
12812
35065



100, 100


54
100, 100,
100
16523
56158



100, 100, 100









According to Table 4, the same packet can be transmitted 8 times or 16 times at most, and the time required for the transmitter 12 to transmit the packet at the data rate 24 Mbps is the shortest. That is, compared with the case where the packet retransmission is not considered (i.e., Table 1), in the case of the packet retransmission, the transmitter 12 obtains a greater throughput by selecting the data rate 24 Mbps rather than 36 Mbps.


Assuming that the estimated packet error rate PERestimated is the maximum of the packet error rate and other parameters are the same as in Table 4, the estimated packet error rate PERestimated and the total packet transmission time Timepacket_total[j, l, r] can be summarized as shown in Table 5.













TABLE 5







Estimated






packet
Total packet
Total packet


Packet
Packet error
error rate
transmission
transmission


rate
rate of last 5
(maximum)
time with
time with


(Mbps)
times (%)
(%)
j = 8 (μs)
j = 16 (μs)



















6
0, 0, 0, 0, 0
0
2241
2241


9
1, 3, 2, 4, 0
4
1626
1626


12
5, 2, 1, 4, 3
5
1284
1284


18
5, 5, 2, 2, 6
6
935
935


24
23, 10, 30,
30
1078
1078



20, 17


36
35, 50, 30,
60
2190
2400



60, 25


48
96, 100, 96,
100
16751
56613



100, 100


54
100, 100,
100
16523
56158



100, 100, 100









According to Table 5 (i.e., considering the worst case of transmitting a packet), the same packet can be transmitted 8 times or 16 times at most, and the time required for the transmitter 12 to transmit the packet at the data rate 18 Mbps is the shortest. That is, compared with the case where the packet retransmission is not considered (i.e., Table 1), in the case of the packet retransmission, the transmitter 12 may obtain a lower latency by selecting the data rate 18 Mbps rather than 36 Mbps.


Operations of the computing device 20 in the above examples can be summarized into a process 30 shown in FIG. 3. The process 30 may be utilized in the transmitter 12 of FIG. 1. In FIG. 3, a computing method performed by the computing device 20 includes the following steps:


Step 300: Start.


Step 302: Store an AIFS time, at least one expected value of at least one backoff time, a preamble time, an SIFS time and an ACK time.


Step 304: Compute a payload time according to a packet length and a packet rate.


Step 306: Compute at least one packet transmission time according to the AIFS time, the at least one expected value of the at least one backoff time, the preamble time, the SIFS time, the ACK time and the payload time.


Step 308: Compute a total packet transmission time according to the at least one packet transmission time and an estimated packet error rate.


Step 310: End.


Detailed description and variations of the process 30 can be known by referring to the previous description, and are not narrated herein.


It should be noted that realizations of the computing device 20 (including the storage circuit 200, the first computing circuit 210, the second computing circuit 220 and the third computing circuit 230) are various. For example, the devices/circuits mentioned above may be integrated into one or more devices/circuits. In addition, the computing device 20 and the circuits in the computing device 20 may be realized by hardware (e.g. circuits), software, firmware (known as a combination of a hardware device, computer instructions and data that reside as read-only software on the hardware device), an electronic system or a combination of the devices mentioned above, but are not limited herein.


To sum up, the present invention provides a computing device and a computing method. In the case where a transmitter retransmits a packet, the computing device computes a total packet transmission time according to different estimated packet error rates. Compared with the prior art, the transmitter of the present invention selects a better data rate to obtain a high throughput or a low latency.


Those skilled in the art will readily observe that numerous modifications and alterations of the device and method may be made while retaining the teachings of the invention. Accordingly, the above disclosure should be construed as limited only by the metes and bounds of the appended claims.

Claims
  • 1. A computing device for computing a packet transmission time to select a data rate to improve a performance of the computing device, comprising: a storage circuit, for storing an arbitration interframe space (AIFS) time, at least one expected value of at least one backoff time, a preamble time, a short interframe space (SIFS) time and an acknowledgement (ACK) time;a first computing circuit, for computing a payload time according to a packet length and a packet rate;a second computing circuit, coupled to the storage circuit and the first computing circuit, for computing at least one packet transmission time according to the AIFS time, the at least one expected value of the at least one backoff time, the preamble time, the SIFS time, the ACK time and the payload time; anda third computing circuit, coupled to the second computing circuit, for computing a total packet transmission time according to the at least one packet transmission time and an estimated packet error rate.
  • 2. The computing device of claim 1, wherein the AIFS time is a waiting time interval before transmitting a packet, and is a predefined value.
  • 3. The computing device of claim 1, wherein the at least one backoff time is at least one waiting time interval before transmitting a packet, and is at least one random variable with a probability distribution.
  • 4. The computing device of claim 1, wherein the at least one expected value of the at least one backoff time is at least one median of the at least one backoff time.
  • 5. The computing device of claim 1, wherein the preamble time is a predefined value, and is defined in a communication standard.
  • 6. The computing device of claim 1, wherein the SIFS time is a predefined value, and is defined in a communication standard.
  • 7. The computing device of claim 1, wherein the ACK time is a predefined value, and is a time interval for receiving an ACK.
  • 8. The computing device of claim 1, wherein the estimated packet error rate is a function of a plurality of packet error rates.
  • 9. The computing device of claim 8, wherein the function is an average of the plurality of packet error rates.
  • 10. A computing method for computing a packet transmission time to select a data rate to improve a performance of a computing device, comprising: storing an arbitration interframe space (AIFS) time, at least one expected value of at least one backoff time, a preamble time, a short interframe space (SIFS) time and an acknowledgement (ACK) time;computing a payload time according to a packet length and a packet rate;computing at least one packet transmission time according to the AIFS time, the at least one expected value of the at least one backoff time, the preamble time, the SIFS time, the ACK time and the payload time; andcomputing a total packet transmission time according to the at least one packet transmission time and an estimated packet error rate.
  • 11. The computing method of claim 10, wherein the AIFS time is a waiting time interval before transmitting a packet, and is a predefined value.
  • 12. The computing method of claim 10, wherein the at least one backoff time is at least one waiting time interval before transmitting a packet, and is at least one random variable with a probability distribution.
  • 13. The computing method of claim 10, wherein the at least one expected value of the at least one backoff time is at least one median of the at least one backoff time.
  • 14. The computing method of claim 10, wherein the preamble time is a predefined value, and is defined in a communication standard.
  • 15. The computing method of claim 10, wherein the SIFS time is a predefined value, and is defined in a communication standard.
  • 16. The computing method of claim 10, wherein the ACK time is a predefined value, and is a time interval for receiving an ACK.
  • 17. The computing method of claim 10, wherein the estimated packet error rate is a function of a plurality of packet error rates.
  • 18. The computing method of claim 17, wherein the function is an average of the plurality of packet error rates.
Priority Claims (1)
Number Date Country Kind
111139462 Oct 2022 TW national
US Referenced Citations (5)
Number Name Date Kind
10602367 Abeysekera Mar 2020 B2
11792616 Mueck Oct 2023 B2
11800572 Xue Oct 2023 B2
20210385865 Mueck Dec 2021 A1
20220201535 Chay Jun 2022 A1
Related Publications (1)
Number Date Country
20240137165 A1 Apr 2024 US