Download Database Agents - International Organization for Information

Document related concepts

Microsoft Jet Database Engine wikipedia , lookup

Relational model wikipedia , lookup

Database wikipedia , lookup

Concurrency control wikipedia , lookup

Database model wikipedia , lookup

Clusterpoint wikipedia , lookup

Object-relational impedance mismatch wikipedia , lookup

ContactPoint wikipedia , lookup

Transcript
Franz Gruber
[email protected]
+43 7236 3343 893
www.scch.at
Mobile Agents In An
Insecure Environment
Tutorial
IIWAS 2002, Bandung, 10 – 12 Sept 2002
Database Agents
1
Who am I?
 Project Manager
 Evaluation of Mobile
Agent Platforms
 Topics of research
 Mobile and distributed
systems
 Wireless communictation
technolgies
Database Agents
2
Virtual Tutorial CD
 http://www.scch.at/agents
 All slides as PDF file
 Source Code
 Java Class Files
 Grasshopper
not included due to
restrictions - However, Grasshopper can be
downloaded (evaluation and noncommercial licenses free) at
http://www.grasshopper.de
Database Agents
3
Overview
Introduction to agent technology
 Definition
 Classification
 Standardization
Agent capabilites
 Mobility
 Communication and Cooperation
 Security
Database Agents
4
General Remarks
Prerequisites
 None
Mobile Agents for Databases Using
Grasshopper by Ludwig Klug
 Conceptual 2nd part of this tutorial
 Practical application of mobile agents in a
database framework with demos
Database Agents
5
Franz Gruber
[email protected]
+43 7236 3343 893
www.scch.at
Introduction
to Agent Technology
Database Agents
6
Agent-Based Computing
Hype or Paradigm Shift?
“My guess is that agent-based computing
will be what object-oriented programming
was in the 1980s. Everybody will be in favor
of it. Every manufacturer will promote his
product as supporting it. Every manager will
pay lip service to it. Every programmer will
practice it (differently).
And no one will know just what it is.”
(Jennings, OOPSLA 2000)
Database Agents
7
Strong Increase in
Research Activities
 1st Int. Workshop on Agent Systems and Applications
(WOA2000)
 1st Int. Workshop on Web Agent Systems and Applications
(WASA 2000)
 2nd European Agent Systems Summer School (EASS
2000)
 2nd Int. Symposium on Mobile Agent Applications
(MAA'2000)
 2nd Int. Symposium on Agent Systems and Applications
(ASA 2000)
 4th Int. Symposium on Mobile Agents (MA 2000)
Database Agents
8
Strong Increase in
Research Activities
 4th Int. Conference on Autonomous Agents (Agents 2000)
 4th Int. Conference on Multi Agent Systems (ICMAS 2000)
 4th Int. Workshop on Cooperative Information Agents (CIA
2000)
 5th Int. Conference on Autonomous Agents (Agents 2000)
 6th ECOOP Workshop on Mobile Object Systems (ECOOP
2000)
 6th Int. Conf. on Information Systems, Analysis and Synthesis
(ISAS 2000)
 Agent-Oriented Information Systems (CAiSE 2000)
Database Agents
9
Increased Availability
of Systems
AgentBuilder
 iGEN
AgenTalk
Intelligent Agent
Factory
Agentx
Aglets
Concordia
DirectIA
Gossip
Grasshopper
Database Agents
JACK Intelligent
Agents
JAM
Jumping Beans
LiveAgent
10
Increased Availability
of Systems
MadKit
Voyager
Microsoft Agent Agent Factory
D‘Agents
NetStepper
Pathwalker
Agent Tcl
Swarm
TACOMA
UMPRS
Ascape
Via
Bee-gent
Database Agents
11
Increased Availability
of Systems
EXCALIBUR
Mobiware
Gypsy
SOMA
Hive
MOLE
Inforsiders
RETSINA
JADE
Zeus
JAT
Ara
Database Agents
12
State of the Art: Overview
Definition and Classification
 Definition
 Classification
 Agent Types
 Standardization
Basic Characteristics
Database Agents
13
Franz Gruber
[email protected]
+43 7236 3343 893
www.scch.at
Definition
What is an agent?
Database Agents
14
Definition
No unique definition in literature
 Various classification schemes
 Various characterizing features
(mobility,...)
Database Agents
15
Definition
Provisional Definition (Software
Agents)
“Software program that can do some
defined action for a user, which has some
kind of intelligence to give the ability to
do part of its function autonomously and
which can interact with its environment.“
Database Agents
16
Classification (I)
 Classification by mobility
 Mobile or not mobile?
 Interaction capabilities
 Deliberative or reactive?
 Ideal attributes
 Learning – autonomy – cooperation
 Area of influence
 Autonomy – intelligence - mobility
Database Agents
17
Classification (II)
Learning – Autonomy – Cooperation
Learning
Interface
Agents
Smart
Agents
Collaborative
Agents
Autonomy
Database Agents
Collaborative
Learning
Agents
Cooperation
18
Classification (III)
Area of Influence
Decision Theory
Communication
Network
Autonomy
Learning
Capability
Mobility
Proactivity
Characteristic
Artificial
Intelligence
Communication
Reactivity
Cooperation
Distributed artificial
Intelligence
Database Agents
Character
Psychology
19
Classification (IV)
autonomy
Interaction with application
Interaction with data
User presentation
Asynchronity
Autonomy – Intelligence Mobility
Agents with fixed
functionality
Interaction with services
Expert Systems
consequences
static
preferences
learning
planning
intelligence
Mobile Scripting
Mobile Objects
Mobility
Database Agents
20
Agent Types
 Collaborative Agents
 Reactive Agents
 Interface Agents
 Hybrid Agents
 Mobile Agents
 Heterogeneous Agents
 Information/Internet
Agents
 Smart Agents
Database Agents
21
Franz Gruber
[email protected]
+43 7236 3343 893
www.scch.at
Standardization
Database Agents
22
Overview
FIPA
 Foundation of Intelligent Physical Agents
 Covers the whole range of agent software
architecture
MASIF
 Mobile Agent System Interoperability Facility
 Covers only mobile agents
Convergences and differences
Database Agents
23
FIPA
Software Agent
Agent Platform
Agent
Management
System
Directory
Facilitator
Agent
Communication
Channel
Agent
Communication
Channel
Internal Platform Message Transport
Database Agents
24
MASIF
Region
create/suspend/resume/terminate agent
receive agent
list agents/places
get MAFFinder
get agent system type
get agent status,...
Agent System (Agency)
Place
Agents
Region
Registration
Component
register agent/place/system
de-register agent/place/system
lookup agent/place/system
Agency Services
MAF
Agent
System
MAF
Finder
Communication Channel (ORB)
Database Agents
25
Convergences & Differences
Communication Channel (ORB)
Convergence
MASIFaccess
part
FIPA
agent
platform
Agent
Management
Service
Directory
Facilitator
Agent
Communciation
Channel
Internal Platform Message Transport
Differences
 FIPA: whole platform
 MASIF: minimal definitions
Agent Platform
Database Agents
26
State of the Art: Overview
Definition and Classification
Basic Characteristics
 Mobility
 Communication and cooperation
 Security and authentication
 Information filtering and retrieval
 Learning and planning
 User modeling
 Open issues
Database Agents
27
Franz Gruber
[email protected]
+43 7236 3343 893
www.scch.at
Characteristic Properties
Database Agents
28
Mobility of agents
 Ability of agents to move between
computers
 Agents: „move“ –> „migrate“
 Weak migration
 Strong migration
Strong (data and control)
Weak (data only)
Database Agents
29
Mobility of agents
 Basic platform runtime required on each
computer
 Distribution of task when needed
 Database queries within DBMS
 Searching within network
Weak (data only)
Database Agents
30
Communication
 Communication
 Protocols, Procedures
 Agent communication
languages
– Knowledge Query
and Manipulation
Language (KQML)
– FIPA-ACL
– XML
Database Agents
31
KQML Message
(tell :sender sellerAgent
:receiver fhBot
:in-reply-to id333-222-289
:ontology ecbk12
:language Prolog
:content “price(ISBN453276,20.98)”
)
Database Agents
32
Cooperation
 Contract-Net-Node Protocol
Task Processor
Local database
Communication Processor
Network
Contract processoror
Database Agents
33
Security and Authentication
Threats
 Unauthorized disclosure of information
(Confidentiality)
 Denial of service
(DoS) - availability
TNT
TNT
TNT
 Corruption of
information
(integrity)
TNT
TNT
TNT
TNT
Database Agents
34
Security and Authentication
Malicious Strategies
 Agent attacking platform
 Agent attacking agent
 Platform attacking agent
 Agent system attacking
Mechanisms
 Encryption, SSL, PKI, Code Signing,
Trusted Third Parties
Database Agents
35
Information Filtering and
Retrieval
Basics
 Unstructured information
 Different kinds and sources of information
Text representation
 Free text search
 Semantic approach
Information Filtering
 Long-term information retrieval
Database Agents
36
Information Filtering and
Retrieval
Information retrieval
is based on
supplies
analysis of data units
documents
Information during the
retrieval
Analysis of data
with
with
Principles of knowledge
representation
Transformations
indexing classifying
retrieval operations
stored in
on
Internal knowledge
structure (database
structures)
Database Agents
37
Learning and Planning
Planning
Multi-Agent-Planning
Single - Agent - Planning
Central Multi-Agent-Planning
Task-oriented Planning
Database Agents
distributed Multi-Agent-Planning
Plan coordination
38
Learning and Planning
Database Agents
39
User Modeling
Simulation of user‘s preferences
 Required for information filtering and
user
retrieval
User profile
Creation of user profile
 Initial profile
 Observing user patterns and preferences
Agent
=> Customized information search
Information source
Database Agents
40
Fundamental Questions,
However, Remain
What is the essence of agent-based
computing?
Why are agents an appealing
computational model?
What are the drawbacks of an agentoriented approach?
What are the implications for future
software architectures?
Database Agents
41
Ongoing Research
Learning and planning capabilities
 Distributed planning
 Distributed knowledge collection and
representation
User modeling
 User preferences for information retrieval
and filtering
Database Agents
42
Ongoing Research
Communication and cooperation
 Agent communication
 Agent negotiations
Security
 Encryption of data
 Digital certificates
Database Agents
43
Franz Gruber
[email protected]
+43 7236 3343 893
www.scch.at
Commercial Agent
Platforms
Selection
Database Agents
44
Aglets
Manufacturer:
Current Version:
JDK Version:
Characteristics:
Open source (formerly IBM)
1.1
1.1.x
many security features available
easy to use GUI for administration
of the agent platform
book available; open source
WWW
Database Agents
http://www.aglets.org
45
Grasshopper
Manufacturer:
Current Version:
JDK Version:
Characteristics:
IKV++ GmbH, Berlin, Germany
2.2
1.2.2
support for the current standard
security concepts
useful GUI for administration and
monitoring of agents
detailed documentation
WWW
Database Agents
http://www.grasshopper.de
46
Jumping Beans
Manufacturer:
Current Version:
JDK Version:
Characteristics:
Ad Astra Engineering
2.2
1.2
security features are on a high level
of maturity
documentation not up-to-date
migration of the agents is very slow
thread problem using a GUI
WWW
Database Agents
http://www.jumpingbeans.com
47
Soma
Manufacturer:
Laboratory of Advanced Research
on CS, University of Bologna, Italy
Current Version:
JDK Version:
Characteristics:
4.0
1.2
main aspect in security and mobility
using open standards like MASIF or
FIPA
no useful documentation available
WWW
http://www-lia.deis.unibo.it
Database Agents
48
Franz Gruber
[email protected]
+43 7236 3343 893
www.scch.at
Using Agents
For Real-World Applications
Database Agents
49
Why Mobile Agents?
Dataset
Real Deployment
 Reduce Network
Dataset
Load
Dataset
 Overcome Network
Latency
Merged and
filtered data
stream
Dynamically
selected
proxy site
Text documents,
numerical data, etc.
Dataset
Server
Client/Proxy
 Synchronity and
Asynchronity
Dataset
Client/Proxy
Database Agents
50
No Agents, Please!
Relative to Mobile Agents,
Client/Server is Network Bound
 Use mobile agents if your application
does a little processing on a large dataset
Relative to Client/Server, Agents are
CPU Bound
 Do not use mobile agents if your
application does a lot of processing on a
small dataset
Database Agents
51
Next Generation Systems
 Remote communication just as fast as RPC
No penalty for stationary agent
 Just-in-time compilation and software fault isolation
Execution at near-native speeds
 Code caching
Low migration overhead
=> “Mobile agents will do no worse than
traditional implementations, and will often do
better“.
[Bob Gray, Dartmouth College, ASA/MA ‚2000]
Database Agents
52
What is the essence of
agent-based computing?
Component-based software
engineering of the future.
Small pieces of code (fewer errors).
Easy “updates” because updates are
not necessary.
Database Agents
53
Franz Gruber
[email protected]
+43 7236 3343 893
www.scch.at
Questions – Discussion
What do you think??
Database Agents
54