ubiWear Group Lab Seminar Agenda - PowerPoint PPT Presentation

1 / 30
About This Presentation
Title:

ubiWear Group Lab Seminar Agenda

Description:

Summary on the previous seminar (10min.) Presentations (20min.) Dongpyo Hong ... Arnold&Gosling, 2000, de facto standard for mobile agents. Same prog. ... – PowerPoint PPT presentation

Number of Views:36
Avg rating:3.0/5.0
Slides: 31
Provided by: NMR4
Category:

less

Transcript and Presenter's Notes

Title: ubiWear Group Lab Seminar Agenda


1
ubiWear Group Lab Seminar Agenda
  • 0900 0950
  • Summary on the previous seminar (10min.)
  • Presentations (20min.)
  • Dongpyo Hong
  • Youngjung Suh (Frontier Project Proposal
    Preparation)
  • Umar Rashid
  • 0950 1000
  • Break/Tea time
  • 1000 1050
  • Discussion
  • Final Remarks and Summary

2
In this winter break
  • Chap 2 From client-server to Mobile Agents
  • Chap 3 Mobile Agent Migration I
  • Chap 3 Mobile Agent Migration II
  • Chap 4 Mobile Agent Communication
  • Chap 5 Mobile Agent Security
  • Chap 8 Evaluation

3
Chapter3. Mobile Agent Migration (Part I)
2005-6 Winter Break Lab Seminar
Mobile Agents
  • Dongpyo Hong
  • GIST U-VR Lab.
  • Gwangju 500-712
  • http//uvr.gist.ac.kr

4
Contents
  • Overview
  • Discussion Result Feedback
  • Chapter 3. Mobile Agent Migration (Part I)
  • Discussion

5
Overview
  • In the last week,
  • Whats the relationship between mobile agents and
    personalized user interface (our group's goal)?
    Why we chose mobile agents for study? (cshin)
  • We are not going to implement mobile agents. We
    are studying mobile agents to find ways how
    mobile agent concepts can be applied in our
    research areas.
  • How to implement code shipping in ubi-UCAM, which
    is currently based on data shipping? achoi
  • C.Shin and Hysook made comments about UCAM
  • How can mobile agent features be useful for
    group's goals? hysook
  • Our group goal is to provide personalized user
    interface to users in future computing
    environment. Mobile agents can be delegated
    different tasks by the users and they can move
    across distributed resources to accomplish the
    specified tasks.
  • Mobile agents can be used in ubicomp because no
    centralized server in ubicomp (ylee)
  • This was a comment made by Ylee that in
    ubiquitous computing environment, it is not
    possible to have a centralized servers and hence,
    resources have to be distributed. Therefore,
    mobile agents can be useful in ubicomp
    environment.

6
Overview
  • In the last week,
  • Can you explain the difference between code
    shipping and data shipping? -cshin, hysook, achoi
  • In data shipping, data is sent to the client
    while in code shipping, code is sent to a large
    database where it can execute and send the
    relevant results back to the client e.g) CORBA
  • ubi-UCAM has no mobility feature - hysook, cshin
  • This was a comment made by hysook and cshin.
  • Is data shipping the characteristic of agent
    only? -hysook
  • What's the standard for code shipping? sryu
  • Is code shipping more efficient than data
    shipping? -sryu
  • Code shipping is more efficient if the data size
    is too large. Otherwise, data shipping is better.
  • The term, code-shipping, is used in CORBA
  • Can mobile agents and multi-agents coexist?
    achoi
  • Mobile agents can communicate with each other and
    a multi-mobile-agent system is a multi-agent
    system.

7
Overview
  • In the last week,
  • If the environment is intelligent and provide us
    services, why we need mobile agents? achoi
  • We didnt answer the question in seminar but
    discussed it in group-meeting. Our stance is It
    will be a waste of resources to keep track of
    every users preferences in the environment.
    Moreover, it will raise privacy concerns. Also,
    if a new user who is not registered to the
    environment wont be able to utilize services.
    Mobile agents can help in overcoming these
    problems.
  • What's exactly the meaning of mobility of code in
    mobile agents? - achoi
  • Mobile agents can migrate code to different
    platforms and executed there, in order to
    accomplish the delegated tasks.
  • If we can find scenarios in ubicomp where data
    transfer is large, we can utilize mobile agents?
    hysook
  • This was a comment made by Hysook.

8
Abstract
  • Mobile Agent
  • Migration process
  • Transferring a mobile agent from one computer
    sys. to another
  • Generic framework
  • Main concepts of Java programming language
  • Main advantages
  • Saving network bandwidth
  • Mathematical model
  • Network workload
  • Optimization

9
The Mobile Agent Migration Process
  • Generic Framework for Agent Migration
  • Process of agent migration is implemented
    differently, but can be described using a general
    framework
  • Basic Terminology
  • When an agent is created on an agency,
  • Agents home agency
  • Agents owner a user who starts the agent
  • Owner can define agents name
  • Owner information is important
  • Telling foreign agencies how trustworthy the
    agent is
  • Agents name identifies an agent unequivocally on
    all agencies
  • Usually, an agent returns to its home agency
    after it has fulfilled its tasks

10
The Structure of Mobile Agents
  • Code
  • Logic
  • Be separated from the code the agency
    transferred alone
  • Identifiable, readable
  • e.g) file, byte stream
  • Data
  • Object state
  • Values of the agents instance variables
  • Not all data items are part of its object state
  • e.g) shared or agency software (file handler,
    threads, GUI etc.)
  • Agents own movable
  • Non-movable resources in the next week
  • Execution state controlled by the processor
    OS
  • Object states are controlled by the agent itself
  • Depend on the decision of the mobile agent
    toolkit designer
  • Will be discussed in the next week

11
The Migration Framework
  • Migration
  • Typical behavior of a mobile agent
  • Current agency sender agency
  • Other agency receiver agency
  • Migration protocol
  • Asynchronous communication, e.g. send a email
  • Complicated network protocols, e.g. TCP/IP
  • S1 initialize the migration process suspend
    the thread
  • S2 capture the agents data and execution state
    (serialized)
  • S3 transfer the agent
  • R1 receive the agent
  • R2 Deserialize the agent
  • R3 start agent execution in a new thread
    (discussed in the next seminar how to load)

12
Migration in the Tracy MAToolkit
  • Programming Languages for MA
  • ArnoldGosling, 2000, de facto standard for
    mobile agents
  • Same prog. languages must be used for mobile
    agents
  • Tacoma and DAgent different prog. Languages
  • 1st mobile agent toolkits
  • Interpreted language (Telescript White96),
    Script language (TCL Gray et al97, Perl Wall
    et al.00), Language discussions Knabe95,
    Cugola et al97, Thorn97
  • Several built-in features that lessen the effort
    involved in building mobile agent toolkits
  • Focus on migration process Object serialization,
    dynamic class loading, reflection, security
  • Foundations of Java
  • Portability, architecture independent byte-code
    format, JVM
  • MA must be able to migrate in a network of
    heterogeneous comp. sys.
  • JVM simplify security control
  • Safe (illegal type casting pointer), byte code
    verifier
  • Drawbacks
  • Impossible to obtain the current execution state
    of a thread
  • Impossible to preserve and later execution of a
    mobile agent in detail
  • Lack of resource control (e.g., memory or
    processor cycles)

13
Migration in the Tracy MAToolkit
  • Representing Agents in Tracy
  • Control agents life cycle
  • get and set internal data structures
  • Receive message
  • Starting the Migration Process and Resuming
    Execution
  • Mobile agent can be moved in 2 ways
  • go command, use migration properties -gt go
    command
  • Resumed using the Java reflection technique
  • Object Serialization and Deserialization
  • All variables, referenced objects put into a flat
    byte array
  • static variables are not part of the serialized
    object
  • Determine only the object state of agent, not its
    execution state
  • Finding Classes and Dynamic Class Loading
  • Code closure agents main class and all classes
    that are used for variables, method parameters,
    method return values, local variables of any
    class of the code closure

14
Effective Migration as a Core Feature of MAToolkit
  • One of the main advantage of mobile agents
  • Save network load cpt. client-server based appl.
  • By shipping the code close to data
  • Which paradigm produces lower network load?
  • 2 approaches from literature
  • Design decision btw MA CS app. based on
    mathematical models
  • Mixture btw mobile agent migration RPC
  • Detailed network-load analysis using math. models

15
Mobile Agents vs. Client-Server (1/2)
  • Static Decision btw MA and CS
  • In distributed information system,
  • N servers each hold D documents
  • Client task download the relevant documents w/
    keywords
  • Constraints
  • Relation btw relevant docs all docs equals i
    for all servers
  • Header info. has length h bits for each doc, each
    doc has length b bits
  • Requests sent from the client to server have
    length r bits
  • Picco Vigna analysis
  • Mobile agents always produce the highest network
    traffic because an agent carries all docs already
    found
  • In all other paradigms, docs are sent back to the
    client immediately
  • Networks for real-world applications must be
    considered
  • Networks are heterogeneous migration btw remote
    servers is faster than sending two requests from
    the client
  • Parameters might change in the future

16
Mobile Agents vs. Client-Server (2/2)
  • Mixture btw Agent Migrations RPC
  • Proposed by Straver Schwehn 97 minimize
    network traffic
  • Several parameters are known in advance
  • Amount of communication necessary btw c-s
  • Bandwidth latency for all network connections
  • Model mobile agents
  • To filter or compress server results before
    sending it back to the client, compression factor
  • Evaluate a single C-S-like interaction wrt
    different values for the server result size and
    the compression factor
  • With low compression factors, MA produces a
    greater network load, vice versa
  • To determine the optimal communication sequence,
  • Knowledge of several parameters, about network
    bandwidth, latency, request, and result size
  • However, it is not clear how these values can be
    obtained in general

17
Performance Analysis of Simple MA vs. CS
  • To show under
  • which circumstances the use of mobile agents
    causes lower network load
  • Which characteristics of mobile agents are
    responsible for sometimes higher network load
  • Focus analysis on network traffic
  • Transmitted bytes, not transmission time
  • 2 advantages of mobile agents, reducing network
    load
  • Ability to avoid network protocol overhead
  • Ability to filter compress data at the server
    site
  • Additional assumptions
  • When migration, carry all its code, all state
    information, all data
  • If migrate to home agency, code transmission is
    omitted
  • Not consider
  • Security cost, manual optimization, etc.

18
Behavior of Mobile Agents (1/6)
  • Scenario 1 network of one client one server
  • Client accesses the server one or many times
  • Reducing network load through data filtering
    compression
  • No data filtering compression can be applied
  • Request of size Breq, a result of size Bres
  • Mobile Agents
  • Filter or compress the server result, (1- s)Bres
    carried
  • code size Bc, state information size Bs
  • MA produces lower network load iff its code
    (including double the state) is lower than the
    of bytes of the server result that agents could
    save thru. compression and/or filtering

19
Behavior of Mobile Agents (2/6)
  • Scenario 1 network of one client one server
  • Avoiding several network protocol steps
  • For a client to need to check a server
    periodically to keep informed about changes
  • Client-Server approach
  • Mobile Agent approach

20
Behavior of Mobile Agents (3/6)
  • Scenario 2 network of one client m servers
  • Client is searching for a single data item that
    might be stored on any server search
    sequentially
  • Server set L L1,,Lm
  • Probability that information is found at server
    Li pi
  • Order in which servers are accessed is important
  • Client-Server approach
  • Mobile Agent

network load increases in proportion to the
of servers in mobile agent, whereas only slightly
in client-server approach
21
Behavior of Mobile Agents (4/6)
  • Scenario 2 network of one client m servers
  • Consider only the costs at the client network
    interface
  • e.g) mobile phone costs depend on the of bytes
    from mobile phone to the Internet service
    provider, uplink
  • Client-Server approach is the same
  • Mobile agent approach

Profitable to use mobile agents if only uplink
costs must be considered
22
Behavior of Mobile Agents (5/6)
  • Scenario 3 network of one client m servers
  • Client is searching for data items on all servers
  • Client-Server approach
  • Mobile Agent approach
  • Code, state, request transmission
  • Select filter data, increase (1-s)Bres

23
Behavior of Mobile Agents (6/6)
  • Scenario 3 network of one client m servers
  • Client is searching for data items on all servers
  • Consider only costs at the client-network
    interface
  • Client-Server approach
  • The same as
  • Mobile Agent approach

24
Evaluation Scenario using Parameters
25
Limitations
  • Some factors influence network traffic response
    time
  • Network quality
  • Error probability of a given network connection,
    e.g., wireless
  • A mathematical model Jain et al.00
  • Server processing time
  • Ignored, response time agent migration data
    transmission time
  • Gray et al. 2001
  • Scalability of a mobile agent server software is
    a major drawback for the overall performance of
    MA-based appl.
  • Puliafito et al. 99, 01, information retrieval
    domain
  • A fixed of servers must be accessed
  • Influence of the probability, pr, of reusing the
    same server for a subsequent request
  • Such subsequent request produces network load
  • Low value for pr, client-server approach performs
    better because of the overhead of mobile agent
    migration
  • Higher value for pr, mobile agent approach
    performs better

26
Advantages of Mobile Agents (1/2)
  • Mobile agents produce lower network traffic
  • If of requests during communication is high
  • Size of the server result is high combined w/ a
    high compression or filter factor
  • Real-world experiments are conducted
  • Give concrete numbers
  • Ismail Hagimont 99, w/ Aglets, Inf. Retrieval
  • First server hotel information, second server
    telephone dir.
  • Task to get a list of hotels in a given town
    their telephone number
  • Overall execution time depend of hotel records
    returned by the first server
  • If there are more than 30 record, mobile agent is
    lower execution time. Otherwise, client-server is
    lower

27
Advantages of Mobile Agents (2/2)
  • Multiple servers must be accessed network
    connection btw client and any server is not
    frequently used
  • Smaller network load if only network traffic at
    the client-interface (uplink) is considered
  • Shorter response time if the uplink has a smaller
    bandwidth (or higher latency) than all
    inter-server connections
  • Heterogeneous networks
  • Network connections do not have the same quality
  • Uplink (i.e., the connections btw the client and
    any server) has lower bandwidth or higher latency
    than connections btw servers
  • e.g) mobile client that use wireless LAN
  • Mobile agents have a shorter response time
  • Because only small bandwidth connection only
    twice for the migration from the client and back
    to the client
  • Whereas in the client-server paradigm, each
    server is accessed using this bottleneck
    connection

28
Drawbacks of MA using Simple Migration Tech.
  • MAs sometimes produce higher network traffic
  • Size of the code to be transmitted
  • Agent code is usually larger than a simple
    request in CS
  • Carry code for data filtering and/or compression
  • Need additional logic which servers should be
    visited
  • The more sophisticated the data filtering (which
    results in a higher compression factor), the
    larger the code is necessary
  • Sending code to each server causes a fixed
    overhead
  • Migration technique
  • Assumption send code as one unit to each server
  • Pieces of code with low execution probability on
    specific server
  • On a specific server only one of subtasks is
    executed
  • Therefore, code for all other subtasks is
    transferred superfluously
  • MA has to migrate to many servers instead of only
    one
  • MAs are useful only if there is a small of
    servers to be visited
  • Contradicts the general idea of mobile agents

29
Summary
  • Mathematical evaluation
  • Examination of a performance analysis
  • Mobile agents
  • Reduce the network load processing time
  • Because code is shipped to the data instead of
    data being shipped to the code
  • Drawbacks in mobile agents
  • Simple migration technique
  • Code migration is expensive task (optimized,
    flexible)
  • Data migration has an important effect on the
    performance of mobile agents
  • In the next week,
  • Focus on migration process of mobile agents
    optimizations

30
Discussion
  • Discussions More information
  • Dongpyo Hong
  • GIST U-VR Lab, Gwangju 500-712, S. Korea
  • Tel. 82-62-970-3157
  • Fax. 82-62-970-2204
  • mailto dhong_at_gist.ac.kr
  • Web http//uvr.gist.ac.kr/dhong or
    http//www.dhong.net

Thank You!
Write a Comment
User Comments (0)
About PowerShow.com