Sumit Rangwala
"The essence of our effort to see that every child has a chance must be to assure each an equal opportunity, not to become equal, but to become different- to realize whatever unique potential of body, mind and spirit he or she possesses."
John Fischer
Interference-Aware Fair Rate Control (IFRC)
Overview
IFRC is a distributed protocol to provide fair and efficient rate to all the flows in a network consisting of N nodes simultaneously transmitting data over multiple hops to a single node (base station). We measure fairness as max-min fairness and our efficiency criteria requires the capacity of the network to be utilized to its maximum as long as it does not reduces fairness. It should be noted that we measure fairness and efficiency based on the end-2-end goodput of each flow, i.e. based on the number of packets received from a node at the base station. IFRC therefore is not a transmission scheduling scheme. It is a transport layer protocol that works above the MAC layer to provide transport-layer fairness to the flows. IFRC supports
  • Weighted fairness based on weights assigned to each flow
  • Only a subset of node sending data
  • Nodes joining and leaving the network
  • Fairness with in-network aggregation
  • Multiple base stations
IFRC
As a congestion control scheme for wireless networks, IFRC consist of
  • Congestion Detection: Building on previous work we detect congestion based on current packet queue size and congestion thresholds.
  • Congestion Sharing: On congestion detection IFRC shares congestion information with the set of flows that share capacity with the congested link. Our main contributions are
    • Precisely identifying the set of flows to be signaled during congestion at a particular node in a wireless network. We define this set of flows (and the corresponding nodes from which they originate) as the potential interferers of the congested node.
    • A simple distributed mechanism to efficiently share congestion information to all the potential interferers. (we aren't using packet drop as a signaling mechanism.)
  • Rate Adaptation: Flows adapt their rate based on AIMD rule. However our scheme uses multiple queue thresholds, signaling congestion (feedback signal) on every threshold, thus eliminating any packet loss due to queue overflow in our experiments.
Results

IFRC had been implemented on Tmote Sky and tested on our testbed. Below are the results showing performace of IFRC.


This figure shows the routing tree used during the experiments. (The numbers show the packet reception ratio for that link averaged over the entire run of the experiment.) The topology of the network can be viewed here (dotted lines are asymmetric links).

Figure 1. Routing Tree

The next figure shows a plot of end-2-end goodput for every node in the network. The green bar shows the rate at which a node sent its own packets and the red bar shows the rate at which packets were received from that node at the base station. (Note: Bar for node 1 represents the beacon messages from the base station.)

Figure 2. End to End Goodput

The next figure shows the instantaneous queue at every node during the experiment. (Buffer Queue size at each node is 64.). It can be observed that there is no queue overflow at any node.

Figure 3. Instantaneous Queue Length

The next figure shows the instantaneous sending rate (of node's own packets and not including the packets forwarded by the node) at each node during the experiment.

Figure 4. Instantaneous Sending Rate of Every Node

The next figure shows the packet count of packets from each node received at the base station with respect to time.

Figure 5. Packet received from each node w.r.t to time.

For clarity, the startup behavior was removed from the above figures. This figure shows the instantaneous sending rate of each node along with the startup behavior of each node which has similarities with TCP's slow start.

Figure 6. Instantaneous Sending Rate of Every Node with Slow-Start

Publications
Sumit Rangwala, Ramakrishna Gummadi, Ramesh Govindan and Konstantinos Psounis. Interference-Aware Fair Rate Control in Wireless Sensor Networks, in Proceedings of ACM SIGCOMM Symposium on Network Architectures and Protocols, September 2006. [PostScript] [PDF] [PROCEEDINGS] [BibTeX]
Talks
Sumit Rangwala. Interference-Aware Fair Rate Control in Wireless Sensor Networks, SIGCOMM, Pisa, Italy, September 2006. [PPT] [BibTeX]
Sumit Rangwala. Interference Aware Fair Rate Control in Wireless Sensor Networks, Center for Embedded Networked Sensors (CENS), University of California, Los Angeles, March 2006. [BibTeX]
Software
IFRC has been implemented on Tmote Sky and the code is available here.
IFRC is also available in TinyOS-1.x tree under contrib/usc-ifrc.
IFRC is not supported anymore, however, it has been ported to TinyOS-2.x by Avinash Sridharan at ANRG and is available here.
People
Acknowledgments
This material is based upon work supported by the National Science Foundation under Grant No. 0520235. Any opinions, findings and conclusions or recomendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation (NSF).
Last Updated: Thu Jun 25 14:36:17 PDT 2009