15
JaldiMAC – Taking the Distance Further Yahel Ben-David ** Matthias Vallentin * Seth Fowler * Samuel Zats * Abstract Recently, WiFi has been hyped as an affordable tech- nology that is capable of providing broadband Internet connectivity to poor and sparsely populated markets. A growing number of non-profit deployments, some of sub- stantial scale 1 are making use of WiFi to extend connec- tivity into rural areas. However, the vast of majority of the 3.5 billion people living in rural villages[7] are still unserved. To expand connectivity, new technology must be de- veloped to make small rural wireless Internet service providers (WISPs) profitable. We have identified radio towers as the most expensive element that WISPs re- quire; to reduce or eliminate this cost, we propose a novel point-to-multipoint deployment topology that takes ad- vantage of “natural towers” such as hills and mountains to provide connectivity even over great distances. We make this design practical with a new TDMA MAC pro- tocol called JaldiMAC 2 which (i) enables and is opti- mized for point-to-multipoint deployments, (ii) adapts to the asymmetry of Internet traffic, and (iii) provides loose quality of service guarantees for latency-sensitive traf- fic without compromising fairness. To our knowledge, JaldiMAC is the first integrated solution that combines all of these elements. Our simulator-based evaluation of JaldiMAC suggests that it fulfills its design goals. Its innovative scheduler is able to provide a 71% decrease in jitter and superior la- tency characteristics in exchange for a 5% increase in av- erage RX/TX switches, as compared to a standard stride scheduler. Overall, we find that JaldiMAC performs sur- prisingly well at this early stage. 1 Introduction Our goal is to extend broadband Internet connectivity to currently underserved rural communities in develop- ing nations by developing a novel technical solution. University of California, Berkeley. AirJaldi, Dharamsala, India. 1 The AirJaldi [1] network in rural India provide Internet access to 10, 000 users in one of the world’s most rural and challenging environments. The region spans an area of around 100 km radius. 2 Jaldi is the Hindi word for fast. The main reasons that these communities are not cur- rently connected are their low purchasing power and their sparse population, distributed over large distances. These factors make rural areas an unattractive market to service providers, who would be unable to recoup the required investment in infrastructure. While many re- searchers tend to focus on academic advancements of de- ployments [39] rather than its real-world applicability, we choose to maintain a conscious focus on affordability in order to customize our strategy to poor, rural commu- nities. To this end, this paper presents a novel protocol design and a matching innovative deployment method- ology. We believe that this combination offers extreme savings and will enable the proliferation of broadband Internet to rural areas in developing nations. WiFi as the affordable choice. As with many other stud- ies, we believe that WiFi is the most affordable and suit- able technology for these target markets. Indeed, we see a growing number of Wireless Internet Service Providers (WISPs) in rural, developing countries that leverage this technology [1, 14, 2, 40]. WiFi offers notable savings in both deployment and operational costs since it does not incur spectrum licensing fees and hardware is both low- cost and available off-the-shelf. Additionally, power con- sumption is low, making it ideally suited for remote loca- tions that are reliant on renewable energy sources, such as solar or wind, due to the non-availability or unreliabil- ity of grid power. Fixed wireless vs. “blanket coverage”. Unlike the setup in industrialized nations, where providers need to “blanket-cover” an area in order to service mobile sta- tions, our setup has lower signal penetration require- ments and thus, can be satisfied with highly directional antennas mounted on rooftops with a clear line of sight to the base station (typically at less then 100km away). Moreover, the use of directional antennas is attractive for its reduced interference. Franchise replication model. Low equipment costs en- able small local businesses to become WISPs while further contributing to the community by creating jobs and enhancing skills [39, 14]. The micro-franchising model could therefore be attractive for the proliferation of micro-WISP businesses. A key challenge is how to lower the entry barriers, such as the initial equipment and setup costs, for these micro-WISPs while ensuring low operational costs to drive higher profit margins and

JaldiMAC – Taking the Distance Furthermatthias.vallentin.net/course-work/cs268-f09.pdf · Internet to rural areas in developing nations. WiFias the affordablechoice . As withmanyotherstud-ies,

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: JaldiMAC – Taking the Distance Furthermatthias.vallentin.net/course-work/cs268-f09.pdf · Internet to rural areas in developing nations. WiFias the affordablechoice . As withmanyotherstud-ies,

JaldiMAC – Taking the Distance Further

Yahel Ben-David∗∗† Matthias Vallentin∗ Seth Fowler∗ Samuel Zats∗

AbstractRecently, WiFi has been hyped as an affordable tech-nology that is capable of providing broadband Internetconnectivity to poor and sparsely populated markets. Agrowing number of non-profit deployments, some of sub-stantial scale1 are making use of WiFi to extend connec-tivity into rural areas. However, the vast of majority ofthe 3.5 billion people living in rural villages[7] are stillunserved.

To expand connectivity, new technology must be de-veloped to make small rural wireless Internet serviceproviders (WISPs) profitable. We have identified radiotowers as the most expensive element that WISPs re-quire; to reduce or eliminate this cost, we propose a novelpoint-to-multipoint deployment topology that takes ad-vantage of “natural towers” such as hills and mountainsto provide connectivity even over great distances. Wemake this design practical with a new TDMA MAC pro-tocol called JaldiMAC2 which (i) enables and is opti-mized for point-to-multipoint deployments,(ii) adapts tothe asymmetry of Internet traffic, and(iii) provides loosequality of service guarantees for latency-sensitive traf-fic without compromising fairness. To our knowledge,JaldiMAC is the first integrated solution that combinesall of these elements.

Our simulator-based evaluation of JaldiMAC suggeststhat it fulfills its design goals. Its innovative scheduler isable to provide a 71% decrease in jitter and superior la-tency characteristics in exchange for a 5% increase in av-erage RX/TX switches, as compared to a standard stridescheduler. Overall, we find that JaldiMAC performs sur-prisingly well at this early stage.

1 Introduction

Our goal is to extend broadband Internet connectivityto currently underserved rural communities in develop-ing nations by developing a novel technical solution.

∗University of California, Berkeley.†AirJaldi, Dharamsala, India.1The AirJaldi [1] network in rural India provide Internet

access to10, 000 users in one of the world’s most rural andchallenging environments. The region spans an area of around100 km radius.

2Jaldi is the Hindi word for fast.

The main reasons that these communities are not cur-rently connected are their low purchasing power andtheir sparse population, distributed over large distances.These factors make rural areas an unattractive market toservice providers, who would be unable to recoup therequired investment in infrastructure. While many re-searchers tend to focus on academic advancements of de-ployments [39] rather than its real-world applicability,we choose to maintain a conscious focus on affordabilityin order to customize our strategy to poor, rural commu-nities. To this end, this paper presents a novel protocoldesign and a matching innovative deployment method-ology. We believe that this combination offers extremesavings and will enable the proliferation of broadbandInternet to rural areas in developing nations.

WiFi as the affordable choice. As with many other stud-ies, we believe that WiFi is the most affordable and suit-able technology for these target markets. Indeed, we seea growing number of Wireless Internet Service Providers(WISPs) in rural, developing countries that leverage thistechnology [1, 14, 2, 40]. WiFi offers notable savings inboth deployment and operational costs since it does notincur spectrum licensing fees and hardware is both low-cost and available off-the-shelf. Additionally, power con-sumption is low, making it ideally suited for remote loca-tions that are reliant on renewable energy sources, suchas solar or wind, due to the non-availability or unreliabil-ity of grid power.

Fixed wireless vs. “blanket coverage”. Unlike thesetup in industrialized nations, where providers need to“blanket-cover” an area in order to service mobile sta-tions, our setup has lower signal penetration require-ments and thus, can be satisfied with highly directionalantennas mounted on rooftops with a clear line of sightto the base station (typically at less then 100km away).Moreover, the use of directional antennas is attractive forits reduced interference.

Franchise replication model. Low equipment costs en-able small local businesses to become WISPs whilefurther contributing to the community by creating jobsand enhancing skills [39, 14]. The micro-franchisingmodel could therefore be attractive for the proliferationof micro-WISP businesses. A key challenge is how tolower the entry barriers, such as the initial equipmentand setup costs, for these micro-WISPs while ensuringlow operational costs to drive higher profit margins and

Page 2: JaldiMAC – Taking the Distance Furthermatthias.vallentin.net/course-work/cs268-f09.pdf · Internet to rural areas in developing nations. WiFias the affordablechoice . As withmanyotherstud-ies,

ensure a faster return on investment.

Existing approaches are unattractive for rural WISP.While existing business models and technologies allowmicro-WISPs to achieve financial sustainability in semi-urban areas, rural villages remain unattractive from abusiness point of view and consequently remain under-served. In this work, we attempt to drastically reducethe setup costs of WISPs, allowing them to serve poorer,lower-density markets while remaining profitable. Wepresent a novel deployment topology which is muchcheaper than existing alternatives. Additionally, we dis-cuss the limitations of current protocols in the context ofthis topology, and address these limitations through aninnovative MAC protocol.

The paper begins with a study of related work in§2and continues in§3 with a description of our deploymentmethodology. After introducing the concept of differentservice classes in§4, we derive our architectural goals in§5. Thereafter, we present the design of JaldiMAC in§6and evaluate it in§7. Finally, we discuss future work in§8 and conclude in§9.

2 Background and Related Work

Although 802.11 was originally designed for LAN appli-cations, its high proliferation and low-cost drove 802.11use beyond the designer’s intentions. Both the economicattractiveness and the ability to control some of the phys-ical and MAC-layer parameters have inspired the use of802.11 as a research platform[27][36].

However, using 802.11 for a general-purpose wirelessplatform can be challenging. Its CSMA/CA MAC pro-tocol was not intended for the outdoors and fares poorlyin overcoming collisions due to the hidden node problemand the difficulty of detecting collisions at the receiverand handling backoff fairly [13]. Long distances aggra-vate these problems, resulting in further inefficienciesand reduced channel capacity. Despite this poor perfor-mance, 802.11’s low cost has inspired many researchersto explore ways of modifying the 802.11 MAC to max-imize channel utilization and allow the setup of high-bandwidth links over long distances. Most researcherssuggest replacing the CSMA/CA algorithm with sometype of Time Division Multiplexed Access (TDMA)in order to minimize collisions through synchroniza-tion [31, 32, 10, 37, 29, 34, 26]. The 802.11e standardwas another attempt to address 802.11’s shortcomings;unfortunately, 802.11e may starve traffic in some situa-tions, and to the knowledge of the authors, it has neverbeen fully implemented[28, 23].

2.1 Outdoor ApplicationWithin the context of fixed outdoor applications, the fielddivides into three main categories: long-distance back-haul, “last mile” distribution, and mesh networks.

Long distance backhaul. 802.11 equipment is gaininga reputation of providing unmatched affordability whiledelivering excellent bandwidth over a very long dis-tance. In fact, TDMA implementations such as WiLD-Net [29] suggest that available bandwidth is independentof distance, with the only limitation being line-of-sight;a 382km link has been demonstrated[40]. These long-distance backhuals are ideal for linking cellular basestations and extending broadband Internet connectivity.Nevertheless, the design of WiLDNet assumes traffic issymmetric, making it very ill-suited for typical Internetapplications where traffic is both highly asymmetric anddynamic. WiFiRe [31] tunes slightly better for Internetapplications by assuming a 2:1 traffic ratio, but does notdynamically adapt to changing traffic patterns. WiLDNetalso only allows for the creation of point-to-point links,which are impractical for the “last mile” links discussedbelow. The high-gain directional antennas which enablethese long-distance links minimize interference as a wel-come side-effect; we will take advantage of this in§3.

“Last mile” distribution . The final links which servicemultiple stations from a connected center are collectivelyreferred to as the “last mile”. The stations are villagehomes or businesses; the central location is a base stationconnected to a wired or wireless backhaul. Tradition-ally, last-mile solutions use 3 or 4 equally-spaced sec-tor antennas mounted on a tower in the center of the vil-lage [31]. Customer Premises Equipment (CPE) woulduse directional antennas aimed toward the central tower.This approach was modeled after the cellular telephoneindustry; as we show in§3, it is an unnecessarily expen-sive design for sparsely populated rural markets.

Mesh networks. At the root of many academic studieslies another approach for last-mile connectivity: meshnetworks [32, 26, 10, 24, 6, 4]. In a mesh, stations re-lay data over multiple hops; they can span long distancesto offer an attractively decentralized and fault-tolerantdesign. Nevertheless, the cheap, widely studied single-radio mesh relays data in a store-and-forward fashion,which essentially halves the bandwidth at every hop, lim-its scalability, and involves complex computation that ischallenging for low-cost hardware. In a mesh, stationsshould be in range of two or more other stations to allowrelaying and provide redundancy; this prevents the useof directional antennas, which improve signal strength,reduce interference, and allow greater spatial density.Since directional antennas are crucial for long-distancelinks, long-distance mesh networks are currently unre-alistic, although recent work on electronically steerable

Page 3: JaldiMAC – Taking the Distance Furthermatthias.vallentin.net/course-work/cs268-f09.pdf · Internet to rural areas in developing nations. WiFias the affordablechoice . As withmanyotherstud-ies,

antennas [5] may eliminate this restriction. Our workmust support long-distance links; however, we do borrowthe concept of dynamic time slot allocation from Jazzy-MAC [26].

2.2 Improving Channel UtilizationMuch research in this space focuses on improving chan-nel utilization and density and compensating for thescarcity of non-overlapping channels [30, 26, 31, 18].The optimizations in these studies improve efficiencywhen capacity, scale, and channel availability are an is-sue; in rural villages, however, this is not the case. More-over, densely populated markets are able to utilize agrowing number of solutions based on 4G technologieswhich may suit their requirements better than 802.11.For these reasons, we leave such considerations to futurework.

2.3 Packet LossSheth et al. [38] observed that rural wireless links arealmost loss-free and have negligible residual loss; themain source of interference in urban networks is exter-nal WiFi networks, which are rare in rural, developingareas. The same paper notes that reducing the bitrate ag-gravates interference because longer transmission timesincrease the risk of collision; however a lower sending bi-trate increases receiver sensitivity, which is attractiveforweaker signals attenuated by long-distance in rural areas,as it yields better signal-to-noise ratio (SNR). Local in-terference can be reduced further with techniques such asthe use of higher quality antennas with smaller side lobesand better front-to-back isolation ratios, proper shieldingof radios and coaxial cables, grounding, relocation of thesystem (even on the same roof), and changing the mount-ing height. The effect of packet loss on TCP has beenextensively studied [12, 11, 25, 42]. The problem is thatTCP assumes packet loss represents network congestion,although it is a ubiquitous characteristic of wireless net-works. This can be mitigated by either hiding the lossywireless medium or using a modified TCP that differen-tiates between wireless loss and congestion [11]. Hidingloss better maintains the layering of the protocol stack;however, doing so aggressively can noticeably increasejitter and delay, which perturbs TCP timer calculations.The two most commonly used mechanisms to hide lossare forward error correction (FEC) and frame retrans-mission, also known as automatic repeat request (ARQ).Traditional 802.11 uses a per-packet ARQ scheme, butresearch in this field recommends FEC schemes in or-der to better sustain bursty losses [38, 29]. Our topologyminimizes the potential for interference and loss withhighly directional antennas, and rural areas exhibit lowinterference in any case. Therefore, we do not focus onlink-layer recovery schemes in this paper and leave the

integration of such mechanisms for future work.

3 Rethinking Economics and Topologies

To refine the deployment methodologies of WISPs, weexamine the details of existing installations. These de-ployments are predominantly modeled after cellular tele-phony technology, which is widely used and heavily opti-mized. Typically, high towers are erected in the center ofcoverage zones (cells), andsector antennasare mountedon them. Sector antennas are unique in their design asthey offer not only wide coverage angle (typically 90◦

or 120◦), but also relatively high gain. As antennas arepassive devices, gain in this context does not refer toamplification, but to the antenna’s ability to focus en-ergy in a particular direction; higher gain therefore im-plies narrower beam width. Sector antennas are excep-tional because they provide relatively high gain withoutsacrificing beam width; unfortunately, they are very ex-pensive. This makes them ideal for blanket coverage tomobile devices, but a poor choice for fixed wireless de-ployments. The sector antennas on a given tower mustoperate in non-overlapping frequency channels3 to pro-tect from mutual interference. Figure 1a shows a com-mon sectorized deployment approach. The high gain andwide angle of sector antennas, which increases the cov-erage area, also makes them vulnerable to received in-terference from external networks or neighboring cells.In order to minimize interference, sector antennas are of-ten mounted with a down-tilt to contain the sector’s foot-print. This requires higher towers if the down-tilted sec-tors are to provide a coverage area of reasonable size.This design is well-suited for dense urban areas wheresignals must penetrate walls, and the high demand insuch areas makes the expense economically feasible. Toimprove on the conventional deployment model, it is im-portant to understand how its costs are distributed. Tow-ers are by far the most expensive element, without evenconsidering real-estate costs. Power systems are the nextmost expensive element, and can vary substantially. Re-newable energy sources are particularly attractive for re-mote base stations and relay towers which may receiveunreliable power grid service, or no service at all; tokeep the costs of such systems down, power efficiencyis imperative. Antennas follow in the list of expenses,although they are substantially cheaper than the towersthemselves; however, it is worth noting that sector anten-nas are about an order of magnitude more expensive than

3To cover an entire cell, three non-overlapping channels aretypically needed when 120◦ antennas are used or four channelswhen 90◦ sectors are used.

Page 4: JaldiMAC – Taking the Distance Furthermatthias.vallentin.net/course-work/cs268-f09.pdf · Internet to rural areas in developing nations. WiFias the affordablechoice . As withmanyotherstud-ies,

the directional antennas used in our work.4. The cost ofWiFi radios and routers should also be considered. To re-duce the scope of the paper, we do not take labor costsinto account and generally omit many other factors of theeconomics of wireless infrastructure.

3.1 Fixed Rural WirelessAs opposed to mobile wireless installations that supportmoving stations,fixed wireless solutions consist of di-rectional antennas mounted on rooftops or balconies ofsubscriber’s premises and aimed towards the base sta-tion. When applying the conventional cellular-like de-ployment model to rural areas, it is likely that eachsector antenna would only serve a very small numberof subscribers or none at all, rendering the setup pro-hibitively expensive. The following changes are requiredto the conventional deployment model to effectively sup-port fixed rural wireless:(i) eliminate or substantially re-duce the costs of towers,(ii) increase the number of sub-scribers per base station, which is challenging in ruralsettings where subscribers are sparsely distributed overlarge distances,(iii) reduce the power consumption ofbase stations and CPEs, and(iv) utilize directional in-stead of sector antennas to lower costs and improve re-sistance to interference. Eliminating the need for tow-ers is the most desired goal; many researchers have pro-posed mesh networks as a potential solution to reducethe dependency upon towers. Studies on the economicsof fixed rural wireless view mountains as obstacles andsuggest increased costs are associated with mountainousor hilly areas [35]. Our experience working in the moun-tainous region of the Indian Himalayas taught us the op-posite: replacing expensive towers with mountains notonly proves to be cheaper, but it also extends the cov-erage area significantly beyond what towers can offer.Indeed, the AirJaldi [1] network in Dharamsala spans aradius of almost100 km while using only a single mod-est 18 m high tower. It is also common that real es-tate in mountainous areas is substantially cheaper thanin town centers. AirJaldi now plans and budgets deploy-ments mostly based on the feasibility of using mountainsor hills. Intuitively, one would expect most rural villagesin developing countries to be situated in the plains. How-ever, if we look beyond the typical coverage distancesoffered by the conventional cellular approach (typicallya few hundred meters up to2-3 km) and leapfrog to dis-tances of10 to 100 km, we expect to find many morevillages within the coverage radius of a mountain or highhill, as depicted by Figure 1b. Low-cost directional an-tennas mounted on a high mountain would offer a verylarge coverage area, even though they have a narrow an-gular coverage, because the width of the coverage area

4There may be extreme cases of very high-gain directionalantennas that would be more expensive than sector antennas.

Figure 2: Coverage of the Bay Area using 11◦ antenna.The red areas have clear line-of-sight to the antenna onthe mountain. It’s interesting to note, that far locationsare better covered than nearby areas which are hiddenby the same mountain range on which the antenna is in-stalled.

increases with distance, and mountains are likely to haveunobstructed line of sight to very distant locations.

Figure 2 shows that a typical low-cost5 directional an-tenna with a gain of22 dBi and a horizontal beam widthof 11◦ can easily cover much of the Bay Area if mountedon a mountain top. Far away destinations like Berkeley,Oakland, and San Leandro are well covered by a singleantenna. Loma Prieta’s peak is1153 m above sea level,with an unobstructed line of sight exceeding distances of100 km. As expected, using mountains and hills insteadof towers would set new levels of coverage at a fractionof the cost.

4 Traffic Characterization

We intend our MAC protocol to support different typesof service, such as VoIP, audio/video conferencing, andbulk transfers. Our choice to integrate this concept fromthe beginning is motivated by the difficulty of retrofittingit onto an existing MAC protocol [28, 23] and the in-efficiencies of enforcing such policies at higher layers,which we discuss later. We characterize the behaviorand performance of applications in the network alongthree dimensions: bandwidth, latency, and jitter. Band-width describes the application throughput over a given

5The current price for a5.8 GHz 22 dBi parabolic grid an-tenna, beam width H10◦ V11◦, is $47.

Page 5: JaldiMAC – Taking the Distance Furthermatthias.vallentin.net/course-work/cs268-f09.pdf · Internet to rural areas in developing nations. WiFias the affordablechoice . As withmanyotherstud-ies,

(a) Conventional cellular-like sectors approach. (b) Leveraging distant elevations.

Figure 1: Conventional deployment topology vs. our approach.

period of time. Latency refers to the end-to-end delayinduced by all elements on the network path. That is, la-tency represents the the time between the handoff of apacket to the sender’s network stack and its arrival at thereceiver’s network stack. Jitter represents the variance oflatency. We measure jitter as the average deviation fromthe mean latency. In general, applications often haveconflicting requirements which vary the importance ofthese three components. This is best explained with ex-amples: Bulk file transfers mostly care about availablebandwidth and are less sensitive to latency and jitter. Onthe other hand, VoIP traffic needs very little bandwidthand can sustain surprisingly high latencies due to largebuffers6, but is very sensitive to jitter. The requirementsof applications also vary with respect to symmetry. Whileapplications such as VoIP and video conferencing exhibita balanced ratio between upstream and downstream traf-fic, most other Internet applications use highly asymmet-ric traffic ratios with large downstream flows and rela-tively small upstream flows.

5 The Need for a New MAC protocol

Designing a holistic TDMA MAC protocol that incorpo-rates these often conflicting aspects is a challenging un-dertaking. Current solutions address each aspect individ-ually, e.g., supporting asymmetric traffic patterns [26],providing service differentiation [23], or maximizingthroughput [29, 33, 31], yet none offers an integrated ap-proach to meet the requirements in their entirety. Fromour discussion so far we distill a list of goals that we setout to achieve with JaldiMAC, our proposed MAC pro-tocol:

6VoIP typically needs less than16 kbps and can tolerate la-tencies up to1000 ms, although user experience is better if keptbelow400 ms.

1. Supportpoint-to-multipoint setup over long dis-tances.

2. Respectdynamic traffic patterns with varyingsymmetry ratios.

3. Guarantee per stationfairness.

4. Provide strongQoSguarantees for different serviceclasses.

5. Allow for administrative preferential treatmentof stations and service classes.

6. CalibratePHY parameters(bitrate, channel-width,transmit power, etc.) on the fly, based on changingphysical RF conditions.

7. Handleerror correction to hide losses from over-laying TCP traffic.

6 TDMA for Point-to-Multipoint

In this section, we present the architecture of JaldiMAC,an adaptive TDMA-based point-to-multipoint MAC pro-tocol with support for differentiated service classes. Wedesigned JaldiMAC to achieve the first four goals set outin §5 while remaining sufficiently flexible for future im-plementation of the remaining goals. After introducingcommon terminology in§6.1, we discuss our implicitsynchronization mechanism in§6.2 which eliminates theproblem of clock drift and the need for time synchro-nization. Next, we present our service classes in§6.3;these classes provide a mechanism for stations to requestvarying treatment for traffic with different requirements.The next three sections describe JaldiMAC’s schedulingmechanism. First, a min-max algorithm (§6.4) assignsabstract “slots” to stations while ensuring fairness. Theseslots are then arranged to preserve service class guaran-tees by the ply scheduler (§6.5). Finally, a station mapper

Page 6: JaldiMAC – Taking the Distance Furthermatthias.vallentin.net/course-work/cs268-f09.pdf · Internet to rural areas in developing nations. WiFias the affordablechoice . As withmanyotherstud-ies,

transforms the slots into a final layout reflecting the sta-tions’ original requests (§6.6).

6.1 TerminologyAs explained in§2, CSMA/CA is a poor fit for long-distance wireless links. This observation has sparked re-evaluation of MAC design in the research community[33, 29, 31] and industry [8, 20], shifting attention towardTDMA solutions. Different TDMA designs often use dif-ferent terminology, rendering it difficult to compare theirproperties. In addition, the expressiveness of the mod-els is insufficient or not generic enough. Thus, it doesnot allow us to illustrate the space in its entirety. Sincewe have not found a compelling and consistent terminol-ogy with enough expressiveness, we now define one thatprecisely identifies the relevant components. In Figure 3,we present awindowof a TDMA schedulethat partitionstime into continuous time intervals. The schedule con-sists ofrounds7 that exhibit a specific structure which weterm layout. Each round begins with acontention slotthat allows stations to join the network or request trans-mission time, as discussed in§6.1.1. We define the roundsize as the distance between two contention slots. Theother slot type is a data slot that can be used for up-stream or downstream transmissions. We define aslot asthe minimal allocatable time unit, as determined by hard-ware and physics constraints. Switching the sender on aper-slot basis is too fine-grained because of the overheadinvolved; for this reason, we will often make use of acontiguous sequence of slots assigned to the same sta-tion, which we refer to as a singlechunk. Finally, we usethe termallocationto describe the sum of all time a sta-tion receives in a given round.

6.1.1 Dynamic Layouts

Traditional TDMA schemes [33, 31, 29] use rounds offixed size, with astatic layout that changes only whenstations join or leave the network. Further, the ratio be-tween downstream and upstream traffic is usually fixed.WiFiRe, for example, uses a 2:1 ratio [31]. Even so, ahard-coded symmetry ratio and static round layouts areinherently inefficient for a link with constantly changingtraffic characteristics. As the bandwidth required in eachdirection by each station changes, different layouts arerequired to ensure that the link is fully and fairly utilized.There are two general techniques used to generate thesedynamic layouts:

Centralized Monitoring is a technique in which theTDMA master is exclusively responsible for chang-ing the layout based on observed utilization. Sincethe intelligence is concentrated in the master, this

7We avoid the commonly used termframewhich alreadyhas specific meaning at the MAC layer.

Contention Slot

A B C B

Window

Time

Round

Chunk

Layout

!!! !!!A A

Slot

B B

Allocation

Figure 3: TDMA creates ascheduleover time that is di-vided intorounds, each of which demarcate the distancefrom the beginning of twocontention slots. The small-est allocatable unit is aslot and a contiguous sequenceof slots form achunk. The sum of all slots of a particularstation represent itsallocation.

scheme is simple to implement, but itsretrospectivenature and lack of ability to easily differentiate be-tween types of traffic are fundamentally limiting.

Decentralized Reporting allows each station to indi-vidually report its anticipated traffic needs; it waspioneered for 802.11 by JazzyMAC[26]. Each sta-tion must be more sophisticated, but they can usetheir superior knowledge to tailor their requests tothe requirements of individual traffic streams, andthey’re able to use their queues’ current sizes andgrowth rates to make better predictions about thefuture than is possible for the master alone.

JaldiMAC uses a dynamic layout with a decentralizedreporting scheme in which each of the stations requestsupstream bandwidth and the master arranges the layoutbased upon these requests, downstream bandwidth re-quirements, fairness considerations, and tunable param-eters that prevent excessive latency and keep the link re-sponsive. When making their requests, stations may takeinto account the contents of their queues, expectations offuture traffic, and the delay between the time at whichthey send their request and the time at which they are ac-tually granted permission to send. The requests can bemade in two ways:

Contention slot requestsare used when a station didnot receive any upstream slots in the previous lay-out. In the case a station is not given any time totransmit, it must make a bandwidth request usingthe contention slot. If there are many such stations,the potential for conflict is high; to compensate for

Page 7: JaldiMAC – Taking the Distance Furthermatthias.vallentin.net/course-work/cs268-f09.pdf · Internet to rural areas in developing nations. WiFias the affordablechoice . As withmanyotherstud-ies,

this, the contention slot is then expanded to decreaseconflicts.

Follow-up requests can be made by a station that hasalready received slots in the current layout. As partof the data it sends in its slot, the station can make anew request.

We note that the downstream data queued for a sta-tion can be viewed as a virtual request from the master;likewise, the contention slot can be viewed as a virtualstation in the schedule. We assume that this approach isused, and do not address downstream data or the con-tention slot specifically in the discussion that follows.

6.2 Implicit SynchronizationTDMA usually requires that the master and stations havea single understanding of the current time. If their clocksdrift apart, stations begin to overlap their transmissionsmore and more with those of their peers, and the resultis destructive interference. Because a drift of less thana millisecond can be problematic, synchronization is achallenging problem for TDMA-based MACs [29].

We propose to avoid the problem entirely by chang-ing the structure of the layout. Rather than transmit lay-out updates and downstream data in one large slot, as iscommon in TDMA implementations, JaldiMAC’s mas-ter transmits the downstream data for each station sep-arately. At the beginning of each downstream slot, themaster informs the receiving station of the length of itsupstream slot. After the downstream transmission hasfinished, the station begins transmitting until it has eitheremptied its queues or the assigned slot length is over. Themaster then moves on to the next station in the layout,transmitting its downstream data and giving it control ofthe medium in turn. If a station is scheduled to trans-mit in the layout but has no downstream data, the masteronly has to transmit its upstream slot length. Similarly,if a station is not scheduled to transmit in the layout buthas downstream data, the master informs the station thatit has a slot length of zero.

Traditional 802.11 uses a simple ARQ protocol that op-erates in stop-and-wait fashion: each sent packet is ac-knowledged individually by the receiver, which is ex-tremely inefficient for long distance links with high prop-agation delay. To solve this problem, JaldiMAC employsa bulk acknowledgementscheme [29] using cumulativeACKs for each station’s transmission. When the masterinforms the next station to transmit, it piggybacks theACK for the previous station at the beginning of its an-nouncement. Since all stations can hear the master in ourtopology, the previous station can overhear the master’stransmission and extract the relevant ACK informationwithout any unnecessary RX/TX context switches.

BSCS

STAs

Start of Layout

End of Layout

Figure 4: Layout structure for implicit TDMA synchro-nization. For each station, (STA) the master (BS) trans-mits downstream data and slot size and then receives up-stream data. The contention slot (CS) is handled in thesame way.

6.3 Differentiated Service ClassesThe service classes we have distinguished in§4 differbased upon their demands in terms of bandwidth, latency,and jitter. (Additional dimensions, such as error correc-tion, are also worth considering, though we leave this tofuture work.) JaldiMAC caters to these explicit require-ments by varying each station’s allocation and the fre-quency and variance of its chunks.

We argue that two conceptually different service mod-els, bulk and latency-sensitive, are enough to cover theneeds of the vast majority of service classes. The objec-tive of the bulk model is to maximize throughput; latencyis immaterial. Conversely, the latency-sensitive modelseeks to minimize the response time and avoid jitter asmuch as possible.

Different latency-sensitive applications produce pack-ets with different sizes. For example, VoIP packets areroughly 40 bytes [17] while the majority of video packetsrange from 1000 to 1500 bytes [15, 16]. Consequently,the minimum packet size required by the application dic-tates the appropriateminimum chunk sizefor the request.If we assign smaller chunks than the required packetsize, the packet would have to be split across multiplechunks. This fragmentation can increase latency substan-tially. Similarly, a latency sensitive application generatespackets at a certain rate. If the chunks that service theapplication’s traffic are spaced more closely than the rateat which packets are generated, some of the chunks willbe wasted; this will also result in an increase in latency.For these reasons, we divide the latency service modelinto multiple latency service classes, each with a differ-ent minimum chunk size and differentperiod.

We attempt to guarantee that the size and period prop-erties of latency-sensitive service classes will be hon-ored in the final round layout; however, certain combina-tions of these classes cannot be honored simultaneously.

Page 8: JaldiMAC – Taking the Distance Furthermatthias.vallentin.net/course-work/cs268-f09.pdf · Internet to rural areas in developing nations. WiFias the affordablechoice . As withmanyotherstud-ies,

Admittedly, our algorithms inherently introduce somerounding because of the quantization the intermediatesteps require. Therefore, while JaldiMAC’s enforcementof these properties is effective, it is also imperfect. Wedescribe JaldiMAC as offering “loose guarantees” for itsservice classes.

JaldiMAC is distinguished by two other atypical de-sign decisions. Many TDMA designs require chunks tobe allocated in multiples of a fixed-size slot; JaldiMAConly requires that the chunks be at least as large as theminimum chunk size. To provide more consistent latencyand jitter properties over time, we apply an Exponen-tially Weighted Moving Average (EWMA) to the periodof latency-sensitive requests. Due to time constraints, wewere unable to fully implement the former, and we couldnot implement the latter at all; therefore, we leave evalu-ation of these features to future work.

Having sketched design principles, we now turn to theactual algorithms that JaldiMAC employs. We begin bydiscussing our mechanism for ensuring fairness betweenstations.

6.4 Allocation FairnessIn the context of point-to-multipoint TDMA, transmis-sion time is the bottleneck resource;fairness in thisenvironment is the equitable sharing of time betweenmultiple stations. Existing point-to-multipoint TDMAschemes [26, 9] use an equality-oriented notion of fair-ness known as Jain’s fairness index [21], which they en-force by bounding transmission time. Unfortunately, itbecomes problematic to apply this measure when sta-tions can voluntarily yield if they finish early. Moreover,for our design, it is more suitable to define fairness rela-tive to the station’s requested time. Consequently, we usethemax-minfairness criterion instead.

In max-min fairness, no station receives more timethan it has requested and excess capacity is split evenlyamong the stations with outstanding demand. For ex-ample, when the available time is9 and the station re-quests are~ρ = (2, 4, 5), max-min assigns each stationsits fair share9/3 = 3 according to its needs:(2, 3, 3).This assignment leaves an excess of1 which is evenlysplit among the remaining stations, resulting in the fi-nal assignment of(2, 3.5, 3.5). If fractional assignmentsare not possible, as in our implementation, uneven excessshares are assigned arbitrarily.

We employ max-min fairness to treat each stationequally with respect to the sum of all its requests acrossclasses. In other words, we ensure fairness among sta-tions without considering which traffic classes each sta-tion has chosen for its requests.

The use of max-min fairness with our latency-sensitivetraffic model is complicated by the fact that a latency-sensitive request does not have a fixed size. Instead, its

size in a given round depends upon the number of chunksit is allocated in that round, which in turn depends uponits period and its first chunk’s position in the layout. Forexample, a latency-sensitive request with a period of 5slots will appear twice in a 10-slot round if its first chunkis placed in the first slot, but only once if it starts at thesixth slot. This problem is aggravated by the fact thatJaldiMAC allows round sizes to vary. We have addressedthis problem using worst-case analysis: we compute thesize of a latency-sensitive request by assuming the max-imum round size and that the request’s first chunk startsat the beginning of the round. As expected, this methodcan result in an overestimate of the request’s true sizeand an overallocation to the node in rounds where thereis relatively little contention. The result is that the sched-uler will leave holes in the layout which it expects to befilled by the request, but which the request cannot actu-ally fill. A correct solution to this problem would makeuse of knowledge about the scheduling algorithm in useto avoid overestimating; because we wanted to be able toexperiment with scheduling algorithms freely, we did notuse this approach. Instead, at the station mapping stagedescribed in§6.6, we dynamically allocate the unusedslots to any nodes which did not receive their entire re-quest.

In our implementation, we begin by aggregating allrequests from each station which are in the same ser-vice class; all bulk requests reside in one class, whilethe latency-sensitive requests are grouped by period andsize. These aggregate requests are then reformulated interms of slots, rather than bytes. The max-min fairnessalgorithm takes an input of the total number of slots re-quested by each station and yields fairly distributed allo-cations of each station. Each station’s allocation is thendivided proportionally among the service classes it hasrequested, with the restrictions that no class receives zeroslots, if possible, or more slots than its requests require.These per-class allocations are then sent to the next stagein our design: the ply scheduler.

6.5 Ply SchedulingTo turn the per-class allocations for each node into around layout, we use ply scheduling, a variant of stridescheduling[41]. Stride scheduling, originally invented toschedule processes, distributes access to a resource be-tween requests in a periodic fashion. Stride schedul-ing ensures that requests receive access proportional totheir priorities. It also minimizes variance and preventsstarvation. In the case of TDMA, we are dealing withstations instead of processes, and transmission time (orequivalently, transmission size) instead of CPU time, butstride scheduling is still an attractive algorithm becauseof these properties.

Unfortunately, JaldiMAC has multiple dimensions of

Page 9: JaldiMAC – Taking the Distance Furthermatthias.vallentin.net/course-work/cs268-f09.pdf · Internet to rural areas in developing nations. WiFias the affordablechoice . As withmanyotherstud-ies,

priority. We are not only concerned with the total trans-mission time allocated to a station, but also with the sizeof the chunks that transmission time is broken into, andthe period of time between them. With traditional stridescheduling, there is no direct control over chunk size,and the total transmission time for a station is inherentlylinked to the period of time between chunks - the size ofthe allocation for a station can only be expressed in stridescheduling by controlling how often that station will bescheduled in the layout.

We address this problem by enhancing stride schedul-ing to support the minimum chunk sizes discussed in§6.3. In our modified stride scheduling algorithm, the ser-vice classes’ periods are used as strides to select a class toplace; the class is then allocated a number of slots equalto its minimum chunk size. The bulk class, which has nominimum chunk size or period, is assigned1 for both val-ues. We additionally ensure that no class receives moreslots than it has requested; this produces a layout thatapproximates the ideal behavior for each class. Unfortu-nately, minimum chunk sizes seriously interfere with thestride scheduler’s ability to minimize jitter, as we showin §7; our experiments led us to believe that the problemcould not be solved without a fundamental redesign ofthe algorithm.

Our solution wasply scheduling, a new algorithm thatimproves upon stride scheduling by placing each ser-vice class separately, rather than assigning each slot inthe layout in sequential order as stride scheduling does.We place latency-sensitive service classes before the bulkclass, because we want to ensure that the actual periodswe deliver for those classes are as close as possible tothose requested by station, since the latency the trafficexperiences will be kept to a minimum if the station isable to transmit as soon as the next packet is ready. Evenmore important, we want the periods to be consistent, sothat jitter is minimized. Service classes with a larger min-imum chunk size rapidly become more difficult to placeas more of the layout becomes full, so we place thesebefore classes with smaller minimum chunk sizes.

Each “ply” is a virtual layout that is equal in size tothe total number of unassigned slots in the precedingply. The scheduler starts by placing the highest priorityservice class (the latency-sensitive service class with thelargest minimum chunk size, if any latency-sensitive re-quests have been made) on an initial ply equal in sizeto the full round; it assigns slots to that class, spaced ac-cording to the class’s period. The empty slots that remainunassigned then determine the size of the next ply. Theservice class which has the next highest priority is thenplaced in this ply in the same way, and the process con-tinues until the lowest priority service class (generallybulk) has been placed. This process is illustrated in Fig-ure 5. Each ply’s assignments are then mapped onto the

!

Ply 1

Ply 2

Ply 3

Final layout

Figure 5: A “ply” is a virtual layout with a size equal tothe number of unassigned slots in the preceding ply.

empty slots in the preceding ply, until the first ply hasbeen reached and the final layout has been determined.The relationship betweens plies is illustrated in Figure 5;pseudocode for the ply algorithm is provided in the ap-pendix.

After the ply scheduler has completed its task, each ser-vice class has been assigned space in the layout equalto the size of its allocation. To create the final layout,JaldiMAC breaks down the ply scheduler’s output fur-ther by assigning the slots to individual stations, and fine-tuning the layout at the byte (rather than slot) level. Thistask is performed by our station mapper.

6.6 Station MappingOnce a layout has been constructed in terms of serviceclass slots, the next step is to assign these slots to indi-vidual stations based upon their requests. For the latencysensitive service classes, JaldiMAC’s approach is to as-sign slots in a round-robin fashion to each station with amatching request. Since a service class has a single min-imum chunk size for all requests, a normal stride sched-uler can be used to carry out this assignment.

Bulk requests can be placed with more freedom;JaldiMAC takes advantage of this to minimize RX/TXswitches and the overhead they entail. The station map-per’s strategy is to place slots for the same station nextto each other; to do so, it identifies unassigned inter-vals, which are sequences of bulk-class slots that havenot yet been assigned to a station. First, the station map-per places “seeds” for any stations which have only bulkrequests, since they are not yet represented in the lay-out. Each seed is placed in the middle of the largest re-maining unassigned interval. From this point, the stationmapper follows an iterative process: for each bulk re-quest which has still not received all of the slots it wasallocated, the station mapper finds the largest unassignedinterval which has a slot for the same station on one end,and assigns a new slot for that station next to the already-assigned one. If no appropriate intervals were found, thestation mapper places a new seed for that station. Theprocess continues until every bulk request is satisfied.

This method alone yields a suboptimal layout. Theproblem is that a seed can sometimes be placed in away that divides what could have been a single largechunk for a station into two smaller chunks, with a chunk

Page 10: JaldiMAC – Taking the Distance Furthermatthias.vallentin.net/course-work/cs268-f09.pdf · Internet to rural areas in developing nations. WiFias the affordablechoice . As withmanyotherstud-ies,

for another station in the middle. To solve this prob-lem, JaldiMAC examines each interval in the layout thatconsists only of bulk requests and rearranges it so thatchunks from a given station are placed together; thiscan be done with any sorting algorithm. The stations as-signed to the latency-sensitive slots that book-end the in-terval are then identified, and any chunks in the intervalthat belong to those stations are moved to the appropri-ate end of the interval. This process minimizes RX/TXswitches within the constraints imposed by rest of thelayout. We note that, due to time constraints, our simula-tor does not fully implement this optimization.

To construct the final layout for the current round,JaldiMAC converts this slot-based layout into one basedupon bytes. The entire round is represented as a streamof bytes, and the chunks for each station are convertedinto intervals in this stream. Bulk request intervals aregreedily filled until all of the station’s bulk requests aresatisfied. Latency-sensitive request intervals are sized ac-cording to the size parameter of their service class; be-cause JaldiMAC rounds these values up to a whole num-ber of slots for layout purposes, the resulting intervalswill sometimes not fill the entire time dedicated to thatslot. Due to time constraints, we do not take advantageof these gaps; however, it would be possible to arrangethe layout so that the gaps can be used to give more timeto stations which have additional data to transmit. We be-lieve that this is a crucial optimization to ensure that themedium is used as efficiently as possible, but we leavethe algorithm for future work.

7 Evaluation

In the previous section, we described JaldiMAC, ournovel point-to-multipoint TDMA MAC with differenti-ated service classes, max-min fair allocation, and dy-namic round layout. As JaldiMAC is unique in its com-bination of features, we now try to understand and char-acterize its performance from various perspectives.

We first evaluate the scheduling component ofJaldiMAC in §7.1, where we compare our ply scheduleragainst stride scheduling [41]. Next, we shift our focus in§7.2 to the granularity of stations and investigate the nodemapping component. After assessing the context switchoverhead in§7.3 we summarize our observations in§7.4.

7.1 Class-level JitterIn the following, we compare our ply scheduler withthe previously mentioned stride [41] scheduler, which isa deterministic proportional-share scheduling techniquewith low response time variance. Considered from anetworking perspective, stride scheduling represents re-source rights by tickets that reflect the throughput of thestations. The frequency (or latency) is directly propor-

tional to the amount of allocated tickets. That is, a stationwith half as many tickets as another is scheduled half asoften.

This comparison is at the level of service classes, i.e.,we construct a layout for classes rather than stations. Ina later step, stations’ requests are mapped onto this lay-out (see§7.2). For this evaluation, we fix the round sizeand generate all possible allocations for three differentservice classes: bulk, latencyL1, and latencyL2. Sincewe make no guarantees with respect to jitter for the bulkclass, we omit it. The only difference betweenL1 andL2 is the minimum chunk size, which is1 for L1 and2for L2. (We anticipate these to be the most common inpractice.) Figure 6 displays our results for a round sizeof 50 slots. Jitter is plotted as the standard deviation ofthe inter-chunk distance for each service class. As wecan see in Figure 6a, ply exhibits remarkably lower jit-ter values (median = 0.41) compared to stride (median= 0.90) for service classL2. Ply still performs better inservice classL1 with a median 0.84, compared to themedian 0.97 of stride, although with a longer tail that in-dicates poor performance in a small number of patholog-ical cases. It is worth noting that a realistic minimal timeslot size for 802.11g hardware is 5ms[26], which wouldgive this round a durations of 250ms. In practice, 250msis our desired upper limit, as we would like to remainbelow the resulting 500ms round trip latency.

The superior performance of ply can be explained byjuxtaposing the details of the algorithms’ operations. Plyplaces the largest latency-sensitive classentirely beforemoving on to the next smaller one. Stride works its wayincrementally through the round, placing the “next” classas determined by each class’ stride and the placementsthat have already occurred. The linear and local nature ofthis approach results in higher deviation from the opti-mum when dealing with classes with varying minimumchunk sizes. This is due to the fact that the algorithm isso sensitive to the sizes of the chunks that have alreadybeen placed. Ply, however, achieves placement at or closeto the theoretical optimum for high-priority classes byplacing them first, rendering it particularly attractive forscenarios that require loose service guarantees.

7.2 Request-level Jitter and LatencyThe above jitter analysis profiles ply and stride on a ser-vice class level, which covers only a portion of the se-quence of action. After placing the service classes, the in-dividual stations’ granted requests must be mapped ontothe resulting layout. Ultimately, this is where jitter mat-ters the most since the actual stations, and not the classes,will suffer from high jitter.

For this evaluation, we generated 10,000 random setsof requests. Each set contained random requests forfive nodes. To simplify the analysis, the requests for

Page 11: JaldiMAC – Taking the Distance Furthermatthias.vallentin.net/course-work/cs268-f09.pdf · Internet to rural areas in developing nations. WiFias the affordablechoice . As withmanyotherstud-ies,

0.2 0.5 1.0 2.0 5.0

0.0

0.2

0.4

0.6

0.8

1.0

SD

CD

F

Ply...L2Stride...L2

(a) Roundsize 50 (250ms), latency classL2.

0.2 0.5 1.0 2.0 5.0

0.0

0.2

0.4

0.6

0.8

1.0

SD

CD

F

Ply...L1Stride...L1

(b) Roundsize 50 (250ms), latency classL1.

Figure 6: Comparing jitter of ply and stride over all possible allocations. The x-axis (log scale) shows the standarddeviation of the period between two successive chunks for the given service classes. The y-axis shows the CumulativeDistribution Function (CDF).

0 1000 2000 3000 4000 5000

0.0

0.2

0.4

0.6

0.8

1.0

Bytes

CD

F

PlyStride

Figure 7: Jitter at the request level, analyzed in termsof the variance of inter-chunk periods for each latency-sensitive request.

each node are constrained to contain no more than onelatency-sensitive service class; an arbitrary number ofbulk requests are allowed. (This still means JaldiMACmust contend with up to five different latency-sensitiveservice classes for each set of requests.) The slot sizeis 500 bytes, and the round size is 50 slots; each bulkrequest may be up to 10,000 bytes, while each latency-sensitive request’s class may have a maximum size of1,000 bytes and a maximum period of 25,000 bytes.These requests are run through a simulator that performsall of the tasks described in§6, from max-min fairnessto station mapping. We ran the same sets of requeststhrough our simulated implementation twice, once usingthe stride scheduler to generate the layout, and once us-

−5000 0 5000 10000 15000

0.0

0.2

0.4

0.6

0.8

1.0

Bytes

CD

F

PlyStride

Figure 8: Difference between average period and re-quested period.

ing the ply scheduler.Our first experiment examined the jitter experienced at

the individual request level; as before, we only considerlatency-sensitive requests. In Figure 7, we see that bothstride and ply perform quite well, with a median jitter of0 bytes. However, the average jitter of stride (671 bytes)is almost 248% higher than the average jitter of ply (193bytes).

In our second experiment, we compare the differencebetween the average period that is actually allocated foreach request versus the requested period. We round therequested period up to the next slot size to focus on thedifferences between the algorithms, as neither algorithmcan handle periods at a finer resolution than this. Asshown in Figure 8, ply is able to provide the best possi-

Page 12: JaldiMAC – Taking the Distance Furthermatthias.vallentin.net/course-work/cs268-f09.pdf · Internet to rural areas in developing nations. WiFias the affordablechoice . As withmanyotherstud-ies,

ble period at the slot level for about 50% of the requests,and its performance remains better or equal to stride inall cases. Any increase in the period above what was re-quested means that the scheduling algorithm has intro-duced unnecessary latency; ply’s better ability to deliverthe requested period will therefore be observed as lowerlatency by applications. Additionally, stride schedulingsometimes delivers a period that is too short; this is madevisible in the figure by the portion of its CDF that has anegative value. In this situation, the latency-sensitive ap-plication may not yet have delivered the next packet, sothe slot may go to waste. Ply always avoids this problem,which is a highly desirable property.

7.3 RX/TX Context SwitchesHaving discussed jitter and latency, we evaluate over-head introduced by JaldiMAC. As mentioned in§6.2,long distance wireless links suffer from overhead asso-ciated with RX/TX context switches. At the same time,our loose service guarantees require a timely preemptionof the schedule to minimize jitter, which inherently re-quires more context switches.

Figure 9 quantifies the number of RX/TX switches fora given round. For this analysis, we fed our simulator10,000 rounds with a mean and median round size of20,860 and 24,000 respectively. Our comparison of strideand ply in Figure 9a shows that there is barely a differ-ence between the two. Stride has 14.52 context switcheson average, whereas ply follows closely with 15.26. Thisdifference is negligible in contrast to the dramatic differ-ence in the jitter comparison in§7.1.

We are also interested in the number of RX/TX con-text switches as a function of round size, which is de-picted by Figure 9b. Here, we see that the number ofcontext switches only increases slowly with the numberof rounds. To visualize the relationship between roundsize and RX/TX switches, we add a Loess Curve whichuses local point sets to create a function which describesthe data variation.

7.4 ResultsOverall, we find that JaldiMAC performs surprisinglywell at this early simulated stage.

There exists a clear trade-off between achieving ourloose service class guarantees and RX/TX contextswitches. We currently only have a simulated implemen-tation of JaldiMAC, and a real implementation would al-low us to make a better cost-benefit analysis using realtraffic. Nevertheless, our preliminary data suggests thatthe increase in RX/TX switches caused by using plyscheduling is very small, and is likely worth the cost tobenefit from its superior ability to deliver low jitter andlatency to sensitive applications.

8 Future Work

In this section, we present future work. Due to time limi-tations, we were not able to fully implement every aspectof JaldiMAC in our simulator; these short-term issuesare noted in the text, and we do not repeat them here.Rather, we focus here on long-term work that is neces-sary to make JaldiMAC complete and deployable.

Our innovative method of deployment greatly reducesloss caused by interference and so we anticipate low losspatterns as observed by Sheth et al. [38] for rural longdistance links. In case the loss rate turns out to be non-negligible, we will integrate various link-layer recoveryschemes such as ARQ and FEC in the next iteration ofJaldiMAC.

Additionally, there is a wide range of physical param-eters that leave ample room for tuning: varying channelwidth, adapting the bitrate, adjusting transmit power, andswitching frequencies. It may be particularly useful toadjust these parameters dynamically.

For our prototype, we plan to modify the open-sourceATH9k driver [3] to enable flexible configuration of low-level parameters. In particular, we envision to prototypeJaldiMAC as a Click [22] kernel module that offers theuser a different virtual interface per service model orclass, exposing a clear interface that enables fine-grainedquality of service support.

We plan to deploy two testbeds in parallel – one byAirJaldi in rural India and one in the Bay Area, Califor-nia, where we already have several 802.11n long distancelinks in place. By comparing the two testbeds we expectto distill insights about the variations in interference ofurban versus rural environments. As soon as the proto-type reaches maturity, AirJaldi will begin deployment forlinks throughout rural India.

9 Conclusion

Although WiFi is a cost effective and promising tech-nology for extending broadband Internet connectivity topoor and sparsely populated communities, its prolifer-ation remains slow. Our first contribution represents astudy of the economic challenges faced by small ruralWISPs. We identify towers as the biggest barrier to entryand suggest use of mountains or hills instead for place-ment of the base stations, even if the subscribers are faraway. Our method of deployment is distinctive in its useof directional antennas to minimize interference whilemaximizing the service area.

In order to enable our proposed deployment topol-ogy, we contribute JaldiMAC, a new MAC architecturethat achieves the following goals:(i) enable point-to-multipoint setups while harnessing the broadcast charac-teristics to its advantage,(ii) adapt to the asymmetry of

Page 13: JaldiMAC – Taking the Distance Furthermatthias.vallentin.net/course-work/cs268-f09.pdf · Internet to rural areas in developing nations. WiFias the affordablechoice . As withmanyotherstud-ies,

0 10 20 30 40

0.0

0.2

0.4

0.6

0.8

1.0

RX/TX switches

CD

F

PlyStride

(a) RX/TX switches for ply and stride.

5000 10000 15000 20000 25000

010

2030

4050

Bytes

RX

/TX

sw

itche

s

(b) RX/TX switches as a function of round size for ply.

Figure 9: Number of RX/TX switching per round.

Internet traffic, and(iii) provide loose quality of serviceguarantees for latency-sensitive traffic without compro-mising fairness.

Our simulator-based evaluation of JaldiMAC suggeststhat it fulfills its design goals. Its innovative scheduler isable to provide a 71% decrease in jitter and superior la-tency characteristics in exchange for a 5% increase in av-erage RX/TX switches, as compared to a standard stridescheduler. Overall, we find that JaldiMAC performs sur-prisingly well at this early stage.

AcknowledgmentsWe thank Rabin Patra and Sergiu Nedevschi for the longbrainstorming sessions and their guidance. The measure-ment data from their past experiments with long-distancelinks, along with the WiLDMAC source-code are invalu-able, as are their comments while reviewing the draft forthis paper. We also thank Anmol Sheth who joined ourdiscussions over the phone and provided the draft forthe yet unpublished paper[19]. Matt Podolsky and MattTierney for the details about ATH9K and directions forpacket injection, although we run out of time before wecould implement the protocol using real radios. Finally,we thank Teresa and Yael for their proof reading target-ing earthly humans and not CS people.

References

[1] AirJaldi.Org - Wireless Network, Dharamsala, India.http://www.airjaldi.org.

[2] Akshaya E-Literacy Project. http://www.akshaya.net.[3] ath9k driver. http://linuxwireless.org/en/

users/Drivers/ath9k.[4] Freifunk Community Wireless Mesh Network, Berlin,

Germany. http://start.freifunk.net/.[5] Tarana Wireless, Berkeley, CA. http://www.

taranawireless.com/tech.

[6] The AirJaldi Mesh Router, AirJaldi.Org, Dharamsala, In-dia. http://drupal.airjaldi.com/node/9.

[7] The United Nations Population Database - WorldUrbanization Prospects: The 2007 Revision.http://esa.un.org/unup/.

[8] Ubiquiti Networks.http://www.ubnt.com.[9] WiMAX forum. http://www.wimaxforum.org.

[10] Ashutosh, Nirav, and Bhaskaran. Implementation andevaluation of a tdma mac for wifi-based rural mesh net-works. page 6, 2009.

[11] H. Balakrishnan, V. N. Padmanabhan, S. Seshan, andR. H. Katz. A Comparison of Mechanisms for Improv-ing TCP Performance over Wireless Links.IEEE/ACMTrans. Netw., 5(6):756–769, 1997.

[12] H. Balakrishnan, S. Seshan, E. Amir, and R. H. Katz.Improving TCP/IP performance over wireless networks.In MobiCom ’95: Proceedings of the 1st annual interna-tional conference on Mobile computing and networking,pages 2–11, New York, NY, USA, 1995. ACM.

[13] V. Bharghavan, A. Demers, S. Shenker, and L. Zhang.MACAW: a Media Access Protocol for Wireless LAN’s.In SIGCOMM ’94: Proceedings of the conference onCommunications architectures, protocols and applica-tions, pages 212–225, New York, NY, USA, 1994. ACM.

[14] E. Brewer, M. Demmer, B. Du, M. Ho, M. Kam, S. Nede-vschi, J. Pal, R. Patra, S. Surana, and K. Fall. The casefor technology in developing regions.IEEE Computer,38(6):25–38, 2005.

[15] P. Calyam and C. Lee. Characterizing voice and videotraffic behavior over the Internet. InInternational Sym-posium on Computer and Information Sciences (ISCIS),2005.

[16] Cisco. Implementing QoS Solutions for H.323 VideoConferencing over IP. http://www.cisco.com/en/US/tech/tk543/tk757/technologies_tech_note09186a0080094968.shtml.

[17] Cisco. Voice Over IP - Per Call Bandwidth Con-sumption. http://www.cisco.com/en/US/tech/tk652/tk698/technologies_tech_note09186a0080094ae2.shtml.

[18] R. Gummadi, R. K. Patra, S. Nedevschi, S. Surana, andE. A. Brewer. A radio multiplexing architecture for high

Page 14: JaldiMAC – Taking the Distance Furthermatthias.vallentin.net/course-work/cs268-f09.pdf · Internet to rural areas in developing nations. WiFias the affordablechoice . As withmanyotherstud-ies,

throughput point to multipoint wireless networks. In C. E.Perkins, E. M. Belding, and R. Jain, editors,Wireless Net-works and Systems for Developing Regions, pages 47–52.ACM, 2008.

[19] D. Halperin, W. Hu, A. Sheth, and D. Wetherall. 802.11with Multiple Antennas for Dummies, 2010.

[20] IEEE 802.16. IEEE 802.16 Wireless MAN Standard forWireless Metropolitan Area Networks.

[21] R. Jain, D. Chiu, and W. Hawe. A Quantitative MeasureOf Fairness And Discrimination For Resource AllocationIn Shared Computer Systems. Technical Report TR-301,DEC Research, September 1984.

[22] E. Kohler, R. Morris, B. Chen, J. Jannotti, and F. M.Kaashoek. The Click Modular Router.ACM Transactionson Computer Systems, 18(3):263–297, August 2000.

[23] R. Lenagala and Q.-A. Zeng. Study of dynamic mac layerparameters for starvation prevention in the ieee 802.11emac layer protocol. InWireless and Mobile Computing,Networking and Communications, 2006. (WiMob’2006).IEEE International Conference on, pages 124–131, June2006.

[24] S. Marwaha, J. Indulska, and M. Portmann. Challengesand recent advances in qos provisioning, signaling, rout-ing and mac protocols for manets. InTelecommunicationNetworks and Applications Conference, 2008. ATNAC2008. Australasian, pages 97–102, 2008.

[25] S. Mascolo, C. Casetti, M. Gerla, M. Sanadidi, andR. Wang. TCP Westwood: Bandwidth estimation for en-hanced transport over wireless links. InProceedings ofthe 7th annual international conference on Mobile com-puting and networking, page 297. ACM, 2001.

[26] S. Nedevschi, R. Patra, S. Surana, S. Ratnasamy, L. Sub-ramanian, and E. Brewer. An adaptive, high performancemac for long-distance multihop wireless networks. InACM MOBICOM, 2008.

[27] M. Neufeld, J. Fifield, C. Doerr, A. Sheth, and D. Grun-wald. Softmac - flexible wireless research platform. InFourth Workshop on Hot Topics in Networks (HotNets-IV), November 2005.

[28] S. Park and D. Sy. Dynamic control slot scheduling algo-rithms for tdma based mobile ad hoc networks. InMili-tary Communications Conference, 2008. MILCOM 2008.IEEE, pages 1–7, Nov. 2008.

[29] R. Patra, S. Nedevschi, S. Surana, A. Sheth, L. Subrama-nian, and E. Brewer. WiLDNet: Design and Implemen-tation of High Performance WiFi Based Long DistanceNetworks. InNSDI, 2007.

[30] R. Patra, S. Surana, S. Nedevschi, and E. Brewer. OptimalScheduling and Power Control for TDMA based Pointto Multipoint Wireless Networks. InACM SIGCOMMWorkshop on Networked Systems for Developing Regions(NSDR 2008). ACM, 2008.

[31] K. Paul, A. Varghese, S. Iyer, and B. R. A. Kumar.WiFiRe: Rural Area Broadband Access Using the WiFiPHY and a Multisector TDD MAC.New Directions inNetworking Technologies in Emerging Economics, IEEECommunications Magazine, 2006.

[32] B. Raman and K. Chebrolu. Design and Evaluation of anew MAC Protocol for Long-Distance 802.11 Mesh Net-works. InACM MOBICOM, August 2005.

[33] B. Raman and K. Chebrolu. Design and evaluation ofa new mac protocol for long-distance 802.11 mesh net-works. In MobiCom ’05: Proceedings of the 11th an-nual international conference on Mobile computing and

networking, pages 156–169, New York, NY, USA, 2005.ACM Press.

[34] A. Rao and I. Stoica. An overlay mac layer for 802.11networks. InMobiSys ’05: Proceedings of the 3rd in-ternational conference on Mobile systems, applications,and services, pages 135–148, New York, NY, USA, 2005.ACM Press.

[35] K. A. Rudre, P. S. Iyer, P. P. Kulkarni, K. A. Rudre, P. S.Iyer, and P. P. Kulkarni. MH-WiFiRe: Multi-Hop Exten-sion to WiFiRe, 2009.

[36] A. Sharma and E. M. Belding. Freemac: framework formulti-channel mac development on 802.11 hardware. InPRESTO ’08: Proceedings of the ACM workshop on Pro-grammable routers for extensible services of tomorrow,pages 69–74, New York, NY, USA, 2008. ACM.

[37] A. Sharma, M. Tiwari, H. Zheng, and S. U. C. Barbara.Madmac: Building a reconfigurable radio testbed usingcommodity 802.11 hardware. InFirst IEEE Workshopon Networking Technologies for Software Defined Radio(SDR) Networks, September 2006.

[38] A. Sheth, S. Nedevschi, R. Patra, S. Surana, L. Subra-manian, and E. Brewer. Packet Loss Characterization inWiFi-based Long Distance Networks. InIEEE INFO-COM, 2007.

[39] S. Surana, R. Patra, S. Nedevschi, and E. Brewer. Deploy-ing a Rural Wireless Telemedicine System: Experiencesin Sustainability.Computer, 41(6):48–56, 2008.

[40] S. Surana, R. Patra, S. Nedevschi, M. Ramos, L. Subra-manian, Y. Ben-David, and E. Brewer. Beyond pilots:keeping rural wireless networks alive. InNSDI’08: Pro-ceedings of the 5th USENIX Symposium on NetworkedSystems Design and Implementation, pages 119–132,Berkeley, CA, USA, 2008. USENIX Association.

[41] C. A. Waldspurger and W. E. Weihl. Stride Scheduling:Deterministic Proportional-Share Resource Management.Technical report, 1995.

[42] G. Xylomenos, G. Polyzos, P. Mahonen, and M. Saara-nen. TCP performance issues over wireless links.IEEECommunications Magazine, 39(4):52–58, 2001.

Page 15: JaldiMAC – Taking the Distance Furthermatthias.vallentin.net/course-work/cs268-f09.pdf · Internet to rural areas in developing nations. WiFias the affordablechoice . As withmanyotherstud-ies,

A Appendix

1 def p ly ( l a y o u t S i z e , c l a s s e s ) :2 l a y o u t = c rea teEmp tyLayou t ( l a y o u t S i z e )3 c l a s s = c l a s s e s . pop ( )4 pos = 0 , a l l o c a t e d = 05 whi le pos < l a y o u t S i z e and a l l o c a t e d < c l a s s e s . a l l o c a t i o n :6 l a y o u t [ pos : pos + c l a s s. minChunk ] = c l a s s7 pos = pos + c l a s s. minChunk + c l a s s. p e r i o d8 a l l o c a t e d = a l l o c a t e d +c l a s s. minChunk9 i f c l a s s e s i s not empty :

10 nex tLayou t = p l y ( l a y o u t S i z e− a l l o c a t e d , c l a s s e s )11 nex tLayou tPos = 012 f o r pos i n r ange ( 0 , l a y o u t S i z e )13 i f l a y o u t [ pos ] i s not empty :14 cont inue15 l a y o u t [ pos ] = nex tLayou t [ nex tLayou tPos ++]16 re turn l a y o u t

Figure 10: Pseudocode of the ply algorithm in a Python-like language.