Overview of Pervasive Computing Systems: Smart Spaces and Operational Issues - PowerPoint PPT Presentation

1 / 37
About This Presentation
Title:

Overview of Pervasive Computing Systems: Smart Spaces and Operational Issues

Description:

1. Overview of Pervasive Computing Systems: Smart Spaces and Operational Issues. Volatile Systems ... Smart space is any physical place (environment) with ... – PowerPoint PPT presentation

Number of Views:56
Avg rating:3.0/5.0
Slides: 38
Provided by: CIT788
Category:

less

Transcript and Presenter's Notes

Title: Overview of Pervasive Computing Systems: Smart Spaces and Operational Issues


1
Overview of Pervasive Computing Systems Smart
Spaces and Operational Issues
  • Volatile Systems
  • Smart Spaces and Context-Awareness
  • Association and Directory Services
  • Sensing and In-network processing
  • How are the functions supported and what are the
    system operation problems?

2
Pervasive Computing Systems
  • You are asked to design a pervasive computing
    application, i.e., the aware home system
  • How to start??
  • What are the components?
  • What is the system architecture?
  • What are the networks?
  • What are the devices?
  • How to collect and maintain the system status?
  • What are the performance objectives in addition
    to providing the required functions of the
    system?
  • How to process the sensor data/user queries using
    limited resources?
  • You need to know the characteristics of the
    networks, devices, development tools, and the
    efficient algorithms and techniques for
    processing the data items and information in the
    system to the requests and queries from the users

3
Development of Pervasive Applications
  • Pervasive computing systems are distributed
    systems
  • What make a pervasive application different from
    a conventional distributed system?
  • Application characteristics and requirements
    real-time, proactive, dynamic, etc.
  • Network heterogeneous network, unstable and
    varying quality of services, dynamic workload
  • Devices limited resources, sized, processing
    power and energy supply
  • Backend server is similar to many distributed
    systems
  • Needs to maintain a database for maintaining
    system status and location databases
  • The database may be distributed for maintaining
    the information of different locations
  • Since the database system may need to handle
    real-time data, it may be a real-time database
    system (main-memory and priority-cognitive
    scheduling)
  • Development Tools
  • Depends on client devices (TinyOS, WinCE, J2ME..)

4
Volatile Systems
  • The set of users, hardware, and software in a
    pervasive computing system is highly dynamic and
    changes unpredictably
  • Why volatile? (systems and applications)
  • When a user carrying a sensor device enters a
    room (smart space), the sensors in the room
    should identify the user (a new object)
  • How to identify the new object? Detection of the
    presence of a new object and getting the ID
    (universal identifier) carrying by the new
    object. Intruder or owner? Then
  • Forms of volatility (system issues and more than
    users)
  • Failures of devices and communication links
  • Connection and topology (1 to 1, 1 to many and
    many to many)
  • The connection may be intermittent (why?)
  • Changes in performance of connection such as
    bandwidth and connection points
  • The creation and destruction of an association
    (more than network) logical connection
    relationships between software components
    resident on the devices (i.e., by bluetooth or
    infra red)

5
A room responding to a user wearing an active
badge
2. Infrared sensor detects users ID
Users ID
1. User enters room wearing
3. Display responds
Hello Roy
an active badge
to user
Infrared
Fr. Dollimore
Active badge is a radio emitting identifier
(emitting a unique ID) What to be displayed?
(Depending on who is the user) What need to be
performed when the user leaves the room?
Note that you may build a smart space in the wild
and open area. How to define the scope of the
space?
6
Smart Spaces and Objects
  • Smart space
  • Dynamic environment and adaptive services
  • Smart space is any physical place (environment)
    with embedded services (enter -gt detection -gt
    services delivery)
  • Capture of new objects and maintenance of the
    space (including the objects) status
  • Services are provided to the objects in the space
  • The objects in space may also provide services to
    other objects
  • Smart objects
  • The object is smart (you do not need to submit
    commands or instructions)
  • Spontaneously join the space
  • Proactive services
  • Understand what you need when you are inside the
    smart space
  • How? Based on some pre-defined rules. Detection
    -gt Event occurred -gt generation an action
    (response)
  • Why smart spaces and smart objects are feasible
    nowadays?
  • Small size, processing capability, memory and
    energy issues

7
Context Awareness of Smart Objects/Services
  • The objects have their own functions
  • Different contexts generate different actions
    (services)
  • Context of an entity/object is an aspect of its
    physical (logical) circumstances (i.e., location,
    time, status, temperature, identity, etc.) of
    relevance to system behavior
  • It could be the presence of an entity or complex
    conditions
  • Different actions for different situations
  • They may have sensors and talk with others
  • Location/situation/context aware
  • Can remember pertinent events
  • They have a memory and state
  • State transition
  • Evaluation problem
  • Each state change triggers a rule evaluation

8
Context Awareness of Smart Objects/Services
  • Using sensors for determining contextual values
  • Location, velocity orientation navigation, GPS
    etc
  • Ambient conditions light intensity, sound
    intensity, etc.
  • Presence RFID, infra-red, active badge
  • Are responsive/proactive
  • Communicate with environment
  • Networked with other smart objects spontaneously
  • What are the main differences and similarities
    between a computer and a smart object?

9
Adaptations
  • Context aware adaptation (services)
  • Devices are heterogeneous in a pervasive
    computing system, i.e., have different
    capabilities and characteristics
  • Display of web pages/videos
  • Transcoding may need to be performed on the fly
    (by the proxy or by the source before
    transmission)
  • Adaptation to resource allocation (performance)
  • The number of devices and workload in a smart
    space could be highly dynamic
  • To maintain the quality of services (proactive
    with real-time responses), it needs to adapt to
    the changing workload
  • How admission control with reservation, and
    prioritization (scheduling)

10
Smart Christmas Tree
  • You are asked to build a smart Christmas tree
  • Installed with sensors to detect whether any
    object is moving towards it (sound sensor)
  • Once a new object is detected, the lamps on the
    tree will be turned on to show the welcome sign
    for 10 seconds
  • When a loud noise is detected, it will be
    disabled for 10 min
  • If it has been activated continuously for 10
    times within 5 min, it will be disabled for 5 min
  • How to implement the system
  • Install multiple Mica Motes on a Christmas tree
    and they can communicate with each other using
    radio signals
  • Your application in each Mica Mote captures
    sensor data generated from the sound sensor
    periodically (every second)
  • If the sound level (sensor data) is higher than a
    threshold value, turn them on
  • A simple database is maintained at each Mica Mote
    to record its current status and also the last
    received sensor data
  • Problems the data from the sensors may contain
    errors

11
Association (Group Management)
  • Multiple objects
  • Multiple objects co-exist in the same smart
    space. Some of them are service providers and the
    others are users
  • Multiple objects co-exist in the same smart space
    for improving the correctness of detected sensor
    data (i.e., multiple temperature sensors are
    installed in the same room. What is the room
    temperature? Do they give the same reading?
  • Association at least one of a given pair of
    components communicates with another within a
    smart space (cooperatively perform a task
    (provide services))
  • After association gt Interoperation the
    interaction during association
  • Association is spontaneous (without user
    intervention)
  • Network bootrapping
  • Communication takes place over a local network
    within the smart space
  • The device acquires an address (ID and a name) on
    the local network
  • Who determine the assignment and manage the
    network

12
Association Problem
Maintenance
N6
N7
N6
N7
N1
N1
N2
N3
N2
N3
N4
N4
N5
N5
time t1
time t2
good link weak link
13
Connection and Communication Problem
  • Multiple objects within a smart space
  • How are they connected?
  • What are the communication links?
  • A network with dynamic configuration
  • Mobile Ad hoc network (MANET)
  • Limited bandwidth
  • Probability of communication collision
  • Limited energy
  • Real-time control (communication delay and
    response delay)

14
Routing Problem
  • Highly dynamic network topology
  • Device mobility plus varying channel quality
  • Separation and merging of networks possible
  • Asymmetric connections possible

N6
N7
N1
N6
N3
N7
N2
N1
N2
N3
N4
N5
N4
N5
time t2
time t1
good link weak link
15
Association Problems
  • Scale and scope
  • Scale the number of objects within a space. More
    objects higher communication cost
  • Scope space boundary
  • I.e. consider the assignment of mobile stations
    to a base station in a cellular network
  • Physical Vs. logical space
  • The object physically locates within a space may
    be assigned to another space that is far from its
    current location
  • How are they connected? Using broadcast messages
  • Consider the problem of broadcasting a message to
    all the members within a group (room)
  • In a smart space, disconnection is common and the
    network bandwidth and quality is varying

16
Smart Space 1
Smart Space 2
Smart Space 3
17
Physical Vs Logical Smart Space
integration of heterogeneous fixed andmobile
networks with varyingtransmission characteristics
regional
vertical handoff
metropolitan area
Fr. Schiller
horizontal handoff
campus-based
in-car, in-house, personal area
Why do we need to perform a handoff operation for
a mobile (or even a stationary) user?
18
Centralized Vs. Distributed Management
  • Centralized approach use a powerful server to
    manage the space status and connection
    information
  • Distributed approach multiple devices (service
    providers) manage the information
  • Comparisons
  • Problems in distributed computing
  • Perform operations at device level because of
    limited bandwidth
  • Due to the dynamic properties of the smart space
    and objects, a lot of updates are needed to be
    generated
  • A distributed approach can make the management of
    objects to be localized and adaptive to the
    changing systems status (in networking
    processing). But, the communication overhead
    could be very heavy
  • A hierarchical approach multiple levels with
    different types of coordinators may be used

19
Centralized Approach
20
Distributed Approach
Peer-to-peer and clustering problems
21
Discovery Services
  • When a client enters a smart space,
  • The system needs to update its location (and
    system status)
  • The object needs to determine how to join it
    (registration) and what are the services provided
    in the space
  • I.e., A client enters a hotel carrying a notebook
    and wants to print a document
  • A discovery service is a directory service in
    which services in a smart space are registered
    and looked up by their attributes
  • Types of services device directory and service
    directory
  • Device directory records the names and addresses
    of co-present devices
  • Select one of the devices for connection and to
    require for services
  • Service directory records what are the services
    provided in the smart space
  • Submit a request (query) for a particular type of
    service
  • The smart space will select one of the devices to
    provide the service to the requesting client

22
Discovery Services
  • Directory query operations
  • Registration and de-registration of services
  • Look-up for services
  • Directory discovery problems
  • Directory data required by a client are dynamic
    and generated at run-time (as a function of the
    context of the client)
  • May be no infrastructure (distributed Vs.
    centralized) to hold the directory server
  • The services registered in a directory are
    dynamic too
  • The new object may be a service provider
  • The protocols used for accessing the directory
    need to be energy sensitive
  • Note that a service may disappear spontaneously.
    Why?
  • Using leasing a lease is temporary allocation of
    a service by a server to a client. It can be
    renewed by a further request (refresh) from the
    client before the deadline expires

23
The interface to a discovery service
Fr. Dollimore
24
Directory Server Vs. Serverless
  • For systems with a fixed infrastructure and the
    directory server is a powerful robust machine
  • Directory server maintains a set of description
    of services
  • The client issues a multicast request to locate
    the directory server
  • The directory server responds with its unicast
    address
  • They communicate point-to-point with each other
  • If no pre-defined powerful directory server, the
    directory server may be elected from the group of
    devices within the space
  • Problems disappear of the elected server
    (re-election). The cost for re-election depends
    on the degree of volatility of the system

25
Directory Server Vs. Serverless
  • No fixed infrastructure and no powerful machine
    to be acted as a server
  • The participating devices collaborate with each
    other to implement the service directory. How?
  • Event synchronization problem all changes have
    to be propagate to all the member before any
    change can be updated (S1-gtS2-gtS3)
  • Push model services multicast their description
    regularly. Clients listen for the multicasts and
    run their queries against them
  • Pull model clients multicast their queries.
    Devices providing services run the queries
    against their descriptions, and only response
    with any description that match. Clients repeat
    their queries periodically if there is no
    response

26
Push Vs. Pull
  • Consideration energy and bandwidth consumption
  • Every time a device issues a multicast message,
    bandwidth is consumed and all listening clients
    expend energy receiving the message
  • In a pure push model, devices need to multicast
    their services even there is no client
  • In a pure pull model, a client can discover
    services as soon as it appears. But, the client
    may receive multiple responses from different
    devices

27
Jinis Discovery System
  • Java based system for mobile and pervasive
    computing systems
  • Components lookup services (discovery services),
    Jini services and Jini clients
  • A Jini service provides services
  • The lookup stores services
  • Jini clients request services
  • Lookup service allows Jini services to register
    the services they offer
  • A Jini service may be registered with one or more
    lookup services
  • Jini clients request services that match their
    requirements
  • If a match is found, the Jini client downloads an
    object that provides access to the service from
    the lookup service

28
Jinis Discovery System
  • When a Jini client or service starts up, it sends
    a request to a well-known IP multicast address
  • Any lookup service that receives the request
    sends its address enabling the requester to
    perform a remote invocation to look up or
    register a service with it
  • The client requires a lookup service in the
    finance group so it multicasts a request with
    that group name
  • Only one lookup is bound to the group name and
    that service responds including its address
  • The client communicates directly using RMI to
    locate all services of type printing
  • Only one printing service has registered with the
    lookup service
  • The client then uses the printing directly
  • Problem subnet area Vs. smart space (a room)
  • Possible solutions human input space ID, sensors
    to read the space ID

29
Service discovery in Jini
1. finance lookup service
admin
Printing
service
Client
admin
Client
Lookup
service
Network
2. Here I am .....
4. Use printing
service
admin, finance
Lookup
3. Request printing
service
Printing
Corporate
infoservice
service
finance
Fr. Dollimore
30
In-network Processing
  • In-network processing process a query inside the
    network (close to the place where its required
    data are generated
  • Physically distributed source of data and
    distributed processing
  • Processing within the network (device level),
    i.e., close to the source for generating the data
    that are required by the request
  • I.e. You submit a query to ask the traffic
    conditions in Nathan Road. It is assumed that we
    have traffic sensors on the roads
  • Multiple data access The query may be divided
    into sub-queries to be processed at different
    nodes (distributed query processing) if it
    requires access to multiple data objects
  • How to divide the query into sub-queries? Based
    on the locations of their required data
  • It is assumed that the sources for generating the
    data are known
  • A query may be represented as tree structure

31
In-network Processing
  • If the sources are unknown
  • Direct diffusion The query may be specified with
    its interests (an attribute-value pair). Then,
    the query is diffused into the network to search
    for the matching to select the nodes
  • The sink propagates interests to its neighboring
    nodes
  • Any node that receives an interest store a record
    of it along with information that needed to pass
    back to the sink node. Then propagate the
    interest to its neighboring nodes
  • A source is the node that match an interest.
    There may be several source nodes
  • Problems redundant propagation and may flood the
    whole system
  • Solution
  • Defining a gradient (a direction/value pair) to
    control the flow. If the value is below the
    threshold, the flow will not follow the direction
    (What is the assumption?)
  • Adding a filter in the intermediate nodes to
    eliminate duplication

32
Directed diffusion
sink
sink
sink
source
source
source
source
source
source
C. Data delivery
B. Gradients set up
A. Interest propagation
Fr. Schiller
33
Sensor Data Collection
34
Sensing and Sensor Data Collection
  • Multiple levels and integration
  • Abstraction of sensor data
  • Temperature reading from a sensor is the
    temperature of a room?
  • Different sensors in the room may have different
    readings
  • Presence of an intruder (a new physical and
    moving object and unknown ID)
  • Errors
  • Some of the sensors may have a very different
    reading from the others
  • Context is dynamic
  • The readings from the sensors may change quickly
  • Update and stream data processing problem

35
Examples
  • Context widget
  • Present an abstraction of some type of context
    attribute while hiding the complexity of the
    actual sensors used
  • Constructed from distributed components
  • Generators acquire raw data from sensors such as
    from floor pressure sensors and provide that data
    to widgets
  • Widgets use the services interpreters, which
    abstract contextual attributes from the generated
    low-level data to high level data such as the
    identity of a person
  • The server provides further levels of
    abstractions by collecting, storing and
    interpreting contextual attributes from other
    widgets
  • Active Badge Sensors
  • For detecting presence of an identity carrying an
    active badge (location management system)
  • Active badge sensors are deployed at fixed
    locations throughout the whole building
  • For a telephone receptionist, when receiving an
    incoming call, searching the location management
    system, it can identify the location of the
    called party

36
A PersonFinder widget constructed using
IdentityPresence widgets
A PersonFinder widget for a building is
constructed from the IndetifyPresence widgets for
each room using footstep interpretation from
floor pressure readings or from face recognition
from vide capture
37
Reference
  • Distributed Systems Concepts and Design by
    Dollimore, Ch16 (except 16.3, 16.5)
Write a Comment
User Comments (0)
About PowerShow.com