• 沒有找到結果。

1 Introduction

2.4 Fragmentation

The IEEE 802.11 MAC may fragment directed MAC Service Data Unit (MSDU) or MAC Management Protocol Data Unit (MMPDU) into several MAC Protocol Data Unit (MPDU) as shown in figure 4, if the length of MSDU or MMPDU is greater than the parameter aFragmentationThreshold. Note that every MSDU/MMPDU will not be fragmented, even its length is greater than the aFragmentationThreshold, when it is a multicast packet. Each fragmented MPDU will be transmitted separately, and shall be retransmitted when it is unacknowledged. At the receiver side, it shall reassemble all fragmented MPDUs into a MSDU/MMPDU according to the information that included in each fragmented MPDU.

Figure 4 – Fragmentation

In the DCF, those fragmented MPDUs are sent as a burst period called Fragment Burst (as shown in figure 5). The receiver sends an ACK frame back to the sender to acknowledge the incoming MPDU after a SIFS when it receives an error-free MPDU, and the sender will send the next fragmented MPDU after a SIFS when the last outgoing MPDU is acknowledged by an error-free ACK frame, such circle will be repeated until all fragmented MPDUs is successfully transmitted or any failed transmission interrupt the Fragment Burst.

Figure 5 – Fragmentation Burst

Chapter 3

Sectional Transmission

Figure 6(a) shows the original IEEE 802.11 MPDU format. The minimum length of the frame body is 0 octets and the maximum is 2312 octets when the Wired Equivalent Privacy (WEP) is employed. In the IEEE 802.11 MAC, it will cause retransmission/discard (i.e., packet loss) even if only one error-bit was found (i.e., FCS check fail) inside the MPDU. And the retransmission/discard will occur frequently when the BER of the transmission channel goes worse and worse. It will be the worst, especially, when the size of the frame body is maximum amount. No doubt the fragmentation, defined in IEEE 802.11 MAC, improves the packet loss (the 1st case as we talk in Chapter 2), however it introduces 3 disadvantages. Firstly, it leads a large redundancy (MAC header and FCS) into each fragmented MPDU, but the MSDU/MMPDU takes only one MAC header and one FCS. Secondly, those fragmented MPDUs all need to be acknowledged separately, and perform the Backoff procedure when the Fragment Burst was interrupted by any one of damaged MPDU or damaged ACK frame. Lastly, the Fragment Burst needs more SIFS. According to those disadvantages, we can easily understand that both of the packet delay and throughput are terribly degraded when the fragmentation is working. Of course the packet loss is improved because the length of MPDU is smaller than that of MSDU/MMPDU.

Figure 6(b) shows the new MPDU format for the Sectional Transmission that we proposed. The original frame body is split up into N subframes, where N

= 1~16. Each subframe is packed with one subframe number (1 octet) and one subframe FCS (4 octets). The subframe number indicates which piece of the original frame body inside the subframe data field, and the subframe FCS performs the Error Detection (32-bit CRC) through the subframe number and subframe data (1~288 octets) field. There are two new fields in the MAC header, one is subframe control field (2 octets), and the other is header FCS field (4 octets). The header FCS performs the Error Detection (32-bit CRC) for the whole MAC header, and the subframe control field provides the necessary information about MPDU format (for receiver decoding).

(a)

(b)

(c)

Figure 6 – IEEE 802.11 MPDU format without and with the Sectional Transmission. The QoS control field only occurs in the IEEE 802.11e, and the number (top/bottom of each field) represents the corresponding size in octets, where N = 1~16. (a) Original MPDU format. (b) New MPDU format for Sectional Transmission with the subframe control field and the subframe blocks. (c) New ACK frame for Sectional Transmission with the Ack Bitmap field.

3.1. New acknowledgement policy

A new ACK frame for Sectional Transmission was depicted in Figure 6(c).

The included Ack Bitmap field (2 octets/16 bits, because of Nmax=16) is the only difference in format between the original ACK frame and the Sectional Transmission (ST) ACK frame. Such Ack Bitmap field informs the sender about which subframe is “no good”, and the sender performs the subframe (i.e., Frame-Level) retransmission according to the subframe status from Ack Bitmap field. In the IEEE 802.11 MAC, there is no need to send an ACK frame back to the sender when the MPDU is not perfect. But the receiver, in the Sectional Transmission Scheme, responses in three cases:

1) The receiver responses nothing after checking header FCS is fail.

2) The receiver responses an ACK frame when the whole ST-MPDU (i.e., Sectional Transmission MPDU) is completely correct.

3) The receiver responses a ST-ACK frame (i.e., Sectional Transmission ACK frame) to inform the sender of which subframe still needs to be retransmitted.

For example, the sender transmits a ST-MPDU with 5 subframes to the receiver (as show in Figure 7), but both subframe 2 and subframe 4 are not correctly received. Therefore, the receiver sends a ST-ACK frame (case 3 as we talk above) back to the sender, and set both 2nd & 4th bit of the Ack Bitmap field (i.e., 01010000000000002/500016) to inform the sender of the retransmission of both subframe 2 and 4.

Figure 7 – The two-way frame exchange protocol under the Sectional Transmission, where

“Hdr” means the MAC header and “SFn” means the subframe n.

3.2. Frame-Level ARQ

Figure 8 – Frame-Level ARQ Behavior, where “SFn” means the subframe n.

The purpose of ST-ACK frame is not only to avoid the EIFS when the sender doesn’t receive the expected ACK frame but also to inform the sender of the subframe status of the ST-MPDU. According to the independent subframe format and the subframe status from ST-ACK frame, we introduce both more efficient Selective Repeat ARQ [2,5,6] and more reliable Multi-copy ARQ [6]

into the Sectional Transmission Scheme. As the view of MAC-Level, it is performing the same Stop-And-Wait ARQ no matter the Sectional Transmission is employed or not. In another view of Frame-Level, we can perform the Selective Repeat ARQ and the Multi-copy ARQ under the MAC-Level Stop-And-Wait ARQ if and only if the Sectional Transmission is implemented.

For example, figure 8(a) shows the origination ST-MPDU sent from sender to receiver. Unfortunately, those subframes {2, 4, 6} was damaged by the unknown interference. Receiver will notice the sender which subframes to be retransmitted are needed via a ST-ACK frame. Whatever the Sectional Transmission is performed, the sender retransmits the same ST-MPDU until it is completely received by receiver (i.e., MAC-Level Stop-And-Wait ARQ). In the MAC-Level, there is nothing we can do except the Stop-And-Wait ARQ.

However there is something we can do in the Frame-Level; we can only retransmit the necessary subframe [i.e., Selective Repeat ARQ as show in figure 8(b)] to improve the throughput and the packet delay and/or retransmit the subframe more than one time in a single ST-MPDU [i.e., Multi-copy ARQ as show in figure 8(c)] to improve the packet loss and the packet delay. Of course, the receiver must keep the error-free subframe(s) for the retransmission to

combine a perfect ST-MPDU. Base on the Frame-Level ARQ, the length of the retransmitted ST-MPDU is going smaller and smaller when the retransmission time is getting more and more. Hence, the packet loss will be decreased, the packet delay will be decreased and the throughput will be increased when the Frame-Level ARQ is employed. Note that the Multi-copy ARQ can be performed even at the first transmission of ST-MPDU not only the retransmission of ST-MPDU.

3.3. FCS and ST-MPDU format decoding

Every FSC in the ST-MPDU is performing the same Error Detection code (i.e., 32-bit CRC) as the definition on section 7.1.3.6 of [1]. The initial remainder must be preset to all 1’s before the field’s calculation, and results error-free in a unique nonzero remainder value. In the IEEE 802.11 MAC, the CRC Remainder Initialization (CRCRI) is easy to be finished, because it occurs only one FCS and the position of the CRCRI is the begin of the MPDU. But there is more critical to finish more than one CRCRI in a ST-MPDU, because of the number of FCS is up to 17 (Header FCS + subframe FCS). Each FCS of a ST-MPDU must do their own CRCRI separately, so there are (up to) 17 positions needed to be located. Figure 9(a) shows an origination ST-MPDU with 4 subframes. Because the length of a ST-MPDU is not divided without remainder all the time, thus the length of the last subframe (as the subframe 4 shown in Figure 9a) is usually smaller than the non-last subframe (as the subframe 1~3 shown in Figure 9a).

Figure 9 – Frame-Level FCS decoding. (a) Origination ST-MPDU from sender to receiver.

(b) Retransmission with both Selective Repeat and Multi-copy ARQ. (c) Realistic ST-MPDU format for the case shown in (b). Where “D1” is the length of the MAC Header + Header FCS, “D2” is the length of the non-last subframe and “D3” is the length of the last subframe.

At the receiver, the CRCRI must be done at point A1, A2, A3, A4 and A5

[as show in Figure 9(a)] to correctly perform the Error Detection (FCS/32-bit CRC). So, the length D1 and D2 must be given. Figure 9(b) shows a retransmitted ST-MPDU that retransmits subframe 2 and 4 under both Selective Repeat and Multi-copy (Double) ARQ. At this case, the CRCRI must be done at the point B1, B2, B3, B4 and B5 [as show in Figure (9b)]. Not only the length D1, D2 and D3 must be given to finish the CRCRI, but also the location of the last subframe (in the subframe sequence) must be given too. As the case shown in figure 9(b), the receiver can’t determine where the point B5, because the distance between B4 and B5 could be D2 or D3. Hence, the location of the last subframe must be given to notify the receiver where the D3 located. Therefore, the length of the non-last subframe, the length of the last subframe and the location of the last subframe must be given after Header FCS field, because the length of the MAC Header and the length of the Header FCS are known (constant) number. Figure 9(c) shows the realistic ST-MPDU format when the case as shown in figure 9(b) is occurred. Actually, the last subframe must be placed between the 1st subframe slot and the 4th subframe slot after Header FCS (i.e., it will not be more than 4 last subframes present in a ST-MPDU).

Figure 10 – The partition of the Subframe Control Field.

Figure 10 shows the partition of the Subframe Control Field (located in the MAC Header). The Subframe Control Field, total 2 octets, provides three important messages for the receiver to recognize the ST-MPDU format. The first is the length of the non-last subframe, and it is located in bit 0~2 (total 3 bits).

There are only eight numbers for the length of the non-last subframe. For example: if 0112 present in bit 0~2, it means the length of the non-last subframe is 128 octets. Thus, the maximum MSDU size allowed in ST-MPDU is 288 * 16

= 4608 octets, but the limitation could be broken at the coexistence between

Fragmentation and Sectional Transmission. The second message is the location of the last subframe, and it is located in bit 3~6 (total 4 bits). The last subframe will not be inserted more than 4 times in a ST-MPDU, and they must be located between the 1st subframe slot and the 4th subframe slot. And those bit 3~6, located in the Subframe Control field, indicate which subframe slot is the last subframe. For example: if 01012 present in bit 3~6, it means both the 2nd subframe slot and the 4th subframe slot are the last subframe, and both the 1st subframe slot and the 3rd subframe slot are the non-last subframe. The third message is the length of the last subframe, and it is located in bit 7~15 (total 9 bits). Finally, the necessary information for the receiver to organize the ST-MPDU is completely provided in the Subframe Control field, and the Frame-Level ARQ will be fully implemented in Sectional Transmission.

3.4. Reception Flow

The Sectional Transmission scheme is backward compatible to the IEEE 802.11 MAC, but there is no extra information field (in the ST-MPDU) needed for the identification of the ST-MPDU. Figure 11 shows the reception flow to accomplish the compatibility as we talk above. If the incoming packet is a MPDU, the receiver goes toward the “Path B” or “Path C” [as shown in Figure (11)]. If the incoming packet is a ST-MPDU, the receiver goes toward the “Path A” or “Path C”. The “Path A” means the incoming packet is a ST-MPDU, thus the Header FCS is checking pass. After the checking Header FCS, the receiver determines how many subframe in this ST-MPDU and which point of the ST-MPDU needed to perform CRCRI. Further, the receiver will combine the entire (ex) error-free subframe together and then check the integrity of this ST-MPDU. If the ST-MPDU after combination is perfect then go toward “Path A1” to send an (traditional) ACK frame back to the sender, else if the ST-MPDU after combination is non-perfect then go toward “Path A2” to send a ST-ACK frame back to the sender. And the “Path B” means the incoming packet is a (traditional) MPDU, thus the Header FCS is checking fail and the receiver will send an (traditional) ACK frame back to the sender after the outer (original) FCS is checking pass. Lastly, the “Path C” means the incoming packet could be a ST-MPDU with error in header or a (traditional) MPDU with error, thus the receiver will send nothing.

Figure 11 – Backward compatible ST-MPDU reception flow.

Chapter 4

Numerical Analysis

The analysis of the packet loss probability is based on those given in [3]. In this numerical analysis, we assume that the channel model is uniform distribution and modeling all channels in BER. And the Fragmentation ignores the limitation of the aMaxTransmitMSDULifeTime, defined in section 9.4 of [1].

Although those assumptions are making here, but we believe that our analysis results will show the same trend with the realistic (simulation) results.

4.1. Loss Probability of MSDU/MMPDU

Let

P

b denotes the bit error rate, and the byte error ratePB =1(1Pb)8,

where PayloadSize is the length of the frame body (payload) and the constants 24 and 4 denote the length of MAC Header and the length of FCS [as shown in figure 6(a)]. In the IEEE 802.11 MAC, it does have a retry limit for every MPDU, if the retransmission times over the retry limit then the sender discard the MPDU instead of the retransmission. LetRdenotes the retransmission times, and the probability of a MPDU successfully received by the receiver at the (re)transmissions is obtained by

MSDU/MMPDU into several MPDU that the length is not greater than aFragmentThreshold. The length of a fragmented MPDU shall be an equal number of octets (bytes) for all fragmented MPDUs except the last, which may be smaller [1].

= P PayloadSiz e aFragmentT hreshold N

P

lferr blk (5)

Equation (4) and (5) show the error probability for the fragmented MPDU and the last fragmented MPDU, where N is the number of fragmented MPDU after fragmenting a MSDU/MMPDU.

received by the receiver within R (re)transmissions, and equation (7) shows the probability of the last fragmented MPDU successfully received by the receiver within R (re)transmissions. Lastly, the loss probability

P

lossfrg(R) of a MSDU/

MMPDU, with the Fragmentation, within R (re)trans-missions is obtained by

)

4.2. Loss Probability of ST-MPDU

In the Sectional Transmission, the receiver will ignore the received ST-MPDU if any reception error is found inside the MAC header or header FCS, because of the ST-MPDU format couldn’t be decoded. Just like the Fragmentation, the length of a subframe shall be an equal number of bytes for all subframes except the last, which may be smaller. Let

P

hdr denotes the error probability of the MAC header of the ST-MPDU that is given by is an approximation equation for the error probability of a subframe,

[

blk

]

k after splitting a MSDU/MMPDU then the mean length of all subframes is given by

Thus, the probability of i subframes, out of j subframes, are incorrect is given by

i

where the

n

x means the number of the incorrect subframe after x transmissions. For example:

R = 3

∑ ∑

Selective Repeat and Multi-copy ARQ under the Sectional Transmission, within

R (re)transmissions is obtained by

4.3. Numerical Results

Figure 12 shows those packet loss probabilities of 12 cases, and those cases could be classified in following four groups:

1) “DCF”: the MPDU without Fragmentation using equation (3).

2) “Fragment”: the MPDU with Fragmentation using equation (8).

3) “SRARQ”: the ST-MPDU (i.e., Sectional Trans-mission is enabled) with Selective Repeat ARQ using equation (13) and

k = 1

.

4) “MCARQ”: the ST-MPDU (i.e., Sectional Transmission is enabled) with both Selective Repeat ARQ and Multi-copy ARQ using equation (13) andk =2

And the number with parts per million (ppm) denotes the channel BER. Note that, all charts in this thesis depict the same form like this. For example: case

“100ppm-SRARQ” means the result comes from equation (13) (i.e., the third group shown above) and the channel BER is 100ppm. The aFragmenThreshold in equation (8) is the sum of (Threshold + MAC header + FCS), i.e., Threshold + 24 + 4, where the Threshold is shown in Table 1, and the number of fragmented MPDU (N) in equation (8) and the number of subframe (N) in equation (13) are referred to the same row (N) shown in Table 1, and the Retry Limit (R) is 7 in all cases.

Table 1

Five different thresholds, remainders and numbers of (ST-)MPDU for five different Payload Sizes

5000 1,500 2,500 3,500 4,500

Figure 12 – Loss Probability vs. Payload Size.

We firstly observe the first group (i.e., without Fragmentation and Sectional Transmission) under 3 different channel BERs as shown in figure 12, such 3 curves are the worst performance under there own channel BER due to no Fragmentation and Sectional Transmission. They show that both the Payload Size and the channel BER will significantly increase the loss probability when either the channel BER or the Payload Size is increased. Hence, we can easily imagine that both packet delay and throughput will be rapidly degraded when both channel BER and Payload Size is large. Now, we observe the rest of group at the same time, all of them are obviously improved the loss probability even those loss probabilities show the same result (close to zero) when the channel BER is 50ppm or 100ppm. In those cases of the channel BER equal to 500ppm, case “500ppm-MCARQ” presents the best performance. And the performance between case “500ppm-SRARQ” & “500ppm-Fragment” are very close, but it is easily conclude that both packet delay and throughput should be better in the case “500ppm-SRARQ” due to the overhead in the Sectional Transmission is smaller than that in the Fragmentation.

Chapter 5

Simulation Results

In the previous Chapter, we make both approximation and assumption in the numerical analysis. Now, we should further confirm the performance in more realistic environment. We modify the network simulator (NCTUns 3.0) to perform the Sectional Transmission and Frame-Level ARQ, and there is only one AP and one STA presented in all scenarios those we talk about in this Chapter. The traffic is saturated from AP to STA, and the protocol of Transport Layer could be UDP (User Data Protocol) or TCP (Transport Control Protocol), and the channel model is the uniform distribution BER that only occurs inside the MAC frame (i.e., the PLCP header and Preamble not included). The conditions of the IEEE 802.11 are:

a) PHY rate = 11Mbps.

b) DCF is used.

c) Slot time = 20us.

d) SIFS = 10us.

e) CWmin = 31.

f) CWmax = 1023.

g) No RTS/CTS.

h) Retry Limit = 7.

i) Preamble = 144bits.

j) PLCP header = 48bits.

And the fragment threshold (in Fragmentation), splitting threshold (in Sectional Transmission) and the number (N) of MPDU/ST-MPDU are shown in table 1.

Lastly, the simulation time is 15 second in each case, and we determine the statistics with the data of the last 10 seconds due to the unstable link may occur in the first 5 seconds. In this Chapter we only consider three groups (“DCF”,

“Fragment” & “SRARQ”), and the depicting form is the same as the previous Chapter. Thanks to network simulator “NCTUns”, all figures in this Chapter show the realistic statistic measured from the real TCP/IP protocol stack of the

“Fragment” & “SRARQ”), and the depicting form is the same as the previous Chapter. Thanks to network simulator “NCTUns”, all figures in this Chapter show the realistic statistic measured from the real TCP/IP protocol stack of the

相關文件