traditional broadcast-based solutions for service discovery. 1. Introduction .... HOPID field in the corresponding entry of PENDINGLIST, thus allowing a neighbor ...
DICHOTOMY: A Resource Discovery and Scheduling Protocol for Multihop Ad hoc Mobile Grids Antˆonio Tadeu A. Gomes, Artur Ziviani Laborat´orio Nacional de Computac˜ao Cient´ıfica (LNCC) Av. Get´ulio Vargas 333, Petr´opolis-RJ, 25651-075, Brazil {atagomes,ziviani}@lncc.br Luciana S. Lima, Markus Endler Departamento de Inform´atica Pontif´ıcia Universidade Cat´olica do Rio de Janeiro (PUC-Rio) Rua Marquˆes de S˜ao Vicente 225, Rio de Janeiro-RJ, 22453-900, Brazil {lslima,endler}@inf.puc-rio.br
Abstract There has been a good amount of research over the past few years on the integration of mobile devices into computational grids. Little of it, however, has addressed the more challenging issue of dynamically establishing spontaneous, multihop ad hoc mobile grids, and then only in preliminary form. In such grids, resource discovery and scheduling have been traditionally approached separately in the literature. In our view, this is an inappropriate dichotomy as regards multihop ad hoc mobile grids. In this paper, we propose a resource DIscovery and sCHeduling prOTOcol for MobilitY (DICHOTOMY), which allows resource provisioning to be scheduled among the most resourceful nodes in the mobile grid, while mitigating the overhead of discovery messages exchanged among them. Our experimental results in a testbed and in a simulation platform show that the protocol provides efficient load balancing between nodes under an increasing number of requests, and scales well with respect to an increasing number of nodes in comparison with traditional broadcast-based solutions for service discovery.
1. Introduction There has been a good amount of research over the past few years on the integration of mobile devices (as either resource consumers or providers) into computational grids [4, 5]. Little of it, however, has addressed the more challenging issue of dynamically establishing spontaneous, purely ad hoc mobile grids, and then only in preliminary form [7, 13]. Nevertheless, the likelihood of both wired and
wireless infrastructure becoming unavailable in emergency situations such as disaster handling and crisis management illustrate the need for further developments on ad hoc mobile grid technology [9]. In such situations, the seamless integration of computing resources from on-site mobile nodes are crucial in rapidly achieving advanced forms of collaborative work, as for instance to collect and automatically process information about large groups of injured people and thus better allocate medical resources [3]. This paper focuses on mechanisms for resource provisioning in multihop ad hoc mobile grids. Multihop mobile ad hoc networks (MANETs) allow mobile nodes to self-organize into arbitrary and temporary topologies that expand the basic communication coverage of these nodes. In the case of mobile grids, such an expansion permits that more nodes share computing resources. For multihop ad hoc mobile grids to be feasible, however, sophisticated mechanisms are needed for both resource discovery and scheduling. These are two topics related with resource management that have been usually approached separately in the literature [7, 8]. In our view, this is an inappropriate dichotomy as regards multihop ad hoc mobile grids. It is worth noting, for instance, that many proposed service discovery protocols (SDPs) for MANETs consider the use of service advertisements [1]. These are clearly inadequate for dynamic resources such as CPU load and available memory. The availability of dynamic resources can vary considerably in short periods of time, and for some of these resources it may be advisable to associate their discovery at resource providers with some form of advance reservation [12, 15], so as to ensure their availability to resource consumers. Furthermore, to the best of our knowledge,
Seventh IEEE International Symposium on Cluster Computing and the Grid(CCGrid'07) 0-7695-2833-3/07 $20.00 © 2007 Authorized licensed use limited to: IEEE Xplore. Downloaded on November 25, 2008 at 21:20 from IEEE Xplore. Restrictions apply.
there is no SDP that explicitly features the simultaneous selection of multiple nodes as the most suitable providers of a particular resource. Such a feature—bearing resemblance to metascheduling techniques in wired grids [2]—is particularly important in mobile grids for applications targeted at solving computationally-expensive problems. In this paper, we propose DICHOTOMY (DIscovery and sCHeduling prOTOcol for MobilitY), a protocol aimed at tackling resource discovery and scheduling issues in multihop MANETs. The DICHOTOMY protocol allows the responsibility for resource provisioning to be distributed among the most resourceful nodes in a MANET, while mitigating the overhead of discovery messages exchanged among them—a problem that is usually present in SDPs that do not employ service advertisements. By always selecting the most resourceful nodes (and making proper advance reservations on them) our proposed protocol can also provide an implicit load balancing mechanism in the MANET. The protocol works in a peer-to-peer fashion, regardless of underlying routing protocols. The selection of nodes to collaborate with resource provisioning is based on a distributed mechanism that combines two algorithms: delayed replies (DR) and suppression by vicinity (SbV). Nodes willing to collaborate send DICHOTOMY replies in response to DICHOTOMY requests. The DR algorithm privileges replies from nodes that are more suitable for providing the required resources. The determination of a node’s suitability is flexible with regard to the resources to be taken into account and the relative importance among them (i.e. the node’s contextual information of interest). Thus, for instance, a CPU-intensive application could state that plenty of battery power is more important than highly available bandwidth, whereas a file sharing application could state that both resources are equally important. In the DICHOTOMY protocol, a resource request is flooded into the MANET, whereas replies to this request are sent towards the inquiring node through a hop-byhop application-level broadcast controlled by our SbV algorithm. This algorithm allows that the more suitable replies (as selected by the DR algorithm) suppress unnecessary replies from other nodes alongside the paths used for forwarding the more suitable replies. A previous publication of ours [6] has provided an overview of the MoGrid architecture—in which the DICHOTOMY protocol is employed—as well as a preliminary version of the protocol for infrastructure and single hop ad hoc wireless networks. The present paper is targeted particularly at the extensions on the DR and SbV algorithms for multihop MANETS. We have implemented the DICHOTOMY protocol and deployed it both in a testbed and in a simulation platform. Our experimental results show that the protocol scales very well with respect to increasing number of nodes in comparison with the traditional
broadcast-based solutions for service discovery. Besides, the protocol provides efficient load balancing between collaborating nodes under an increasing number of requests. The remainder of the paper is structured as follows. In Section 2, we describe our protocol and the DR and SbV algorithms in detail. Section 3 presents our implementation and experimental results. Section 4 finishes the paper with some concluding remarks.
2. The DICHOTOMY Protocol The DICHOTOMY protocol defines two main messages: I NITIATOR R EQUEST (IR EQ) and C OLLABORATOR R EPLY (CR EP). The basic operation of the protocol is illustrated in Fig. 1 and explained along this section. Inquiring nodes send out IR EQ messages to collaborating nodes. An IR EQ message conveys: (i) a request identification used to match requests to replies (REQ ID), (ii) the maximum reply delay that the inquiring node accepts (MAX R EPLY D ELAY), (iii) the number of collaborating nodes that the inquiring node wishes to involve (NUM M AX R EPLIES), (iv) the contextual information that the inquiring node is interested in (CTXT I NFO), (v) the current and maximum diameter (in number of hops) of request propagation (NUM H OPS and MAX H OPS, respectively), and (vi) a unique identification of the node (e.g. its MAC address) sending out the message (HOP ID). Upon reception of an IR EQ message, a node records it as a pending request in a local data structure (PENDING L IST). In addition to REQ ID, NUM M AX R EPLIES, and HOP ID, which are obtained from the IR EQ message, each entry of PENDING L IST has a NUM R EPLIES field (initially set to 0) and two associated timers (REPLY D ELAY and CLEAN U P). REPLY D ELAY is described in Section 2.1; NUM R EPLIES and CLEAN U P are described in Section 2.2. After updating PENDING L IST, the receiver node replies to an IR EQ message depending on its willingness to collaborate, as described in Section 2.1. In addition to replying to requests, nodes can also rebroadcast requests to farther nodes in the MANET, if NUM H OPS < MAX H OPS. Such rebroadcasting is through simple flooding to neigh-
Figure 1. Example of DICHOTOMY messages.
Seventh IEEE International Symposium on Cluster Computing and the Grid(CCGrid'07) 0-7695-2833-3/07 $20.00 © 2007 Authorized licensed use limited to: IEEE Xplore. Downloaded on November 25, 2008 at 21:20 from IEEE Xplore. Restrictions apply.
boring nodes (a scheme for inhibiting redundant rebroadcasts [10] can be also employed, although this is not the focus of this paper). Before being rebroadcast, a request has its NUM H OPS field incremented and its HOP ID field updated with the identification of the current rebroadcasting node. Updating HOP ID allows farther nodes in the MANET to keep track in their local PENDING L IST structures of the path traversed by the request, which will be used as the return path of the corresponding replies. Nodes willing to collaborate send CR EP messages to inquiring nodes in response to IR EQ messages. In Fig. 1, it is assumed that all collaborating nodes in the MANET reply to the inquiring node. A CR EP message informs an inquiring node about the collaborating node address (identified by a COLL A DDR field) as well as its resource availability in terms of the contextual information of interest indicated in the corresponding request (RES I NFO field). Besides the COLL A DDR and RES I NFO fields, a CR EP message also conveys: (i) the REQ ID matching that of the corresponding IR EQ message, and (ii) the identification of the node from which the corresponding request was received (RET PATH)—the replying node obtains such an identification from the HOP ID field in the corresponding IR EQ message in the PENDING L IST. A collaborating node sends a CR EP message towards the originator of the corresponding IR EQ message through a hop-by-hop application-level broadcasting mechanism that uses the already known path traversed by the request. The DICHOTOMY protocol thus avoids the use of routing protocols that would generate additional network load on the MANET (Section 4 discusses the issues of this approach). When a node receives a broadcast reply corresponding to a request it has previously originated, the node processes the message and withdraws it from the MANET. If instead the reply is addressed to an inquiring node other than the receiver, the latter first checks whether there is an entry for the corresponding request in its PENDING L IST structure. If not, the reply is silently discarded.1 Otherwise, the receiving node compares its own identification with the value of the RET PATH field in the reply. If the values are equal, it means the receiver is in the return path of the reply, so it rebroadcasts such reply towards the inquiring node, as described in Section 2.2. Before rebroadcasting the reply, the node updates the reply’s RET PATH field with the value of the HOP ID field in the corresponding entry of PENDING L IST , thus allowing a neighbor node across the return path to further rebroadcast such reply towards the inquiring node. 1 Provided that MAX H OPS = ∞, this condition should not happen because every node in the MANET would receive all IR EQ messages. Nevertheless, when a scheme for inhibiting redundant rebroadcasts is used, it is not always guaranteed that an IR EQ message reaches all nodes in the MANET even for MAX H OPS = ∞.
2.1. Determining suitability In the DICHOTOMY protocol, every node willing to collaborate with the provision of a specific resource delays the transmission of its CR EP message according to the RE PLY D ELAY timer in the corresponding entry of its PEND ING L IST . The Delayed Replies (DR) algorithm sets such a timer to be inversely proportional to the availability of the required resources at the collaborating node, so that more resourceful nodes reply earlier. If the total number of replies NR is larger than the value NM of the NUM M AX R EPLIES field in the corresponding IR EQ message, and if the inquiring node selects the NM first received replies, the DR algorithm makes the inquiring node privilege those replying nodes that are more suitable for providing the resource. Moreover, when used together with the SbV algorithm (see Section 2.2), the DR algorithm helps in reducing the total number of replies being conveyed in the MANET by eliminating unnecessary additional replies alongside the return path from the replying node to the inquiring one. It should be remarked that the determination of reply delays is flexible with regard to the resources to be taken into account—e.g. connectivity status, CPU load, available memory, remaining battery power—and the relative importance between them. Information about resources to be considered when computing the suitability of a node is conveyed by IR EQ messages in the CTXT I NFO field. When a node receives a request, it gathers its current state in terms of the resources of interest to compute the reply delay. For this algorithm to work correctly, all nodes in the MANET must use the same criterium for such computation. In our implementation (see Section 3), a collaborating node sets the REPLY D ELAY timer in the corresponding entry of its PENDING L IST to τ units of time, as given by !! N X αi Pi 0≤α≤1 Dmax −2HS, τ = 1−ω PN 0