Theory of Computation-ME-CS (Gate2016.Info)
Theory of Computation-ME-CS (Gate2016.Info)
networking stack.
Describing the main approaches associated with an IoT
middleware.
Highlighting some of the research works illustrating
World
Population 6.3 Billion 6.8 Billion 7.2 Billion 7.6 Billion
Connected
Devices 500 Million 12.5 Billion 25 Billion 50 Billion
Image
source
Cisco.
Connected
Devices More connected
Source: ITU-T study group on Climate Change Internet of the Things (IoT)
IoT architecture
10
Programming
Databases
Languages
Middleware Distributed
Operating Systems Systems
Systems
Networking
Middleware architecture
13
The middleware can be located anywhere:
sensor nodes, sink nodes, high level application terminal, etc.
Application Application
Middleware NET
Middleware
Hardware Hardware
Host 1 Host 2
Why a Middleware ?
14
1. Masking heterogeneity
o networks, end-systems, OSs, programming languages
4. Transparency
Why a middleware ?
15
o eCommerce,
o real-time, embedded
o mobile agent systems
o peer to peer platforms
o mobile computing applications
underlying host systems
o PCs/ workstations
o wireless PDAs
o embedded devices
o network processors
o wireless, sensor, infrared etc. networks
Internet of the Things (IoT)
Middleware for Wireless Sensor Network
Middleware functionalities
16
Complete middleware solutions require at 4 components:
o Programming abstraction: this defines the interfaces
to the middleware for the application programmer.
Middleware functionalities
17
Middleware functionalities
18
Abstraction level.
Middleware functionalities
19
Abstraction level.
Middleware functionalities
21
Interface type
1. Abstraction Support
o Large number of heterogeneous sensors
2. Data Fusion
o Various ways to collect data
5. Application Knowledge
o Try to generalize despite the limited resources
o Integrate application knowledge into the services
provided
6. Programming Paradigm
7. Adaptability
8. Scalability
9. Security
10. QoS Support
Middleware architecture
24
Distributed Middleware
systemwide
Node A Node B Node C interfaces
Middleware Middleware Middleware
customized
Operating System Operating System Operating System node‘s
Hardware Hardware Hardware software
different
node
hardware
Middleware architecture
25
Middleware Approaches
26
1. Virtual Machine-based
o contains VM, interpreter,
o Example: Mate, Magnet
2. Database-based
o Virtual Database
o easy to use interface
o Examples: TinyDB, Cougar, SINA, Dsware
3. Modular programming
o decomposition of application
o Examples: Impala, Agilla
Middleware Approaches
27
4. Application Driven
o tune network on the basis of Requirement
o Example: MiLAN
5. Message oriented
o use publish-subscribe mechanism
o Example: Mire
6. Event oriented
o Request-reply,
o Example: Garnet
7. Service oriented
o Reflective, Flexible, Service-centric, Service oriented
Internet of the Things (IoT)
Middleware for Wireless Sensor Network
Middleware Approaches
Power
Openness Scalability Mobility Heterogeneity Ease of use
awareness
28
VM
Mate Full Full Full Full Partial Little or none
Magnet Full Full Full Full Partial Full
CPU, Memory,
Wireless
Transceiver GPS
Data
Peer-to-Peer
Data Base Station
communication
Protocol (car or plane)
Data
Impala Features
30
Advantages Applications
o Code modularity
o update
Impala
o Fault tolerance
Mate
31
Mate Features
32
Advantages
o Simple programming model
o High security
Disadvantages
o high energy consumption
TinyDB
33
• query processing
TinyDB
34
Sensor table
TinyDB Features
35
Advantages
o reduce number of messages
Disadvantages
o Not much functionality
Agilla
36
Agilla Architecture
37
Agents Agents
migrate
remote
Neighbor access Neighbor
Tuplespace Tuplespace
List List
Middleware Services Middleware Services
Agilla Middleware Agilla Middleware
TinyOS TinyOS
Agilla Features
38
low security
difficult to read and maintain programs
MiLAN
39
0.8 Heart
Rate
0.3 0.3 Blood
Heart
Rate O2
1.0
ECG
0.3 Diagram
MiLAN
40
Goals:
o application lifetime maximization
o application QoS support
MiLAN Architecture
41
Conclusion
42