This document describes the system/device management

advertisement
BUTLER’s vision for system/device management in IoT
(extracted from Deliverable 3.1 of the BUTLER project: www.iot-butler.eu)
This document describes BUTLER project’s approach to the system/device management issue s
for resource constraint IoT devices. Section 1 introduces the state of the art in the domain.
Section 2 presents some of the requirements identified in the project and the relevant
architectures that would respond to these requirements. Section 3 describes a simple
management information model that will be used to perform management actions on the IoT
devices.
1. Academic research on system/device management
BUTLER platforms will be composed of a large number of smart sensing and actuator devices such as
temperature/humidity/luminosity sensors, light intensity regulators, parking space detectors, audiovisual devices, leakage detectors, valves, chemical sensors, GPS devices and RFID readers. Initially
used by experimental applications, these tiny devices are now being used in more critical applications
having better quality of service, dynamic adaptability and re-configurablility requirements in various
domains such as home/building, industrial, transport, city and medical domains. Efficient remote
management mechanisms are crucial to fulfill these requirements, enabling for instance remote
deployment of software modules, (re-) configuration of device parameters and monitoring
performance of devices, etc. Such management features would be used by:
- manufacturers to install the latest firmware when a new outdated sensing device detected in the
environment.
- service providers/integrators to detect available devices and propose new applications or
reconfigure existing ones
- end-users/administrators to have a view of the whole system. They can dynamically reconfigure
network, system or application parameters; monitor performance of devices; and perform diagnostic
or maintenance actions (ping, reboot, etc.).
Management of a great number of heterogeneous networked sensor/actuator devices is a very
challenging task. Existing management mechanisms should be adapted and tailored with respect to
the particular needs of networked sensor/actuator devices.
Management consists of configuration, monitoring and administration of entities such as network
elements, system resources, applications or services in order to increase their efficiency. According
to the type of entities, we can traditionally identify three main management domains: network
management [NetConf], system management [WBEM] and application management [WSDM].
However, the boundaries between these domains have been progressively disappearing, since the
emerging new generation networked smart devices are integrating these three functionalities,
devices integrating network, system and application capabilities. Therefore, integrated management
solutions are increasingly being developed. Next subsection gives a brief introduction to such
solutions recently emerged in the device management domain.
Integrated management protocols - Device management
The number of connected devices is constantly increasing. Devices such as mobile phones, internet
gateways, set top boxes, storage devices, lighting devices, print and copy devices are pervasive in
home, urban, car or office environments. They are mostly capable of wirelessly communicating and
powerful enough to host relatively complex systems with applications running on them. Remote
management of these devices is becoming an important problem, in particular in multi-user, multimanufacturer and multi-provider environments. These increasingly intelligent devices need
integrated management solutions providing network, system and application management (see the
figure bellow).
Device management is a generic term used for technology that allows third parties such as operators,
service providers or manufacturers performing management actions on devices on behalf of the
users. Through device management, an external party for instance remotely modify device
parameters, perform troubleshooting and diagnostics servicing of terminals, install/uninstall/update
software.
Figure 1. Device Management overview
Standardization efforts have been already made to allow remote configuration of network
parameters, firmware upgrades, performance monitoring and software provisioning in different
kinds of networks such as broadband networks [BBF], mobile networks [OMA-DM] and home
networks [UPnP-DM]. However there are no such protocol yet defined in sensor networks or IoT
domain.
Current research in sensor network management is area specific (i.e., network, system or application
management). This section makes an attempt to classify the existing work in order to identify the
management needs of each category and propose an adequate integrated management solution.
Network management. MANNA [Ruiz03] is probably the first work proposing a management
framework for sensor networks. It defines management services (e.g., network monitoring service)
using management functions (e.g., coverage area supervision) based on information models (e.g.,
sensing coverage area map). It adopts a manager-agent model. To the best of our knowledge, no
functional prototype is implemented. Guerilla [Shen03] is another framework based on the manageragent model, proposing an adaptive network management solution for ad hoc networks. More
specific research work are also done concerning energy-efficient and adaptive reconfiguration
[Cerpa04] and routing [Al-Karaki04].
System management. TinyCubus [Marrn05] aims at providing generic management mechanism with
a particular focus on system software update. Similarly, MOAP [Stathopoulos03] proposes a reliable
code update mechanism for Mica2 nodes. [Sugihara08] gives a synthetic survey on different sensor
system software management solutions. Dynamic reconfiguration [Kogekar04] and performance
monitoring [Bae06] are other system management related research areas. As above-mentioned
examples show, dynamic reconfiguration and code updates are two important aspects of sensor
system management.
Application management. Advances in embedded software management allow dynamically
deployed applications on sensors. Applications may take different forms depending on the execution
environment: scripts on virtual machines [Levis02], software bundles on modular environments
[Liu03], queries on query processors [Madden05] and mobile agents on middleware [Fok05]. We
believe that next generation IoT devices will be increasingly powerful providing such modular
application deployment and execution. Sun SPOT sensors [SunSPOT] and mica motes [MICA] are two
examples.
To the best of our knowledge, there is no existing integrated management framework incorporating
network, system and application management for networked sensing systems. However it is worth to
note that a new mailing list on “management of constrained networks and devices” has very recently
been created in IETF aiming at discussing the requirements for such a protocol [COMAN]
1.1.1. BUTLER system/device management requirements and architectures
This section presents management architectures specific to each application domain that we
deal in the project. The objective is to define an overall architecture that would satisfy the
requirements that have been identified during the requirements analysis phase in the
Workpackage 1.
1.2.3.1. Smart Home
Based on the selected smart home scenarios, following management requirements (Table 46)
have been identified.
SH1Req3
The system shall let users define
thresholds
To notify the user when events occur
R
Functional
SH1Req4
The system shall detect the sensors
and configure them automatically
to discharge user of manual configuration
M
Functional
SH2Req3
The system shall provide information
on available controllable heating
appliances
to make users or applications aware of the
existance of those appliances
R
Functional
SH2Req6
The system shall let user opt out
certain appliances to be used for
temperature regulation
To avoid controlling unwanted devices
O
Functional
SH3Req7
The system shall detect the monitoring
modules and configure them
automatically (associate with a device,
etc.)
to discharge user of manual configuration
M
Functional
SH3Req13
The system shall detect the sensors
and configure them automatically
To discharge user of manual configuration
M
Functional
SH4Req7
The system shall detect the devices
and configure them automatically
to discharge user of manual configuration
M
Functional
SH4Req8
The system shall provide interoperable
functionalities over heterogenous
networked devices such as
registration, announcement, discovery
To have interoperable objects and to
manage them from the networking point
of view
M
Functional
SH5Req3
The system shall let device
manufacturers and service providers
send notifications to users (new
service features, updates available,
etc.)
To inform users about about new services,
functionnalities or useful tips
R
Functional
SH7Req6
The appliances shall be able to
communicate with the system without
configuration from the user
To minimize the user configuration effort
M
Functional
SH8Req1
The system shall detect when a new
device joins to the home network
to further configure the devices
M
Functional
SH8Req2
The system shall know the
configuration capabilities of the
devices
to have knowledge on which configuration
actions can be performed
M
Functional
SH8Req3
The system shall be able to modify the
configuration of the devices
to configure the device
M
Functional
SH8Req4
The system shall trigger notifications
when the configuration of a device
changes
to notify users, manufacturers or service
providers
R
Functional
SH8Req5
The system shall save a configuration
for further recovery
to discharge user of manual configuration
M
Functional
SH8Req6
The system shall provide interoperable
functionalities over heterogenous
networked devices such as
registration, announcement, discovery
To have interoperable objects and to
manage them from the networking point
of view
M
Functional
SH8Req7
The system shall be able to
communicate with all home devices in
order to automatically install drivers
on the devices remotely
To support auto configuration and
management of devices
M
Functional
SH8Req8
The system shall be able to ask to any
devices and services about their status
To receive feedback about the success of
the installation procedure
M
Functional
SH8Req9
The system shall allow the user to
provide feedback about configuration
questions through a web based
application
To receive feedback about configuration
R
Functional
SH8Req10
The system shall detect and set up any
new devices or services in an interval
of time less than 1 minute after having
been switched on
To avoid long waiting times
R
Non-functional
SH9Req3
The system shall detect and configure
automatically the devices that give the
location information
to use different types of location sensors
R
Functional
SH9Req8
The system shall be able to reserve
To ensure content is still available after the
ressources (content, tuner, bandwidth)
move
for a given user
M
Functional
SH9Req11
The system shall standby/resume a
device
To activate only necessary displayers and
to avoid unnecessary energy consumption
M
Functional
SH9Req22
The system shall support control back
to the user at any time
To have user control
O
Non-functional
We observe that the requirements are mainly related to 2 main actors in the smart home
ecosystem: end-users and third parties such as device manufacturers, service providers and
operators. For instance,
- End-users
o need to monitor the state of home devices and manually configure some
device, system and application parameters
o besides the possibility of manual configuration by end-users, devices should be
automatically configured, provisioned and ready to be used in order to
discharge the user from complex configurations
- Third parties (device manufacturers, service providers, operators, etc.)
o need for monitoring, configuration and updates to deployed devices and
services
o need for discovering existing devices and services at home and to provide
complementary services to the existing ones
Users wish plug&play configuration facilities, rapid resolution of problems and awareness of
what is going on in the system, while third parties (service providers, o perators,
manufacturers) desire to provide better quality of service, personalized and automatic
customer support, and customized offers to the users based on their profiles. In terms of
architecture, we can thus separate 2 main management architectures: a local management
architecture that responds to the first class of requirements and a global one for the two latter
classes of requirements mentioned above.
1.2.3.1.1. Local monitoring and configuration of devices by end-users
MA
MA
MA
MA
MA
MA
Management
Agent (MA)
Home
gateway
Local
management
server
end-user
Management
console
Figure 2: Management architecture for smart home scenarios involving end -users
In this architecture, the user can monitor and supervise the home devices by using a
management console that can be executed on a PC, tablet or a mobile device. All management
actions should be performed by some management agents that will provide homogeneous
access to underlying heterogeneous set of devices. Management Agents are in charge of
performing the management actions on behalf of the user. Typical management actions are
configuring devices, updating them with a new firmware, rebooting them or monitoring their
performance parameters such as battery level, lost packets, etc.
1.2.3.1.2. Remote monitoring and configuration of devices/service by
third parties
MA
MA
MA
MA
MA
MA
Management
Agent (MA)
end-user
Home gateway
Local
management
server
Management
console
Internet
Service
provider
management
server
Telecom
operator
management
server
Manufacturer
management
server
Figure 3 : Management architecture for smart home scenarios involving third parties
In this second architecture, besides user management, the authorized third parties can also
monitor and supervise the home devices by management tools that are hosted on backend
servers. Management tools can bring great advantages to the third parties in t erms of:
- continuous maintenance by remotely monitoring devices for fault detection, bug fixing,
etc. , and performing diagnostic operations
- continuous improvement of devices and services by regular updates or customized
offers
- cost reduction by adding autonomic management features and avoiding costly
telephone based customer support ; reduced time-to-market for applications thanks to
the remote deployment features
However in order to obtain an efficient management tool there are some major main
challenges to consider, which are:
- Scalability: Efficient tools are necessary to handle the great number of devices
deployed in home and the rapid response time requirements of users.
- Heterogeneity: Devices will be of different providers communicating with different
protocols. A unified management protocol is needed to
- Security: Only authorized entities should be allowed to perform management actions.
- Governance: In case several entities are involved in the life cycle of a device, the owner
of the device, service executing on the device and the data that are generated should
be clearly identified.
- Constrained resources: for battery powered tiny devices resources should be used
efficiently, thus heavy management mechanisms should be avoided for these devices.
Several management protocols exist for home devices such as TR-069 from Briadband Forum
and UPnP DM. The proposed management mechanism should provide bridges and adapters to
these protocols. Therefore the architecture should be compatible avec those protocols to
facilitate adaptation.
1.2.3.2. Smart Healthcare
The health care user stories that have been identified in the workpackage 1 belong to two
main themes:
- Remote assistance
- Personalized reminders and recommendation
Based on this user stories the main management requirements (Table 47.) are the following:
SHC1Req16
The system shall allow authorized to allow for instance
entities
to
update doctors to provide more
recommendations
precise recommendations
M
Functional
Task 3.3
CEA
SHC1Req17
The system shall discover and
configure
health
devices
automatically
with
minimum to discharge the user from
intervention required by the user
complex configurations
M
Functional
Task 3.3
CEA
SHC2Req4
The system shall allow the doctor
to remotely control the camera To empower the doctor for
and microphone of the user
efficient system utilization
M
Functional
Task 3.3
KU Leuven
SHC3Req12
The system shall let to the users
and/or caregivers to configure To adapt to the evolution
reminding periods
of the patient
R
Functional
Task 3.3
CEA
SHC4Req9
The system shall let users to
configure
the
application
parameters (enabling localisation
information, list of contact to give the control to the
persons, etc.)
user
M
Functional
Task 3.3
CEA
These requirements well summarize the management needs in this domain for 2 main actors:
which are the end-users (patients) and caregivers (medical service provider, doctor, nurse,
family members of the patient, etc.)
- End-users
o need to install, initiate and calibrate the healthcare devices,
o need to give remote access to information provided by the devices and assign
authorizations to different entities.
o when possible the configurations should be done automatically in order to
discharge the user from complex configurations
o need to configure applications (define alarm thresholds, periodicity, etc.)
- Caregivers
o need to discover available devices and acquire access to them
o need to remotely monitor and configure device parameters
o need to configure and update applications (update recommendations, etc.)
Healthcare domain has very specific and strict security and privacy requirements that should
be taken into account with care. For instance, contrarily to the home domain in which there
are several end-users (different occupants of the house), healthcare domain is very personal,
thus in general there is only one end-user using a given application
The following figure shows management architecture in the healthcare domain
Figure 4 : Management architecture for the smart health scenarios
A local configuration manager (e.g., hosted on a mobile portable device such as a smart phone
or hosted on a home gateway) is responsible of configuration of device and application
parameters, as well as providing necessary authorization to remotely access and control end user devices and data. A server side management entity is responsible of managing security
and privacy related configurations. It also provides a secure data storage for sensinble
personal data.
1.2.3.3. Smart City
BUTLER project particularly interests in user stories from 2 main themes, which are:

Parking space finder
 Energy monitoring in the city
Concerning device management, these 2 themes have similar requirements that are
summarized in the following table 48.
SC1Req14
The system shall allow to configure parking
spaces according to users profile, date and time
To have a more flexible allocation of the
parking space
M
Functional
SC1Req18
The system shall automatically integrate new
parking space sensors
to discharge the administrators of manual
configuration
R
Functional
SC2Req17
The system shall detect and configure the
payment devices automatically an integrate it
seamlessly into the system
To discharge the user from complex
manual configurations
R
Functional
SC2Req18
The system shall remotely monitor the park
meter devices to detect any anomalies
To supervise the devices and detect
problems as soon as possible
R
Functional
SC3Req13
The system shall automatically integrate new
parking space sensors
to discharge the administrators of manual
configuration
R
Functional
SC4Req20
The system shall detect energy monitoring
devices automatically and integrate them
seamlessly in the existing system
to discharge the administrators of manual
configuration
M
Functional
SC4Req21
The system shall be able to remotely configure
the different paramers of the monitoring devices
for optimisation or applicaiton specific
configurations
M
Functional
SC6Req7
The system shall detect and configure the
payment devices automatically an integrate it
seamlessly into the system
to discharge the administrators of manual
configuration
M
Functional
The identified requirements are mostly related to the easy installation and configuration of
devices in the system. This is indeed an important need in city environements which may
require a large number of devices to be installed; therefore their configuration is not expected
to be done manually. Contrarily to the smart home domain and in healthcare, where the IoT
devices are personal, in city scenarios, the devices serve many end-users at a time. Besides,
cities are large ecosystems in which many stakeholders, from city authorities to utility
companies, are implied.
Therefore, in order to avoid each types of devices having its own management mechanism, it
would be useful to have a common framework that would provide one-stop management
platform that would allow discovering, monitoring and configuring IoT devices in the city
environment. Following figure illustrates such mechanism in the city domain.
Utility Provider
Auto-discovery and remote monitoring of devices
Gateways
and
repeaters
Installation of
new devices
Energy Monitoring devices
Gateways
and
repeaters
Installation of
new devices
Parking Service
Provider
Payment Devices
Provider
Payment
devices
Figure 5 : Management architecture for the smart city scenarios
In this scenario installation of new devices in the city environment would not require complex
on the field configurations, but rather only simple deployment by the installators and the
system would do the discovery and configuration itself within its management servers.
1.2.3.4. Smart Transport
Among the Smart Transport scenarios, the user notification on bus arrivals scenario represent
a very good example of a need for a management mechanIsm in a horizontal way inc luding
smart home and smart transport domains. Following requirements have been identified in his
table 49 bellow for his
ST1Req2
The system shall change calculation
method of the bus location according to
unavailable data sources
To keep on
providing service
M
Functional
Requirement
Task 3.3
CEA
ST1Req8
The system shall trigger the alarm by
activating the connected objects
-
M
Functional
Requirement
Task 3.3
ALBLF
ST1Req9
The system shall disable the alarm when
the user leaves the place
-
M
Functional
Requirement
Task 3.3
ALBLF
ST1Req13
The system shall provide an interface to
set the alarm with user preferences
prefered station,
prefered bus, …
M
Non-Functional
Requirement
Task 3.3
ALBLF
ST1Req23
The system shall detect any device that
can give the notification
to decide on which
device to use for
notification
M
Functional
Requirement
Task 3.3
CEA
The scenario is about notifying the user at home with any object that could be used for this
purpose (e.g., lamp). From the home point of view, in principle the scenario reflects a special
case of a remote management in home networks by third parties that was presented above.
The following figure illustrates the architecture of the system executing such scenario. The
local management system detects the device and understands that it is a device that can be
used for notification thanks to its device descriptions. This information is then sent to third
parties interested in knowing the arrival of such a device, so that they can offer new services
using that device. In this cae, the transportation company detects that the device is at home
and it proposes to the user (via the local management console) that a new bus notification
application is available and it can use the lamp for the notification function.
Figure 6: Management architecture for the smart transport scenarios
1.2.3.5. Smart Shopping
Smart Shopping scenarios mainly consist of creating interesting deals and notifying the
interested customers of these deals. Following requirements (table 50) have been identified
for that scenario:
SS1Req4
The system must allow retailer to cancel existing
sparkdeal. When deal is cancelled, those consumers
how accepted the deal, but did not use the deal, will The retailer must be able to
be notified.
cancel sparkdeals.
M
Functional
Task 3.3
Cascard
SS1Req1
Retailers need to be able to
The system shall expose an interface to create and add and maintain their store
modify user account for retailers and their store related information in the
related information.
system.
M
Functional
Task 3.3
Cascard
SS1Req2
The system shall expose an interface to create and Consumers need to be able
modify user account for consumers and their to maintain their shopping
consumer
profile
related
information. related information in the
system.
M
Functional
Task 3.3
Cascard
The system shall expose an interface to create a new
sparkdeal. The sparkdeal is composed of the deal
content (text, pics, discount information, etc) and the
matching criteria (consumer profile, location, time of
the
day,
maximum
receivers,
etc.)
SS1Req3
NOTE: the sparkdeal content and matching criteria is The retailer can invite
expected to evolve during the work.
customers in to the shop
M
Functional
Task 3.3
Cascard
SS1Req5
The system shall allow the consumer user to enter
visibility rules to restrict his consumer profile User must maintain control
information visibility to the sparkdeal service
of the privacy.
M
Functional
Task 3.3
Cascard
SS1Req1
Retailers need to be able to
The system shall expose an interface to create and add and maintain their store
modify user account for retailers and their store related information in the
related information.
system.
M
Functional
Task 3.3
Cascard
SS1Req11
To speedup the sparkdeal
creation process and react in
real-time to the dynamic
The system shall be able to create automatically the nature of the requestsparkdeals based on predefined rules
response model
R
Functional
Task 3.3
CEA
The retailer should have a management console that would let him/her to create new
sparkdeals, modify or delete the existing ones and to publish this information in the system.
Besides manual execution of these actions, their automatic excution should be supported in
order to react in real-time to the dynamic demands. This can be performed based on high-level
rules that are predefined. Based on the events captured in the system (e.g., the number of sold
for an item has overpassed a given threshold) the deals can be created automatically (e.g.,
create a 15% of sold for those items).
On the other hand, the user (shopper) also needs to perform some management operations
such as entering his/her profile information, configuring the privacy settings, etc. The
following figure illustrates the management architecture for such scenario
Figure 7: Management architecture for the smart shopping scenarios
1.2.3.6. Generic management architecture
Based on the requirements and the scenario specific architectures presented above, this
section identifies a common management architecture that aims at responding all the specific
requirements. The following Figure illustrates a general architecture that will cover the
BUTLER needs in terms of management. For lisibility reasons we omit to add arrows betweent
the modules, however it is clear that there are strong interactions between these modules that
will be describerd in the following text.
The management mechanism is placed between two main actors:

Managing entities are actors such as users, applications, manufacturers, service
providers

Managed entities are devices such as sensors, actuators, home appliances and services
on top fo these devices.
Between these two classes of entities comes the management middle layer that is composed
of the following modules.
users, applications, manufacturers,
service providers, etc.
Management Request Handler
Device discovery
Event processing
Event model
Notifications from devices
Notifications from providers
Performance manager
monitor performance
diagnostics
Device directory
Device description
Device resolution
Device/service mapping
Event manager
Notification Handler
Software manager
Install, update, start, stop
Configuration manager
getParameter, setParameter,
saveConfig, loadConfig
sensors, actuators, appliances, etc.
Figure 8 : General Management architecture covering BUTLER scenarios
Management Request Handler
This is the entry point to the management subsystem. The requests are received here and
dispoatched to the correspoing entitites. Typical requests are monitoring a given devic e,
subscribing to some particular events such as arrival of a device of a given type, performing
software updates, or loading configurations to devices.
Notification Handler
This is a bi-directional information notification module, which at a time:

notifies the managing entities of events occurring in the system and/or at
individual devices (new devices discovered, configuration changed, device
rebbooted, etc.)

notifies the managed entities of the events occuring at the provider side (e.g., new
update available, new policies required, etc.)
The module maintains a subscribers list that contains the entities to notify in case of
detection of given events.
Event Manager
This is the module where the events are detected from the managed entities, processed
and transferred to the notification handler that transfers the events to the managing
entities. The system provides the events based on a common event model that is
comprehensible by the managing entities. Event processing can vary from simple events
(e.g., binary values, filters) to more complex ones (e.g., temporal correlations).
Device Discovery
This module provides a discovery mechanism that is used to detect new devices coming or
old ones leaving the system. Many existing device communication protocols provide their
own discovery mechanisms that can be reused for this purpose. After discovery, the device
should be represented as a BUTLER device that can be detected and used by other BUTLER
devices or services. The BUTLER device model should thus. Section 5.4 gives more details
on different information models used for this purpose.
Software Manager
This module is responsible of performing software related actions in the system, for
instance, firmware updates, software patches, application modules can be
installed/updated/uninstalled with this module.
Configuration Manager
This module typically reads and writes device and service parameters. It can save some
configuration for further loading, as well as reseting the configuration to factory setup.
Performance Manager
This module is in charge of monitoring the performance of the devices. It provides means
of continuously monitoring device and service parameters, as well as performing some
diagnostic operations on the devices such as ping, reboot or test.
These generic modules would respond to most, if not all, of the requirements mentioned
above in this section. In order to perform the generic management actions, we identify four
generic actions which are: get, set, act and notify:
- the get operation is used to retrieve values of device parameters.
- the set operation updates “modifiable” parameter values.
- the act operation executes common operations such as install, reboot or ping, as well
as device specific operations.
- the notify operation is used to subscribe for events such as parameter changed,
software updated, device arrived, etc.
The operations should be performed on a common management information model such as
the one presented in the section Section 5.4.3.
1.1.2. Management information models
BUTLER management model will be based on a hierarchical data model that defines the
structure of the management data, identifies some common parameters and defines their
names and attributes. We classify the following parameter families according to the functional
area they belong to:
- General information containing parameters such as device name, manufacturer, mod el,
type, location and description.
- Network related parameters, including network, system, application or physical device
parameters such as neighbour table, logical address, alarm threshold, supported
protocols and/or algorithms, sampling rate.
- System related parameters including energy level, CPU and memory usage, firmware
version, etc.
- Device/Vendor specific parameters
-
And operations that the devices can perform, for instance for software deployment and
lifecycle management. E.g., monolithic firmware upgrade, virtual machine update,
install/uninstall software modules, application provisioning, radio tests, calibration,
reboot and factory reset.
The following table gives an example of such a model, with some concrete examples from two
sensor platforms, namely Zolertia 1 based on ContikiOS and Waspmote 2 based on the Zigbee
technology (Table 55 bellow).
Class of parameters
Parameters
General information
Name
Manufacturer
Description
Model
Location
Owner
Network
parameters
System
parameters
related
related
Device/Vendor specific
parameters
Operations
1
2
www.zolertia.com
www.libelium.com
Attributs
Ex :
Description
="brief
decsritpion",
Type = string
Writable=false
Notifiable=true
writable=true
Address Type
Packets sent
Uptime
RSSI
Routing parent
OSversion
Energylevel
CpuUsage
Freememory
Samling Rate
DeviceSpecific.xxx
getDataModel
saveConfig
loadConfig
resetConfig
ping
reboot
stop(TaskId)
Writable
=
(Zolertia: false,
Waspmote:
true)
Example Zolertia
Ex :
Manufacturer=Zole
rtia
Model =
Location = “Room1”
Example Waspmote
Manufacturer=
waspmote
Model = Zigbee PRO
« Zolertia »
« LIBELIUM »
« Z1 platform »
« B5D1 »
« cea »
« Waspmote »
« B5G1 »
« cea »
aaaa::C30C:0:0:2
0013A200407691D7
“00:00:03:25”
« 78 »
« aaaa::C30C:0:0:2
»
“00:00:03:25”
« 78 »
« C5F5 »
“Contiki 2.6”
“prog002”
Zolertia.ContikiOSV
ersion
Waspmote.ZigbeeVer
sion
admin/reboot,
admin/sleep
sleep
For an extensibility support, the structure of the data model is hierarchical. A root node is
followed by the parameter family nodes which are then followed by parameter groups. A
parameter group can recursively embed other parameter groups. A special parameter group is
an array parameter group containing different instances of the same parameter group, having
thus the same data structure. Leaf nodes finally contain the actual values of parameters. An
absolute path defines the route from the root node to a leaf node, therefore defines the actual
name of a parameter.
Each family contains a set of common parameters. These parameters are intended to give an
overview of the available devices and provide a minimum management facility. Since for
instance sensors are autonomous, a sensor may not support a given common parameter or
operation. In this case, the value of the unsupported parameter is null and the unsupported
method has no effect on the sensor. Each sensor device may also support some additional
vendor specific management parameters and operations. These parameters can be included in
the data model with the special group name SpecificExtension under any parameter group .
Each parameter has additional attributes defining its characteristics such as type, description,
writability and notifiability.
The following gives the grammar defining the absolute paths of the data model:
Root = "/"
Seperator = "."
Family = "General" | "Network" | "System" | "Vendor" | "Operations" Seperator
NodeName = [A-Za-z0-9n!#%$’&()@_/gf*+?,:;=-]+
ParameterGroup = NodeName Seperator
ParameterGroupInstance = NodeName "[" [0-9]+ "]" Seperator
Leaf = NodeName
Path = Root Family [ParameterGroup | ParameterGroupInstance]*
AbsolutePath = Path Leaf
Below is an example of an absolute path for the sampling rate parameter:
Sensor.System.SamplingRate {
description = ‘the sampling rate of the sensor in milliseconds’
type = integer
writable = true
notifiable = true
}
The description attribute gives brief information about the parameter. Type attribute defines
the type of the parameter, which can be one of the following: string, integer, long, double,
date, boolean; or a list of one of these types. The writable attribute specifies whether the
parameter is read-only. Finally, the notifiable attribute specifies whether the modification of
the value of the parameter can trigger a notification for interested subscribers.
The model also contains a list of operations that can be performed on the sensors. They are
listed under the special parameter group Operations. Each operation has also attributes
defining its input and output parameters. Operations either directly modify the data (e.g., via
set method) or trigger an action on the sensor which can indirectly modifies the data (e.g.,
software install). The following section presents the management operations that can be
performed on the sensors
This data model aims at being generic to reflect any management operation to be performed
on devices. Extensions will be done during the following years of the project to reflect the
requirements that will appear with new applications and new types of devices.
References
[NetConf] Network Configuration, http://www.ietf.org/html.charters/netconfcharter.html
[WBEM] Web Based Enterprise Management. http://www.dmtf.org/standards/wbem/.
[WSDM] Web Services Distributed
home.php?wg abbrev=wsdm.
Management.
http://www.oasisopen.org/committees/tc
[BBF] Broadband Forum. TR-069, CPE WAN Management Protocol v1.1.
[UPnP-DM] Universal Plug&Play Device Management, White Paper, April 2011.
http://upnp.org/resources/whitepapers/UPnP%20Device%20Management%20White%20Paper_201
1.pdf
[OMA-DM]
Open
Mobile
Alliance
Device
http://www.openmobilealliance.org/technical/DM.aspx
Management
[M2M]
ETSI
M2M,
Machine
to
machine
http://www.etsi.org/website/technologies/m2m.aspx
communications
Working
working
Group.
group.
[Ruiz03] L. B. Ruiz, J. M. Nogueira, and A. A. F. Loureiro, “Manna: a management architecture for
wireless sensor networks,” Communications Magazine, IEEE, vol. 41, no. 2, pp. 116–125, 2003.
[Shen03] C. chung Shen, C. Jaikaeo, C. Srisathapornphat, and Z. Huang, “An adaptive management
architecture for ad hoc networks,” IEEE Communications Magazine, vol. 41, pp. 108–115, 2003.
[Cerpa04] A. Cerpa and D. Estrin, “Ascent: Adaptive self-configuring sensor networks topologies,”
IEEE Transactions on Mobile Computing, vol. 3, no. 3, pp. 272–285, 2004.
[Al-Karaki04] J. N. Al-Karaki and A. E. Kamal, “Routing techniques in wireless sensor networks: a
survey,” IEEE Wireless Communications, vol. 11, no. 6, pp. 6–28, 2004.
[Marrn05] P. J. Marrn, A. Lachenmann, D. Minder, M. Gauger, O. Saukh, and K. Rothermel,
“Management and configuration issues for sensor networks,” Int Journal of Network Management,
vol. 15, pp. 235–253, 2005.
[Stathopoulos03] T. Stathopoulos, J. Heidemann, and D. Estrin, “A remote code update mechanism
for wireless sensor networks,” Los Angeles, CA, USA, Tech. Rep. 30, 2003.
[Sugihara08] R. Sugihara and R. K. Gupta, “Programming models for sensor networks: a survey,” ACM
Transactions on Sensor Networks, vol. 4, no. 2, pp. 1–29, March 2008.
[Kogekar04] S. Kogekar, S. Neema, B. Eames, X. Koutsoukos, A. Ledeczi, and M. Maroti, “Constraintguided dynamic reconfiguration in sensor networks,” in IPSN ’04:Proceedings of the 3rd international
symposium on Information processing in sensor networks. ACM, 2004, pp. 379–387.
[Bae06] J.-H. Bae, K.-O. Lee, and Y.-Y. Park, “Moneta: an embedded monitoring system for ubiquitous
network environments,” Consumer Electronics, IEEE Transactions on, vol. 52, no. 2, pp. 414–420,
May 2006.
[Levis02] P. Levis and D. Culler, “Maté: a tiny virtual machine for sensor networks,” in ASPLOS-X:
Proceedings of the 10th international conference on Architectural support for programming
languages and operating systems. New York, NY, USA: ACM, 2002, pp. 85–95.
[Liu03] T. Liu and M. Martonosi, “Impala: A middleware system for managing autonomic, parallel
sensor systems,” in In PPoPP 03: Proceedings of the 9th ACM SIGPLAN symposium on Principles and
practice of parallel programming. ACM Press, 2003, pp. 107–118.
[Madden05] S. R. Madden, M. J. Franklin, J. M. Hellerstein, and W. Hong, “TinyDB: an acquisitional
query processing system for sensor networks,” ACM Trans. Database Syst., vol. 30, no. 1, pp. 122–
173, 2005.
[Fok05] C.-L. Fok, G.-C. Roman, and C. Lu, “Rapid development and flexible deployment of adaptive
wireless sensor network applications,” in Proceedings of the 25th IEEE International Conference on
Distributed Computing Systems. Washington, DC, USA: IEEE, 2005, pp. 653–662.
[SunSPOT]
Sun SPOT Project. http://www.sunspotworld.com/
[MICA] MICA motes. http://www.xbow.com/Products/wproductsoverview.aspx
[COMAN]
Management
of
Constrained
https://www.ietf.org/mailman/listinfo/coma
Networks
and
Devices,
Download