1. viii
ABSTRACT
Internet of Things (IoT) is a technology which aims at connecting all the devices
in the world to create a real global village. It has led to a digital ecosystem that
surrounds around the data that these devices generate and the decisions that can be made
with the help of this data. Building reliable IoT based technology solutions and services
that can be deployed at scale require adequate experimentation environments. Gartner’s
predictions and other literature reviews clearly indicate the need to design and
implement heterogeneous test bed that uses a virtualized environment. The need for a
heterogeneous test bed comes into the picture due to the existence of both analog and
digital sensors, and also due to huge range of micro controllers that are available in the
market these days.
The focal point of the thesis is to design a utility based open IoT testbed cum
development framework accessible locally and over the internet that targets developers
and data engineers to create and test IoT applications and perform analytics on the data
generated respectively. If the end user wishes so, the data being archived in the database
can be downloaded to his/her workstation either is a CSV, JSON or XML format as
demanded. Distributable (Application Programming Interface) API’s are provided to
developers to develop IoT Applications. This API contains custom built libraries that
have functions to retrieve the data from the sensor or publish command to the actuator.
This is achieved by the API publishing the command to the actuator or subscribing to
the broker only once and once the required data is received from the sensor, the method
disconnects from the broker. This API can run on any machine that is connected to the
internet. Also the required experimental setup and needed algorithms are deployed and
its impact on utilization, performance and time is studied. This research work aims at
2. ix
providing solutions for the challenges behind the proprietary vendor lock in,
insufficient control, lack of concurrency and diminished reusability.
There are four main objectives of this research. Primarily investigate the
characteristics, technologies and methodologies of existing testbeds, identify the gaps
and to design and implement a utility based open IoT testbed cum development
framework architecture with appropriate maneuvering at physical and logical
dimensions. Secondly develop, load and test necessary platform independent API’s to
achieve utility based service model. Third objective is to develop a control plane driven
model with number based service mapping and appropriate algorithms for dynamic
resource discovery, orchestration and conflict resolve. Next objective is proposing an
event collaboration model of sensor service, instance based actuator service, OTA
platform service with appropriate algorithms and API’s and to admire the enhancement
in performance as well as reduction in response time. Finally, to develop a feedback
based ranking model, aiming towards better utilization, reliability and performance.
Also, use appropriate tools and methods to understand the mostly used services, most
demanded cluster of services and user usage pattern.
This research work to demonstrate the proof of concept will be focusing on micro-
controllers variants from Arduino which supports analog devices and Raspberry Pi, a
microcomputer that can run a full-fledged operating system, to account for this
heterogeneity of devices and controllers. The test bed will also host a range of sensors
like temperature, humidity, pressure, light intensity, rainfall, gas sensors. These sensors
are going to be virtualized into containers that represent the Things in Internet of
Things. These containers are going to represent what the object oriented paradigm calls
objects. The objects represented in OOPS are only digital or a simulation of the real
world objects at the very best, but with IoT these objects are going to represent almost
3. x
every “thing” in the real world. These containers will also add modularity to the system,
and also allows the end user to develop applications that use only a subset of the sensors
provided. These containers will be accessed over the Internet by the end user and it
provides the data and the functionality of the sensors, actuators, platform as a service
over the internet enabling them to develop IoT applications that can be hosted on the
cloud.
In nutshell, this research work is an attempt towards product based research, still
with its performance metrics intact, as against usual analysis or simulation only studies.