A scalable and efficient geographic routing and service provision architecture for mobile ad hoc networks

Supporting scalable and efficient routing and service provision in Mobile Ad Hoc Networks (MANET) has been a big research challenge. In this dissertation, we propose a scalable and efficient geographic routing and service provision architecture for MANET. The architecture is designed to possess the features of scalability, efficiency, robustness and adaptability. Conventional topology-based schemes are normally hard to scale, instead, we make use of geographic information in the architecture to improve the performance. Due to the close relationship between routing and service provision, we integrate the application-layer service provision and the network-layer routing in one architecture. Such cross-layer design makes different layers to work more closely and efficiently. The architecture is composed of four components. First, an efficient hierarchical structure is built and maintained. The structure is adaptive and flexible. Specifically, the number of layers can be adjusted according to the service and management requirements. Second, a scalable service and membership management scheme is deployed on top of the hierarchical structure to efficiently track the resource and service states. Third, the traffic patterns in a service provision network are various, and we design unicast and multicast routing protocols to support robust service data delivery in the architecture. We develop two self-adaptive on-demand geographic unicast routing protocols for MANET. They can build efficient paths based on the need of user applications and adapt to various scenarios to provide efficient and reliable routing. The local topology is updated in a timely manner according to network dynamics and traffic demand. A route optimization scheme is adopted to adapt the routing path according to both topology change and actual data traffic requirements. Instead of pre-setting parameter values, each node can determine and adjust the protocol parameter values independently according to different network environments, data traffic conditions and node's own requirements. We use the second protocol to support the peer communications in the architecture. Its reactive and adaptive mechanism can meet different routing requirements in service provision networks. We also design two scalable geographic multicast protocols for MANET to implement scalable membership management and robust multicast packet delivery. The first protocol builds a network-range zone-based bi-directional tree for membership management and packet delivery. In the second protocol, a hierarchical structure is constructed based on an on demand zone structure, and both control messages and data packets are forwarded along efficient tree-shape paths without active tree structure built and maintained, which efficiently reduces the maintenance overhead and increases the reliability of the protocol. Both protocols combine location service for group members with membership management to further reduce overhead. We use the second protocol in the architecture to provide scalable and robust routing support for group communications. Finally, with the support of all the above components, the service provision functions are deployed in the architecture. The service delivery including long-term data transfers and short-term control message transmissions is supported by our unicast and multicast routing protocols. By following the hierarchical structure, we design an efficient and scalable service discovery scheme to quickly locate appropriate service providers. Based on the service states aggregated at different layers through the service management and with the assist of the hierarchical structure, efficient service coordination is implemented in service discovery and usage phases to coordinate multiple service providers to provide a service. Furthermore, robust service monitoring can also be applied in the architecture to monitor the resource and service states during service usage.