A Framework for Effective Data Transfer Stijn Bernaer Patrick De Causmaecker Joris Maervoet Greet Vanden Berghe AMobe - project
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group AMobe IWT funded project Stands for ‘Application Development for Mobile Devices’ Executed by the I.T. Department of KaHo Sint- Lieven °1/9/ † 31/8/2004 Partners
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Application Development for Mobile Devices 2 coordinators and 2 researchers “How are mobile devices integrated in applications?” Based on 3 case studies Development of FrEDT: an (agent) Framework for Effective Data Transfer FrEDT is a generic agent organisation that manages client-server communication in a wireless environment Runs on mobile devices with limited capacity
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Agent architecture Programming Platforms Operating Systems Agent Platforms Wireless technology Platforms FrEDT Disciplines
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Wireless communication technology 2.5G: 2G extensions for higher bitrates Move from phone-oriented to data-oriented networks Move from circuit-switched to packet-switched data Average rates - GSM: 9.6 kbps - HSCSD: 28.8 kbps - GPRS: 40 kbps - UMTS: 384 kbps
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Agent architecture Five trends have dominated computer history: Ubiquity Interconnection Intelligence Delegation Human-orientation How to incorporate these trends in our applications?
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Agent architecture An agent is a computer system that is able to represent its owner An agent can find out what it needs to realise its design goals A multi-agent system consists of communicating agents Those agents will represent owners with diverse interests and goals. They will have to collaborate, coordinate and negotiate.
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Agent architecture FIPA (Foundation for Intelligent and Physical Agents) defines standards for heterogeneous and interacting agents and agent-based systems
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Agent architecture FIPA agents communicate through the use of FIPA ACL (Agent Communication Language) messages Ontologies decribe the structure and semantics of the message content. A content language provides the message syntax Interaction protocols define possible sequences of high-level communicative acts (sequence of message types)
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Platforms for mobile devices Programming Platforms Personal Java Java 2 Micro Edition (J2ME) Operating Systems Symbian OS Palm OS Windows CE (Pocket PC) Agent Platforms AgentLight µFIPA-OS JADE-LEAP Grasshopper
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Case 1 – Transfer of geographical data Central geographical database Mobile employees create Update Reports (UR) Employees need to transfer these UR’s Wireless synchronisation process between local and central Update Report DataBase (URDB) Employees need the most recent Update Reports on regions that will be explored in the near future (pro-active) Agents regulate the data traffic
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Case 2 – Supporting people with non-congenital brain injuries People who have problems with coordinating and organising their daily life Complete database on the supervisor’s computer and a subset of the data on the smartphone/PDA of the patient Day’s schedule, addresses, instructions, itineraries, shopping lists Optionally: mobile device for supervisor Agents act as assistants
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Case 3 – Transfer of medical reports and analyses Mobile employees visit companies for risk analysis, ergonomic analysis and medical inspection Employees use a procedure handbook and a program to manage analysis records on their notebook This book has to be updated regularly and changed records need to be exchanged with a central database Agents are connection-aware and run in background
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Framework for Effective Data Transfer Three cases FrEDT Generic agent organisation Synchronisation mechanism Wireless client-server environment Agents negotiate about transactions with different priorities Goals: to avoid congestion, to find a balance between transaction costs and transaction pending time
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Why agents? Component-based environment To assist the end user Asynchronity = delay independence Autonomy, continuity Adaptivity, proactivity Negotiation
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group FrEDT Ontology Development of an device context ontology for FrEDT An example: ConnectionAID Name (STRING) Bandwidth (INTEGER) Cost (INTEGER) UpdateRegistration
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Transactions and decisions Decisions about transaction planning are taken centrally (no local filtering) Aware of connection rate and cost. (If necessary, indicated by the user.) Non-urgent transactions are delayed based on prediction. Central transaction management DeviceServer 1: Request 2: Agree 3: Transaction
Central transaction management DeviceServer 1: Request 2: Agree 3: Transaction
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Negotiation Agent Represents the device interests Gathers knowledge about connection speed and costs and passes this information to the Index Agent Receives application specific transaction requests Handles further request negotiation with the Synchro Agent Delegates transactions after agreement (creates temporary Transaction Agents)
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Negotiation Agent How does the Negotiation Agent gather knowledge about the connection? Speed: mainly pings (same protocol as transaction) to the Index Agent. Costs: clustering if possible, else interaction with the user is needed How often is knowledge about connection updated? 1.When the device logs on 2.After completed transactions 3.Pings at regular times
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Negotiation Agent Device should know when it is worth to notify the connection change to the central system Heikki Helin: watermark technique FrEDT: proportion of current connection to last registered connection
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Database Agent Transaction Agent Created by the Negotiation Agent Is responsible to handle the raw transaction Lifetime = 1 transaction Independent on transaction protocol Separates the framework from the application- specific database
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Index Agent Holds a central register of logged-on devices and their connections Devices interact with this agent to keep this register up-to-date Answers questions concerning this register
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Prediction Agent Generates predictions on connections and costs Provides the Synchro Agent with predictions to assist in transaction scheduling Periodic model (assumes periodic behaviour) with recency effect
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Synchro Agent Receives transaction requests from interested servers and devices Schedules transactions - decisions are made based on following indicators: Application-defined priority (from Negotiation Agent) Connection rate and costs (from Index Agent) and their predictions (from Prediction Agent) of sender/receiver Pending time
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Conclusion FrEDT is suited for effective datatransfer in different situations FrEDT joins several disciplines: agents, mobile devices and wireless communication technology Points of attention: Fault-tolerance and security (provided by the agent platform) Complex ontological transaction requests
Introduction Disciplines Case studies Motivation Technical details Conclusion KaHo Sint-Lieven – Department of Industrial Engineering – IT Research Group Demonstration At the DSP Valley stand …