Presentation is loading. Please wait.

Presentation is loading. Please wait.

Alternatives to Mobile Agents

Similar presentations


Presentation on theme: "Alternatives to Mobile Agents"— Presentation transcript:

1 Alternatives to Mobile Agents
An appendix to AFRL talk David Kotz

2 Other techniques work ... Remote Procedure Calls (RPC)
Stored Procedures Java Applets and servlets Load balancing in homogeneous networks Application-specific solutions ( eg. adaptive meshes) Distributed document retrieval Distributed simulation

3 Call to server procedure
RPC and queued RPC RPC Call to server procedure Dataset Client Server Procedure results Dataset Client Server 3 5 4 1 2 Queued calls Queued results Queued RPC No mobile code Client constrained to server’s interface All requests and results over client’s network link No latency or bandwidth reduction, and blocked if link goes down

4 Stored procedures and REV
Dataset Client Server Proc 1. Send procedure code to server 2. Call procedure Dataset Server Client Proc 2. Send results (and maybe a server procedure) 1. Send procedure code and arguments to server - procedure called immediately 3. Send results Serv Proc Client Perfect if accessing one server Difficulties if accessing more than one server Procedures usually can not communicate with each other Procedures usually can not send out their own procedures (e.g., no proxy)

5 Applets and servlets Applets Servlets Web Pages Server Servlet Browser
2. Receive page and “embedded” applet; execute applet Web Pages Browser Server Applet 1. Request Web page Servlet 1. Send servlet 2. Get results Servlets Same limitations as stored procedures and REV Implementations pay more attention to security than stored procedures and REV

6 Load balancing MPI, Condor and Legion: Load balancing can be done
- statically (for a heterogeneous network); - dynamically through data movement. Much programmer effort required to achieve even limited solutions. Not much security support. Often pre-loaded code or homogeneous network.

7 Application-specific solutions
Example: Modeling of complex mechanical structures Predefined, fixed distributed solution 3. Domain decomposition 2. Grid/mesh generation 4. Visualization 1. Database of physical components “Hardwired” approach….nothing dynamic.

8 TR without agents ... ... 1. Lot of work.
Queued RPC Queued RPC ... Pre-installed application-specific proxy Higher-level database interface 2. Much less work, but now try extending the TR app. Client Code “Queued” REV “Queued” REV ... Client Code Client Code Proxy

9 … but takes several techniques
That is, the research community is developing several different approaches to deal with problems of efficiency, robustness, adaptability and flexibility for distributed computing and information systems. We propose a single technology, mobile agents based on strong code mobility, to solve many problems in a unified framework.

10 Why not extend other techniques?
MPI - dynamic process creation Legion - checkpointing to support process migration Java - process serialization and state capture for persistence (rumor!) Are these all going to end up supporting code mobility? Many different systems are heading in the direction of mobile code. Let’s go there directly!

11 Big picture: A uniform framework
SUMMARY (so far) There are several different strengths of mobile agents. Mobile code helps solve various performance and robustness problems. Idiosyncratic solutions exist in each problem domain. Mobile agents provide a unified framework, a single technology for solving many problems. Let’s go directly to where many different systems are evolving, now.


Download ppt "Alternatives to Mobile Agents"

Similar presentations


Ads by Google