E-MAC: Self-Organizing 802.11-Compatible MAC with Elastic Real-time Scheduling Imad Aad, Philipp Hofmann, Luis Loyola, Farhan Riaz, Jorg Widmer DoCoMo Euro-Labs lastnamegdocomolab-euro.com Abstract To overcome the lack of strict QoS guarantees in existing hotspots, in this paper we present a system for realtime traffic support in 802.11 networks that works in either infrastructure or ad-hoc mode. The proposed mechanism, called elastic MAC (E-MAC) protocol, helps stations with real-time traffic to organize and establish a transmission schedule in a distributed manner, while coexisting with standard 802.11 stations. This distributed scheduling guarantees very short delays and a minimum reserved data rate for real-time stations, while protecting best-effort 802.11 traffic from starvation. Another feature of our mechanism is time-slot reuse, which improves the network efficiency by allowing other real-time stations to take over unused slots (e.g., in case of using voice codecs with silence suppression). We evaluate the performance of our system using a testbed implementation, ns-2 simulations and a mathematical model, and show how it outperforms other QoS schemes (e.g., 802. le) in terms of throughput, delay, andjitter. 1. Introduction network m o e sed,manyof Thecatmore peopll used wirelesstem themrequirinq pliction wil be rquirng qalit of service (QoS) guarantees (e.g., VoIP / 802.11 / dual mode cellular phones). However, the more the wireless channel gets occupied, the tougher it becomes to provide those guarantees. Throughout the literature several approaches to provide QoS support can be found. They can be split into two statistical guarantees and strict guarantees. types: Statistical guarantees are usually based on contention among competing stations to access the channel, such as in 802.1 le [7]. High priority traffic/stations are assigned A TF .backhi,-riorit chne (ep AIFS, .k high-priority channel *cesaccess naaeeparameters (e.g., off to gra th chne m re ofe tha th lo-pioit traffic/stations. On the one hand theses approaches are rela____________________ 1-4244-1455-5/07/$25.OO ®) 2007 IEEE tively simple, making them easy to implement, deploy, and manage, therefore boosting their success in the market. On the other hand the guarantees they provide are statistical, still causing some problems for certain QoS requirements. Strict guarantees are based on reservations (e.g., 802.11 infrastructure PCF mode [6], TDMA). The reservations can be easily tailored to the needs of particular QoS applications. However they are very complex to implement and manage, which has hindered their deployment. Besides the drawback of implementation complexity, strict guarantees rely on "medium reservations" that are often done on a periodic basis: a given station reserves the channel for transmitting (P bytes) every T seconds. However this periodicity does not match the real-time traffic pattern from the data sources. Consider for instance voice traffic, where the communication channel is typically idle 1/3 of the time. Several voice codecs, e.g., the ITU-T G.711 ,u-Law codec [8], tend to optimize bandwidth usage by applying "silence suppression", leaving several reserved timeslots empty. One may try to adapt the period of the slot reservation to the voice codec pattern to optimize bandwidth efficiency, or to reduce delays but never both at a time, i.e. there is a compromise between reducing the delay, and increasing the efficiency. To reduce the packet delay, short slot intervals must be used but for an over-provisioned reservation most of the reserved slots will be empty, therefore drastically reducing the efficiency, i.e.,ofthe ratio of the used stsaover the er timeslts Hvin the above problems imi wdiaes ticM (b-MC protocol to p ind,es Qos gantees to real-time traffic, with "flexible" or "elastic" reservations to perform empty-slot reuse. An alternative option would in 802.1 1 infrastructure point ~ coor ~ ~ ~to~ ~ optimize ~be tion thetioscheduling (cF) mode. T t acce point i(AP) polls every staion before transmssion, c polls the next t transmission, oportunnxty station in the list if one skips itS transmission opportunity. The rest of the "period", based on contention rather than on polig is' ofee fo etefr rfic oee,n rd ~~~~~uct that uses the 802.11 infrastructure PCF mode can be found in the market, due to its implementation complexity. station ieli e To fill this gap and offer good QoS guarantees for real-time traffic we design our protocol that meets the QoS requirements for strict guarantees and empty-slot reuse, in both infrastructure and ad hoc mode. We implement it in a real testbed, while keeping it compatible with existing 802.11 networks and already deployed hotspots. The paper is organized as follows. In Section 2 we present the design goals and the system model in detail. In Section 3 we present the performance evaluation testbed setup, the mathematical model and the simulation setup. The performance results are shown in Section 4. We discuss in Section reld various issues and future work in Section 55 and the related work in Section 6. We conclude the paper in Section 7. vaeperiousrisuande fsultureworkn the same frame get BE priority (to contend fairly with BE traffic). Such packets are denoted as best-effort real-time (BE-RT). * To deal with frame and schedule synchronization among nodes, without requiring any changes at the AP, a"maestro"stationtransmitsperiodicreservedaccess markers (RAM). Toke -A akadcmail,i sdsge such that there are absolutely no requirements to change the 802. 11 stations that coexist with the real-time stations. andWthe 2.1. Self-organizing Setup Phase 2. System Description Before a real-time station starts transmitting real-time packets, it overhears the channel for a given duration of time. If it does not receive a RAM during this time, it is the first station starting a real-time session. We refer to this station as the maestro station for the remainder of this paper. We consider a network with n stations among which nhrt have real-time (RT) traffic to transmit, using our protocol, and nhbe= n - nrt are legacy 802.11 stations with besteffort (BE) traffic. All n stations are in the same collision domain, contending for access to the channel. Without loss of generality, we consider that all transmit to a common destination, e.g., the AP of a hotspot. However, one can also use the protocol without changes in an ad-hoc, single collision domain network. The basic components of E-MAC (Fig. 1) are the following, required from real-time stations only (e.g., A, B, C and D in Fig. 1): A B C 0D BE/BE-RT A B 2.1.1. Maestro Station The maestro has to broadcast a RAM packet every T to indicate the start of a new round for all RT stations in a synchronous way. The RAM is sent with high priority, i.e., after SIFS Short Inter Frame Space and a backoff of one IEEE 802.1 l time slot tslot (SIFS = I Os and tslot = 20,s for 802.1 lb). The maestro continously overhears the chan- Time 1 Round (RAM interval) Figure 1. Conceptual model * To get guaranteed access priority, real-time stations must establish a transmission sequence among themselves in a distributed manner. . To avoid colliding with BE (802.11) stations, real-time tn stations transmit stastationsbibob the channel by having higher access priority. beforeranBe(2 * To reuse empty reserved slots (e.g., when using voice codecswith silence suppression), when a real-time sta-~ codecs with silence stasuppression), tion skips a reserved transmission slot (B in Fig. 1), its successor(s) take over the slot, making more space for BE stations. * To preserve fairness among RT stations and to protect BE traffic from starvation, a RT station uses only one high priority slot in a given interval (that we call "Round"). Additional RT packets from that station in nel to notice when new real-time stations join. Packets of real-time stations are identified by the IP ToS (type of service) field. Hence, the maestro can maintain a table of all active real-time stations, including their MAC address, sequence number i (explained in Subsection 2.1.2) and transmission time required for their real-time packets. Additionally, the time of the last real-time packet transmission of the respective station is stored. Note that other stations should also maintain such a table in case they become the maestro (see Section 2.4). The maestro broadcasts information about the total number of real-time stations nrt and the total time ttot required for transmitting all real-time packets If all transmission per roundpackets, thetotal RAM. real-time stations throughthe time transis (cf. mit their required Fig. 2): ~~~~~~~~~~~~~ \ DATA RAM ACK ||SIFS |DATA, | DATA, | g tS,o (deterministic backoff) W t5,o (random backoff) DATADIES BE Figure 2. Basic system model ___________ 1This can be added to the AP's beacons if the AP is made E-MAC compliant. 2.2. Slot Reuse, Backward Compatibility ttot (2nrt + 1) SIFS + (nrt + 1) tSlot + nrt tack + tram + tdata,i tk t Once a real-time station has (sent or) received a RAM, (1) The transmission duration of RAM (tram), data packets (tdata,i), and ACK (tack) depends on the current channel rate and thus may vary. How to cope with variable data transmission times, different data rate requirements and mobility is discussed in Section 5. To maintain compatibility with conventional 802.11 devices, the RAM is a normal 802.11 data frame with specific information in the payload. It is not acknowledged by other stations as it is transmitted using MAC layer broadcast. Conventional stations are not aware of the notion of the rounds and RAMs and may not finish their packet transmission before the end of a round, thus overlapping the next one by time period of AT. In this case, the maestro would send the RAM with a delay AT and schedule the next RAM after duration T - AT (shortening the BE traffic period) to compensate for this delay, keeping the average round duration T constant. This however means that the complete round T can not be used exclusively for real-time transmissions. Therefore, a fraction tguard must be kept unreserved to allow for those overlaps and the reduction of time available for RT traffic in the round. In the worst case, a best-effort station starts sending a data packet shortly before the end of the round. Hence, tguard should be set appropriately depending on the channel rate, maximum packet size, and T. 2.1.2. Sequence Establishment and Admission Control If a real-time station wants to join and is not the maestro, it first has to check whether sufficient transmission time in T is available to accommodate its real-time packets. If ttot +tguard +2 SIFS+tslot +tack+tdata < T, the real-time station may join. Otherwise, it has to refrain from transmit- ting real-time packets, contending instead using BE priority. Thmetr assqune ube Time saetiojin obtainsi 1,me2,...)nbyosimplyningobtain n ne se. quene ownetotheq nwrel nubewre number t' t = I1,2, .... .) by simply adding one to the total number (i of real-time stations nrt previously advertised by the maestro in the RAM. A real-time station with sequence number selects a non-random backoff tim tback,i ( - 1)X (i f electsrealnon-timerackt bachootin scribedtwayresultsmeinpac thbackoff In theot d = transmsin aonfseenche,aode- scribed way results in a given given transmission sequence, avoid' is. a ing collisions among real-time stations. However, there small probability that two stations join at the same time and hence select the same backoff. This would though result in a collision (detected by absence of an ACK). To resolve this conflict, the two colliding stations wait for a duration r T (r being a random integer number, e.g., between 1 and 10) before trying to join again. it is allowed to transmit one real-time packet. If a real-time packet is already waiting in the buffer upon receiving the RAM, the real-time station starts decrementing its backoff after the channel gets idle for AIFS (= SIFS + tslot) time. If another real-time station is transmitting, the backoff is frozen until the channel becomes idle again. Hence, if all real-time stations have a packet in their buffer upon receiving the RAM, any two consecutive real-time packets are being transmitted with an idle time of AIFS between them. This case is illustrated in Fig. 2. In case a real-time station has no packet ready upon receiving the RAM, it skips its turn. The subsequent station in the sequence will then transmit next with an idle time of AIFS+tslot after the previous transmission. Generally, if k consecutive stations refrain from transmitting a RT packet after the RAM, the idle time between two packets becomes AIFS+k tslot. This idle time might be longer than the DIFS of legacy 802.11 stations for large k (or nrt) resulting in possible collisions between RT and BE stations. To avoid this, all real-time stations except the one with the highest sequence number set the duration field in their packets to 2 SIFS + tack + (nrt + 1) tsiot, which in turn sets the Network Allocation Vector, NAV, of legacy 802.11 stations. The last RT station in the sequence announces a duration (for the NAV of legacy 802.11 stations) of SIFS+tack. Hence, best-effort stations will refrain from transmitting until all real-time stations with buffered packets have transmitted. Also, the duration field needs to be set in the RAM to SIFS+(nrt + 1) tslot. The duration field is ignored by realtime stations. among RT Stations Stations may receive real-time packets from the application layer at any time during a "round". The first packet of a given station is assigned high priority, as described before. However if a second packet of the same station arrives dur. i~~~~~~~~~~~~~~~ng i the same round, it iS either queued until the next round or contends as BE (as illustrated in Figure 3). We refer to such "degraded" packets as BE-RT packets in the rest of the paper. Upon hearing a new RAM, a station with a waiting BE-RT packet "promotes" it back to high priority to be trnmteinheRprodPooigBETpakshs in the RT period. Promotingg BE-RT packets has ~transmitted the advantage of: * Avoiding that packets of the same flow get reordered at the MAC layer. * Not delaying RT packets in the queue waiting for a BE-RT packet to get transmitted. RAM U DATA, | DATA, DIFS[A|g:: | BE T DATA, DIFS BE CWmax AIESCWmin(DIES) /IZ B Figure 3. Real-time transmission during besteffort phase |Traf. type Station ID 1 2 3 xx 1 2 3 xx 1 2 3 xx "E-MAC" 802.1 1 e For simplicity we assume that RT stations are allowed to transmit only one RT packet per round. Extra RT packets are "degraded" to BE-RT priority to compete equally with 802.11 stations. The general case of different stations with different RT traffic requirements is discussed in Section 5. Stations can have (unrestricted) BE traffic sources in addition to RT traffic sources, in which case the two traffic types should be managed separately by two different queues. However, this scenario is out of scope of the paper. 2.4. Releasing Reservation If a real-time station has finished its session, the previously reserved resources must be released. If a station has not transmitted a real-time packet for a duration I T (I being a predefined integer number valid for all stations, e.g., 100), the maestro supposes that it has finished its real-time session. The maestro then informs the other real-time stations about this fact in the next RAM together with the sequence number of the station that has left. Then, all real-time stations with a higher sequence number can decrement their non-random backoff by one. If a station has not transmitted a real-time packet for more than I T although it has not finished its real-time session yet, it has to re-join as described in Section 2.1 before transmitting the next real-time packet. Alternatively, it might send keep-alive messages (real-time packets without payload) with an interval of (I - 1) T during its inactive period. In case the maestro wants to finish its real-time session, it adds the number of remaining RAMs it will still broadcast to the last j (e.g., 10) RAMs. Thus, other real-time stations know when they have to decrement their sequence number. Furthermore, the real-time station with sequence number two then knows when it has to take over the role of the maestro. In the event of sudden maestro disconnection (e.g. mobility), one can easily adapt the scheme using timeouts. Due to space constraints, the analysis of such scenarios was kept out of scope of this paper. 3. Performance evaluation We evaluate the performance of our protocol by means of testbed implementation, mathematical analysis and ns-2 Real-time BE Real-time BE Real-time BE 802.1 1 g 1 3 5 0 0 0 -3 2 2 0 0 0 15 7 7 128 | 1023 Figure 4. AIFS/DIFS, CWmin and CWmax values used for the performance comparison simulations. Since the number of stations in our testbed is limited (6 stations + 1 AP), we set the channel capacity to 2 Mbit/s in order to saturate it with a reasonably low number of packets per round. The various inter-frame parameters used for comparing 802.11, 802.1 le, and our protocol (denoted "elastic") are shown in Fig. 4. No RTS/CTS is used in any of the settings. In regard to the packet delay computation, the buffer size B used is 50 packets throughout the evaluations. 3.1. Mathematical Analysis As the real-time stations are also allowed to contend during the best-effort period, the analysis focuses on two periods: a) a real-time period where nrt real-time stations transmit in a TDMA-like way, and b) a best-effort period where all the nrt + nbe stations contend for the channel access (including nrt BE-RT stations). The analysis focuses on the behavior of the network under saturated conditions, i.e., at any time both real-time and non-real-time stations have at least one packet in their transmission buffer. 3.1.1. Throughput Analysis During the reserved real-time period all real-time stations transmit their packets without any contention in a TDMAlike way. Under the assumption of saturated conditions the real-time stations have always a packet to transmit so they also participate in the best-effort period. Hence, all (nrt + nbe) stations participate in the contention during the best-effort period. After the end of the current time frame, any BE-RT packet which could not be sent during the besteffort period is promoted to real-time priority again and transmitted during its corresponding time slot in the real- time period. During the real-time period, as all real-time stations are always transmitting there are no time-slot takeovers and thus the separation between the end point and the start point of any two consecutive data packets is AIFS + t,i0t. Assuming that acknowledgments are transmitted after realtime packets, and that the packet size Pt and the data rate Rrt have the same value for all real-time stations, ttot can be calculated as in Eq. (1). As the time frame has a fixed length T the length of the best-effort period is T - ttot. During the best-effort period, like in previous work [2],[4] it has been assumed that the probability of a packet collision p is constant and does not depend on the number of previous transmissions. Our analysis follows the work based on mean values carried out by Lin et al. [9]. During the best-effort period, the number of transmissions experienced by each packet follows a geometric distribution with probability of success (1 - p). As the contention window doubles in size after every retransmission, the average contention window size W for the nrt + nb, stations is given by: W = (1 p) CWmtin + p (l +p2 (1 -p) 22 CWmin + = CWmIlin(1-P) (1 (2) (1 (I~ 2p) -p) (1 (2p)m±l) CWmin =1I - (I . (3) (3) T)nrt+nbe-1 (4) From (4), T can be also expressed as: T ±SIFS±tack±DIFS±tslot (nrt+nbe+1) The average number of packets from best-effort stations thatfitintothecontention-basedperiodis: Fbe T ); R( 72rt±(2nrt±1) SIFS±()rt±1) tslotthrt tack±tRAM )(7 W pb(,t+nbe+1) ±SIFS±tac,k±DIFS±tslot Rrb Hence, the average throughput for real-time stations reaches: 1 1-(1-p)1/(nrt+nbe-1) Prt Srt (5) Using numerical methods, the probability of collision p can be calculated from (3) and (5), and hence the average contention window W can be obtained from 2. In average, the separation between the end point and the start point of two consecutive packets during the best-effort period is given by SIFS + tack + DIFS + tslot W/ (nrt + nbe + 1) where tack is the time length of an ACK frame. Thus, if the packet size and channel data rate of all best-effort stations are denoted as Pbe and Rbe, respectively, the average number of packets transmitted by real-time stations Frt that can FrtPrt T + b T(nrt+Tnbe) The average throughput for non-real-time stations is: T Sbe The probability that a packet transmitted by a station during the contention-based period collides is equivalent to the probability that at least one of the other stations transmits in the same idle slot and hence it is given by: P ( R rt ±(2mrt±1) SIFS±(nrt±1) tslotthrt tack±tRAMl() + pm (1 -p) 2m CWmin In (2) the parameter m is the maximum number of allowed retransmissions. Consequently, the probability of transmission during the idle time slots of the best-effort period can be calculated as: W Frt p) 2CWm,,in ... (1 - (2p)m±) 12 = 1 I= fit into a single best-effort period is: T(f +be (8) (9) ) 3.1.2. Delay Analysis Since in saturated conditions buffers of both real-time and best-effort stations are full, the average delay for besteffort packets can be calculated based on the average intertransmission period between two consecutive packets from the same best-effort station and the buffer size as: Delaybe = B X 1/(Sbe/Pbe) B T (rt + be) Fbe (10) Similarly, the average time elapsed between two consecutive BE-RT packets transmitted by the same station can be approximated as: Delayrt = B x 1/(Srt/Prt) = B T ((rt + nbe) nrt + nbe + Frt As can be seen in (10) and (11), two consecutive best-effort packets from a given station have an intertransmission period generally greater than the round length T while in case of real-time packets the inter-transmission period is guaranteed to be less than T. The latter feature represents a great advantage for real-time applications since other statistical QoS-guarantee mechanisms as 802.1 le cannot guarantee delay for real-time packets, especially under heavy traffic load. 3.2. Testbed Implementation For the testbed implementation we use 7 Linux laptops with Proxim wireless network cards that use the madwifi driver. One of the laptops is used in AP mode as a sink to the CBR data flows from the other 6 laptops. We use Multi-generator (MGEN) to generate the traffic. For the delay analysis we synchronize all the machines using the Network Time Protocol (NTP). Since the wireless channel is usually overloaded (beyond its capacity), we put the NTP control traffic on cable connections connecting all the stations. Synchronization is made every 1 s, and the resulting time drift is less than 1 ms. Values are averaged over 180second-long tests. sim-Elastic-BE 800 700 sim-Elastic-RT sidm-802.11e-RT--- 600 testbed-Elastic-RT testbed-802.1 le-BE 400 testbed-802. 1 e-RT 3 200 C 100 00 3.3. Simulation Setup ---------- 5 15 10 20 Number of BE stations To evaluate the scalability of our protocol we perform ns2 simulations with the default network configuration cited above. Particular ns-2 and network parameters are as follows: Figure 5. Throughput (per station) with variable number of BE stations * Stations have a transmission range of 250 m * The network area size is 200 m x 200 m, therefore all nodes are within receive range of each other * The channel model is two-ray-ground * The number of RT and BE stations varies according to the scenario in consideration of BE stations increases. Using E-MAC however, RT stations always get 200 Kbit/s throughput independent of the number of BE stations. Testbed and simulations yield qualitatively similar results showing how E-MAC outperforms 802.1 le in providing strict guarantees. 600 * All values are averaged over 400-second simulation runs * We consider a warmup period for the first 70 s, with low traffic load, to make sure all nodes have the ARP entry of the AP. The final measurements do not include this warmup phase. * No routing protocol is used (single hop to the AP) Elastic BE stme80211dERTiE ~~~~~~~~~~~~~~~~~~testbed-Elastic-RT Sim :802.11-BE e-BE \0~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Ssim-802.11 s~~~~~~~~~~~~~~~im-802.1 1e-RT \ te \;, testbed-802.11-RT 400 400 testbed-802.11e BE 300 200 E V X - E --------- 4. Performance Results The performance comparison of 802. 11, 802. 1 1e, and elastic MIAC is performed with three RT stations and a variable number of BE stations or vice versa. RT stations send a packet with 250-byte payload every 10 ms (i.e., 200 Kbit/s) and BE stations send a 1400 bytes packet every 5.5 ms (i.e., 2 Mbit/s). The real-time packet generation interval is set to 10 ms. The evaluation of the slot reuse is performed with different parameters (see Subsection 4.2). 4.1. Throughput, Delay, and Jitter The average throughput with respect to the number of BE stations is illustrated in Fig. 5. IEEE 802.1 le can provide a throughput of 200 Kbit/s for each RT station only if the number of BE stations is one. However, real-time stations do not get their requested data rate when the number able n um ber of RT stations The average throughput with respect to the number ofRT stations is illustrated in Fig. 6. It shows how E-MAC yields a higher throughput than 802.1 le as the number of RT stations increases. This throughput is guaranteed to remain fixed unless some RT stations do not adhere to the admission control, therefore going beyond the system capacity of 5 RT stations in the example (we show this to the sake of understanding). The average packet delay with respect to the number of BE stations is illustrated in Fig. 7. Using B-MAC, the simulated average packet delay of BE stations increases to 10 s when increasing the number of BE stations to 10. In contrast, the average packet delay of RT stations is always be- 10 0.35 -0.3 0 sim-Elastic-BE sim-Elastic-RT .3testbed-Elastic-BE testbed-Elastic-RT J n. 0.1 a) 0.25 testbed-802.1 1e-BE -------- --- - -------- -testbed-802.1 le-RT X 0.2 testbed-802.11-BE testbed-802.1 1-R 0.15 sim-Elastic-BE sim-Elastic-RT simn82-11 e-BE 0.01 0.001 sim-802.1 1 e-RT testbed-Elastic-BE testbed-Elastic-RT testbed-802.1 1 e-BE l testbed-802.1 lllllll°--I1 e-RT 3 4 5 6 7 8 9 Number of BE stations 0.1 I- I I 1 2 10 Figure 7. Packet delay with variable number of BE stations low 30 ms. Furthermore, the experimental results show that 802.1le is not able to guarantee low transmission delays for RT stations as opposed to our approach. With three BE stahe vergeackt dlayof T stations satins iss about aout600 thetios, of RT 600 tions, average packet delay ms with 802.1 le compared to 5 ms with B-MAC. The guarantee of such low delays for real-time packets is a key feaBMACthat tothe estof or knowledge, kowlege,no ture oftureof E-MAC the best of our no oher other that, to sceecmail'ihIEE821 rvds h QoQoS~~~~ smlcrease cofpathbledelay forErEal-t packidetsin g. 7e ismall reatosyncfthronization problems hic kendto produ.c cisionsybetwenteasti Rpakets duingtheperiodRt perodu between the last RT packets durongfttR collasnons BE oftefis stationsaicreases. Unfortunapelodu the limited du t number of stations available it was not possible to obtain more testbed results for this parameter. According to [12], we calculate the jitter after reception of packet i as J J(i - 1) + ( D(i -1, i) -J(i-1)) 16 ( where D(i - 1, i) is the difference of the transmission delay of two successively received packets. The average jitter depending on the number of BE stations is illustrated in Fig. 8. The simulatedjitter of BE stations goes up to 350 ms when increasing their number to ten. RT stations using EMAC on the other hand only experience a very low jitter of less than 10 ms independent of the number of BE stations in both, simulations and experiments. The very low jitter provided by B-MAC represents another great advantage when compared to 802.1 le, which performs poorly in terms of jitter as the number of BE stations increases, as shown in Fig.8. - 0.05 0 - 0 2 4 6 Number of BE stations 8 10 Figure 8. Packet jitter with variable number of BE stations 4.2. Slot Reuse and Throughput Gain As mentione in ot the Introducto an EMSys Model description, one of the major features of B-MAC is the time slot reuse that allows real-time stations taking over unused time slots reserved for other stations. By offering a flexible -"elastic"- scheduling for real-time packets this fetrpovdsamcmrefiintuefbnwdhrfeature provides a much more efficient use of bandwidth re- sources, which results in an increased total throughput of the network. In order to measure the throughput gain obtained by the time slot reuse feature, we compare E-MAC with apseudo-TDA approach. Pseudo-TDMA means that RT stations can reserve time slots at the beginning of each round for the transmission of their real-time packets similar to E-MAC. The main difference of pseudo-TDMA to E-MAC, however, is that real-time slots can not be reused by another station, i.e., if a RT station does not transmit a packet, the respective time slot remains empty. In contrast, E-MAC does not waste resources as BE stations can reuse resources not used by RT stations. We assume that up to five RT stations have to transmit real-time packets generated by a ITU-T G.711 voice codec [8] with silence suppression. This codec generates a packet with 240-byte payload every 30 ms (i.e., 64 Kbit/s). However, if the user is silent, no packets are generated. One BE station is saturating the channel with a data rate of 2 Mbit/s. We use Ethereal to obtain voice traces of a VoIP real-time communication with GnomeMeeting (now called Ekiga). We then generate dummy packets according to those voice traces on the RT stations in our testbed to compare the efficiency of E-MAC and pseudo-TDMA. The resulting throughput is shown in Fig. 9. As illustrated, B-MAC yields a considerably higher value than the pseudoTDMA scheme for both total network throughput and total best-effort throughput, and the gap becomes larger as the number of RT stations increases. 1750 1700 1650R \ -? 1600 1550 - 1500 o-1 1450 -~1400 1350 13 0 1300 1250 1 400 . _ 350 --- n 300 | .sim-Elastic-BE | sim-Elastic-RT math-Elastic-BE ' math-Elastic-RT 250 ----- 150 ioo 100 testbed-Elastic-BE testbed-Elastic-Total testbed-TDMA-BE testbed-TDMA-Total ------2 3 4 Number of RT stations 50 0 5 Figure 9. Throughput, using variable number of voice sources with silence suppression 4.3. Protecting best-effort traffic from starvation Another useful feature of E-MAC is that, even under heavy-load traffic conditions, it does not starve best-effort stations. Figure 10 shows the throughput for both realtime and best-effort stations with respect to the real-time packet generation interval. As it can be observed in Fig. 10 for small intervals (i.e., high packet generation rates), EMIAC yields a higher throughput for real-time stations than 802.11 e while keeping a minimum guaranteed data rate and without decreasing the throughput of best-effort stations, which is almost the same as in 802.1 1e. As the interval increases (i.e., the generation rate decreases) real-time stations obtain exactly what they require in both E-MAC and IEEE 802.1 le, but best-effort stations get a considerably higher throughput with E-MAC than with IEEE 802.1 le. The reason for the latter behavior is that E-MAC yields a 0 5 10 15 Number of BE stations T a 5 sim Elastic-BEr simEastic-RT si m-802 .1 1 e -RT 350 300 7 sim-802.1-g-O si-802. 1 n 150 r _ 20 Figure 11. Throughput, with increasing number of BE stations. (3 RT stations, each can saturate the channel alone) total throughput that is higher than that of 802.1 le due to the scheduled real-time transmissions in E-MAC. Therefore there are less collisions and retransmissions. Figure 11 shows the throughput obtained by each of the three real-time stations under saturated conditions when the number ofbest-effort stations increases for both simulations and mathematical analysis. It can be observed in Fig. 11 how E-MAC keeps the minimum guaranteed data rate (200 Kbit/s) for any number of best-effort stations. At the same time, best-effort stations do not starve but always get their fair share of the best-effort period in the round. Moreover, it can be seen that, as predicted in Eqs. (8) and (9), the throughput obtained by real-time stations in E-MAC is equivalent to the share of the channel obtained by the besteffort stations (normalized by the packet's time length) in addition to the minimum guaranteed data rate. The latter result has been verified by the simulation results in Fig. 11. 100 400 ---- 200 sim-Elastic-BE sim-Elastic-RT - math-Elastic-BE math-Elastic-RT 10 O -S-g-BE ^ \ 2 7 100----- 50 0 2 4 6 8 10 12 14 16 18 20 Packet generation interval of (each of the) RT stations (ms) Figure 10. Throughput, as RT stations get more greedy 0.1 0 2 4 6 8 10 12 Numberof BE stations Figure 12. Packet delays, with increasing number of BE stations. (3 RT stations, each can saturate the channel alone) single round. In contrast, real-time stations in 802.1 le can consume the whole channel capacity depending on the data rates at the sources. Results from both simulations and mathematical analysis show that E-MAC guarantees a minimum data-rate for RT stations while protecting BE stations from starvation, even in presence of a high number of BE stations. Figure 12 depicts the delay obtained by E-MAC for both real-time and best-effort packets. It shows how the delay for realtiepcesi gurnte readls of th nubrofB scomplement the statiospacs resus the obtained through mathematical analysis regarding regarding the very very short delay guarantees for real-time traffic provided by BM\AC. Last, we ran video streaming under heavy BE con- Te mecan ismintsre afet by any channel asa cnowledg t frame mut olloweany scessful transmission of a data frame. Not overhearing the RAM 5. Discussion and Future Work lision domain, i.e., with no hidden nodes. For a multi-hop predicguatedein(11).dT oframe broadcast by the maestro is not a problem either since any station can wait for the next RAM in order to synchronieistasiso.ihte otation trouhmthemaical analysis tes h ytmcnwr with variable packet lengths rates as the wt aibepce egh and n transmission rnmsinrtsa h time-slots of the real-time period do not have a fixed time length associated but only define a sequential order that the real-time stations must follow. The system has been designed to operate in a single col- tntIonovertB-MAC,anvdomparedmit to 8 BvaluCan aention ation rresultvie videos can bemfound be found inin[1]. [I].reltmsaiosutflow ea network this assumption does not hold anymore. In the latter case, some real-time stations could not hear the transmission of the RAM or even the preceding station during the real-time period, causing the whole system to lose synchronization. Even a best-effort station that is not able to overhear a given transmission during a real-time slot may cause synchronization problems for real-time stations. The design of E-MAC for a proper operation in a multi-hop network is part of our future work. The scenario in which RT stations have different packet lengths due to different data rates and/or packet sizes does not cause any problem to our system as the transmission sequence number, which is the most important parameter, is not changed because of this. In the worst situation in which several RT stations are transmitting large packets at very low data rates, the real-time period length value conveyed by the maestro through the beacon should reflect the stringent conditions and make new stations that are trying to join the system defer until the traffic conditions become better. Another important issue is how to deal with different No collisions for real-time stations during the real-time data rate requirements from RT stations. This problem is period, due to the order imposed by the sequence of easily solved by allowing RT stations to transmit a burst of backoff values. In 802.1 le, high-priority stations still several packets during the RT period instead of only one as suffer from increasing collisions when the number of previously described. In this solution RT stations have an real-time stations increases. internal counter hi set to the maximum number of packets to be transmitted during the RT period, which reflects their Strict throughput and delay guarantees for real-time own bandwidth requirement. Thus, for instance if station due t I A has this counter hA set to 3 it is allowed to transmit 3 te "reervation"cofperictes. contrafi, contrast, 802.1 leoffersonlysatisticalguarantees.packets during the round. Any other packet in its buffer exceeding this limit should contend during the best-effort A very low guaranteed delay even under heavy-load period and promoted to the RT class after next RAM as detraffic conditions. In IEEE 802.1 le the delay perforscribed in the paper. In order to keep the AIFS distance mance deteriorates as the number of high-priority stabetween consecutive packets, the AIFS value associated to tions increases. each RT packet from station A should follow the rule: the Better protection for best-effort traffic, due to the limfirst packet in the transmission queue pick AIFSJA, the secitation of one RT transmission! round! station, and the ond one AIFSJA± 1, the third one AIFSJA± 2 an so forth. assignment of best-effort backoffs to additional realIn this case, the maestro announces in the RAM the total time packets transmitted by a given station within a number of RT packets (Z,_1 hi) and the expected length In comparison with TDMA, our mechanism has the advantage of slot reuse, making it more efficient since no time slots are wasted due to silence suppression by the corresponding (e.g., voice) application codecs. The differentiation based on traffic categories defined by IEEE 802.1 le does not give any guarantees for real-time traffic since at high load there is a high number of collisions even for real-time flows. Hence, under high load traffic the delay performance of IEEE 802.1 le deteriorates. Moreover, previous work [7] showed that in heavy-loaded networks, low priority traffic has extremely low transmission probability when using EDCA, an effect called starvation of low-priority applications. Conversely, the proposed E-MAC guarantees a minimum data rate and a very low delay for all real-time stations almost irrespective of the network load while avoiding the starvation of best-effort stations. In summary, E-MAC has the following advantages with respect to IEEE 802.1 le: * * * * of the real-time period in the current frame. 6. Related Work (MadWifi). The system is self-organizing, completely distributed, and requires no changes to existing legacy 802.11 stations. We show how E-MAC provides strict QoS guarantees: a minimum-reserved throughput, and extremely low packet delays. All testbed measurements, mathematical model and the simulations showed consistently good results with EMAC outperforming 802.1 le, pseudo-TDMA and 802.11. Our system is operational and ready to use in existing 802.11 networks. In the past decades there has been considerable research in wireless networks with particular focus on QoS due to the increasing demand of new multimedia applications [3, 5, 14]. Several proposed approaches occupy a wide spectrum of applications, requirements, and assumptions. They differ in complexity as well as in performance results. However, in contrast to our system, the lack of feasibility is a common References drawback to many of the existing work. In this Section we cite some of the approaches closely related to our system. [1] [1] theauthosproosed AC prtocolwith In [1I1] theIn authors proposed a new MAC protocol with [2] http://imad.aad.name/emac-videos/. G. Bianchi. Performance analysis of the IEEE 802.11 dispseudo-TDMA behavior based on 802.1 le. In their scheme, tributed coordination function. IEEE JSAC, 18(3), 2000. high-priority class (AC3 as defined in 802.1 le) stations [3] S. G. C. Coutras and N. Shroff. Scheduling of real-time traffic in IEEE 802.11 wireless LANs. Wireless Networks, have a Time Division Multiple Access (TDMA) function2000. ality that allows them creating a virtual TDMA environ[4] P. Engelstad and 0. Osterbo. Non-saturation and Saturation ment with variable packet length and being still backward Analysis of IEEE 802.1le EDCA with Starvation Prediccompatible with the other 802.11 protocols. The proIn Proceedings ofAMSWIA4, 2005. tion. posed mechanism, however, has disadvantages regarding G.Anastasi and L.Lenzini. QoS provided by the IEEE transmission schedule 802.11 wireless LAN to advanced data applications: a simfor real real timesta[5] thethetransmission schedule guarantee for tme staions ulation analysis. Wireless Networks, 2000. since AC3 stations are allowed to transmit only one packet per round and hence can not adjust easily to more dy[6] IEEE standard for information technology - LAN/MAN namic traffic environments and the presence of variablespecific requirements - part 11: Wireless LAN medium access control (MAC) and physical layer (PHY) specifications, bit-rate traffic. Moreover, despite of a further state cre1999. ated to avoid high-priority station collisions, this type of [7] IEEE standard for information technology - specific requirecollisions can still occur since the corresponding timer that ments part 11: Wireless LAN medium access control (MAC) sets TXOP/2 divides the high-priority stations into only two and physical layer (PHY) specifications: Amendment 8: access-priority classes. This may not be sufficient for a high Medium access control (MAC) quality of service enhancements, 2005. number of high-priority stations, especally when TXOP iS comparable to the round length Fd. Furthermore, they have [8] Pulse code modulation (PCM) of voice frequencies. ITU-T not evaluated the performance of the proposed system in recommendation G.711, 1988. a real testbed. In [13] the authors separate real-time and [9] Y Lin and V. Wong. Saturation Throughput of IEEE 802.1 le EDCA Based on Mean Value Analysis. In Proceedings of non-real-time traffic in two different periods, introducing a WCNC, April 2006. further per-flow differentiation by piggybacking future re[10] L. Loyola, M.Ogawa, K.Nagata, and S.Aikawa. Proposal quests in transmitted packets. The scheme is not backward and Evaluation of a Mesh Wireless Local Area Network Arcompatible with other 802.11 protocols and does not feature with Dual DCF-HCCA Channel Access Scheme aself-organizing transmission since it rqirs requir*e* .chitecture shduesicei n h Vicinio a self-organizing trasmsio schedule tyrq1e of Gaea cesPit.J ETasc in conications (10), 2006. hybrid coordinator entity (access point) for allocating the ti ons on on Communicati ons, ( 10), 2006. respective TXOPs and transmission order. Furthermore, as [11] G. Paschos, I.Papapanagiotou, S. Kotsopoulos, and G. Karashown in [10] introducing a contention free period (TDMAgiannidis. A New MAC Protocol with Pseudo-TDMA Behavior for Supporting Quality of Service in 802.11 Wireless like) normally increases the throughput as shown in [ 13] but LANs. EURASIP Journal on Wireless Communications and at the cost of increasing the delay experienced by real-time Networking, 2006(1), 2006. stations. No results about delay have been provided. guarantee 7. Conclusion In t1s ape wepreenta MC sytemtha ofersstrc QoS guarantees for real-time traffic (e.g., voice/video) in wireless networks. We implemented our system on a Linux testbed, making use of open-source network card drivers [12] H. Schulzrinne, S. Casner, R. Frederick, and V. Jacobson. RTP: A transport protocol for real-time applications. IETF RFC 3550, July 2003. [13] A. Velayutham. An Enhanced Alternative to the IEEE I802.1 le MAC Scheme . Iowa State University, 2006. 14]Y. Y. Kwon and H.Latchman. A Novel MAC Protocol with Fast Collision Resolution for Wireless LANs. In Proceedings ofINFOCOM, 2003.