Dynamic Host Configuration Protocol (DHCP) is a local area network protocol, using the UDP protocol, mainly for two purposes: to the internal network or Internet service provider automatically assigns IP addresses to users as to the internal network administrator for the central computer for all management tool.
Fault-tolerant Dynamic Host Auto-configuration Protocol for Heterogeneous MANETs M. Nazeeruddin, G. Parr, Member, IEEE and B. Scotney, Member, IEEE MANETs . On the other hand, the protocols using stateless Abstract— Host auto-configuration of mobile hosts is a key approaches do not maintain any table and nodes select issue in the mobile ad hoc networks (MANETs) as hosts cannot tentative addresses by themselves and verify address participate in unicast routing without unique addresses. A uniqueness by a procedure known as Duplicate Address distributed agent based dynamic host auto-configuration protocol for heterogeneous MANET nodes is presented in this paper. In Detection (DAD). The Internet Engineering Task Force this approach, every address agent has a disjoint set of IP (IETF) Zeroconf and IPv6 address auto-configuration addresses which it can assign to the new node without consulting mechanism  uses the stateless approach. However, these any other address agents in the network. The proposed protocol is protocols cannot be used in MANETs due to the multihop robust and efficient. It also has the ability to handle node failures topology of MANETs . and message losses. In this paper, a distributed agent based Dynamic Host Auto- configuration Protocol for MANETs (DHAPM) is proposed. Index Terms— Host Auto-configuration, Ad Hoc Networks, Stateful approach, IP Address. The proposed protocol uses a distributed table which is maintained by the dynamically selected address agents. Each I. INTRODUCTION Address Agent (AA) has a disjoint set of IP addresses which it can assign to a new node without consulting any other AA in M OBILE Ad hoc Networks (MANETs) are self- organizing infrastructure-less networks formed by a group of mobile wireless nodes. MANETs eliminate the cost the network. II. RELATED WORK and time of infrastructure deployment, setup and administration. However, setup and administration tasks The proposed solutions for MANETs in the literature can be should be carried out by the participating nodes in order to classified into the following three categories  . share the network resources efficiently. The MANETs have A. Stateful or Conflict free allocation numerous applications especially in the military and The address allocation in stateful approaches is usually emergency services. conflict free as these approaches maintain an allocation table. The key problem in MANETs is to allow efficient The allocation table can be maintained centrally by the only communication between nodes and hence most research is elected address agent (AA)  or distributed across all the concentrated on routing . However, for proper data nodes   . In the centralized approach, AA becomes a communication (for proper routing of data), all network nodes bottleneck and AA failure results in unnecessary address must be configured with uniform & unique addresses. Due to changes. In contrast, distributed allocation table approaches lack of central administration, prior address configuration of are robust to node failures. However, the reliable nodes is not possible. Consequently, a host auto-configuration synchronization of all nodes is necessary to avoid duplicate protocol is needed to dynamically allocate and de-allocate address assignment. Even though the problem of duplicate addresses to the joining and departing nodes respectively. address assignment can be relieved by maintaining a disjointed The existing host auto-configuration protocols are using allocation table  , the disjointedness should be either stateful or stateless approaches . The protocols using guaranteed. stateful approaches need a central address allocation table to maintain the state information of already configured nodes and B. Stateless or Conflict detection allocation their addresses. DHCP  is a popular example of stateful Protocols using stateless approaches, instead of maintaining approach. DHCP is designed for wired networks and it is not an allocation table, let the un-configured node select an suitable for MANETs due to the highly dynamic topology of address by itself and verify address uniqueness by a Duplicate Address Detection (DAD) process. One simple way of This work is supported by the University of Ulster vice chancellor research performing DAD is by querying all nodes in the network . scholarship. Some protocols are based on integrating DAD in the routing M. Nazeeruddin is a PhD student in the School of Computing and Information Engineering, University of Ulster, Coleraine, UK. Prof. G. Parr protocols  . In general the reliability of the stateless and Prof. B. Scotney are professors of telecommunication and informatics approaches depends on the reliability of DAD. In addition, the respectively in the same school. (Contact E-mail: firstname.lastname@example.org). stateless approaches have a problem to support network merge. In case of merging, either DAD needs to be repeated or timer expires, the requester repeats the same process for a permanently performed resulting in increased protocol certain predefined number (NbReqThreshold) of times waiting overhead . for a response. If all the attempts fail, the requester concludes that it is the first node in the network. Hence, it initializes the C. Hybrid MANET by selecting a random IP address block and Partition Hybrid approaches   may offer robust protocols by ID. It assigns itself with the first IP address of the selected IP combining the principle of both stateful and stateless block and elects itself as AA to maintain the allocation table. approaches. Nonetheless, they may result in higher protocol complexity and overhead . C. New Node Joining the Network Lets assume that the MANET is already configured and a III. PROPOSED SYSTEM new node (say node i) wants to join the network. It broadcasts the NbReq message and waits for the NbRes message. In this A. System Description case, it receives at least one NbRes message from one of the In this paper, an autonomous MANET is considered which neighbours which are already part of the MANET. If there are is formed by a group of nodes coming together. The nodes are any address agents reachable by node i, they will also respond mobile and can join or leave the MANET at any time. with NbRes and node i selects the first responding AA as the Therefore, the size and topology of the network is variable and initiator. If it receives no replies from address agents, then it cannot be predicted. selects the first responding node as its initiator. The proposed system is based on multiple dynamically Node i then sends a NewAddrReq message to the chosen selected Address Agents (AAs). Each AA has a disjoint set of initiator (say node j). If node j is an AA, then it allocates an IP sequential IP addresses which it can assign to a new node address to node i, updates its table and responds back with without consulting any other AA in the network. Each AA NewAddrRes message embedding the assigned IP address. If maintains two tables. First table keeps the record of all AAs in node j is not an AA, it forwards NewAddrReq message to its the network and their IP address blocks. This table also keeps AA and returns the received response to node i. Each node a note about the state of the AA. This table is called Agent requesting new address informs the AA whether it can serve as Table. The Agent Table is small and sorted with respect to the AA or not. This information is maintained by the AA and will IP addresses. The Agent Table can be implemented as a binary be used at the time of selecting a new AA. tree and a certain block of IP addresses can be searched in the AA IP Address AA IP Address table in order of log r time, where r is number rows in the table Block Block . The second table (Address Table) keeps record of all the 1 1-254 1 1-127 128 128-254 assigned IP addresses and the details of node to which they are assigned. Node details include hardware address (usually AA IP Address Medium Access Control (MAC) address) and a Boolean bit. Block The Boolean indicates whether the node is capable of 1 1-15 AA IP Address 16 16-31 Block becoming an AA or not. If the bit is set true, then it means that . . 1 1-127 corresponding node has ability to act as an address agent. By . . 128 128-191 default, the bit is true. . . 192 192-254 TABLE I TABLE II 240 240-254 AGENT TABLE ADDRESS TABLE Fig. 1: Transition of agent table as network size grows (only for illustration 1- AA IP Address State IP MAC Suitable 254 is selected as range) Block for AA 1 1-15 Stable 1 Mac1 True D. Node Departure 16 16-31 Alarming 2 Mac2 False If a node wishes to leave the network, it sends an 32 32-63 Unstable 3 Mac3 True ….. ….. … … …. AddrRelReq message to its AA and waits for its response. The 240 240-254 Stable 254 Mac254 True corresponding AA will update its table and send a confirmation message (AddrRelRes) to the departing node. The B. MANET Initialization node departs the network and sends AddrRelDone message to This process is similar to MANETconf . The first node AA. After receiving the confirmation message the AA reuses (say requestor) that wishes to join the network starts the the departing node’s IP address. neighbourhood detection process by sending a broadcast It should be noted that even if a node leaves abruptly message (NbReq message) and commences NbReqTime timer. without informing its AA, the network can eventually detect its The requester expects to hear a response (NbRes) message departure. However, if a node follows the above procedure, from at least one MANET node which can act as the initiator the network and address agent resources will be saved for assigning an IP address to the requester. Since the E. Selection of Auto Address configuration nodes requester is the very first node in the MANET it will not In this approach, the selection of nodes which maintain the receive any response from other nodes. After NbReqTime address allocation table is important. As explained in the subsection III.B, the first node which wants to join the network changes in its part of address table to the other address agents initializes the MANET by selecting itself as an AA. All other at least one time in every AASyncTime seconds using address agents will be selected only in one of the following UpdateTable message. Some times an AA may send multiple cases: UpdateTable messages if there are significant changes in its 1. When an AA is getting many NewAddrReq messages part of address table. from a certain node or from the nodes which a certain In addition to synchronization among address agents, the initiator has helped in getting addresses. MANET address agents check periodically all the nodes they 2. When one of the existing AA is experiencing severe assigned address by sending a multicast message (Alive) and shortage of resources (processor, memory, network, nodes reply back with a confirmation message (Ack). If no etc) and wants to share addressing protocol load. response is received from a certain node during multiple 3. When the ratio number of nodes/number of AAs in the consecutive synchronization periods then the AA concludes network is greater than AAThreshold. (The optimum that the node has abruptly left the network. value of AAThreshold should be determined through simulations.) IV. EXCEPTION HANDLING In the first case, the node which has acted as initiator for many In the previous section, it was assumed that are no node nodes will be selected as new AA. In the second & third cases, failures and message losses. However, in reality MANETs are the existing AA (say AAi) selects a new AA as follows: more susceptible to node failures and message losses than 1. Selects the new address requesting node after wired networks and this may result in IP address conflicts and assigning it an address. leaks. Hence, this section discusses how the proposed protocol 2. If the new node does not have the ability to manage allocation table then, it announces to all the nodes handles the situations that may arise due to message losses and under its group which have Suitable for AA bit as node failures. We use the situations enumerated by  as TRUE to nominate for the new AA position. All basis and added more possibilities to them. Most of the nodes which are ready to serve will respond with situations can be handled with help of timers and message AAReqRes message. From the responded nodes, the retries. node which has recently joined the network will be A. Initiator Crash selected as new AA. 3. If no response is received from any of the nodes even Sometimes the neighbour which is acting as initiator may after a number of retries then it stops assigning new crash before it assigns new address to the requesting node. addresses until one of the existing node leaves the This situation can be handled by using a timer. The requesting network and a new node with willingness to serve as node starts a timer (NewAddrTime) after sending NewAddrReq AA requests an address. message and waits for response. If the timer expires and no Once new AA selection process is finished, the AAi starts the response is received from initiator, then it retries by resending new AA initialization process by dividing its IP address block the same message and resetting the timer. Even after retries, if into two parts1 and assigns the second part to the selected AA. no response is received then it selects the second neighbour It sends the updated allocation table and agent table to the new which responded to NbReq as new initiator and sends selected AA node using NewAASetup message. After the NewAddrReq message to it. successful completion of the setup, the new AA sends a B. Requesting Node Crash multicast message to all the other AAs with NewAADone There is a possibility that the new address requesting node message. may crash after requesting a new address. In such situation, the Sometimes, it may happen that an AA (say AAi) wants AA and initiator will not receive NewAddrDone message as relinquish its duties and it may not have time to go through the confirmation from the requesting node. Hence, the AA will above procedure. In this case, the AA will simply send a reuse this address. AARelReq message to nearest neighbour AA (say AAx) which responds back with AARelRes. On receiving an C. Abrupt Departure of Address Agent (AA) acknowledgement from another AA, the requesting AA As explained in subsection III.F, each AA sends a multicast releases its job. If AAx has enough resources then it announces message to other address agents with its part of updates. If an itself as AA for the AAi IP block. Otherwise AAx selects new AA (say AAi) did not receive a message from the address AA on behalf of AAi. agent AAx, then it marks state of AAx as Unstable and waits for two synchronization periods. If AAi still doesn’t receive F. Synchronization of Address Agents any responses from AAx, it marks AAx state as Alarming and The synchronization of MANET address agents is essential sends a multicast message to the other address agents. In the to maintain updated address allocation table. This is process is next synchronization period, if any AA has updated also useful in detecting any missing address agents. The information of AAx then it sends updated AAx address table synchronization process involves each AA multicasting along with its table in the UpdateAA message. In the case of actual crash, no AAs respond and hence eventually AAi mark the state of AAx as Aborted and starts the process of selecting 1 When an AA wants to completely relinquish its job, then it gives up the an AA on behalf of AAx as explained in subsection III.E. whole IP address block instead of dividing into two parts D. Message Losses reassigning new unique addresses. Once the IP address The message losses are handled traditionally by resending conflicts are resolved, the PID of the bigger partition the same message for a maximum of MessageRetry times. will be broadcasted to all the nodes. Even after maximum retries if a node fails to get a response 3. In the meantime, the bigger partition address agents then it concludes the other node has left the network. It can be suspend the new address assignments until a argued that continuous message losses are because of confirmation message is received from the AA of persistent communication problems in the MANET. However, smaller partition (AASmall) or MergeTimer expires. (If in other words this means that the node is not accessible from timer expires, the AA of bigger partition (AABig) checks network even after the maximum waiting period and hence the the status of merger with AASmall. If no response is node is practically out of network received from AASmall, AABig announces merger failure to other AAs in the partition. The address allocation E. Merging & partitioning of the Network processed is resumed.) Since the MANET nodes are mobile, the network may split 4. AASmall sends a confirmation message to the bigger into multiple partitions. These partitions may merge again. partition AAs with the updated tables. Moreover, two independent MANETs may also collide (for 5. The bigger partition AAs updates its tables and sends a example, two army battalions may come together). The reconfirmation message to the smaller partition address network merging & partitions problem can be handled by agent. using a partition identity (PID) . The PID can be formed by In the above procedure, it is assumed that the addressing combining subnet identity and a random number. During agents of two partitions can be able to communicate with each MANET initialization, the very first node (the first AA) other. If they cannot communicate directly they can use the generates PID. Subsequently, all other nodes will receive PID informing nodes as proxies. as part of NewAddrSetup message. 1) Network Partition Management V. PERFORMANCE EVALUATION When the MANET breaks into two partitions, one of the The proposed DHAPM protocol achieves robustness and partitions will still have the AA which has generated PID. efficiency by maintaining distributed copies of allocation table Hence, the partition identity will remain the same. Address and disjointed IP address blocks respectively. The table III agents in this partition detect the abruptly departing nodes briefly compares the performance of some stateful approaches. during the synchronization process and clean their agent and The new address assignment is fast and very efficient as it address tables. In the second partition, during the depends only on the nearest AA and requestor. In the worst synchronization process, address agents will discover that the case, when AA is not directly reachable another node acts as AA which has generated PID is no longer available and proxy. When a node leaves the network the corresponding AA concludes that the network has partitioned2. In this case, after needs to send only one message to the departing node. Only updating agent & address tables, the AA which smallest IP when the node departs abruptly, the departing node address address block will generate new random number and will not available for reassignment until the synchronization broadcasts it to all nodes in the new partition. This procedure process. works properly even if the network splits into more than two Synchronization of address agents involve every AA partitions. To make this process more robust, the new partition periodically multicasting its part of updated Address table to ID is generated only after two or three synchronization the other AAs. So in the network of m AAs there will be m periods. In addition, address agents continue assigning multicast messages. (Usually m<<n for large n). addresses from their blocks until all IP addresses are The network load related to address allocations and allocation exhausted. This process reduces the protocol overhead by table management is distributed among the AAs and all other minimizing the possibility of duplicate addresses if the non-AA nodes have very little overhead. The memory partitions merge together. requirement of address agents is bit more than other methods. 2) Network or Partition Merge However, non-AA nodes need no extra memory for address The network and partition merging are basically the same. management and hence even low memory devices can also In any case the merging can be detected by the difference in participate in networking which is not the case in . the PIDs. If the partition identities have the same subnet ID, The proposed method and other methods ([2, 4, 5]) are then it is partition merging otherwise it is network merging. formulated mathematically and simulated using MATLAB If two nodes detected a merger, they forward merger software. For simulation, a MANET3 with average size of 50 information to their respective address agents. The address nodes is formed. During the simulation, 60 new nodes join the agents perform the following steps: network, 10 nodes depart from the network and one address 1. The address agents exchange their agent and address agent crashes abruptly. Node and AA Synchronization tables and inform the other address agents in the frequency is set as 5 seconds. The collected statistics are network about the merge. shown in Table IV. The first five columns show the number of 2. The address agents in the smaller partition check for the duplicate addresses and resolve the address conflicts by 3 Network simulator (ns-2) simulation results are not presented in this paper due to the space constraints and will be presented in the detailed 2 Please note that abrupt departure of AA which has generated PID also version of the paper results in new PID generation different types of auto-configuration packets sent during the host auto-configuration protocols will be addressed. Another simulation period. The last column shows the total number of key research direction is to interact with the routing protocols auto-configuration packets received during the simulation for the early detection of node crashes there by saving the period. PRecv gives an indication of the overall communication network resources. overhead for each protocol as it is proportional to the number TABLE IV SIMULATION RESULTS3 of packets sent. From the table, it is evident that the proposed protocol (DHAPM) performs more efficiently than the other Protocols UC MC BC MU MB PRecv protocols. Although the number of unicast packets in buddy Central  2662 0 87 0 59 5663 ManetConf 1788 0 131 405 60 6603 protocol  is less, it is much costlier than the DHAPM Buddy  30 0 527 465 60 23122 protocol due to the huge number of broadcast packets. DHAPM 568 112 0 405 60 2219 TABLE III 3 UC, MC, BC, MU, MB are number of unicast, multicast, broadcast, MAC PERFORMANCE COMPARISON OF DIFFERENT STATEFUL APPROACHES layer unicast, and Mac layer broadcast packets respectively. PRecv is the total Central  ManetConf Disjoint  DHAPM number of packets received.  Synchron Not needed All nodes will Sync Sync REFERENCES ization sync after periodically periodically each address with n with m (<n)  K. Weniger and M. Zitterbart, “Address Autoconfiguration in update broadcast multicast Mobile Ad Hoc Networks: Current Approaches and Future messages. messages. Directions”, IEEE Network, July/Aug 2004. Robust Not robust to Robust Robust. Robust to  S. Nesargi and R. Prakash, “MANETconf: Configuration of Hosts AA failure. However, node & AA in a Mobile Ad Hoc Network,” Proc. IEEE INFOCOM 2002, New node failure failures. York, NY, June 2002. may result in  H. Zhou, L. M. Ni, and M. W. Mutka, “Prophet Address address leak. Allocation for Large Scale Manets,” Proc. IEEE INFOCOM 2003, Memory Only elected All nodes All nodes Only AAs San Francisco, CA, Mar. 2003. AA node need some need some need good  M. Mohsin; R. Prakash, IP address assignment in a mobile ad hoc must have memory to memory to memory to network, MILCOM 2002. Proceedings, Pages: 856 - 861 vol.2, 7- good memory maintain maintain maintain 10 Oct. 2002. to maintain allocation disjoint allocation &  M. Günes and J. Reibel, “An IP Address Configuration Algorithm allocation table. allocation agent tables for Zeroconf Mobile Multihop Ad Hoc Networks,” Proc. Int’l. table. table & agent Wksp. Broadband Wireless Ad Hoc Networks and Services, table. Sophia Antipolis, France, Sept. 2002. Networki Load fall on Load falls on Load falls on Load falls  R. Droms, J. Bound, B. Volz, T. Lemon, C. Perkins, and M. ng the central all nodes. all nodes. only on AAs Carney, “Dynamic Host Configuration Protocol for IPv6 Overhead AA. Thus, the (DHCPv6),” Network Working Group RFC 3315, July 2003. network may  C. Perkins, J. Malinen, R. Wakikawa, E. Belding-Royer, and Y. be congested Sun, “IP Address Autoconfiguration for Ad Hoc Networks,” draft- at AA. ietf-manet-autoconf-01.txt, November 2001. Heteroge Node Low memory Low memory Node  S. Thomson, and T. Narten, “IPv6 Stateless Address neity heterogeneity nodes cannot nodes cannot heterogeneity Autoconfiguration,” Network Working Group RFC 2462, Dec is possible. participate in participate in is possible. 1998. networking. networking.  J. Boleng, “Efficient Network Layer Addressing for Mobile Ad Hoc Networks,” Proc. Int’l. Conf. Wireless Networks, Las Vegas, NV, June 2002, pp. 271–77. VI. CONCLUSION & FUTURE WORK  N. H. Vaidya, “Weak Duplicate Address Detection in Mobile Ad Hoc Networks,” Proc. ACM MobiHoc 2002, Lausanne, In the MANETs, because of node mobility, there are no Switzerland, June 2002, pp. 206–16. exceptional nodes which are reachable at all times. Thus, this  K. Weniger, “Passive Duplicate Address Detection in Mobile Ad kind of network needs distributed and adaptive solutions. In Hoc Networks,” Proc. IEEE WCNC 2003, New Orleans, LA, Mar. this paper, a distributed address agents based host auto- 2003.  Y. Sun and E. M. Belding-Royer, “Dynamic Address configuration protocol for MANETs is presented. Each AA Configuration in Mobile Ad Hoc Networks,” UCSB tech. rep. can make unique address assignment from its disjoint IP 2003-11, Santa Barbara, CA, June 2003. address block. The distributed address allocation table makes  K. Weniger, “PACMAN: Passive Autoconfiguration for Mobile the solution robust to AA failures and disjointed IP address Ad Hoc Networks,” IEEE JSAC, Special Issue on Wireless Ad Hoc Networks, Jan. 2005. blocks make address agents more independent in address  A. Penttinen, “Research on Ad Hoc Networking: Current Activity assignments. The proposed protocol can handle various tasks And Future Directions”, Networking Laboratory, Helsinki of host auto-configuration (address assignment, address reuse, University of Technology, Finland. network merge & partitioning, etc). Furthermore, the protocol http://citeseer.nj.nec.com/533517.html  A. P. Tayal and L. M. Patnaik, “An Address Assignment for the can work in different scenarios which arise from node failures Automatic Configuration of Mobile Ad Hoc Networks”, Personal and message losses. and Ubiquitous Computing Vol 8 , Issue 1, Feb 2004, pp. 47 – 54. There are various possible future work directions. Extensive simulation of the proposed protocol and other host auto- configuration protocols is needed to effectively compare and contrast protocol performance in different real time scenarios. In addition, scalability, security & overhead minimization of
Pages to are hidden for
"Fault-tolerant Dynamic Host Auto-configuration Protocol for "Please download to view full document