Improving performance of 802.11 wireless infrastructure and mesh networks
802.11 wireless Local Area Networks (LANs) have been very successfully deployed at almost everywhere in the past decade. On one hand, wireless LANs provide easier connectivity and lower cost compared to wired networks. On the other hand, wireless LANs still suffer from poor performances, such as low throughput and high loss rate. Improving the performance of wireless networks are both important and timely.
There are two types of 802.11 wireless networks, infrastructure networks and mesh networks. Infrastructure networks have at least one wireless access point and all data transmission involves an access point. Most packets are only transmitted over one hop from a client to an access point. On the other hand, wireless mesh networks have no access point and are ad-hoc based. Nodes in mesh networks not only transmit their own packets, but also forward packets for other neighbor nodes. Packets may pass over multiple hops before arriving at their destinations.
The first part of this dissertation focuses on improving performance of wireless infrastructure networks. The major problem that constrains the performance of wireless infrastructure network is limited bandwidth spectrum and limited number of physical channels. Wireless medium are shared by all nodes in the network. As the number of user nodes increases, the performance deceases quickly. However, most 802.11 infrastructure networks only use one physical channel despite there are multiple non-overlapping channels. In the first part, we propose to utilize multiple non-overlapping channels alone with directional antennas to form a Multi-Channel Multi-Sector Directional Antenna (MCMSDA) wireless architecture network. After introducing the network architecture, we propose a TDMA-based MAC layer and formulate the channel time allocation problem as an optimization problem. After introducing a Lagrangian Relaxation based load-balancing algorithm as the solution, we show that the algorithm obtains good sub-optimal solution very quickly in simulation study. We also propose two methods to accelerate the load-balancing process further.
The second and the third parts of this dissertation focus on improving the TCP performance in wireless mesh networks. TCP traffic is expected to be the dominant transport protocol in wireless networks. It is well known that TCP performance is very sensitive to loss rate. Since packets usually have to pass over multiple hops in wireless mesh networks, the major problem that constrains TCP performance in wireless mesh networks is the high link layer loss rate due to interferences and collisions.
In the second part, we propose an application layer relay approach and develop a model to analyze the TCP performance with relays. Our model and experiments in a real wireless mesh network show that the nodes in wireless networks act more independently with the present of relays, and the round trip time is reduced also. However, relays also increase competition within the network. To reduce the competition, a simple scheduling process is introduced to coordinate the relay nodes. The experiments show that relays with this simple scheduling process can achieve up to 50% performance gain in a 4-hop network.
In the third part, we investigate the benefit of network coding for TCP traffic in a wireless mesh network. We implement network coding in a real wireless mesh network and measure TCP throughput in such a network. Unlike previous implementations of network coding in mesh networks, we use off-the-shelf hardware and software and do not modify TCP or the underlying MAC protocol. Therefore, our implementation can be easily exported to any operational wireless mesh network with minimal modifications. Furthermore, the TCP throughput improvement reported in this work is due solely to network coding and is orthogonal to other improvements that can be achieved by optimizing other system components such as the MAC protocol. We conduct extensive measurements to understand the relation between TCP throughput and network coding in different mesh topologies. We show that network coding not only reduces the number of transmissions by sending multiple packets via a single transmission but also results in smaller loss probability due to reduced contention on the wireless medium. Unfortunately, due to asynchronous packet transmissions, there is often little opportunity to code resulting in small throughput gains. Coding opportunity can be increased by inducing small delays at intermediate nodes. However, this extra delay at intermediate nodes results in longer round-trip-times that adversely affect TCP throughput. Through experimentation, we find a delay in the range of 1 ms to 2 ms to maximize TCP throughput. For the topologies considered in this paper, network coding improves TCP throughput by 20% to 70%.