Process Offloading in Android devices
using JADE
Presentation for
ICCPCT Conference ‘15
20 March 2015
By : * David I. Fadaraliki & S. Rajendran
*M.Tech Cloud Computing
Department of I.T.
SRM University
Introduction
 Definitions
Problem Analysis
Proposed Solution
Why Mobile agents
Jade Overview
Quantitative Results
Possibilities (Applications)
Conclusion
Outlines
Introduction(1)
87% Of Connected Devices Sales By 2017 Will Be Tablets
And Smartphones. Mostly capable of connecting to the internet.
But….
IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
Introduction(2)
processing capabilities,
storage capacities,
battery life
… with limited :
Propose Mobile Agents aided Offloading framework for data,
applications, processes and/or services from a mobile device
(android) to a cloud environment
IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
Definitions
Offloading -sending heavy computation to a resourceful remote location
and receiving the results back.
JADE(Leap) – Java Agent DEvelopment (Light Extension Agent
Platform)
Mobile Agents - software abstraction that can migrate across the
network representing users. They communicate using
agent communication language (acl) realize a set of tasks
and goals it was designed for
Cloud Environment - remote servers and software networks that allow
centralized data storage and online access to computer
resources
IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
Problem Analysis – Security(1)
CloneCloud – “security is assumed basing on the trusted virtual
machines, all the device data is replicated in the cloud to ensure
synchronous virtualization
between the device
and its clone.”
IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
Problem Analysis – Security(2)
ThinkAir – “it assumes a trustworthy cloud server execution
environment: there is hope that
whenever data is offloaded to the
cloud, the code and state of the
data are not maliciously
modified or stolen”
IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
Problem Analysis – Interoperability
MAUI – “it is more dependent on the hardware architecture of the hosts.
Mobile devices typically have different CPU instruction architecture
than desktops and servers. Processes cannot be easily run on devices
with different architectures.”
IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
Proposed Solution
IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
 Mobile agents encapsulate data, instructions and protocols.
 Ability to move transparently across different hosts.
 Capable of adaptive learning and automation.
 Some intelligent agents are equipped with techniques to check self-
integrity.
Why Mobile Agents
Encoded
Message
Content
Message
Payload
Envelope Transport
Information
Message
parameters
Message content
IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
JADE Overview
Java based platform for running mobile agents which supports an
asynchronous agent programming model and Communication(using
ACL) between agents either on the same or different platforms.
IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
JADE Hierarchy(1)
Platform
Main Container
Agent Management
System
Directory Facilitator
App Manager Agent
Agent Management System - provides the naming service; name,
ensure uniqueness, create/destroy agents
Directory Facilitator - provides a Yellow Pages service of which an
agent can find other agents providing the services it
IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
Main Container listens and accepts incoming connections from other
containers and agents
Main container listening address
IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
JADE Hierarchy(2)
Platform Communication
Android StackCloud Environment
But android is dalvik vm (.dex) and and java is jvm (jar)?
IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
0
10
20
30
40
50
60
70
80
1 2 3 4 5 6 7 8 9 10
% CPU
Usage
Time/sec
CPU Usage
Traditional Offloaded
adb shell dumpsys cpuinfo
Quantitative Results (1)
IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
Energy Saved = Pc ×
𝑪
𝑴
− Pi ×
𝑪
𝑺
− Ptr ×
𝑫
𝑩
S : Speed of cloud to compute C instructions
M : Speed of mobile to compute C instructions
D : Data need to transmit
B : Bandwidth of the wireless Internet
Pc :Energy cost/sec when the mobile phone is doing computing
Pi :Energy cost/sec when the mobile phone is idle.
Ptr :Energy cost/sec when the mobile is transmission the data.
Quantitative Results (2)
IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
Quantitative Results (3)
communication
Computation
When to offload
Possibilities
 High-end Processing
 Image-Recognition
 Games
 n-queens problem
 sudoku solver
 Social Media Processing
 Video decoding
 Image file conversions
 Electronic Commerce
 User Authentication mechanism
IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
Limitations and Future Work
IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
 JADE still limited to android devices
 Offload decisions need an algorithmic approach(i.e. when and when
not to offload).
 I am currently working on an image recognition project with the aim
of developing a framework for other android developers to use to
offload tasks.
Conclusion
IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
 Offloading is an important feature in enhancing android mobile
capabilities.
 JADE provide migration of bundled code and state to remote locations.
 JADE agent mobility help achieve distributed processing without
taking much attention on the underlying operating system of each
platform.
Thank You!
IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies

Process offloading from android device to cloud using JADE.

  • 1.
    Process Offloading inAndroid devices using JADE Presentation for ICCPCT Conference ‘15 20 March 2015 By : * David I. Fadaraliki & S. Rajendran *M.Tech Cloud Computing Department of I.T. SRM University
  • 2.
    Introduction  Definitions Problem Analysis ProposedSolution Why Mobile agents Jade Overview Quantitative Results Possibilities (Applications) Conclusion Outlines
  • 3.
    Introduction(1) 87% Of ConnectedDevices Sales By 2017 Will Be Tablets And Smartphones. Mostly capable of connecting to the internet. But…. IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
  • 4.
    Introduction(2) processing capabilities, storage capacities, batterylife … with limited : Propose Mobile Agents aided Offloading framework for data, applications, processes and/or services from a mobile device (android) to a cloud environment IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
  • 5.
    Definitions Offloading -sending heavycomputation to a resourceful remote location and receiving the results back. JADE(Leap) – Java Agent DEvelopment (Light Extension Agent Platform) Mobile Agents - software abstraction that can migrate across the network representing users. They communicate using agent communication language (acl) realize a set of tasks and goals it was designed for Cloud Environment - remote servers and software networks that allow centralized data storage and online access to computer resources IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
  • 6.
    Problem Analysis –Security(1) CloneCloud – “security is assumed basing on the trusted virtual machines, all the device data is replicated in the cloud to ensure synchronous virtualization between the device and its clone.” IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
  • 7.
    Problem Analysis –Security(2) ThinkAir – “it assumes a trustworthy cloud server execution environment: there is hope that whenever data is offloaded to the cloud, the code and state of the data are not maliciously modified or stolen” IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
  • 8.
    Problem Analysis –Interoperability MAUI – “it is more dependent on the hardware architecture of the hosts. Mobile devices typically have different CPU instruction architecture than desktops and servers. Processes cannot be easily run on devices with different architectures.” IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
  • 9.
    Proposed Solution IEEE, ICCPCT-2015,International Conference on Circuits, Power and Computing Technologies
  • 10.
     Mobile agentsencapsulate data, instructions and protocols.  Ability to move transparently across different hosts.  Capable of adaptive learning and automation.  Some intelligent agents are equipped with techniques to check self- integrity. Why Mobile Agents Encoded Message Content Message Payload Envelope Transport Information Message parameters Message content IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
  • 11.
    JADE Overview Java basedplatform for running mobile agents which supports an asynchronous agent programming model and Communication(using ACL) between agents either on the same or different platforms. IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
  • 12.
    JADE Hierarchy(1) Platform Main Container AgentManagement System Directory Facilitator App Manager Agent Agent Management System - provides the naming service; name, ensure uniqueness, create/destroy agents Directory Facilitator - provides a Yellow Pages service of which an agent can find other agents providing the services it IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
  • 13.
    Main Container listensand accepts incoming connections from other containers and agents Main container listening address IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies JADE Hierarchy(2)
  • 14.
    Platform Communication Android StackCloudEnvironment But android is dalvik vm (.dex) and and java is jvm (jar)? IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
  • 15.
    IEEE, ICCPCT-2015, InternationalConference on Circuits, Power and Computing Technologies 0 10 20 30 40 50 60 70 80 1 2 3 4 5 6 7 8 9 10 % CPU Usage Time/sec CPU Usage Traditional Offloaded adb shell dumpsys cpuinfo Quantitative Results (1)
  • 16.
    IEEE, ICCPCT-2015, InternationalConference on Circuits, Power and Computing Technologies Energy Saved = Pc × 𝑪 𝑴 − Pi × 𝑪 𝑺 − Ptr × 𝑫 𝑩 S : Speed of cloud to compute C instructions M : Speed of mobile to compute C instructions D : Data need to transmit B : Bandwidth of the wireless Internet Pc :Energy cost/sec when the mobile phone is doing computing Pi :Energy cost/sec when the mobile phone is idle. Ptr :Energy cost/sec when the mobile is transmission the data. Quantitative Results (2)
  • 17.
    IEEE, ICCPCT-2015, InternationalConference on Circuits, Power and Computing Technologies Quantitative Results (3) communication Computation When to offload
  • 18.
    Possibilities  High-end Processing Image-Recognition  Games  n-queens problem  sudoku solver  Social Media Processing  Video decoding  Image file conversions  Electronic Commerce  User Authentication mechanism IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies
  • 19.
    Limitations and FutureWork IEEE, ICCPCT-2015, International Conference on Circuits, Power and Computing Technologies  JADE still limited to android devices  Offload decisions need an algorithmic approach(i.e. when and when not to offload).  I am currently working on an image recognition project with the aim of developing a framework for other android developers to use to offload tasks.
  • 20.
    Conclusion IEEE, ICCPCT-2015, InternationalConference on Circuits, Power and Computing Technologies  Offloading is an important feature in enhancing android mobile capabilities.  JADE provide migration of bundled code and state to remote locations.  JADE agent mobility help achieve distributed processing without taking much attention on the underlying operating system of each platform.
  • 21.
    Thank You! IEEE, ICCPCT-2015,International Conference on Circuits, Power and Computing Technologies