JaldiMAC – Beyond Simulation Yahel Ben-David, Seth Fowler, Shaddi Hasan Department of Electrical Engineering and Computer Science University of California, Berkeley {yahel,sfowler,shaddi}@eecs.berkeley.edu ABSTRACT WiFi has been promoted as an affordable technology that can provide broadband Internet connectivity to poor and sparsely populated regions. A growing number of deployments, some of substantial scale, are making use of WiFi to extend connectivity into rural areas. However, the vast majority of the 3.5 billion people living in rural villages [1] are still unserved. To reach these people, new technology must be developed to make small rural wireless Internet service providers (WISPs) profitable. In previous study [2], we have identified radio towers as the largest expense for WISPs; to reduce or eliminate this barrier to entry, we proposed a novel point-to-multipoint deployment topology that takes advantage of “natural towers” such as hills and mountains to provide connectivity even over great distances. In this work we make this design practical with two components that together make up JaldiMAC 1 : Jaldi9K, an open source driver for commodity wireless hardware that offers comprehensive control over physical layer parameters and makes few assumptions about the overlying MAC layer; and JaldiTDMA, a TDMA scheduler that (i) enables and is optimized for point-to-multipoint deployments, (ii) adapts to the asymmetry of Internet traffic, and (iii) provides loose quality of service guarantees for latency sensitive traffic without compromising fairness. To our knowledge, JaldiMAC is the first integrated solution that combines all of these elements, and Jaldi9K is the first Linux wireless driver with the flexibility to effectively implement JaldiMAC on commodity hardware. 1 Introduction Our goal is to extend broadband Internet connectivity to currently underserved rural communities in developing nations by developing a novel technical solution. In our previous work [2], we developed a novel deployment methodology aimed towards making the operation of rural wireless Internet service providers (WISPs) more profitable, and proposed the outline of a novel MAC protocol to support this deployment methodology. Traditionally, fixed wireless deployment topology make user of towers centrally located among subscribers and equipped with sector antennas. This approach is not economical for a rural WISP due to the high cost associated with towers for the low market densities. Our deployment model makes use of directional antennas atop distant mountains or hills to provide connectivity without the need of towers. More details about our deployment methodology, along with a comparison of different technologies available to WISPs are available in [2]. 1 Jaldi is the Hindi word for fast/quick. The focus of this work is the implementation of the MAC protocol outlined in [2] to support our novel deployment topology. We intend our MAC protocol to support different types of service, such as VoIP, audio/video conferencing, and bulk transfers. Our choice to integrate this concept from the beginning is motivated by the difficulty of retrofitting it onto an existing MAC protocol [8] [9] and by the inefficiencies of enforcing such policies at higher layers, which we discuss later. The often conflicting networking requirements of different applications make designing a MAC that provides good support for all of them a very complex task. Especially challenging from the perspective of the MAC layer is VoIP 2 , which is very sensitive to jitter and uses very small packets. Many Internet applications exhibit dynamic and asymmetric traffic patterns that are also difficult to support. A holistic Time Division Multiplexed Access (TDMA) MAC design that incorporates all of these concerns is hard to produce for any team; to make the task more manageable, current solutions address each aspect individually, e.g., supporting asymmetric traffic patterns [10], providing service differentiation [9], or maximizing throughput [11] [12]. However, none offers an integrated approach to meet the requirements in their entirety. From our previous work, we have distilled a list of goals that we set out to achieve with JaldiMAC, our proposed MAC protocol: 1. Support a point-to-multipoint setup over long distances. 2. Respect dynamic traffic patterns with varying symmetry ratios. 3. Guarantee per-session fairness. 4. Provide strong quality of service (QoS) guarantees for different service classes. 5. Allow for administrative preferential treatment of subscribers and service classes. 6. Calibrate physical layer (PHY) parameters (bitrate, channel- width, transmit power, etc.) dynamically, based on changing physical RF conditions and traffic patterns. 7. Handle error correction to hide losses from overlaying TCP traffic while allowing congestion avoidance to work correctly. The remainder of the paper begins with a study of related work in section 2 and continues in section 3 with a description of our system architecture, detailing both key components; our Jaldi9k kernel driver and the JaldiTDMA scheduler. We discuss our measurements and lab setup in 4 and conclude in section 5. 2 Background and Related Work Although 802.11 was originally designed for LAN applications, its high proliferation and low cost drove its use beyond the 2 VoIP typically needs less than 16kbps of bandwidth and can tolerate latencies up to 1000ms, although user experience is better if kept below 400ms.