Upload
warren-hopkins
View
216
Download
0
Tags:
Embed Size (px)
Citation preview
JWAITS 2001 @La Jolla, CA 1
Bionet Project Overview:Applying Biological Concepts and Mechanisms
for Designing Adaptable, Scalable and Survivable Communication Software
Jun Suzuki and Tatsuya [email protected]
Dept. of Information and Computer Science,University of California, Irvine
JWAITS 2001 @La Jolla, CA 2
Agenda
Bio-Networking Architecture Overview Motivation to Bionet Project Observations of large scale biological systems that
scale, adapt, and survive in dynamic environment How bio concepts are used in the Bionet project
Bio-Networking Architecture DesignCurrent Project Status and Future WorkConclusion
JWAITS 2001 @La Jolla, CA 3
Motivation: Bionet Project
The explosive growth of the net places larger and more challenging demands on underlying communication software.Future network services and applications have to satisfy: Scalability
They have to be able to scale to billions of nodes and users.
AdaptabilityThey have to be able to adapt to diverse and
dynamic conditions in the network.
JWAITS 2001 @La Jolla, CA 4
Availability and SurvivabilityThey have to be secure and highly available.
AutonomyThey have to require minimal human configuration
and management.
Networks need to have built-in mechanisms to provide these features
JWAITS 2001 @La Jolla, CA 5
Bionet: Applying Biological Concepts and Mechanisms
Observation: large scale biological systems scale, adapt, and survive e.g. bee colony
Bionet: applying biological concepts/mechanisms to network services and applications A bee colony can scale to a large number of bees
because all activities of the colony are carried out without centralized control.decentralization
JWAITS 2001 @La Jolla, CA 6
Bees act autonomously, influenced by local conditions and local interactions with other bees.
The bee colony also adapts to dynamic conditions, often to optimize its food gain relative to energy expenditure.
The bee colony is survivable because it is not dependent on any single bee
Scalability, adaptability and survivability are not present in any single bee. Rather, they emerge from the collective actions and interactions of all the bees in the colony.
JWAITS 2001 @La Jolla, CA 7
Complex Adaptive System
a super entity with emergent characteristics
individual entities (agents)
emergencethrough self-organization
Feedback andreinforcement
learning
JWAITS 2001 @La Jolla, CA 8
Agenda
Bio-Networking Architecture Overview Motivation to Bionet Project Observations of large scale biological systems that
scale, adapt, and survive in dynamic environment How bio concepts are used in the Bionet project
Bio-Networking Architecture DesignCurrent Project Status and Future WorkConclusion
JWAITS 2001 @La Jolla, CA 9
Emergent BehaviorBiological systems consist of many autonomous entities useful group behavior emerges from autonomous lo
cal interaction of individuals with simple behaviors
JWAITS 2001 @La Jolla, CA 10
Bio-Network application constructed from a collection of cyber-e
ntities (objects/agents) cyber-entities have biological behaviors
e.g. migration, reproduction, death, energy exchange each cyber-entity has basic functionality related to i
ts application and service
JWAITS 2001 @La Jolla, CA 11
Food and EnergyBiological systems biological entities naturally strive to gain energy by
seeking and consuming food
JWAITS 2001 @La Jolla, CA 12
Bio-Network cyber-entity stores/expends energy (food/money) Energy is the unit of exchange for service or resour
ce usages. energy exchange
CE gains energy from a user/another CE in exchange for performing a service
CE expend energy to use network/computing resources
energy used as a control mechanism (natural selection mechanism) abundance induces replication or reproduction scarcity induces death
JWAITS 2001 @La Jolla, CA 13
Evolution and AdaptationBiological systems the biological system specializes and optimizes itsel
f for environmental changes. key enablers:
diversity from mutations and crossovers during replication/reproduction
natural selection keeps entities with beneficial features alive and increase reproduction probability
JWAITS 2001 @La Jolla, CA 14
Bio-Network cyber-entities (CEs) evolve, adapt, and localize thro
ugh diversity and natural selection diversity
A CE behavior can be implemented by a number of algorithms/policies
human designers can introduce diversity in CEsCEs replicate/reproduce with mutation/crossover
natural selectiondeath from energy starvation replication/reproduction from energy abundance
JWAITS 2001 @La Jolla, CA 15
Agenda
Bio-Networking Architecture Overview Motivation to Bionet Project Observations of large scale biological systems that
scale, adapt, and survive in dynamic environment How bio concepts are used in the Bionet project
Bio-Networking Architecture DesignCurrent Project Status and Future WorkConclusion
JWAITS 2001 @La Jolla, CA 16
Bionet Platform Architecture
Bionet Services
Bionet Platform
Bionet Container
CE
CE Context
CE CE CE
Java VM
JWAITS 2001 @La Jolla, CA 17
Bionet Platform Components
Bionet Platform is developed by Java and runs on a Java virtual
machine.Major components: Cyber entity
runs and moves autonomously Provides a simple service is the smallest component in Bionet environment.
Cyber entity context Bionet Services Bionet Container
JWAITS 2001 @La Jolla, CA 18
Ineter-CE CommunicationA CE has a single method “service”, which accepts a message written in an Agent Communication Language (ACL). Each CE has an ACL
interpretation engine.
CEservice(<ACL msg>)
CE
<request> <name>reserve</name> <arg>01</arg> …</request>
JWAITS 2001 @La Jolla, CA 19
The class CyberEntity
CyberEntity
migrate()replicate()reproduce()
…init(Object[]): void
run(): voidgetCEContext(): AgentContextsetCEContext(CEContext): void
log(): void…
onCreated(): voidonMove(): voidonArrival(): void
onActivated(): voidonDeactivated(): void
onDestroy(): void
private float energyprivate int age
private String name…
Behavior
Auxiliary methods
Callback operations
attribute
HotelReservationAgent
private float rateprivate Vector reservations
extends
reserve()checkAvailability()
cancelRerservation()
Body’s non-executable data
Body’s executable code
JWAITS 2001 @La Jolla, CA 20
Cyber Entity Context
CE Context is an entry point for CE to access Bionet Services. is created and associated with each CE implicitly by
Bionet Lifecycle Service, when a CE is created, replicated, reproduced, or migrated from another host.
is called by only its associated cyber entity.
CyberEntity
getCEContext(): CEContextsetCEContext(CEContext): void
…
CEContext
find(String): ObjectgetBionetContainer(String): BionetContainer
getReference(): CERreference
1 1
JWAITS 2001 @La Jolla, CA 21
Bionet Services
CE Directory
Cyber EntityMigration
PheromoneEmission
ResourceSensing
Social Networking
Cyber-EntityComm.
Cyber-EntityLifecycle
Security
Bionet Services
RelationshipManagement
EnergyManagement
ResourceAllocation
JWAITS 2001 @La Jolla, CA 22
Bionet Container
Bionet Container is a sandbox in which CEs and Bionet Services run. runs on per-process basis.
One or more Bionet containers can run on a single host.
a host
Bionet Container
Process 1
Bionet Container
Process 2
JWAITS 2001 @La Jolla, CA 23
Bionet Platform provides the bottom most operations to maintain Bionet Platform. CE registration/unregistration CE activation/deactivation resource management CE reference management request/event parsing
Bionet Services
Bionet Container
CE
memory connection
threads
CEBionet ServicesBionet Services
available resources
JWAITS 2001 @La Jolla, CA 24
Agenda
Bio-Networking Architecture Overview Motivation to Bionet Project Observations of large scale biological systems that
scale, adapt, and survive in dynamic environment How bio concepts are used in the Bionet project
Bio-Networking Architecture DesignCurrent Project Status and Future WorkConclusion
JWAITS 2001 @La Jolla, CA 25
Current Project Status
Bionet Simulator Adaptation/evolution simulation done.
See a technical paper for details: netresearch.ics.uci.edu/bionet/
Results show Bio-Networking Architecture works well.
Bionet Platform is design/early implementation stages. on top of CORBA and Enterprise Java Beans (EJB)
JWAITS 2001 @La Jolla, CA 26
An Ongoing project:Self-Organizing Agents
It has been one of the biggest problem in traditional distributed object computing environments to decide and optimize object locations. Static and manual configuration in the environment without object
mobility e.g. Many objects on a powerful machine Frequently interacting objects on the same host/process
Tedious and time-consuming The system/object should be stopped; availability decreased.
The decision is ad-hoc or static even in mobile agent environments. e.g. Developers define an agent itinerary that describes when and
where to move at development time.
JWAITS 2001 @La Jolla, CA 27
We need more dynamic and autonomous mechanism of deciding agent location. Bionet facilitates this by using self-organizing cyber ent
ities A CE organization is emerged from autonomous local i
nteractions. Energy exchange between CEs Energy exchange between an CE and its platform
JWAITS 2001 @La Jolla, CA 28
Agent-agent/agent-platform interactions
Energy in Bionet Unit of exchange for service or resource usages
Agent-agent interaction Each agent gains energy from another agent (or user) in
exchange for performing a service. abundance induces replication or reproduction scarcity induces death
Agent-platform interaction Each agent expends energy to use network/computing
resources. e.g. thread, transport connection, memory space and CPU
cycle Agent platform knows the types, amount and cost of
available resources.
JWAITS 2001 @La Jolla, CA 29
An Example ScenarioEach agent asks its underlying platform to assign a thread, and pays its energy.The unit cost of a thread utilization may vary with the number of available threads.
More idle threads exist in a pool, cheaper the unit cost is.
Each agent behaves autonomously with its policies.
e.g. An agent migrates to another host when migration cost is cheaper than thread utilization cost.
e.g. An agent deactivates itself when its thread utilization cost is too expensive to pay.
The concept of energy allows agents to consume available resources in a distributed environment effectively.
Bionet Container
CE
agent registration table
Thread pool
(2) assigns an idle thread(3) requires the cost (1) registers
JWAITS 2001 @La Jolla, CA 30
Wrap upBionet provides a new paradigm to build network services and applications. Inspired by biology
Bionet Platform is in design/early implementation stages Most of the elements are in place
Several simulation results have supported our direction.Bionet Simulator is available at http://netresearch.ics.uci.edu/bionet/
Bionet Platform will be available in the middle of this year.
JWAITS 2001 @La Jolla, CA 31
AcknowledgementsThis work has been supported by
the National Science Foundation through grants ANI-0083074 and ANI-9903427,
DARPA through Grant MDA972-99-1-0007,
AFOSR through Grant MURI F49620-00-1-0330,
grants from the University of California MICRO Program,
Hitachi, Hitachi America, Standard Microsystems
Corporation, Canon, Canon USA,
Novell, Tokyo Electric Power Com
pany, Nippon Telegraph and Tele
phone Corporation (NTT), NTT Docomo, Fujitsu, Nippon Steel Information a
nd Communication Systems Incorporated (ENICOM),
Matsushita Electric Industrial company.