Chapter 3 2nd Part Mobile Agent Migration - PowerPoint PPT Presentation

1 / 20
About This Presentation
Title:

Chapter 3 2nd Part Mobile Agent Migration

Description:

... a designer of a new mobile agent toolkit, because he or she must decide which ... technique of an existing mobile agent toolkit in a unified way, which makes it ... – PowerPoint PPT presentation

Number of Views:18
Avg rating:3.0/5.0
Slides: 21
Provided by: uvr
Category:

less

Transcript and Presenter's Notes

Title: Chapter 3 2nd Part Mobile Agent Migration


1
Chapter 3 (2nd Part)Mobile Agent Migration
  • Youngjung Suh

2
Contents
  • 3.3 Design Issues of Agent Migration
  • 3.4 Reasoning about Improved Mobility Models

3
3.3 Design Issues of Agent Migration
4
Mobility Models
  • Goal of this section
  • To gather information about other migration
    techniques in order to
  • Discuss the design issues and design alternatives
    for agent migration, show pros and cons, and
    discover dependences between different design
    issues
  • For a designer of a new mobile agent toolkit,
    because he or she must decide which migration
    technique the new system should provide.
  • Develop a language to describe the migration
    technique of an existing mobile agent toolkit
  • To describe the migration technique of an
    existing mobile agent toolkit in a unified way,
    which makes it easy to compare different
    approaches.

Mobility model describes almost all the important
features concerning agent migration. A mobility
model defines three views on migration issues
Users view, Agents view, Networks view
5
Mobility Models (Users view)
  • The 1st view
  • Is considered with all aspects of migration that
    are related to the agent programmer
  • Naming and Addressing
  • The agent name is very important for successful
    migration, because the constraint that no two
    agents can have the same name can be best
    validated during the migration process.
  • More important with regard to agent migration is
    the structure of the agencys name. Each agency
    must have a name so that it can be identified
    whenever the agency itself or any of its
    resources must be addressed.
  • Creating Agents
  • When an agent is created, it must be decided
    where the agent is started first. Usually, the
    agent is started at the current agency, that is,
    the one on which the agents owner placed the
    creation command. In this case the current agency
    becomes the agents home agency.

6
Mobility Models (Users view)
  • The 1st view (continued)
  • Agent Code
  • The other important issue that must be decided is
    the place from which code can be loaded. It is
    called a code source.
  • The code source is used to load classes when the
    agent is created at its homeagency as well as
    whenever classes are not available at any remote
    agency and must be loaded dynamically on demand.
  • Agent Data
  • Next it must be decided what types of data the
    mobile agent can access and use. Each type of
    data has its own behavior during agent migration.
    There are four types of data that are useful for
    mobile agents
  • Proxy, Static, Moving, and Copying

7
Mobility Models (Users view)
  • The 1st view (continued)
  • Migration
  • ltMigrationgt ltInitiatorgt ltMobilitygt
    ltDestinationAddressgt lt Effectgt ltErrorgt
  • Migration can be initiated by the agent itself or
    by someother instance (e.g., another agent or the
    agency)
  • The type of mobility can be weak or strong, and
    in both cases further issues must be decided.
  • The weakest form of mobility transmits only the
    instance variables (object state) and the code of
    the mobile agent to the destination platform.
  • In a stronger form of mobility the mobile agent
    toolkit allows the programmer to define the name
    of a starting method within the go command.
  • The target of a migration must be discussed. Each
    migration is directed to some target, whose
    address must be defined using a migration command
    or a ticket.
  • Effect of an agent migration
  • Usally, in a migration, the agent is moved
    completely to the remote agency and there is
    still only a single instance of this agent.
  • Error is related to an agencys behavior if there
    is a migration error.

8
Mobility Models (Agents view)
  • Lets look at the way code can be relocated
    within the network (data transmission is not an
    issue here)
  • Migration Strategies
  • Migration strategy is the type of code relocation
    that is used for agent migration.
  • Push-all-to-next stratey
  • The code of the agent (together with the code of
    all referenced objects) and the serialized agent
    are transmitted simultaneously.
  • Pull strategy
  • It does not transmit any code with the data
    transmission
  • Pull-per-unit
  • Dynamically loads code on a per-class policy
  • Pull-all-units
  • Loads all class files as one package immediately
    if even one class file must be loaded.
  • Push-all-to-all
  • As in the push-all-to-next strategy, the complete
    code of an agent is transmitted, but it is sent
    to all destination platforms the agent is going
    to visit, not only to the next destination.

9
Mobility Models (Agents view)
  • Code Transfer
  • Following issues concerning code relocation
  • ltAgentgt ltCodeTransfergt (ltCodeCachegt)
    (ltUbiquitousClassesgt)
  • (last section) code relocation strategies can be
    divided into push strategies and pull strategies.
  • When the system offers a push strategy, it must
    be decided which classes must be sent to the
    agency.
  • When the system offers a pull technique, it first
    must be decided what transmission unit will be
    used.
  • It is important to decide whether class code is
    cached by the agency after it was loaded for the
    first time.
  • An important design issue is to decide which
    classes are never transmitted, even if they are
    members of a class closure, because they are
    assumed to exist at every agency already. Those
    classes were named ubiquitous.

10
Mobility Models (Networks view)
  • The last view
  • Cosiders all aspects related to data
    transmission.
  • The transmission strategy defines the way an
    agent is actually transmitted to the destination
    platform.

11
3.4 Reasoning about Improved Mobility Models
12
In this section
  • In the previous section
  • Information about current implementation
    techniques for mobile agent migration
  • Reasoning about Improved Mobility Models
  • Drawbacks against the background of current
    implementations and evaluate whether todays
    mobility models are able to solve any of these
    problems
  • Examine factors influencing mobile agents
    performance and discuss how this performance can
    be improved.
  • Investigate whether the migration strategy has an
    effect on the overall performance of mobile
    agents
  • Describe the new mobility model, named Kalong.

13
Drawbacks of Simple Migration Techniques, and
Current Implementations
  • The inherenct drawbacks of mobile agents are
  • An agents code is typically larger than a simple
    client-server request and causes a fixed overhead
    for each imgration.
  • It is only practical to send large code to remote
    agencies if server results can be decreased
    dramatically by data filtering or compression
  • An agents code is transmitted to a remote
    agency, even if it is never used there.
  • An agents data is transmitte as a single unit,
    which means that a mobile agent carries data
    items to all servers of the given itinerary, even
    if they are never used before reaching the home
    agency again.
  • In the other case, the agent carries data items
    to several agencies, although they are never used
    at the first agencies. .This was the reason for
    poor performance in the case of a high number of
    agencies.

14
Improving the Performance of Mobile Agents
  • Overview of Mobile Agents Performance Aspects
  • The performance of mobile agents is influenced by
    several factors, and within the life cycle of a
    typical mobile agent,
  • Several areas where performance can be improved
    (e.g., its task given by the user, the route or
    itinerary, its code size, the size of collected
    data, network parameters like bandwidth and
    latency) is found.
  • To structure the discussion
  • There were the following classification schema
    runtime aspects and transmission aspects

15
Improving the Performance of Mobile Agents
  • Runtime Aspects techniques by which an agents
    execution time can be improved.
  • Code Format
  • Influences code size, and therefore, code
    execution time, and , to a lesser extent,
    transmission time.
  • Machine code
  • Is specific to a processor architecture family
    and cannot be executed on processors that do not
    belong to this family.
  • Intermediate code
  • Is the result of a compilation process that is
    performed at the agents home agency. It is a
    low-level representation, which consists of
    commands for a virtual machine.
  • Code Execution
  • Another aspect that influences execution
    performance is the underlying hardware
    architecture. A second aspect is the agency
    software and its optimizations on the level of
    Java code.

16
Improving the Performance of Mobile Agents
  • Transmission Aspects all techniques that
    influence network load and transmission time
    during gent migration are summarezed.
  • Programmers View
  • The most influential factor is what level of
    mobility is supported.
  • Another concern from the programmers point of
    view is the itinerary an agent has to execute.
  • Agents View
  • A mobile agents performance is influenced by
    code and data relocation techniques we call this
    the micro level of optimization.
  • Networks View
  • We see therr factors that influence mobile
    agents performance network bandwidth, network
    latency, and the overall architecture of the
    network in which the agent operates.

17
Performance and Migration Strategies
  • Evaluations on the relationship between the
    performance of mobile agents and the migration
    strategies used.
  • How the migration strategy influences the
    migration performance of mobile agents
  • What is learned from this evaluation is
  • That no migration strategy produces the shortest
    transmission time in every situation.
  • In homogeneous networks ,
  • Pull-per-unit is a good strategy, because code
    downloading is cheap,
  • whereas in a heterogeneous network,
  • code dwonloading from a faraway agency is
    expensive and should be avoided.

18
The Kalong Mobility Model
  • This section introduce the new mobility model,
    named Kalong, which
  • Is the synthesis of most ideas for improved
    mobility models
  • The main feature of Kalong is its flexible and
    finegrained migration technique,
  • Which allows an agent or its programmer to define
    new migration strategies for each individual
    migration.
  • Three main aspects
  • Kalong defines a new agent representation and new
    transmission units
  • Kalong defines two new agency types in addition
    to the already-known home and remote agencies
    used in current mobility models
  • Kalong defines a new class cache mechanism that
    prevents not only class downloading in the case
    of pull strategies but also code transmission in
    the case of push strategies.

19
Kalongs Advantages
  • Using the new Kalong mobility model
  • The agent has the opportunity to select classes
    that should be transmitted to the next
    destination agency,
  • While other classes can be downloaded from the
    agents home agency later.
  • The second advantage
  • Is its ability to dynamically define code server
    and mirror agencies. Mirror agency is an
    extension of a code server agency.
  • The third advantage
  • Is a comprehensive technique for code caching.
    Before any class is transmitted to a destination
    agency, it is determined whether this class is
    alredy available there.

20
Summary
  • Design Issues of Agent Migration
  • Reasoning about Improved Mobility Models
  • Proposed the new mobility model, named Kalong
  • The main differences of Kalong
  • Adaptive transmission of code and data
  • Code server and mirror agencies
  • Code caching
Write a Comment
User Comments (0)
About PowerShow.com