Several burst construction algorithms for orthogonal frequency division multiple access were proposed. However, these algorithms did not meet the downlink burst characteristics specified in the IEEE 802.16 standard. This article therefore proposes the best corner-oriented algorithm (BCO). BCO not only complies with downlink burst characteristics, but also considers the three issues to obtain high throughput, as follows: BCO maintains all free slots as a continuous area by constructing each burst in the corner of the available bandwidth area for minimizing external fragmentation; BCO shrinks the burst area to minimize internal fragmentation, if the requested bandwidth has been satisfied; and for exploring the continuous subchannels with good channel quality, BCO ensures that the burst adopts an optimal modulation coding scheme by selecting the excellent corner that can generate the maximal throughput. The simulation results indicate that BCO achieves 2-9 times the throughput achieved by the previous algorithms under a heavy load.
Because IEEE 802.16 uses the technique of orthogonal frequency division multiple access (OFDMA), the bandwidth resources are represented by a two-dimensional area of slots, in which the two dimensions are time in units of symbols and frequency in units of subchannels . Therefore, the bandwidth allocation in IEEE 802.16 must consider the construction of a two-dimensional bandwidth area, called a burst, assigned to a connection.
The subchannel diversity should be considered when constructing bursts. Subchannel diversity means that a connection uses a different modulation coding scheme (MCS) on various subchannels because the connection encounters various channel qualities on various subchannels . Therefore, for each connection, each burst must be constructed in its corresponding best-quality subchannels, i.e., the subchannels on which the connection receives the optimal channel quality to maximize bandwidth usage. Several algorithms for the IEEE 802.16 burst construction problem were proposed to obtain the higher throughput. A number of researchers regarded this problem as a maximum matching problem and attempted to determine the optimal matches between bursts and subchannels [3–8].
The IEEE 802.16 standard defines a number of specifications to alleviate the overhead of management messages and to concentrate the transmission power on specific subchannels for battery-powered devices, as follows: (1) the burst must be a continuous bandwidth area, (2) the shapes of the bursts used in downlink and uplink transmissions should be rectangular and multi-rectangular, respectively, and (3) one burst should use only one MCS based on the worst signal-to-noise ratio (SNR) among the assigned subchannels [1, 9].
The previous researches that focused on the maximum matching problem violated the specifications in IEEE 802.16 standard, and are thus unpractical. Therefore, a number of researchers regarded the burst construction problem as a variant of the bin packing problem. So-In et al.  designed the enhanced one-column striping with non-increasing area first mapping algorithm (eOCSA), which constructs each burst from bottom right to top left of the available bandwidth area. Wang et al.  developed the weighted less flexibility first algorithm (WLFF), which constructs each burst on the best edge selected in the free bandwidth area.a The best edge is the edge on which a constructed burst generates the minimal variance of the sub-blocks in the free bandwidth area. Thus, constructing the burst on this best edge provides the most flexibility for the following burst construction. eOCSA and WLFF conform to the specifications (1) and (2); however, they completely neglect subchannel diversity and the specification (3).
A number of issues must be addressed to conform to the specifications and maximize the throughput. First, external fragmentation may occur because the burst must be a continuous bandwidth area, which means that the total available slots are sufficient to satisfy a burst; however, the lack of contiguity may prevent their use by this burst. Thus, the external fragmentation should be avoided. Second, because of the rectangular shape of a downlink burst or improper slot allocation, internal fragmentation may occur, which results from a burst with capacity exceeding the requested bandwidth. The internal fragmentation must be minimized because the unused slots internal to a burst are wasted. Third, because one burst must use one MCS based on the worst SNR among the assigned subchannels, it must be constructed in its corresponding optimal block, i.e., a block in which a number of continuous subchannels have good SNRs.
Therefore, this article proposes a one downlink burst construction algorithm, called the best corner-oriented algorithm (BCO), to maximize the throughput. BCO not only conforms to the constraints in IEEE 802.16 standards, but also considers these issues. To avoid external fragmentation, BCO constructs each burst in a corner of the free bandwidth area to ensure that all free slots are within a continuous area. A corner is the intersection of the horizontal edge and left-hand vertical edge of the free bandwidth area. To minimize internal fragmentation, BCO shrinks the area of the burst if the requested bandwidth is satisfied to enable unused slots internal to this burst to be used by other bursts. BCO evaluates the channel quality in each corner to explore an optimal block, and subsequently constructs the optimal burst in the corner in which the burst can provide the largest throughput.
This article is organized as follows: Section 2 presents a discussion of the literature on the IEEE 802.16 network, the burst construction in downlink transmission, and related studies. In Section 3, the problem statement of the downlink burst construction is formally introduced, and the issues to solve this problem are presented. Section 4 provides a description of the proposed BCO algorithm in detail. In Section 5, the superior performance of BCO in comparison with eOCSA and WLFF is demonstrated by simulation. Finally, conclusions and future studies are given in Section 6.
2.1. IEEE 802.16 network
The IEEE 802.16 network consists of a base station (BS) and a number of subscriber stations (SSs). The BS provides connectivity, radio resource management, and control of SS, which supports the connectivity with the BS.
The two layers in the IEEE 802.16 protocol stack are the physical layer, which transfers raw data, and the MAC layer, which supports the physical layer by ensuring that the radio resources are used efficiently. The three duplex modes in the physical layer with OFDMA are Time Division Duplex (TDD), Frequency Division Duplex (FDD), and Half-duplex Frequency Division Duplex (H-FDD). The TDD is the most attractive duplex mode because of its flexibility. In addition, the modulation methods, that is quadrature phase shift keying (QPSK), 16 quadrature amplitude modulation (16QAM), or 64 quadrature amplitude modulation (64QAM), and the associated coding rate for data transmission are selected according to the channel quality, that is, signal-to-noise ratio (SNR).
An IEEE 802.16 frame for downlink and uplink transmissions is divided into downlink (DL) and uplink (UL) subframes in the time domain of the TDD mode (the right part of Figure 1). A burst is an allocated bandwidth assigned to one dedicated connection of one SS and is formed by slots. A slot is the minimal bandwidth allocation unit, and consists of one subchannel and one to three symbols. A subchannel is the smallest allocation unit in the frequency domain, and a symbol is the smallest allocation unit in the time domain. A number of other fields in a frame provide specific functions. For example, preamble synchronizes each SS, DL/UL-MAP describes the position and measure of each downlink/uplink burst, and frame control header specifies DL subframe prefix and the length of DL-MAP message.
In the IEEE 802.16, the SS must acquire bandwidth from the BS before transmitting or receiving data. On downlink, the BS broadcasts to all SSs, and each SS picks up its destined packets. On uplink, SSs must inform the BS of the bandwidth they require for data transmission by sending a bandwidth request (BWR). Upon receiving the BWRs, the BS allocates the bursts in an uplink subframe to each SS, and subsequently broadcasts this information through UL-MAP. After receiving UL-MAP, each SS uses the allocated burst to transmit its data.
Figure 1 demonstrates that, for efficient bandwidth use, the BS must consider several factors, including the power saving policy, quality of services (QoS) requirements, channel quality variation, DL/UL bandwidth ratio, and burst structure. Bandwidth allocation is generally performed in two phases, flow scheduling and burst construction, because it is difficult to consider all of these factors in a single step . The objective of flow scheduling is to estimate the appropriate number of slots to assign to each connection and to subsequently schedule these connections according to their QoS requirements, power saving policy, DL/UL bandwidth ratio, and other related factors. Several algorithms for flow scheduling were evaluated in the literature (e.g., ). In burst construction, however, the burst for each connection must be constructed according to the number of the allocated slots, the burst structure, channel quality variation, and computational complexity. This study considered the burst construction in the downlink transmission, i.e., downlink burst construction.
2.2. Burst construction in downlink transmission
The downlink burst structure specified by the IEEE 802.16 standard is based on the downlink-partial usage of subchannels (DL-PUSC) method , in which the burst uses partial subchannels in the OFDMA frequency range. The downlink bursts have three distinct requirements. First, the burst must be a continuous area to minimize DL-MAP overhead because DL-MAP is transmitted at the lowest data rate for robustness (e.g., QPSK modulation) and to ensure that all SSs can decode their embedded contents even under poor channel conditions. Second, the shape of the downlink burst is a rectangle to allow a more flexible construction, although the uplink burst must be constructed with a multi-rectangular shape for reducing power consumption of SSs . Third, the SS has various levels of SNR on various subchannels because of the variable noises on each subchannel. To minimize the overhead and the complexity of MAC control messages, each burst uses only one MCS based on the worst SNR of all assigned subchannels.
Figure 2 shows an example of the construction of a downlink burst for a connection with 15 slots allocated by the flow scheduler. For simplicity, the SNR of each subchannel is transformed into its corresponding MCS (bytes/slot). A downlink burst can be presented as a rectangle with a height-width pair (h,w) placed on a starting slot (y,x), which is represented by a row-column manner, for example, [(y,x),(h,w)] = [(0,0),(3,5)], as shown in Figure 2. The MCS used by this burst is 9 bytes/slot, which is the worst MCS of its occupied subchannels, i.e., subchannels 0 to 2.
2.3. Related studies
Because the construction of bursts that can provide the optimal throughput is a NP-hard problem , several algorithms were proposed to raise throughput and were classified as the max matching solutions and bin packing solutions. The objective of max matching solutions for burst construction is to assign bursts to their best-quality subchannels. Therefore, the researchers [3–8] transformed this problem into a max matching problem and attempted to determine the optimal matches between bursts and subchannels to maximize the throughput. Sheu et al.  utilized the Hungary algorithm, which is a commonly used combinatorial optimization algorithm for the assignment problem with m connections and m subchannels. Their approach first forms a subchannel assignment matrix, in which each row represents one connection and each column represents one subchannel. The entry in the matrix indicates the channel condition with regard to a connection, e.g., SNR. The Hungary algorithm is subsequently applied to determine the optimal connection-subchannel match. Chen et al.  proposed the dynamic frequency selection approach, in which each connection selects its subchannel according to the probability distribution, where the selection probability is determined by channel quality. Toufik and Knopp  presented a max-min allocation policy, which first constructs a matching graph (from subchannels to connections) and subsequently iteratively removes the edge with minimal weight from the matching graph until a perfect match is obtained. If two or more connections select the same subchannel, the probability of selecting this subchannel decreases. All connections subsequently repeat the selection based on the modified probabilities. This process continues until each subchannel is only chosen by one connection or until the maximal number of iterations is reached. A number of studies applied greedy methods to allocate the best subchannel to the connection with the highest transmission rate [6–8]. However, as shown in Table 1, these studies assumed that a subchannel is occupied by only one burst. They also assumed that the subchannels assigned to one burst are disjointed and can independently use different MCSs. Thus, these burst construction solutions make unreasonable assumptions and do not comply with the IEEE 802.16 specifications.
Burst construction can be regarded as a process of placing items of variable heights, widths, and values into a two-dimensional area to maximize the total value of all items in the area. Thus, the burst construction problem can be regarded as a variant of the bin packing problem, the objective of which is to determine the optimal shape and position of each burst in the bandwidth area for maximizing the overall throughput of all constructed bursts. However, the traditional studies in operational research are not applicable for the burst construction because they focus on packing objects with fixed shapes and values [13–15]. Thus, a number of algorithms were proposed [10, 11, 16–21]. The eOCSA algorithm proposed by So-In et al.  constructs the first burst in the bottom right-hand corner of the available bandwidth area, and subsequently constructs another burst if the available bandwidth area above the previous burst is sufficient. Otherwise, eOCSA subsequently constructs the burst on the left-hand edge of the previous burst. The approaches [16–18] were designed in a method similar to eOCSA, but with minor modifications. Cicconetti et al.  further evaluated the internal fragmentation of the burst constructed in different directions, that is, vertical direction or horizontal direction, and subsequently selected the direction that experienced less fragmentation to construct the burst. Eshanta et al.  also proposed two approaches. One method constructs bursts with the fixed width in a vertical direction and the other constructs bursts with the fixed height in a horizontal direction.
The WLFF  constructs the burst on the best edge in the free bandwidth area. The best edge is the edge on which a burst is constructed, and generates the minimal variance of the sub-blocks in the free bandwidth area. Thus, constructing the burst on this best edge provides the most flexibility for the following burst construction. The greedy scheduling algorithm  was designed in a manner similar to WLFF. However, none of the bin packing solutions considers subchannel diversity.
Table 1 shows the summary of these methods. The complexity refers to the time complexity consumed by the burst construction algorithm. The required bandwidth implies that the algorithm not only considers the allocated slots, but also considers the requested bandwidth during burst construction. This is because the bandwidth provided by the allocated slots may exceed the required bandwidth of the connection when the burst is constructed on good-quality subchannels. Therefore, these unused slots can be further utilized by the other bursts if the algorithm extra considers the requested bandwidth.
3. Problem statement
This section first defines a number of used notations and formally states the problem of the two-dimensional downlink burst construction.
A two-phase bandwidth allocation is used, as described in Section 2.1. Let Call be the set of all downlink connections, and let L be the number of all downlink connections, i.e., L=|Call|. In addition, let Ci represent the i th connection after flow scheduling. Ai and Wi denote the number of slots allocated by the flow scheduler and the requested bandwidth for Ci , respectively. Although the flow scheduler estimates Ai according to the requested bandwidth Wi , it also considers several other factors when performing this estimation. Thus, the throughput provided by Ai may be lower than Wi because the flow scheduler does not allocate sufficient slots in the current downlink subframe. Conversely, the throughput provided by Ai may exceed Wi because the burst allocator constructs the burst in an excellent block.
A two-dimensional matrix R represents the used MCSs on different subchannels for each connection in order to investigate the effects of subchannel diversity, where R(i, j) specifies the MCS used by Ci on the j th subchannel. A downlink subframe is composed of M×N slots, where M is the number of subchannels and N is the number of slots within one subchannel.
A downlink burst can be represented as a rectangle with a height-width pair placed on a starting slot; i.e., a downlink burst B = [(y, x),(h, w)], where (y, x) and (h, w) represent the starting slot and the height-width pair, respectively. Let Bi be the downlink burst constructed for Ci . In addition, let NOSi and MCSi denote the number of occupied slots and the MCS adopted by Bi , respectively. Thi is the throughput achieved by connection Ci , and its value is min(NOSi ×MCSi ,Wi ), where NOSi ×MCSi is the bandwidth that can be supported by Bi . When the value of NOSi ×MCSi exceeds the requested bandwidth Wi , connection Ci only requires Wi to transmit its data; therefore, the effective throughput is Wi . All used notations are listed in Table 2.
3.2 Problem and Issues
Problem statement: Given a downlink subframe of M×N slots, the set of Call (all Ci, Wi , and Ai ), and the MCS matrix R, construct all Bi to maximize the overall throughput .
Inefficient bandwidth usage must be eliminated to solve this problem. The following issues must be carefully considered when designing a downlink burst construction algorithm.
1. External fragmentation
A downlink burst with a rectangular shape may cause external fragmentation. External fragmentation refers to the division of available slots into small pieces that cannot meet burst requirements. Figure 3a shows an example of a connection C1 with A1 = 12 slots. The burst B1 cannot be constructed because the free bandwidth was divided into pieces that were too small to accommodate B1, although the total free bandwidth was sufficient for A1.
2. Internal fragmentation
The number of occupied slots, NOSi , must equal the allocated number of slots, Ai , for any connection Ci . However, the throughput provided by Ai may exceed Wi when the burst Bi is constructed in an optimal block and thus, has an excellent MCSi. This causes internal fragmentation, which means that only some slots within a burst are used to transmit data, and the remaining are wasted. Figure 3b shows an example of internal fragmentation in that C1 only uses ten slots to transmit data, and the remaining two slots are wasted.
3. Optimal block exploration
The SS experiences various levels of SNR on different subchannels resulting from variable noises on each subchannel. The burst must be constructed in its corresponding optimal block, i.e., a block in which a number of continuous subchannels have excellent SNRs, and thus, it can use a satisfactory MCS. Thus, if the burst constructer constructs each burst on its corresponding inferior-quality subchannels and uses a low MCS; the bandwidth is inefficiently used. An example of optimal block exploration is shown in Figure 3c, in which the throughput of C1 is low when B1 is constructed in an inferior block (i.e., subchannels 1, 2, and 3), whereas the throughput is high when B1 is constructed in an optimal block (i.e., subchannels 5 and 6).
4. Best corner-oriented algorithm
BCO not only complies with the downlink burst structure specified in IEEE 802.16 standards, but also considers the issues discussed in Section 3.2. To avoid external fragmentation, BCO maintains all free slots as a continuous area by constructing each burst in the corner. To minimize internal fragmentation, BCO expands the burst by one slot height in steps. At any step, if the throughput of the constructed burst exceeds the requested bandwidth, the burst is large enough and is not further expanded, even when the number of occupied slots is smaller than the number of allocated slots, i.e., NOSi <Ai . To explore an optimal block, BCO constructs a virtual burst in various corners, and subsequently selects the best corner in which the burst provides the largest throughput.
4.1. Definition of corners
BCO avoids external fragmentation by constructing a burst starting from the corner and limiting it by the bounded width and height. The corner, bounded width, and bounded height are formally defined as follows: given the available bandwidth area before constructing the i th burst, the edge set, Ei , surrounding this area in a counterclockwise order is defined by , where and are the j th horizontal and vertical edges, respectively. The corner, is defined as an available slot, which is the intersection of and left-hand vertical edge of . The corresponding bounded width and height are defined as and , where and denote the lengths of and , respectively. Therefore, constructing a burst in the corner indicates that one of the vertices of the burst lies in , and the width and height of this burst are restricted by and , respectively. Figure 4a demonstrates that three corners are located on slot(0,4), slot(3,0) and slot(7,0) at constructing the i th burst, and their corresponding (height, width) pairs are (3,4), (5,4), and (5,8), respectively. Figure 4b presents an example of constructing burst Bi in the .
Lemma: Provided with a downlink subframe of M×N slots and number of connections, L, the available bandwidth area is continuous if each downlink burst is constructed in the corner.
Proof: Mathematical induction is applied to prove the claim. For L = 1, which indicates that only one burst is required to be constructed, the free slots are maintained as a continuous area after this burst is constructed in and limited by and .
Suppose that all free slots are maintained as a continuous area when L = s. When L = s + 1, the (s + 1)th burst is constructed in one of the corners (i.e., ) and limited by the corresponding and . Constructing burst in maintains this burst adjacent to other constructed bursts. In addition, limiting the burst by prevents the horizontal division of the continuous free bandwidth area. Conversely, constructing burst in and limiting it by prevent the vertical division of the continuous free bandwidth area. Consequently, the free slots, after constructing the (s+ 1)th bursts, are not divided and are, therefore, maintained as a continuous area. Thus, by the mathematical induction, the available bandwidth area is always a continuous area.
4.2. Burst construction
BCO minimizes the internal fragmentation by exploring the optimal height-width pair of the burst constructed in the selected . The optimal height-width pair indicates that the burst with this pair provides the optimal throughput or the smallest area. To obtain the optimal height-width pair, BCO repeatedly constructs a temporary burst, Btmp, with a possible height-width pair and calculates the throughput that this burst can provide. The steps are listed as follows:
Initialization: h = 1// set initial height
Step 1: Determine the width w for h by considering Ai, Wi, and the width .
Step 2: Btmp =[(y, x)(h, w)], where . In addition, calculate the throughput of Btmp.
Step 3: Record the optimal burst with the optimal height-width pair obtained thus far.
Step 4: h = h + 1;
If , go to step 1.
When the loop ends, provides the optimal throughput among all Btmp virtually constructed in .
In Step 1, Ai and Wi were used to calculate the width when the height was given, to alleviate internal fragmentation. BCO first calculated the width w1, where (w1×h) was equal to the allocated slots Ai . BCO calculated the width w2 that the throughput provided by the burst (w2×h) to satisfy the requested bandwidth Wi . Subsequently, BCO used the minimum of w1, w2, and as the width. This is because if w2 is the minimum, constructing a burst with a larger width w1 will exceed the requested bandwidth, resulting in internal fragmentation. In addition, , as the minimum, indicates that the available bandwidth area located in this corner with the height h is insufficient to accommodate a burst with Ai slots. Therefore, the burst should be shrunk by using as its width. The exact calculations of w1 and w2 are described in the following section.
Furthermore, examining each possible height of a burst can avoid the phenomenon of throughput anomaly. The throughput anomaly indicates that a burst with a large height may anomaly cause lower throughput than a burst with a small height when the burst with a large height uses an inferior MCS. Figure 5 shows an example in which the throughput provided by the burst B(h = 3), referring to the burst with height 3, is considerably lower than that provided by the burst B(h = 2) because B(h = 3) used an inferior MCS, although B(h = 3) is larger than B(h = 2). In this case, a burst with a small height that provides large throughput should be constructed to avoid slot waste.
4.3. Pseudo code of the BCO algorithm
Figure 6 shows the pseudo code of BCO. To construct burst Bi for each connection Ci , BCO first uses the FindCorner function to obtain CRList, which contains the corners from the available bandwidth area. The FindCorner function returns the CRList by examining the horizontal and the vertical edges of the available bandwidth area. BCO subsequently explores the optimal corner by virtually constructing the burst in each corner to address the optimal block exploration (line 6-13), i.e., BCO repeatedly invokes the ConstructBurst function to virtually construct a burst in the corner . BCO subsequently compares with to determine which is superior, i.e., which has higher throughput or which occupies the fewer slots under the same obtained throughput. If is superior, BCO sets to . After virtually constructing all and obtaining the best burst , BCO constructs Bi as .
The ConstructBurst function searches for the optimal height-width pair of the burst constructed in the chosen corner to minimize the internal fragmentation. Initially, the ConstructBurst function records (hmax,wmax) as the bounded height-width pair (line 18). The ConstructBurst function subsequently examines each possible height-width pair in lines 20-27 and returns the burst with the optimal height-width pair. In addition, when determining the width of the Btmp for each height h, w1 is calculated by , where ⌊⌋ denotes the floor function, to ensure that the (w1×h) slots do not exceed the allocated slots (i.e., Ai ). Conversely, w2 is calculated by , where ⌈⌉ denotes the ceil function, to ensure that the burst with (w2×h) satisfies the requested bandwidth requirement (i.e., Wi ). The function FindMCS(i,j,h) calculates the MCS used by the burst located in the corner j with the height h.
BCO evaluates the burst constructed in each corner by the NOSCal, MCSCal, and ThCal functions. The NOSCal(B) calculates the number of occupied slots for a burst B, and MCSCal(i,B) and ThCal(i,B) calculate the used MCS and achieved throughput of a constructed burst B for Ci , respectively. According to the definitions, for a specific burst, B=[(y,x),(h,w)], where (y,x) is the location of the starting slot and (h,w) is the height-width pair, NOSCal(B) and MCSCal(i,B) return h×w and , respectively, and ThCal(i,B) returns min(NOSCal(B)×MCSCal(i,B),Wi ).
BCO applies a saving variable to efficiently use the unused allocated slots of each burst to improve throughput. This is because the flow scheduler usually allocates the total number of slots of the downlink subframe to each connection, indicating that the sum of all allocated slots equals the total number of slots in the downlink subframe. In this case, even when satisfying the requested bandwidth by fewer slots to avoid internal fragmentation, the saved slots are still not utilized. Therefore, BCO uses saving to record the number of total saved slots to allow subsequent bursts to use the saved slots conserved from the previous bursts. As shown in line 12, the unused slots after constructing Bi , i.e., Ai -NOSCal(Bi ), are added to the parameter, saving. Subsequently, the latter connection Ci+1 has Ai+1 +saving slots to construct Bi+1, as shown in line 21. Therefore, each burst not only uses its own allocated slots, but also applies the additional saving slots to fulfill its required bandwidth. The use of this parameter prevents two unfavorable phenomena, as follows: the waste of unused slots internal to the bursts constructed on optimal subchannels and the bandwidth dissatisfaction of connections whose bursts are constructed on inferior subchannels. Thus, this approach enhances the total throughput.
4.4. Time complexity analysis
The time complexity of BCO is calculated as follows: because the FindMCS, NOSCal, MCSCal, and ThCal functions can immediately provide their calculated values, their time complexities are O(1). The FindCorner function executes a loop to examine each subchannel, therefore, this function requires complexity of O(M). The ConstructBurst function requires the complexity of O(s), where s is the average number of loops to evaluate each possible height-width pair. BCO executes the ConstructBurst function t times, where t is the average number of corners, therefore, the required complexity is O(st). Therefore, the time complexity of BCO at constructing the burst for the i th connection is O(M)+O(st)+O(s)+O(1). The time complexity of BCO for all connections is easily obtained as follows:
Because t and s are always less than or equal to M and the average number of occupied slots, u, respectively, the time complexity of BCO becomes
However, the sum of occupied slots for all bursts does not exceed the total number of slots in the downlink subframe, i.e., , therefore, the time complexity of BCO is O(M2N).
Simulations were performed to compare the proposed BCO algorithm with eOCSA and WLFF in terms of total throughput and the improvement ratio. The improvement ratio was defined as (TB -TA )/TA , where TB and TA were the throughputs achieved by BCO and by the A algorithm, respectively. The internal and external unused slot ratios of all algorithms were also compared to observe the internal and external fragmentations, respectively. The internal unused slot ratio (IUSR) was defined as USin/TS, where USin is the number of unused slots internal to constructed bursts and TS is the number of total slots within a DL subframe. The external unused slot ratio (EUSR) was defined as USex/TS, where USex is the number of unused slots external to all constructed bursts.
The simulations investigated the effects of requested bandwidth, the number of connections, the channel quality, and the variation of channel quality between subchannels on the total throughput, the improvement ratio, IUSR, and EUSR.
5.1. Simulation model
The simulation environment was an IEEE 802.16 OFDMA system with a 20 MHz frequency band. The numbers of subchannels and symbols for a downlink subframe were set to 60 and 24, respectively. Thus, 1 subchannel had 12 downlink slots, and 1 downlink slot occupied 2 symbols. According to the received SNR, various MCSs were used, including QPSK1/2, QPSK3/4, 16QAM1/2, 16QAM3/4, 64AQM2/3, and 64QAM3/4 .
To simplify the simulation scenarios, each SS had only one downlink connection. All connections applied the same service class and QoS parameters because this study focused on total throughput. Therefore, the comparisons were conducted on the fair basis to measure the total throughput, although the issues of QoS were not considered. The SNR on each subchannel received by the SS followed the normal distribution, and the arriving traffic of each downlink connection followed the Poisson distribution. The default setting in the simulation was 20 downlink connections with an 800-kbps arriving data rate. The mean SNR of the subchannels received by each SS was set to 15 db, and the standard deviation was set to 5 db.
The flow scheduling used in the simulation was the algorithm with channel quality awareness and QoS guarantee (CQQ) , which is reportedly superior to other approaches. The CQQ applies a weighted fair queuing (WFQ) strategy to allocate total number of slots in the downlink subframe to each connection according to its assigned weight. The connection with higher average transmission rate and larger requested bandwidth is assigned a higher weight. The following discussion refers only to the results using CQQ because we conducted several previous simulations using various flow scheduling approaches and obtained similar results.
5.2. Average requested bandwidth
To investigate the effects of average requested bandwidth on total throughput, the arrival data rate was varied from 100 kbps to 1 Mbps. Figure 7a shows the total throughputs achieved by eOCSA, WLFF, and BCO. BCO outperforms eOCSA and WLFF on throughput because of two main reasons. First, eOCSA and WLFF often construct bursts with inferior MCSs because they do not consider subchannel diversity, and therefore, fail to address optimal block exploration. Second, internal fragmentation may occur using eOCSA and WLFF because they do not consider the requested bandwidth during burst construction.
eOCSA and WLFF cannot achieve the targeted bandwidth (200 kbps × 20 connections = 4 Mbps), even when the traffic is light, i.e., the requested bandwidth is smaller than 200 kbps. This occurs because the burst Bi has some unused free slots if the requested bandwidth is satisfied by fewer slots than Ai when Bi is constructed on high-quality subchannels and uses an optimal MCS. In this situation, eOCSA and WLFF does not shrink the area of Bi and, therefore, cannot release the unused slots to other bursts. In addition, eOCSA and WLFF may construct bursts on the subchannels with unacceptable channel quality, and thus, cannot use any suitable MCS to transmit data because they do not consider subchannel diversity. Consequently, all slots internal to the burst are invalid. Thus, several unused slots are wasted, as shown in Figure 7c, and cannot achieve the targeted bandwidth.
BCO alleviates internal fragmentation by shrinking the number of occupied slots. Figure 7c demonstrates that BCO experiences a maximum of 1.6% IUSR. The saved slots can be used by the following unconstructed bursts with insufficient allocated slots. In addition, BCO constructs a burst in the optimal corner to avoid external fragmentation and to explore an optimal block. Thus, it achieves a superior throughput than eOCSA and WLFF. Figure 7a,d reveals that, when the requested bandwidth is less than 700 kbps, BCO achieves the targeted bandwidth with fewer slots, and thus, owns higher EUSRs, because the constructed shrunken bursts already provide sufficient bandwidth, i.e., THCal(i,Bi )=Wi . However, the EUSR decreases when the required bandwidth increases because more slots are required to fulfill the increasing required bandwidth.
Although the requested bandwidth increases, the throughput should become stable when most slots are used (requested bandwidth exceeds 700 kbps for BCO). However, in this case, the situation is not actually saturated and their throughputs slightly increase, because, although most slots are used, the burst generally satisfies its requested bandwidth by fewer slots when using an optimal MCS and leaves the unused free slots of the allocated slots to other bursts that use inferior MCSs, i.e., the minority of slots in the downlink subframe use optimal MCSs, and the majority use inferior MCSs. The area of the burst using an optimal MCS increases in conjunction with the bandwidth to satisfy the requested bandwidth, and the unused slots, which are left to other bursts with lower MCSs, decrease. Consequently, more slots in the downlink subframe use optimal MCSs and fewer slots use inferior MCSs. Therefore, the throughput slightly increases. However, a saturated condition is eventually achieved when most slots are efficiently used. Some of the bandwidth area with inferior channel quality remains unused (approximately 10%) even when the traffic load is heavy, as shown in Figure 7d, because BCO shrinks the bursts to prevent throughput anomaly and achieves higher overall throughput, as explained in Section 4.2.
Figure 7b demonstrates that the improvement ratios of BCO increased in conjunction with the requested bandwidth because eOCSA and WLFF reached a saturated condition, whereas BCO did not reach a saturated condition. Under the heavy load of 1 Mbpps, BCO achieved 2 and 9 times the throughput achieved by eOCSA and WLFF, respectively.
5.3. Number of connections
The effects of the number of connections on the total throughput were also investigated. The number of connections was varied from 10 to 50 with the same overall data arrival rates, i.e., 16 Mbps. Figure 8a reveals that the total throughputs of BCO, eOCSA, and WLFF increased in conjunction with the number of connections. Under the same overall data rate, the larger the number of connections, the smaller the bandwidth requested by each connection and the smaller the area of each burst. A burst with a smaller area provides all algorithms with more opportunities to construct bursts on high-quality subchannels. It also enables all algorithms to decrease the numbers of unused slots internal and external to the bursts, as shown in Figure 8c,d, respectively, resulting in the increase of the throughput. Figure 8b demonstrates that, the smaller the number of connections, the larger the improvement ratios achieved by BCO, because, when the burst is larger, eOCSA and WLFF are more likely to construct this burst on low-quality subchannels, whereas BCO attempts to avoid this problem.
5.4. Channel quality
The effects of the channel quality on the total throughput were investigated. In this simulation, the mean SNR of the subchannels received by each SS was varied from 10 to 20 db, and the standard deviation was maintained at 5 db. Figure 9a reveals that the total throughputs of BCO, eOCSA, and WLFF increase because a high mean SNR provides bursts with more opportunities to use better MCSs. Figure 9b demonstrates that the improvement ratios of BCO decreased as the channel quality increased. Two main reasons were determined for this occurrence. First, eOCSA and WLFF did not consider subchannel diversity, and thus, failed to address optimal block exploration. Therefore, the increase of throughput was caused by the higher channel quality. However, because BCO considered optimal block exploration, it achieved satisfactory throughput, even when the mean SNR was low. Therefore, as the mean SNR increased, the increasing slope on throughput in BCO was smaller than that in eOCSA and WLFF. Second, when the mean SNR increased, the larger throughputs achieved by eOCSA and WLFF lowered the improvement ratios obtained by BCO.
Figure 9c indicates that a high mean SNR provided fewer opportunities for eOCSA and WLFF to construct bursts on the subchannels with unacceptable channel quality, thereby causing a decreased in the IUSRs of eOCSA and WLFF. Conversely, Figure 9d indicates that the EUSRs of all algorithms remained stable, even as the mean SNR increased, because the overall required bandwidth and the number of connections were fixed.
5.5. Variation of channel quality
The effects of variation of the channel quality between subchannels on the total throughput were investigated. In this simulation, the mean SNR of the subchannels received by each SS was maintained at 15 db, and the standard deviation was varied from 0 to 10 db. Figure 10a reveals that BCO surpassed eOCSA and WLFF when the standard deviation was 0, i.e., all subchannels had the same channel quality. In this case, eOCSA and WLFF generated internal and external fragmentations; however, BCO alleviated these problems, as shown in Figure 10c,d, respectively.
In addition, Figure 10a demonstrates that the total throughputs of eOCSA and WLFF decreased considerably as the standard deviation of the SNR increased, whereas that of BCO changed slightly. Consequently, the improvement ratio of BCO increased considerably, as shown in Figure 10b. The numbers of subchannels with optimal SNRs and subchannels with inferior SNRs increased in conjunction with the standard deviation of the SNR. Because one burst only uses a MCS based on the worst SNR of all assigned subchannels, eOCSA and WLFF do not consider the channel quality and will construct the bursts on the subchannels with inferior or unacceptable SNRs, resulting in a high IUSR (Figure 10c) as the standard deviation of the SNR increases. However, in this case, the throughput of BCO decreased slightly because it considered optimal block exploration at constructing bursts. Figure 10d reveals that the EUSR of BCO slightly increased in conjunction with the variation of the channel quality.
6. Conclusions and future studies
The characteristics of the IEEE 802.16 wireless communication cause considerable difficulty in burst construction. The proposed BCO algorithm maximizes the throughput during downlink burst construction for each connection. BCO not only complies with the downlink burst structure specified in IEEE 802.16 standards, but also considers the issues of external fragmentation, internal fragmentation, and optimal block exploration. Compared to our previous study, which focused on constructing the uplink burst with a multi-rectangular shape , this study designs BCO for constructing the rectangular downlink burst, provides verification that BCO maintains united available bandwidth during burst construction, and compares it with other downlink burst construction algorithms in terms of total throughput, IUSR, and EUSR.
The simulation results confirm that BCO provides higher throughputs compared with eOCSA and WLFF. At the heavy load of 1 Mbps, BCO achieved 2 and 9 times the throughput achieved by WLFF and eOCSA, respectively. In addition, the improvement ratios achieved by BCO increased in conjunction with the requested bandwidth, as the number of connections decreased, and as the channel quality improved. In addition, the performance of BCO changed slightly when the channel quality between subchannels became more diverse, whereas that of WLFF and eOCSA decreased considerably, thereby causing an increase in the BCO improvement ratio.
This study used a two-phase bandwidth allocation architecture and focused on the phase of burst construction to maximize the throughput. However, the QoS violation ratio can be minimized if the burst constructor informs the flow scheduler of the results of burst construction, such as unused slots and unfulfilled requested bandwidth. The feedback information will help the flow scheduler to assign an accurate number of slots for each connection. In the future, we will investigate a feedback mechanism for the burst constructer and the scheduling mechanism for the flow scheduler. In addition to maximizing the overall throughput, QoS support is also a crucial topic. Thus, enhancing BCO with supporting QoS is the focus of our future studies.
aFree bandwidth and available bandwidth are interchangeable in this article.
IEEE 802.16 Working Group, DRAFT standard for local and metropolitan area networks--part 16: air interface for broadband wireless access systems IEEE P802.16Rev2/D1 2007.
Einhaus M, Wolz B, Walke B: The influence of subchannel diversity on the performance of OFDMA systems based on IEEE 802.16. Proc IEEE International Conference on Circuits and Systems for Communications 2008, 20-24.
Sheu S-T, Yang C-C, Chang H-S: A dynamic frequency allocation scheme for IEEE 802.16 OFDMA-based WMANs using Hungary algorithm. Proc Conference on Emerging Direction in Embedded and Ubiquitous Computing 2007, 205-214.
Najeh S, Besbes H, Bouallegue A: Greedy algorithm for dynamic resource allocation in downlink of OFDMA system. Proceedings of the 2nd International Symposium on Wireless Communication Systems 2005, 475-479.
Lai Y-C, Chen Y-H: A channel quality and QoS aware bandwidth allocation algorithm for IEEE 802.16 base stations. Proceedings of the 22nd International Conference on Advanced Information Networking and Applications 2008, 472-479.
Erta A, Cicconetti C, Lenzini L: A downlink data region allocation algorithm for IEEE 802.16e OFDMA. Proceedings of the 6th International Conference on Information, Communications & Signal Processing 2007, 1-5.
Zubow A, Mur DC, Costa XP, Favaro P: Greedy scheduling algorithm (GSA)--design and evaluation of an efficient and flexible WiMAX OFDMA scheduling solution. Comput Netw 2010, 54(10):1584-1606. 10.1016/j.comnet.2010.01.004
Open Access This article is distributed under the terms of the Creative Commons Attribution 2.0 International License (https://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.