Mobile Agents for Integration of Internet
of Things and Wireless Sensor Networks
Teemu Leppänen, Meirong Liu, Erkki Harjul...
IoT characteristics
Collaboration of heterogeneous systems, networks, protocols and interfaces
Systems in continous transi...
Agent Composition
Segment Elements
Name { Agent name, i.e. unique resource name }
Code Code { Task code }
{ Programming la...
Mapping to CoAP
For low-power resource-constrained embedded devices, the
Constrained Application Protocol enables embedded...
Agent Mobility
Currently two migration policies
1. ”Task”: visits each device only once, previous device deleted from the ...
Agent Control API
Standardized universal communication primitives: HTTP and CoAP
methods, allowing human-machine interacti...
Real-world prototype
We implemented real-world prototype system with
1. IP-based WSN atop 6LoWPAN in 868Mhz
2. Android-sma...
Execution environment
Smartphones (Android 4.1.2)
Retrieved resource values mapped into the code to
make runnable code
Use...
Evaluation metrics
Metrics to evaluate the particular agent composition
Execution costs in each platform Ck
Tr is latency ...
With this method, we estimated the round-trip time in prototype
system
(with one remote resource, the access time is inclu...
Thank You
For further information, please contact:
teemu.leppanen (at) ee.oulu.fi
We are looking for
EU Horizon 2020
resea...
Upcoming SlideShare
Loading in...5
×

Mobile Agents for the Integration of Wireless Sensor Networks and the Internet of Things

579

Published on

We demonstrate interoperable mobile agents to integrate Internet of Things and wireless sensor networks with resource-constrained low-power embedded networked devices. We introduce adaptable composition for the mobile agent, complying with the Representational State Transfer principles, which are then used for agent migration, controlling the agent and exposing the data, system resources, tasks and services, to the Web. We gather requirements for the system and heterogeneous networked devices and present an application programming interface to enable mobile agents in these systems. The agents are demonstrated in a real-world prototype with smartphones and embedded networked devices, where we utilize a proxy component to expose system resources to the Web for human-machine interactions. Spanning over disparate networks and protocols, the proxy translates messages including the agent composition, between HTTP and Constrained Application Protocol. Lastly, we suggest an evaluation method for the agent communication and migration costs, considering the different types of system resources and utilization.

Original article published in:
Leppänen, T., Liu, M., Harjula, E., Ramalingam, A., Ylioja, J., Närhi, P., Riekki, J. and Ojala, T. “Mobile Agents for Integration of Internet of Things and Wireless Sensor Networks,” In: IEEE International Conference on Systems, Man and Cybernetics, pp. 14-21, October 13-16, Manchester, UK, 2013. http://dx.doi.org/10.1109/SMC.2013.10

Published in: Internet, Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
579
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Mobile Agents for the Integration of Wireless Sensor Networks and the Internet of Things

  1. 1. Mobile Agents for Integration of Internet of Things and Wireless Sensor Networks Teemu Leppänen, Meirong Liu, Erkki Harjula, Archana Ramalingam, Jani Ylioja, Pauli Närhi, Jukka Riekki and Timo Ojala Department of Computer Science and Engineering, University of Oulu, Finland Leppänen, T., Liu, M., Harjula, E., Ramalingam, A., Ylioja, J., Närhi, P., Riekki, J. and Ojala, T. “Mobile Agents for Integration of Internet of Things and Wireless Sensor Networks,” In: IEEE International Conference on Systems, Man and Cybernetics, pp. 14-21, October 13-16, Manchester, UK, 2013. http://dx.doi.org/10.1109/SMC.2013.10
  2. 2. IoT characteristics Collaboration of heterogeneous systems, networks, protocols and interfaces Systems in continous transition: system configurations and service/ task execution environments changing Devices have heterogeneous capabilities and dynamically available resources Benefits of mobile agents in IoT and WSN Adapt dynamically to changing environments and resource availability Reuse of system devices and their physical components Abstract heterogeneous resources with standardized interfaces Mobile agents can create services in the IoT systems dynamically ”Move computation to the edges” to save in communication costs and utilize resources energy-efficiently Why mobile agents? (2/11)
  3. 3. Agent Composition Segment Elements Name { Agent name, i.e. unique resource name } Code Code { Task code } { Programming language or intended platform} Reference {URL} { Programming language or intended platform} Resource Local { Resource list as URLs } Remote { Resource list as URLs } Static { Resource list as URLs } State { State: the current result of the computation} { Local variable list } { Metadata: API-Key for access control, timestamp etc} Resource segment: Local: Agent migrates into these devices (accesses resources locally) Remote: Accessed remotely in each iteration of the computation Static: Accessed remotely only once for the lifetime of the agent System independent data structure for the agent composition to be used with heterogeneous and disparate systems (3/11)
  4. 4. Mapping to CoAP For low-power resource-constrained embedded devices, the Constrained Application Protocol enables embedded Web services Agent Composition CoAP Option No. Size (bytes) Mobile Agent Content-type: Task / Service 1 1 Name Uri-Path (not new) 1 k Local resource segment Next Address [0..n] n * 8 (IPv6) [0..m] m * 4 (IPv4) Metadata: Access control API-Key 1 n Task code Code [0..1] n Task code reference Code Reference [0..1] k Remote resource segment Remote Resource [0..n] n * (8 + j) Static resource segment Static Resource [0..n] n * (8 + j) State segment Payload 1 n (4/11)
  5. 5. Agent Mobility Currently two migration policies 1. ”Task”: visits each device only once, previous device deleted from the local segment 2. ”Service”: local segment considered ring buffer, visits devices in turns. Devices are not deleted from the local list Migration sequence: 1. Agent clones itself and migrates to next device 2. New state is computed in the new hosting device 3. Agent is registered to the system with the new device address 4. Clients now access the updated state 5. Ack message sent to the previous host, where agent is then deleted from memory (5/11)
  6. 6. Agent Control API Standardized universal communication primitives: HTTP and CoAP methods, allowing human-machine interactions Agent composition as JSON payload / CoAP message POST: Agent creation and migration GET: System resource access, including agents DELETE: Delete system resource, including agents Hosting device API methods Communication: Register / Unregister, Get, Post, Delete Message handling: Marshal / Unmarshal, Map / Unmap Execution methods: Execute, Getter, Stop (6/11)
  7. 7. Real-world prototype We implemented real-world prototype system with 1. IP-based WSN atop 6LoWPAN in 868Mhz 2. Android-smartphones atop Wi-Fi in 2.4Ghz Based on IETF CoRE framework Resource Directory Stores system resource descriptions HTTP and CoAP interfaces for resource lookups Proxy Abstracts WSN as Web service Translates between HTTP <-> CoAP with code repository to store the agent task codes (7/11)
  8. 8. Execution environment Smartphones (Android 4.1.2) Retrieved resource values mapped into the code to make runnable code Uses SL4A Scripting Layer to run the task code in Python / JavaScript (8/11) WSN nodes (Atmel MCUs 18MHz with 8/16kB RAM) Implemented in C Resource representations stored into shared memory block: 16-bit variables Shared memory accessed through pointers: base address + offset Program memory (Flash) slots reserved for agent task code: precompiled IntelHEX binary format “main loop” checks if hosting an agent, then jump into the code location and executes code, then resource values updated through the pointers
  9. 9. Evaluation metrics Metrics to evaluate the particular agent composition Execution costs in each platform Ck Tr is latency for remote resource requests Tk is the time for executing the computation Tm is the agent migration time (single hop) mkrk TTTrC )1( d d n ndmprTotal CCTsTC 1 , )( Execution costs for agent-based service CTotal s is the number of static resources d is number of disparate networks Tp is message translation time in the proxy Cm,d is the migration costs between disparate networks n is the number of devices in each network (9/11)
  10. 10. With this method, we estimated the round-trip time in prototype system (with one remote resource, the access time is included into the execution costs C) However: Metrics simplified: varying network conditions, resource availability etc, not taken into account Metrics nevertheless could assist in agent composition and system design to optimize the utilization of different resource types Cn (ms) Tp (ms) Tm,d (ms) Cm,d (ms) CTotal (ms) Wi-Fi 4423 0 1856 5009 16044 WSN 2830 0 3782 Evaluation metrics (10/11)
  11. 11. Thank You For further information, please contact: teemu.leppanen (at) ee.oulu.fi We are looking for EU Horizon 2020 research partners.. Are you interested in co-operation?

×