The Importance of Being Adaptive for Forwarding C

With the advances in wireless communication, spontaneously creating impromptu networks, self-organizing and adapting to changing conditions are becoming a reality. Due to the spontaneous nature of such self-organizing networks (SONs), dealing with communication outages needs to be inherent in the network design. For instance, research on delay-tolerant networks tries to address this issue for the case when there is no contemporaneous path between nodes. However, we argue that the steps toward SONs require more than handling a specific problem, but rather require a complete paradigm shift in the way protocols and architectures are designed. Indeed, protocols should be designed knowing that there might be a need to adapt operation not only due to communication outages but also to deal with resource constraints. If forwarding protocols are taken as an example, it is overly conservative to design algorithms that assume always high mobility or long disconnections. Furthermore, taking into account underlying mobility patterns [1], [2], [3] may not be sufficient under strict resource constraints. Hence, adjusting forwarding decisions on the fly while respecting resource constraints remains an interesting challenge and is the main focus of our research. I. ADAPTIVE FORWARDING Adaptive forwarding aims at achieving high reliability and timely delivery with an acceptable overhead under different conditions. Clearly, these goals can be contradicting. The simplest way to achieve high reliability and timely delivery is epidemic routing [4]. However, the good performance comes with a high cost. Furthermore, if buffer and bandwidth constraints are taken into account, this performance might not be realized in practice. For instance, in a highly dense network with low mobility, epidemic routing might incur too much overhead, degrading also reliability. Another immediate solution that comes to mind to reduce the overhead is to always relay through the node that is likely to meet the destination first. However, keeping track of and disseminating all nodes that might eventually meet the destination either directly or indirectly might be too costly. Furthermore, approaches that try to reduce the cost by selecting a few but good relays, for instance, by comparing the last meeting time with the destination or contact frequency [2], [5], might be too conservative and lose good forwarding opportunities in environments with scarce connectivity. A less reserved approach that optimizes resource consumption might require a control channel to maintain, for instance, the number of and location of replicas [6]. Hence, to strike a balance, a protocol must be able to adapt. Adaptive forwarding requires matching forwarding decisions to different mobility conditions. When there are no disruptions due to mobility, it should be possible to take advantage of this and incur lower costs for higher reliability. Therefore, nodes need to learn from past observations: if a pattern exists among past contacts, future contacts can be estimated. Such estimations would be invaluable for managing message buffering and transmissions. On the flip side, when predictions do not match future behavior, it is necessary to rewind bad forwarding decisions to improve performance. Nodes should also operate in an opportunistic manner and take advantages of new meetings. Hence, adaptive forwarding should not be too tied to predictions. By rewinding forwarding decisions, nodes should be able to save messages, based on local observations and through well-designed buffer management mechanisms. We assert this flexibility is the key to adaptive forwarding. II. OUR APPROACH: SEEKER To achieve adaptive forwarding, we advocate that the following capabilities are needed to improve both reliability and resource consumption: • Learning “contact quality”: Forwarding decisions are based on contact quality, which captures not only estimated contact frequency between two nodes [5] but also their estimated communication quality (i.e., whether the nodes agreed to carry messages for each other). This should also affect how long a message is buffered. • Probabilistic forwarding: Each forwarding decision is not only based on learned information [2], [5] but also a coin toss. Hence, some randomness is introduced in forwarding, which helps learning and adaptation, especially when there is not enough information on contact quality. • Data propagation in a head-light manner: As nodes deliver messages to destinations, they “promise” to carry messages with a higher probability. This consequently improves “contact quality” information on the sender side. This way, messages can be pulled towards destinations through higher quality paths. Paths with low connection quality are weeded out since the nodes on these paths stop accepting messages. • Rewinding forwarding decisions: A message that is decided to be not forwarded is quarantined and might be forwarded if there are no other volunteers. Similarly, a forwarding decision might be canceled if there are too many copies of the same message. Furthermore, meeting new contacts might change forwarding decisions. • Less message overhead: The message overhead is limited to “promise” messages rather than the entire contact/buffering/forwarding history or current message lists. We propose such a protocol, Seeker, which incorporates several components to achieve adaptivity. Connectivity and contact quality information is maintained at each each node in a contact history. Connections are detected by the reception