Sie sind auf Seite 1von 8

White Paper Ginkgo Distributed Network Piloting System

Authors: Ginkgo Networks Date: 25 September 2008

0. Table of Contents
1. Introduction 2. Ginkgo Agents Distributed Intelligent Agents The Agents' Situated View Implicit cooperation among Agents 3. Ginkgo Agents Architecture Behaviors The Dynamic Planner The Situated View Knowledge Base 4. Agent's Strategies Strategies based on Logical Reasoning Strategies based on Local Optimization Strategies based on influencing the others 5. Agents Management 6. Conclusion

1. Introduction
Today's networks are made of a large number of Network Elements (NEs) such as routers, firewalls, gateways, hosts, etc., each performing a set of elementary functions related to routing, security management, resource reservation, QoS management, etc. More sophisticated functions such as configuration of NEs, optimization of routing tables, troubleshooting, etc., are mainly managed in a centralized fashion often involving human intervention. However, networks are more and more faced with rapidly changing situations and increasingly complex configurations which are harder and harder to be adequately managed in a centralized manner, because of timing issues (collecting and processing information takes time) and complexity issues (dealing with networks centrally/globally is increasingly complex). The Ginkgo Distributed Network Piloting System, based on Distributed Intelligent Agents, permits to perform a number of management functions in a decentralized way, dealing locally with simpler situations in a more responsive way. The Ginkgo Distributed Network Piloting System is made of Distributed Intelligent Agents, each capable of sensing and observing events and changes occurring locally. Agents communicate among neighbors to improve their knowledge of the situation in their neighborhood and to make consolidated/coordinated decisions within an area of the network. The programming of Ginkgo Distributed Intelligent Agents borrows largely from a number of simple and powerful techniques inherited from Distributed Artificial Intelligence (D.A.I.) and adapted to the specific constraints of communication networks. The Ginkgo Distributed Network Piloting System can be installed in overlay with existing network functions, thus adding value (optimization, responsiveness, etc.) in a non-disruptive fashion.

2. Ginkgo Agents
Distributed Intelligent Agents
The Ginkgo Distributed Network Piloting System is made of Distributed Intelligent Agents each associated with an NE as illustrated in Figure 1.

Figure 1- Intelligent Agents forming the Ginkgo Distributed Network Piloting System

By distributing Agents across the network, the Ginkgo Network Piloting System permits to deal locally with local problems. Indeed local problems are often simpler and easier to deal with than the resulting global problem. Furthermore a local problem can be addressed earlier locally than in a centralized approach; e.g. an agent can immediately change the configuration of its NE to react to a local load problem. Beyond purely local problems, Agents cooperate among neighbors to deal with problems appearing in the neighborhood, e.g. a connectivity problem can be detected by several agents which can then cooperate to characterize the problem more precisely and provide a synthetic report to the network control center. The Ginkgo Distributed Network Piloting System draws from well established, simple and powerful Distributed AI techniques to program Distributed Intelligent Agents individually and in their interactions.

The Agents' Situated View


Each Agent maintains its own view of the network on the basis of information obtained (i) directly from local observation of its NE and (ii) indirectly for the rest of the network by exchanging information with its neighbors. This Agent-centric view of the network, focused on the Agent's close network environment, is called the Situated View, and is illustrated in Figure 2.

Figure 2- Each Agent has its own Situated View of the Network.

The rationale for the Situated View is that events occurring in the neighborhood of an Agent are generally of greater importance for the Agent than events occurring in a remote part of the network. The fact that local events are known earlier and are more accurately documented in the Situated View makes it easier for the Agent to react rapidly and appropriately. Agents regularly check for important changes appearing in their Situated View - and thus in the network environment as seen by each Agent - and may decide to automatically adapt

certain parameters of their own NE. E.g. if an Agent detects locally a potential security problem, it can consolidate this information by checking similar information regarding its neighborhood in the Situated View and then decide to adjust a security policy and/or to trigger a security alarm.

Implicit cooperation among Agents


The use of the Situated View drives Implicit Cooperation between Agents who "influence" each others via the knowledge that they are sharing. Implicit Cooperation is the primary mode of cooperation among Agents in the Ginkgo Distributed Network Piloting System. This mode of cooperation is simple, particularly robust and well suited for dynamically changing environments because it does not require the establishment of an explicit dialog and a strict synchronization between Agents.

3. Ginkgo Agents Architecture


The architecture of Ginkgo Agents is outlined in Figure 3 below.

Figure 3- Outline of Ginkgo Agents Architecture

Behaviors
The Behaviors ("B" in Figure 3) are autonomic software components permanently adapting themselves to the environment changes. Each of these Behaviors can be considered as a specialized function with some expert capabilities. Each behavior is essentially a sense>decide->act loop. Typical categories of Behaviors are as follows: Producing knowledge for the Situated View in cooperation with other Agents,

Reasoning individually or collectively to evaluate the situation and decide to apply an appropriate action, e.g. a Behavior can simply be in charge of computing bandwidth availability on the NE, it can also regularly perform a complex diagnostic scenario or it can be dedicated to automatic recognition of specific network conditions. Acting onto the NE parameters, e.g. a Behavior can tune QoS parameters in a DiffServ context. Uploading useful information to a network management system, e.g. a Behavior can upload a synthetic alarm obtained from the observations of elementary ones. Behaviors have access to the Situated View which operates within each Agent as a whiteboard shared among the Agent's Behaviors.

The Dynamic Planner


The activation, dynamic parametrization and scheduling of Behaviors within an Agent is performed by the Dynamic Planner. The Dynamic Planner decides which Behaviors have to be active, when they have to be active and with which parameters. The Dynamic Planner detects changes in the Situated View and occurrence of external/internal events; from there, it orchestrates the reaction of the Agent to changes in the network environment. To do so, the Dynamic Planner follows a rule-based policy expressed in a simple and compact form.

The Situated View Knowledge Base


The Situated View of each agent is a structured knowledge base representing the environment of the agent. It contains knowledge elements collected locally by the agent as well as knowledge obtained from its peers. The Situated View is updated on a periodical basis and is used to adapt Behaviors to changes occurring in the network and take real-time decisions. An automatic mechanism mirrors the Situated View to appropriate peers, this knowledge being reflected in the Situated View of peer agents. The rate and range of this mechanism can be tuned according to the nature of the knowledge. The Situated View is organized following an ontology-based model which helps to build well structured applications as well as to inter-operate with other systems.

5. Agent's Strategies
Three types of strategy, all taking advantage of simple but powerful distributed A.I. techniques and representations can be used depending on the nature of the problem to be solved.

Strategies based on Logical Reasoning


Strategies based on Logical Reasoning use logical representation of knowledge and infer from Precise Facts obtained from the Situated View. This type of strategy can be used when

the problem is best expressed in term of symbolic information (as this is the case in eventbased problems). Simple logical rules can be designed to support cooperative schemes between Agents. E.g. Agents can broadcast Precise Facts to their neighbors to inform them that a "link down" between two nodes has been detected. Then, by observing the conjunction of several facts such as: (link-down A B) and (link-down A C) and (link-down A D). Agents around A can infer that the node corresponding to A is likely down because three of its links are down. A single Agent can be elected to process and report this "node down" information (it could be the agent D, because D>C>B in lexicographic order).

Strategies based on Local Optimization


When using strategies based on Local Optimization, decisions are taken so as to maximize the output of some numerical function, typically a utility function that weights the desirability of certain states from the viewpoint of the Agent. This type of strategy can be used when the problem can be stated efficiently in terms of numerical computation which is the case in problems involving quantities such as load, bandwidth, provisioning, etc. Decisions made by Agents can be further improved by taking into account the probabilities that some changes occur in the environment and use these to ponder the output of the numerical function. For instance strategies could use the probability that a VPN has to be established in the next period of time and thus ponder the outcomes of utility functions to avoid provisioning the associated resources if the probability that these resources will be used in the next period of time is very low.

Strategies based on Influencing Neighbors


Information transmitted by an Agent to its neighbors and stored in each neighbor's Situated View can influence decisions made by such neighboring Agents. Simple strategies can be devised based upon such local influence among neighbors. For instance the local broadcasting by Agent A of information regarding the overload status of its interfaces can cause Agent B two hops away, to re-route traffic so as to avoid Agent A.

6. Agent Management
Agents of the Ginkgo Distributed Networking Piloting System are deployed in existing infrastructures and must therefore be manageable as other components with tools and procedures already in place at the Network Management level. Agents provide several management functions: Configuration functions provide facilities for configuring the Piloting System. This consists mainly in the downloading of Behaviors parameters as well in the bookkeeping of configurations. Control functions allow network managers to keep a hand onto the overall functioning of the Piloting System. Moreover, control function provides facilities for on-line activation and inspection of Agents. Data collection functions take benefit of Agent measurement capabilities. These functions enable the uploading of useful information collected by Agents.

Deployment functions enable to add or remove dynamically Agents into the Piloting System and are the basis of deployment scenarios.

7. Conclusion
The Ginkgo Distributed Network Piloting System with its Distributed Intelligent Agents provide simple decentralized ways to deal with a growing number of modern networks requirements which are harder and harder to respond to with traditional centralized systems. As far as areas of application are concerned, Ginkgo Networks is currently exploring various areas of usage of the Ginkgo Distributed Network Piloting System, namely: Wireless networks control, Alarm control, Routing algorithms control, Configuration control, Security control, Home network control As far as integration within existing networks is concerned, the approach taken by Ginkgo consists in architecturing the Ginkgo Piloting System in overlay with existing functions, so that it complements, in a non-disruptive fashion, existing network functions and mechanisms in cases where it makes sense. While Ginkgo's Distributed Intelligent Agents technology is of very general applicability, it is felt that this gradual, non-disruptive approach is the most efficient way for Ginkgo to contribute to the development of modern networks.

WP1-v1.1

1/9

Das könnte Ihnen auch gefallen