ber of heterogeneous nodes, make network management significantly more .... intelligence (management software modules and states) and function as .... аед from the given utility func- tion to see how good the current state of the environment.
The Guerrilla Management Architecture for Ad hoc Networks Chien-Chung Shen Chaiporn Jaikaeo Chavalit Srisathapornphat Zhuochuan Huang Computer and Information Sciences University of Delaware Newark, DE 19716 cshen,jaikaeo,srisatha,zhhuang @cis.udel.edu
Abstract—Ad hoc networks, where mobile nodes communicate via multihop wireless links, facilitate network connectivity without the aid of any pre-existing networking infrastructure. The intrinsic attributes of ad hoc networks, such as dynamic network topology, limited battery supply, constrained wireless bandwidth and quality, and large number of heterogeneous nodes, make network management significantly more challenging than stationary and wireline networks. In particular, the conventional client/serverbased manager-agent management paradigm falls short of addressing these issues. In this paper, we describe the Guerrilla Management Architecture to facilitate adaptive and autonomous management of ad hoc networks and demonstrate its capability via simulation. Apart from its functionalities, the management capability itself is scalable to accommodate the sheer number and heterogeneity of nodes, autonomous and survivable to adapt to network dynamics, and economical to minimize management overhead.
I. I NTRODUCTION Ad hoc networks, where mobile nodes communicate via multihop wireless infrastructures, represent a new paradigm shift in the way networks are designed and operated. The deployment of such networks will be of great importance in applications such as disaster relief and battlefield communication, where network connectivity needs to be provided without the aid of any pre-existing communication infrastructure. They are fundamentally different from wireline networks due to the following peculiarities. Ad hoc networks are autonomously formed with a large number of heterogeneous nodes (ranging in complexity from sensors to palmtops and fully functional laptops and routers) without the aid of any pre-existing communication infrastructure. Therefore, tasks are distributed over and carried out by groups of collaborating nodes. In addition, since they usually run on battery, they will have to be power-conscious to conserve energy, hence the functions offered by a node will depend on its availPrepared through collaborative participation in the Communications and Networks Consortium sponsored by the U. S. Army Research Laboratory under the Collaborative Technology Alliance Program, Cooperative Agreement DAAD19-01-2-0011. The U. S. Government is authorized to reproduce and distribute reprints for Government purposes notwithstanding any copyright notation thereon.
able power level and capability. Furthermore, their topology can be highly dynamic due to autonomous mobility of nodes and physical characteristics of wireless links. Finally, energy limitation, constrained wireless communication bandwidth and quality, and node mobility result in networks becoming partitioned more frequently. These make managing ad hoc networks significantly more challenging than managing stationary and wireline networks. In particular, the conventional client/server-based manager-agent management paradigm falls short of addressing these issues. In this paper, we describe the Guerrilla Management Architecture (inspired by the autonomy, agility, and resilience features of the guerrilla warfare) to facilitate the adaptability, autonomy, economy, heterogeneity, scalability, and survivability requirements in managing ad hoc networks. Success in addressing these issues will lead to robust deployment of ad hoc networks and their effective network operations and efficient resource utilization. The remainder of the paper is organized as follows. We first describe the essential models and mechanisms that constitute the Guerrilla Management Architecture in the next Section. In Section III, we describe components of the Guerrilla Management Architecture. We then describe adaptive auto-configuration of nomadic manager and demonstrate the capability via sample scenarios and their simulation studies. Related work on managing ad hoc networks is presented in Section V. Section VI concludes the paper with future research efforts. II. E SSENTIAL M ODELS
AND
M ECHANISMS
The Guerrilla management architecture is composed of the following model and mechanisms. Client/agency model for scalable and cooperative management As the size of ad hoc networks grows and their topology changes in an unpredictable pattern, it becomes infeasible to interact with each individual node in a centralized fashion. As opposed to the conventional centralized and hierarchical manager/agent (client/server) model depicted
1 of 6
operating conditions, and management objectives will be modeled as time-varying utility functions which shall be maximized to carry out management activities.
Supervisor Agency
Manager
Agent Agent
Agent Agent
Agent
(a)
Agent
Agent
III. G UERRILLA M ANAGEMENT A RCHITECTURE
(b)
In the Guerrilla management architecture, we envision ad hoc networks to be self-organized and self-managed with the collaboration of autonomous nodes. The nodes range in heterogeneous functionality and capability, from mobile and stationary sensors to palmtops and fully functional laptops and routers. Therefore, not all nodes will be able to contribute equally to the management tasks. Nodes with greater capability will possess management intelligence (management software modules and states) and function as managing nodes (called nomadic managers), while others as managed nodes. To scale, nodes are adaptively clustered into groups with at least one nomadic manager in each group. The nomadic managers collaborate autonomously to manage the entire ad hoc network without the help of any external entity. Nodes may also leave a group and join another when changing their locations. The corresponding nomadic managers cooperate to facilitate the ‘hand-off’ process. Due to the dynamic nature of ad hoc networks, the role of nomadic managers may change according to topology, power level, node density, and other attributes. For example, when the power level of a nomadic manager drops below a certain threshold, the management intelligence may decide to migrate to another capable node. When node density increases, a nomadic manager may decide to clone its management intelligence to another node that is capable of hosting nomadic modules to share the management load. In addition, when a nomadic manager foresees network partition to happen, it may decide to spawn another designated nomadic manager in the other partition to enable disconnected management operations. When partitions re-connect again, the corresponding nomadic managers may decide to reconcile and merge. Furthermore, to minimize management traffic and conserve wireless bandwidth, a nomadic manager may decide to issue an active probe (lightweight management script) which traverses a sequence of managed nodes according to a certain itinerary. The script performs management tasks through interaction with the local SNMP agent1 to achieve economical usage of limited wireless bandwidth by eliminating the need of constant polling of management information from remote SNMP agents. It also facilitates disconnected management operations when the
Fig. 1. Manager/Agent Model vs. Client/Agency Model
in Figure 1(a), we propose the client/agency model to support dynamic agency grouping and collaborative management. As shown in Figure 1(b), the client/agency model supports a peer-to-peer paradigm that enables collaborative operations among a group of autonomous managers. Inside an agency, fault tolerant schemes may be implemented to provide reliable functionality so that the communication between the network and the top-level manager, i.e., the supervisor, can be kept minimal. Each autonomous manager may also adapt, and hence is resilient to network dynamics. Mobile code techniques for nomadic and active management To adapt to ad hoc network dynamics, management intelligence should be able to migrate or spawn itself as it deems necessary. To accommodate node/link failures and conserve power/bandwidth, management intelligence should be dispatched to remote nodes so that management functionality could be extended to and be carried out locally/remotely by those nodes who might not be in constant contact with other managers. We propose a two-tier infrastructure to deploy management capability. The higher tier consists of groups of nomadic managers which will adapt to network dynamics, possess more management intelligence, collaborate among one another, and serve as focal points for local nodes around them. The lower tier consists of lightweight active probes to perform localized management operations. Active probes are programmable scripts which are made compact enough to be transmitted on moderately sized data packets to reduce bandwidth overhead. Decision-theoretic approach to adaptive management intelligence To sustain adaptive and autonomous management operations, management modules must be able to make intelligent decisions based on network situations. The Guerrilla architecture adopts a decision-theoretic approach to management adaptation and autonomy. Adaptive software, which integrates utility theory, reinforcement learning, and intelligent agent techniques, dictates the behavior of autonomous managers. Available network resources,
SNMP is used in the paper for illustration purposes. The Guerrilla management architecture is generic enough to interoperate with other information access protocols.
2 of 6
Nomadic Management Module
GMIB
Probe Processing SNMP Agent
MIB
(c)
(b)
Module
Communication Protocol
(a)
Fig. 2. Classification of nodes in the Guerrilla Management Architecture: (a) SNMP-capable node (b) Probe-capable node architecture, and (c) Full-featured node architecture
quality of wireless links degrades or network partition occurs. Finally, security mechanisms, such as trust, key distribution, and encryption algorithms, could be adaptively determined to accommodate the available network resources and the physical environment. A. Node Classification In heterogeneous ad hoc environments, nodes will not be able to contribute equally to the management tasks. For instance, a sensor node may only have the capability to host an SNMP agent, while a fully-featured router or host has enough capacity to process management intelligence. In the Guerrilla architecture, nodes are classified into three different roles of management capability according to their ability (for instance, energy level and processing power) and network dynamics. Nodes playing the role of the least management capability only execute an SNMP agent to facilitate remote access to local management information in a client/server manner as depicted in Figure 2(a). Nodes with sufficient ability are equipped with a Probe Processing Module, in addition to an SNMP agent, as shown in Figure 2(b). The Probe Processing Module is a lightweight execution environment capable of executing incoming active probes, which allows probes to not only query local SNMP agents to process MIB information, but also poll other remote SNMP agents. Probes encapsulate management intelligence, and are forwarded hop-by-hop according to their accompanied itineraries. Nodes with sufficient energy level and appropriate processing power can assume the role of a nomadic manager by executing the additional Nomadic Management Module, as depicted in Figure 2(c). A nomadic manager maintains management intelligence and states, collaborates with other nomadic managers, disseminates active probes to other nodes within its management domain, and migrates or spawns (i.e., transferring of states) other nomadic managers according to network dynamics. The mo-
Supervisor
Node with probe executable ability
Full−featured node hosting
Node with only SNMP capability
nomadic management module
Active Probe
Fig. 3. Active probes deployed from nomadic managers
bile code mechanism is used to migrate and spawn management intelligence and states. It is important to note that the assignment of nodes to different roles adapts to network dynamics, subject to power and processing constraints. A node may change its role to maximize management effectiveness defined by the given utility functions. For instance, a nomadic manager node running low on power may reveal itself as an SNMP-only node to conserve energy, and a node executing probe processing module may become a nomadic manager to share management workload. B. Active Probes In order to obtain information from managed nodes and exchange management information with other nodes, there must be a mechanism to support information collection from remote nodes. Small packets called probes are deployed to collect management information from these nodes. With the aids of active network technologies and adaptive software component, we can introduce even more flexibility into the system where probes are not just merely collecting and carrying raw data along with them, they will have an ability to process this raw data inside a node and selectively gather useful information before they depart. Fig. 3 illustrates deployments of active probes from nomadic managers. As being active and adaptive, probes are also able to communicate so that their information collection tasks can be performed even more efficiently through filtering and aggregating techniques. Based on their functions, there are two types of active probes. 1) Monitoring Probes. Once a node changes its role to become a nomadic manager, it attempts to obtain surrounding network information by dispatching monitoring probes to neighboring nodes. They then replicate themselves to cover the area specified by the nomadic manager, and collect and propagate back local network information to their manager.
3 of 6
2) Task-specific Probes. To collect application-specific information or perform specific operations, such as QoS routing, probes can be specially programmed to perform such tasks. Normally, probes should not be programmed to traverse beyond a certain radius from the deploying manager. When a manager observes that the network covers a size, in terms of topological area and number of nodes, larger than it can effectively manage, a new instance of the manager is spawned and sent to manage those distant nodes locally. The following features are necessary for active probes to efficiently serve the nomadic managers. Autonomy – Monitoring probes are autonomous which do not need attention from the nomadic manager. They reduce the load on nomadic managers by freeing nomadic managers from periodically polling other managed nodes. Gentleness – Monitoring probes are delegated to remote nodes and executed locally which will reduce bandwidth consumption incurred via conventional polling mechanisms. Responsiveness – Crucial topology changes caused by network dynamics, such as movement of certain nodes, must be quickly reported to update manager’s view so that information reflects current network situation. Monitoring probes help to respond in realtime while filtering out unwanted updates. C. Nomadic Management Module (NMM) To facilitate adaptive, autonomous deployment of management capability within ad hoc networks, the NMM requires the following two features: autonomy/adaptiveness and lightweight/modular design. The NMM achieves autonomy and adaptiveness by intelligently adjusting its behavior according to current environmental status perceived via active probes. In order to migrate or spawn, the NMM must be lightweight. Its extensibility and modular design also facilitates the integration of new or unforeseen functionalities without interrupting the operations of existing management capability. To accommodate these necessities, the NMM is designed to run on top of a virtual machine, called the Execution Environment for Nomadic Manager (EENM). It also facilitates intra-module communication as well as coordination with other modules outside the NMM such as the probe processing module. EENM must be presented at every node that is relatively powerful. It waits for incoming management modules and performs essential authentication and security checks, then creates running instances of these management capability. Furthermore, it provides code mobility and spawning primitives to aid the migration and spawning process of the nomadic manager.
In addition to support executions of the NMM, all management-related data are maintained inside a data structure that are equivalent to SNMP MIB. However, they are likely to be an aggregation of management information collected from neighbor nodes via probes. We call the collection of information Guerrilla Management Information Base (GMIB). Note that the probe processing module also has its own collection of management information, e.g., neighbor information, which is considered as part of GMIB as well. In addition, GMIB can be accessed by both NMM and incoming probes through SNMP agent as a branch in SNMP MIB. Management functionalities implemented inside a NMM are modularized into submodules. Major submodules include teamwork management, policy management, event processing, and probe generator submodules. Based on information collected by active probes, the teamwork management submodule decides whether a local management configuration should be updated. These updates may include spawning of a nomadic manager (by sending the NMM’s code and data) to another host node in an area that lacks of management activity, migration of the current NMM to another more capable node, and merging with other existing NMM’s to reduce resources consumed by management tasks. The policy management submodule is setup and sent from the supervisor to specify high-level management activity. It consists of quality of management parameters and management rules that other submodules must consult and conform in completing their management tasks. The event processing submodule handles all event notifications as specified by the policy. It applies utility-based decision-making mechanism [1] and probabilistic reasoning mechanism [2] to network information collected by probes to generate proper responses to critical events. Lastly, the probe generator submodule consists of basic functional building blocks for constructing active probes on demand by other submodules. For instance, the teamwork management submodule may request the probe generator submodule to generate an active probe that will go out and collect the number of other functioning NMM within a specific area. After receiving a declarative specification of the requested function, the probe generator submodule constructs a probe from its library of primitive functional building blocks and dispatches it out to the network. The customized probe will be interpreted and executed by the probe processing module of the nodes it visits. In addition to these critical management submodules, other task-specific submodules may be built and dynamically loaded into the current module by the supervisor to
4 of 6
perform the assigned management tasks autonomously. One thing that is worth mentioning here is the difference in the fundamental concern between nomadic managers and active probes. On one hand, nomadic managers are deployed to maintain coverage of management functionality over the network in order to efficiently provide management information and promote adaptability and autonomy to management. To achieve these requirements, they may demand more valuable network resources, i.e., communication bandwidth and processing power, to relocate or spawn their functional modules to other more secure nodes. On the other hand, active probes are deployed from nomadic managers to serve as their mobile proxies in remote areas. Therefore, main consideration of using active probes is to lessen network resource consumption. It can be said that Guerrilla management architecture achieves survivability and economy by maintaining a proper balance between the presence of functional nomadic managers and active probes. IV. A DAPTIVE AUTO - CONFIGURATION M ANAGERS
OF
N OMADIC
Active probes act as input sensors for nomadic managers. Based on the information gathered by active probes and the given policies (in form of utility functions), each manager is to construct a perceived view (or beliefs), , for the managed area. Once a perceived view of the environment has been built, the manager will evaluate the local environment utility from the given utility function to see how good the current state of the environment is. The auto-configuration process is capable of changing environment state by performing an action chosen from a provided set of actions, . The manager is able to predict the future environment state after a certain action is taken via the transition function, , which is associated with every action in . However, transforming the environment by taking different actions will incur different overheads since certain actions take more time or network resources than others. The overhead is defined by the cost function . Generally, the objective of the decision-making process employed by the manager is to select an available action that yields the maximum utility gain per cost. Formally, the manager attempts to evaluate:
argmax
The predicted new state of the environment after an action is taken may not exactly reflect the reality due to the dynamics of the environment and inaccuracy in the evaluation of the original snapshot. This could be improved by modeling the environment as a function of time. Thus
it is able to predict future states and choose more appropriate actions. If, for instance, the autoconfiguration process knows the mobility of the nodes and notices that two nodes are moving apart from each other, it might predict that the link connecting both nodes is going to disappear, resulting in an action scheduled proactively to avoid management interruption. Empirical Study To evaluate the above described decision-making process, we conduct empirical studies using the GloMoSim simulation environment to study the behavior of nomadic managers in relation to network dynamics. We assume simulated nodes are homogeneous in their capability. Probe modules run directly over UDP/IP, and 802.11 MAC protocol is used in the data link layer. Initially, a node is manually assigned to be a nomadic manager, which will dispatch exploring/monitoring probes throughout its local area once it has been activated. These probes are programmed to collect neighbor information, report the information back to the manager, and travel to other nodes up to six hops. As described in Section III-B, the neighbor information allows the nomadic manager to construct the model of its local environment which is necessary for the decision-making process. The first scenario in Figure 4(a) shows a partial network of eleven nodes in a grid topology with one nomadic manager (shown in black). Arrows indicate paths to reach the nomadic manager. Periodically, the nomadic manager invokes a decision-making process by evaluating the surrounding environment it has perceived so far. In the experiment, we allow only two sets of options that nomadic managers can perform: spawning and migrating. However, with the current environment, no option would lead to a better state based on its evaluated utility. Hence the network is considered stabilized and no action will be taken. This is due to the fact that the nomadic manager is located at the center of the group, so that the average number of hops to the other nodes is minimal. The network being in a steady state renders the spawning and migrating options unnecessary. Later in time, nine more nodes are added into the network on the right-hand side (Figure 4(b)) (simulating the mobility of nodes coming from the east), causing unbalance to the managed environment and a drop in utility. Once the new environment state has been evaluated, the nomadic manager decides to spawn two more managers, which brings the environment back to a stable state as illustrated in Figure 4(c). Figure 5 demonstrates another scenario where the nomadic manager decides to migrate. The initial state is similar to the first scenario with one less node. Five nodes
5 of 6
tion, which has been studied and applied by several work on network management such as SHAMAN [5]. Smart Packets [6] and Code [7] provide code mobility support which is an important technique to achieve this concept. (a)
(b)
(c)
Fig. 4. Snapshots from the simulated network demonstrating the spawning process of nomadic managers (gray dots denote normal nodes, black dots denote nomadic manager nodes, and arrows represent paths from nodes to their corresponding managers) : (a) the initial state, (b) appearance of more nodes on the right-hand side, (d) the final state after the network is stabilized.
(a)
(b)
(c)
Fig. 5. Snapshots from the simulated network demonstrating the migration process of nomadic managers (gray dots denote normal nodes, black dots denote nomadic manager nodes, and arrows represent paths from nodes to their corresponding managers): (a) the initial state, (b) five nodes on the left disappearing and reappearing on the right, and (c) the stable, final state after migration.
on the left side move toward the right as depicted in Figure 5(b). The nomadic manager detects the dynamics of the managed area and decides to take action. However, the number of managed nodes does not change, and there are not too many nodes to worth spawning a new manager. Consequently, the manager migrates toward the central location of the new environment as shown in Figure 5(c)
VI. C ONCLUSION
AND
F UTURE W ORK
The intrinsic attributes of ad hoc networks, such as dynamic topology change, power limitation, constrained wireless communication, and large number of heterogeneous nodes, make management of ad hoc networks significantly more challenging. In this paper, we propose the Guerrilla management architecture that employs a two-tier infrastructure to facilitate adaptive, autonomous, and robust management of ad hoc networks. The higher tier consists of groups of peer-to-peer nomadic managers which possess management intelligence, adapt to network dynamics, collaborate among one another, and serve as focal points for local nodes around them. The lower tier consists of active probes (programmable scripts) which may be dispatched to remote nodes to perform localized management operations. The nomadic managers and active probes facilitate disconnected management operations and reduce consumption of wireless bandwidth. Research is in progress to develop topology management and fault management applications using the Guerrilla management architecture for ad hoc networks. The views and conclusions contained in this document are those of the authors and should not be interpreted as representing the official policies, either expressed or implied, of the Army Research Laboratory or the U.S. Government.
V. R ELATED W ORK
R EFERENCES
In the last few years, research on ad hoc networks mainly focuses on routing and power control related issues [3]. The only work related to management of ad hoc networks is ANMP (Ad hoc Network Management Protocol) [4]. ANMP introduces the concept of clusterbased management where nodes in the network participate in the cluster construction and cluster head election process. Management in ANMP is based on a hierarchical approach where cluster heads poll management information from their cluster members in a centralized manner. The Guerrilla management architecture provides flexibility and continuity of management by making its nomadic managers (or cluster heads in ANMP’s terminology) alive, i.e. making their own decision to adapt. Therefore, Guerrilla does not require periodic re-adjustment of its configuration. Moreover, for nodes with probe processing capability, information collection is not only limited to polling, resulting in more efficient network bandwidth utilization. This concept is known as management by delega-
[1] J. Byers and G. Nasser, “Utility-Based Decision-Making in Wireless Sensor Networks,” Tech. Rep. BU-CS 2000-014, Computer Science Department, Boston University, Boston, June 2000. [2] C. S. Hood and C. Ji, “Intelligent Agents for Proactive Fault Detection,” IEEE Internet Computing 2, March 2000. [3] IETF, “Mobile Ad-hoc Networks (MANET).” http://www.ietf.org/html.charters/manet-charter.html, May 2001. [4] W. Chen, N. Jain, and S. Singh, “ANMP: Ad hoc Network Management Protocol,” IEEE Journal on Selected Areas in Communications 17, August 1999. [5] P. Kalyanasundaram, A. S. Sethi, C. M. Sherwin, and D. Zhu, “A Spreadsheet-Based Scripting Environment for SNMP,” in Integrated Network Management, V, (London), 1997. [6] B. Schwartz, A. W. Jackson, W. T. Strayer, W. Zhou, R. D. Rockwell, and C. Partridge, “Smart Packets: Applying Active Networks to Network Management,” ACM Transactions on Computer Systems 18, Feb 2000. [7] G. P. Picco, “ C ODE: A Lightweight and Flexible Mobile Code Toolkit,” in Proceedings of Mobile Agents: 2 International Workshop MA’98, vol. 1477 of Lecture Notes on Computer Science, pp. 160–171, Springer, (Stuttgart (Germany)), Sep 1998.
6 of 6